:root{--bg: #161b21;--chrome: #12171c;--panel: #1c232b;--raised: #2c3541;--line: #2c3540;--viewport: #12171d;--text: #e9edf1;--muted: #a7b3bf;--dim: #7d8997;--ai: #c9beff;--ai-bg: #231f38;--ai-line: #3b3463;--ok: #5ccb8f;--warn: #f2a93b;--err: #ff5d52;--pcb: #1f3a5f;--shield: #c9ced4;--gold: #d9b45a;--pin-power: #ff6b5e;--pin-ground: #8a96a3;--pin-sda: #3fb6e8;--pin-scl: #9adcf7;--pin-spi: #e07bd4;--pin-uart: #f2a93b;--pin-gpio: #5ccb8f;--pin-adc: #e8d24a;--font-ui: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--topbar-h: 48px;--right-w: 400px;--log-h: 250px;--radius: 8px;--radius-sm: 5px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font-ui);font-size:13px;line-height:1.45;-webkit-font-smoothing:antialiased;overflow:hidden;user-select:none}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.45}input,textarea,select{font:inherit;color:var(--text)}textarea,input.text-in,select.select{background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius-sm);padding:7px 9px;outline:none;user-select:text}textarea:focus,input.text-in:focus{border-color:var(--ai-line)}textarea{resize:none;width:100%}.mono{font-family:var(--font-mono)}.dim{color:var(--dim)}.muted{color:var(--muted)}.small{font-size:11.5px}.big{font-size:16px;font-weight:600}.row{display:flex;align-items:center}.row.between{justify-content:space-between}.gap{gap:8px}.wrap{flex-wrap:wrap}.pre{white-space:pre-wrap}.err-text{color:var(--err)}.clickable{cursor:pointer}.label{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--dim);margin:12px 0 6px}.empty{color:var(--dim);padding:12px 4px}.fatal{padding:40px}.shell{display:flex;flex-direction:column;height:100vh}.work{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) var(--right-w);grid-template-rows:minmax(0,1fr) var(--log-h)}.work.right-closed{grid-template-columns:minmax(0,1fr) 34px}.work.bottom-closed{grid-template-rows:minmax(0,1fr) 34px}.work.bottom-max{grid-template-rows:0 minmax(0,1fr)}.work.bottom-max .center{visibility:hidden}.center{grid-column:1;grid-row:1;min-height:0;position:relative;overflow:hidden}.right{grid-column:2;grid-row:1 / 3;min-height:0;border-left:1px solid var(--line);background:var(--panel);position:relative}.bottom{grid-column:1;grid-row:2;min-height:0;border-top:1px solid var(--line);position:relative}.topbar{height:var(--topbar-h);flex-shrink:0;display:flex;align-items:center;gap:12px;padding:0 12px 0 14px;background:var(--chrome);border-bottom:1px solid var(--line);-webkit-app-region:drag}.topbar button,.topbar .chip{-webkit-app-region:no-drag}.brand{display:flex;align-items:center;gap:8px;font-weight:700;font-size:14.5px;background:none;border:none;padding:0;flex-shrink:0}.logo{width:22px;height:22px;border-radius:6px;background:var(--pcb);display:grid;place-items:center;border:1px solid #36557c}.logo span{width:10px;height:10px;border-radius:2px;background:var(--shield);box-shadow:0 0 0 2px var(--gold)}.conn{display:flex;align-items:center;gap:8px;min-width:0;white-space:nowrap;overflow:hidden;flex-shrink:1}.dot{width:8px;height:8px;border-radius:50%;background:var(--dim)}.dot.ok{background:var(--ok);box-shadow:0 0 8px var(--ok)}.progress{display:flex;align-items:center;gap:8px;min-width:260px}.progress .bar{flex:1;height:6px;background:var(--raised);border-radius:3px;overflow:hidden;min-width:90px}.progress .bar i{display:block;height:100%;background:var(--ai);transition:width .2s}.top-actions{display:flex;align-items:center;gap:8px}.chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:20px;background:var(--raised);color:var(--muted);font-size:11px;border:1px solid transparent;white-space:nowrap}.chip.link{cursor:pointer}.chip.link:hover{border-color:var(--ai-line);color:var(--text)}.ok-chip{color:var(--ok);border-color:#2c5a43;background:#1b2d25}.sim-chip{color:var(--warn);border-color:#5a4323;background:#2d2518}.ai-chip{color:var(--ai);border-color:var(--ai-line);background:var(--ai-bg)}.chips{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0}.swatch{width:10px;height:10px;border-radius:3px;display:inline-block;flex-shrink:0}.btn{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:var(--radius-sm);background:var(--raised);border:1px solid #38434f;font-weight:500;white-space:nowrap}.btn:hover:not(:disabled){background:#36414f}.btn.small{padding:4px 9px;font-size:12px}.btn.primary{background:#2f6f53;border-color:#3c8a67;color:#eafff4}.btn.primary:hover:not(:disabled){background:#378060}.btn.ghost{background:transparent;border-color:var(--line)}.btn.danger{color:var(--err);border-color:#5a2a28;background:transparent}.btn.ai{background:var(--ai-bg);border-color:var(--ai-line);color:var(--ai)}.btn.icon{padding:6px;background:transparent;border-color:transparent}.btn.icon.ai{background:var(--ai-bg);border-color:var(--ai-line)}.btn.on{border-color:var(--ai-line);color:var(--ai)}.btn.rec{color:var(--err);border-color:#5a2a28}.link{background:none;border:none;padding:0;color:var(--ai);display:inline-flex;align-items:center;gap:6px}.link:hover{text-decoration:underline}.close{background:none;border:none;color:var(--dim);font-size:18px;line-height:1;padding:0 4px}.seg{display:inline-flex;background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden}.seg button{background:none;border:none;padding:4px 10px;font-size:12px;color:var(--muted)}.seg button+button{border-left:1px solid var(--line)}.seg button.on{background:var(--raised);color:var(--text)}.rail{background:var(--chrome);border-right:1px solid var(--line);padding:12px 10px;display:flex;flex-direction:column;gap:2px}.rail-sep{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--dim);margin:14px 8px 6px}.rail-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);background:none;border:none;color:var(--muted);text-align:left;position:relative}.rail-item:hover{background:var(--panel);color:var(--text)}.rail-item.on{background:var(--raised);color:var(--text)}.rail-item.on:before{content:"";position:absolute;left:-10px;top:8px;bottom:8px;width:3px;border-radius:2px;background:var(--ok)}.rail-num{position:absolute;right:10px;font-size:10px;color:var(--dim)}.viewport{position:absolute;inset:0;background:var(--viewport)}.viewport canvas{outline:none}.vp-toolbar{position:absolute;top:12px;left:12px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.vp-toolbar .tb{background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius-sm);padding:4px 10px;font-size:12px;color:var(--muted)}.vp-toolbar .tb.on{color:var(--text);background:var(--raised)}.vp-toolbar .tb.on.ai{color:var(--ai);border-color:var(--ai-line);background:var(--ai-bg)}.badges{position:absolute;top:12px;right:12px;display:flex;gap:6px}.badge{padding:3px 9px;border-radius:20px;font-size:11.5px;background:var(--chrome);border:1px solid var(--line)}.badge.sim{color:var(--warn)}.badge.live{color:var(--ok)}.badge.err{color:var(--err);border-color:#5a2a28}.badge.warn{color:var(--warn);border-color:#5a4323}.wire-hint{position:absolute;top:52px;left:12px;background:var(--ai-bg);border:1px solid var(--ai-line);color:var(--ai);padding:5px 10px;border-radius:var(--radius-sm)}.legend{position:absolute;bottom:10px;left:12px;display:flex;gap:12px;font-size:11px;color:var(--muted);background:#12171dcc;padding:5px 10px;border-radius:var(--radius-sm)}.legend span{display:flex;align-items:center;gap:5px}.legend i{width:9px;height:9px;border-radius:50%;display:inline-block}.pin-label{font-family:var(--font-mono);font-size:9.5px;color:var(--text);background:#12171dd9;border:1px solid;border-radius:3px;padding:0 3px;white-space:nowrap;transform:scale(.95)}.pin-label.small{font-size:8.5px}.pin-label.hot{background:var(--ai-bg);color:#fff}.part-label{font-size:11px;color:var(--muted);white-space:nowrap;background:#12171dbf;padding:1px 6px;border-radius:4px}.part-label.sev-error{color:var(--err)}.part-label.sev-warning{color:var(--warn)}.tag-suggestion{margin-left:6px;color:var(--ai);font-size:10px}.pinout-wrap{position:absolute;inset:44px 12px 40px;display:grid;place-items:center}.pinout2d{width:100%;height:100%}.svg-pin{cursor:pointer}.svg-pin-label{font-family:var(--font-mono);font-size:13px;fill:var(--text)}.svg-pin-fn{font-family:var(--font-mono);font-size:11px;fill:var(--dim)}.svg-pin-mv{font-family:var(--font-mono);font-size:9px;fill:#111;font-weight:600}.svg-comp-label{font-size:12px;fill:#d5dbe2;font-family:var(--font-ui)}.info-card{position:absolute;right:12px;top:90px;width:300px;max-height:calc(100% - 100px);overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;box-shadow:0 10px 30px #0006;user-select:text}.info-card .close{position:absolute;right:8px;top:6px}.card-head{display:flex;align-items:center;gap:8px}.card-note{color:var(--muted);margin:6px 0}.card-flag{margin:6px 0;padding:6px 8px;border-radius:var(--radius-sm);font-size:12px;background:var(--chrome);border-left:3px solid var(--dim)}.card-flag.warn{border-left-color:var(--warn)}.card-flag.err{border-left-color:var(--err)}.card-flag.info{border-left-color:var(--pin-sda)}.card-section{margin:10px 0}.card-section .label{margin-top:0}.src{color:var(--ok);font-size:10.5px;margin-left:6px;font-family:var(--font-mono)}.log-panel{display:flex;flex-direction:column;height:100%;background:var(--panel)}.log-panel header{display:flex;align-items:center;gap:14px;padding:8px 12px;border-bottom:1px solid var(--line)}.panel-title{font-weight:600;font-size:13px}.filters{display:flex;gap:2px;flex:1}.filters button{background:none;border:none;color:var(--dim);font-size:11.5px;padding:2px 8px;border-radius:12px}.filters button.on{background:var(--raised);color:var(--text)}.log-list{flex:1;overflow:auto;padding:4px 0;font-size:12px;user-select:text}.log-row{display:flex;align-items:baseline;gap:10px;padding:3px 12px}.log-row.clickable:hover{background:var(--raised)}.log-time{color:var(--dim);font-size:11px;flex-shrink:0}.log-type{font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;width:58px;flex-shrink:0}.t-info{color:var(--dim)}.t-check{color:var(--pin-sda)}.t-found{color:var(--ok)}.t-warning{color:var(--warn)}.t-failed{color:var(--err)}.t-action{color:var(--ai)}.log-text{flex:1;min-width:0}.log-target{color:var(--ai);font-size:11px;white-space:nowrap}.log-src{color:var(--dim);font-size:10.5px;font-family:var(--font-mono);white-space:nowrap;margin-left:6px}.log-src.measured{color:var(--ok)}.right-split{display:flex;flex-direction:column;height:100%}.right-top{flex:1 1 60%;min-height:0;overflow:auto;border-bottom:1px solid var(--line)}.right-bottom{flex:0 0 var(--assistant-h, 40%);min-height:0;position:relative}.right-bottom.small-assistant{flex-basis:var(--assistant-h, 30%)}.wizard{padding:14px 16px;display:flex;flex-direction:column;gap:10px}.wiz-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.wiz-progress{height:4px;background:var(--raised);border-radius:2px;overflow:hidden}.wiz-progress i{display:block;height:100%;background:var(--ok);transition:width .3s}.wiz-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.ws{display:grid;grid-template-columns:18px 1fr;column-gap:6px;padding:3px 4px;border-radius:4px;color:var(--dim);font-size:12px}.ws.cur{background:var(--chrome);color:var(--text)}.ws-icon{display:grid;place-items:center}.ws-ok .ws-icon{color:var(--ok)}.ws-warning .ws-icon{color:var(--warn)}.ws-failed .ws-icon{color:var(--err)}.ws-ok,.ws-warning,.ws-failed{color:var(--muted)}.ws-sum{grid-column:2;font-size:11.5px;color:var(--dim)}.step-card{background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px}.step-card h3{margin:4px 0 6px;font-size:15px}.step-card p{margin:6px 0;color:var(--muted)}.step-card.s-failed{border-color:#5a2a28}.step-kicker{display:flex;align-items:center;gap:8px}.options{display:flex;flex-direction:column;gap:6px;margin-top:8px}.option{text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;display:flex;flex-direction:column;gap:2px}.option:hover{border-color:#4a5868;background:var(--raised)}.option span{color:var(--dim);font-size:12px}.free-text{margin-top:6px}.confirm-details{color:var(--muted);padding-left:18px;margin:8px 0 12px}.failed-box{margin-top:8px}.result-card{background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius);padding:14px;display:flex;flex-direction:column;gap:6px;user-select:text}.result-card h3{margin:2px 0;font-size:16px}.result-card p{margin:0;color:var(--muted)}.evidence{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.evidence li{background:var(--panel);border-radius:var(--radius-sm);padding:5px 8px;font-size:12px}.evidence li.clickable:hover{background:var(--raised)}.next-steps{margin:0;padding-left:18px;color:var(--text)}.conf{font-size:10.5px;font-family:var(--font-mono);padding:1px 7px;border-radius:10px;text-transform:uppercase;letter-spacing:.03em}.conf-measured{color:var(--ok);background:#1b2d25;border:1px solid #2c5a43}.conf-documented{color:var(--pin-sda);background:#172a36;border:1px solid #25506a}.conf-suggestion{color:var(--ai);background:var(--ai-bg);border:1px solid var(--ai-line)}.input-picker{display:flex;flex-direction:column;gap:4px}.picker-block .label{margin-top:8px}.lib-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.lib-item{text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-sm);padding:7px 9px;display:flex;flex-direction:column;gap:1px}.lib-item:hover{border-color:#4a5868}.lib-item b{font-size:12px;font-weight:500}.lib-item span{font-size:11px;color:var(--dim)}.findings{display:flex;flex-direction:column;gap:5px}.finding{text-align:left;background:var(--chrome);border:1px solid var(--line);border-left-width:3px;border-radius:var(--radius-sm);padding:6px 9px;display:flex;flex-direction:column;gap:2px;font-size:12px}.finding span{color:var(--dim)}.finding.sev-error{border-left-color:var(--err)}.finding.sev-warning{border-left-color:var(--warn)}.finding.sev-info{border-left-color:var(--pin-sda)}pre.code,pre.md{background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px;font-family:var(--font-mono);font-size:11px;overflow:auto;max-height:340px;user-select:text;white-space:pre}pre.md{white-space:pre-wrap;max-height:none}.assistant{display:flex;flex-direction:column;height:100%;background:var(--panel)}.assistant header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--line)}.ai-title{color:var(--ai);display:flex;align-items:center;gap:6px}.ai-list{flex:1;overflow:auto;padding:10px 14px;display:flex;flex-direction:column;gap:10px;user-select:text}.ai-empty{color:var(--dim);background:var(--ai-bg);border:1px solid var(--ai-line);border-radius:var(--radius);padding:10px 12px}.ai-user{align-self:flex-end;background:var(--raised);border-radius:10px 10px 2px;padding:7px 10px;max-width:85%}.ai-reply{background:var(--ai-bg);border:1px solid var(--ai-line);border-radius:10px 10px 10px 2px;padding:9px 11px;display:flex;flex-direction:column;gap:6px}.ai-text{white-space:pre-wrap}.ai-sources{display:flex;flex-direction:column;gap:2px;border-top:1px solid var(--ai-line);padding-top:6px}.src-line{font-size:11px;color:var(--muted)}.src-line span{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;margin-right:6px}.src-measurement span{color:var(--ok)}.src-datasheet span,.src-library span{color:var(--pin-sda)}.src-user span{color:var(--ai)}.ai-tools summary{font-size:11px;color:var(--dim);cursor:pointer}.next-options{display:flex;flex-wrap:wrap;gap:5px}.ai-choices{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px}.ai-choice{text-align:left;background:var(--chrome);border:1px solid var(--ai-line);border-radius:var(--radius-sm);padding:8px 10px;display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--muted);cursor:pointer;transition:border-color .15s,background .15s}.ai-choice b{color:var(--text);font-size:13px}.ai-choice:hover:not(:disabled){border-color:var(--ai);background:var(--panel)}.ai-choice.on{border-color:var(--ai);box-shadow:0 0 0 1px var(--ai) inset}.ai-choice:disabled:not(.on){opacity:.5;cursor:default}.proposal{background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px;display:flex;flex-direction:column;gap:6px}.proposal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.proposal-title{font-weight:600;font-size:14px}.proposal .chip.ok{color:var(--ok);border-color:var(--ok)}.proposal .chip.sev-warning{color:var(--warn);border-color:var(--warn)}.proposal .chip.sev-error{color:var(--err);border-color:var(--err)}.proposal-parts{margin:0;padding-left:16px;display:flex;flex-direction:column;gap:3px}.proposal-wiring table{border-collapse:collapse;width:100%}.proposal-wiring td{padding:2px 4px;white-space:nowrap}.proposal-wiring tr{cursor:pointer}.proposal-wiring tr:hover td{background:var(--panel)}.proposal-wiring .dot{display:inline-block;margin-right:6px;vertical-align:middle}.proposal ul{margin:0;padding-left:16px}.ai-error{color:var(--err);font-size:12px}.ai-thinking{color:var(--ai);font-size:12px}.ask-box{display:flex;gap:6px;align-items:flex-end;padding:10px 14px;border-top:1px solid var(--line)}.wizard .ask-box,.free-text .ask-box,.describe .ask-box{padding:0;border-top:none}.ask-box.big textarea{font-size:14px}.photo-input{margin-top:6px}.photo-card{display:flex;gap:10px;background:var(--ai-bg);border:1px solid var(--ai-line);border-radius:var(--radius);padding:8px}.photo-card img{width:84px;height:84px;object-fit:cover;border-radius:var(--radius-sm)}.photo-body{flex:1;display:flex;flex-direction:column;gap:4px}.photo-body p{margin:0}.spinner{width:12px;height:12px;border-radius:50%;border:2px solid var(--raised);border-top-color:var(--ai);animation:spin .8s linear infinite;display:inline-block}.spinner.sm{width:10px;height:10px}@keyframes spin{to{transform:rotate(360deg)}}.modal-back{position:fixed;inset:0;background:#080a0d99;display:grid;place-items:center;z-index:100}.modal{width:460px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:22px 24px;box-shadow:0 24px 60px #00000080}.modal-icon{color:var(--warn)}.modal h2{margin:6px 0 8px;font-size:18px}.modal p{color:var(--muted);margin:0 0 8px}.modal ul{color:var(--text);padding-left:18px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.modal-foot{font-size:11.5px;margin-top:12px!important;color:var(--dim)!important}.devmenu{position:fixed;top:60px;right:12px;width:360px;max-height:calc(100vh - 80px);overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;z-index:50;box-shadow:0 16px 40px #00000073}.dev-head{display:flex;justify-content:space-between;align-items:center}.scenarios{display:flex;flex-direction:column;gap:4px}.scenario{text-align:left;background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius-sm);padding:6px 9px;display:flex;flex-direction:column}.scenario span{font-size:11px;color:var(--dim)}.scenario.on{border-color:var(--ai-line);background:var(--ai-bg)}.home{position:absolute;inset:0;overflow:auto}.home-inner{max-width:980px;margin:0 auto;padding:36px 32px}.home h1{font-size:26px;margin:0 0 4px;font-weight:600}.lead{color:var(--muted);margin:0 0 22px}.task-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}.task-card{position:relative;text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:4px;min-height:118px}.task-card:hover{border-color:#4a5868;background:#202831}.task-card b{font-size:14px;font-weight:600;margin-top:6px}.task-card span{color:var(--dim);font-size:12px}.task-icon{width:38px;height:38px;border-radius:9px;background:var(--raised);display:grid;place-items:center;color:var(--ok)}.task-num{position:absolute;top:12px;right:14px;color:var(--dim)!important}.describe{margin:22px 0;background:var(--ai-bg);border:1px solid var(--ai-line);border-radius:10px;padding:12px 14px 14px}.describe .label{margin-top:0;color:var(--ai)}.home-status{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.status-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;display:flex;flex-direction:column;gap:3px;min-width:0}.status-card .label{margin:0 0 2px}.status-card .mono.small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.screen-scroll{position:absolute;inset:0;overflow:auto;padding:18px 20px 30px}.screen-head h2{margin:0;font-size:20px}.screen-head p{margin:2px 0 14px}.gate{background:var(--panel);border:1px dashed #4a5868;border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:8px;align-items:flex-start;margin-bottom:14px}.card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:10px;min-width:0}.card.wide{grid-column:1 / -1}.card-title{font-weight:600;display:flex;align-items:center;gap:10px}.card-title .check{margin-left:auto;display:flex;gap:4px;align-items:center;font-weight:400}.test-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.addr-grid{display:grid;grid-template-columns:repeat(16,1fr);gap:3px}.addr{font-family:var(--font-mono);font-size:10px;text-align:center;padding:3px 0;border-radius:3px;background:var(--chrome);color:var(--dim);border:1px solid transparent}.addr.res{opacity:.35}.addr.exp{border-color:#3d4f63;color:var(--muted)}.addr.hit{background:var(--ok);color:#0c1a12;font-weight:600}.addr.swap{background:var(--warn);color:#1d1405;font-weight:600}.grid-legend{display:flex;gap:14px;color:var(--dim)}.grid-legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:4px;vertical-align:-1px}.grid-legend i.hit{background:var(--ok)}.grid-legend i.swap{background:var(--warn)}.grid-legend i.exp{border:1px solid #3d4f63}.bus-svg{width:100%;height:auto}.svg-small{font-size:11px;fill:var(--muted);font-family:var(--font-ui)}.svg-label{font-size:12px;fill:var(--text);font-family:var(--font-ui)}.svg-mono{font-size:11px;fill:var(--text);font-family:var(--font-mono)}.svg-mono.dim{fill:var(--dim)}.svg-tiny{font-size:9px;font-family:var(--font-mono);font-weight:600}.decode-scroll{overflow-x:auto}.pin-table{width:100%;border-collapse:collapse;font-size:12px}.pin-table td{padding:4px 6px;border-bottom:1px solid var(--line)}.pin-table tr:hover td{background:var(--raised)}.test-row{display:flex;justify-content:space-between;align-items:center;gap:10px}.ask-user{background:var(--ai-bg);border:1px solid var(--ai-line);border-radius:var(--radius);padding:10px;display:flex;flex-direction:column;gap:8px}.sweep-bar{height:10px;background:var(--chrome);border-radius:5px;position:relative;overflow:hidden}.sweep-bar i{position:absolute;top:0;bottom:0;background:var(--pin-adc);border-radius:5px}.monitor-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:12px}.seg-group{display:flex;align-items:center;gap:6px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:4px 8px}.seg-group .label{margin:0 4px 0 0}.select{padding:3px 6px;font-size:12px}.monitor-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:12px}.plots{display:flex;flex-direction:column;gap:10px;min-width:0}.side{display:flex;flex-direction:column;gap:12px}.plot-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:8px 10px 4px}.plot-head{display:flex;align-items:center;gap:8px;margin-bottom:4px}.plot-val{margin-left:auto;font-size:14px}.console-card{min-height:320px}.console{height:260px;overflow:auto;background:var(--chrome);border-radius:var(--radius-sm);padding:8px;font-family:var(--font-mono);font-size:11.5px;user-select:text;white-space:pre-wrap;word-break:break-all}.mem-row{display:flex;gap:18px}.mem-row .label{margin:0}.heap-bar{height:8px;background:var(--chrome);border-radius:4px;overflow:hidden}.heap-bar i{display:block;height:100%;background:var(--pin-gpio)}.spark{width:100%;height:42px}.report-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.report-3d{position:relative;height:420px;border-radius:10px;overflow:hidden;border:1px solid var(--line)}.report-3d .legend,.report-3d .badges{display:none}.report-preview{max-height:calc(100vh - 420px);overflow:auto}.snap{width:100%;border-radius:var(--radius-sm)}.uplot{font-family:var(--font-mono)}.lib-overlay{position:absolute;top:52px;left:12px;bottom:44px;width:330px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 16px 40px #00000073;padding:12px;overflow:hidden;display:flex;z-index:5}.parts-lib{display:flex;flex-direction:column;gap:8px;min-height:0;flex:1}.parts-lib .filters{flex:none;flex-wrap:wrap}.lib-list{flex:1;min-height:120px;overflow:auto;display:flex;flex-direction:column;gap:5px}.wizard .lib-list{max-height:330px}.lib-row{display:flex;gap:9px;align-items:flex-start;background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius-sm);padding:7px 8px}.lib-row:hover{border-color:#4a5868}.lib-swatch{width:26px;height:26px;border-radius:5px;flex-shrink:0;border:1px solid rgba(255,255,255,.12)}.lib-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.lib-main b{font-size:12.5px;font-weight:500}.lib-pins{display:flex;flex-wrap:wrap;gap:6px;font-family:var(--font-mono);font-size:10px}.lib-actions{display:flex;gap:2px}.lib-actions .btn.icon{padding:4px;border:1px solid transparent}.lib-actions .btn.icon:hover{border-color:var(--line);background:var(--raised)}.import-link{border-top:1px solid var(--line);padding-top:6px}.import-link .label{margin-top:2px}.import-link .text-in{flex:1;min-width:0}.import-link p{margin:4px 0 0}.text-in{min-width:0}.kbd-hint{position:absolute;bottom:10px;right:12px;font-size:11px;color:var(--dim);background:#12171dcc;padding:4px 9px;border-radius:var(--radius-sm)}.part-tools{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0}.pin-line{display:flex;align-items:center;gap:6px;padding:1px 0}.text-in.rename{font-size:15px;font-weight:600;width:100%;background:transparent;border-color:transparent;padding:3px 4px;margin-left:-4px}.text-in.rename:hover,.text-in.rename:focus{border-color:var(--line);background:var(--chrome)}.modal.part-editor{width:min(1060px,94vw);max-height:92vh;overflow:auto}.import-notes{background:var(--ai-bg);border:1px solid var(--ai-line);border-radius:var(--radius);padding:8px 12px;color:var(--muted);font-size:12.5px;margin-bottom:10px}.import-notes ul{margin:6px 0 0;padding-left:18px;color:var(--text)}.pe-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px}.pe-form{display:flex;flex-direction:column;gap:8px}.pe-form label{display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:var(--dim);flex:1}.pe-form label.narrow{flex:0 0 74px}.pe-form .label{margin:8px 0 0}.pe-row{display:flex;gap:8px;align-items:flex-end}.pe-pins{display:flex;flex-direction:column;gap:4px}.pe-pin{display:grid;grid-template-columns:12px 90px 1fr auto auto auto;gap:5px;align-items:center}.pe-pin .btn.icon{padding:3px 6px;border:1px solid var(--line)}.pe-preview{border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);min-height:360px;position:relative}.pe-preview canvas{position:absolute;inset:0}input[type=color]{width:100%;height:30px;background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius-sm);padding:2px}label.check{display:flex;flex-direction:row;gap:6px;align-items:center;margin-top:10px;color:var(--muted)}.lic-chip{cursor:pointer}.lic-trial{color:var(--pin-sda);border-color:#25506a;background:#172a36}.lic-licensed{color:var(--ok);border-color:#2c5a43;background:#1b2d25}.lic-expired{color:var(--err);border-color:#5a2a28;background:#2d1a19}.lang-select{padding:2px 4px;font-size:11px;-webkit-app-region:no-drag}.key-form{display:flex;flex-direction:column;gap:8px;margin-top:8px}.key-form textarea{font-size:11px}.lock-screen{position:fixed;inset:0;z-index:200;background:radial-gradient(1200px 600px at 50% 20%,#1f2a38,var(--bg));display:grid;place-items:center}.lock-card{width:520px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:28px 30px;box-shadow:0 30px 80px #00000080}.lock-card h1{font-size:22px;margin:14px 0 8px}.lock-card p{color:var(--muted)}.logo.big-logo{width:44px;height:44px;border-radius:11px}.logo.big-logo span{width:18px;height:18px}.btn.icon:disabled{opacity:.35}.seg button:disabled{opacity:.35}.seg button{display:inline-flex;align-items:center;gap:4px}.vp-toolbar .tb{display:inline-flex;align-items:center;gap:5px}.lib-overlay,.info-card,.vp-toolbar,.badges,.wire-hint{z-index:20}.pe-row{flex-wrap:wrap}.pe-form label.narrow{flex:0 0 64px}.badges{top:auto;bottom:40px}.vp-toolbar{right:12px}.os-mac .topbar{padding-left:84px}.ai-set-chip{cursor:pointer;display:inline-flex;align-items:center;gap:5px}.ai-set-chip:hover{border-color:var(--ai-line);color:var(--text)}.modal.ai-settings{width:min(620px,94vw);max-height:92vh;overflow:auto;display:flex;flex-direction:column;gap:12px}.modal.ai-settings h2,.modal.ai-settings p{margin:0}.ai-prov-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ai-prov{display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;padding:10px 12px;border-radius:10px;background:var(--chrome);border:1px solid var(--line);min-width:0}.ai-prov:hover{border-color:#3a4552}.ai-prov.on{border-color:var(--ai-line);background:var(--ai-bg)}.ai-prov-name{font-weight:600;display:flex;align-items:center;gap:6px}.ai-prov-name .chip{font-weight:400}.ai-prov-desc{color:var(--muted);font-size:12px;line-height:1.4}.ai-prov-key{color:var(--dim);font-family:var(--font-mono)}.ai-prov-key.ok{color:var(--ok)}.ai-field{display:flex;flex-direction:column;gap:6px}.ai-field .label{margin:0}.ai-field input.text-in{width:100%}.ai-field .row input.text-in{flex:1;min-width:0}.ai-privacy{display:flex;align-items:center;gap:6px;color:var(--dim)!important}.modal.ai-settings .modal-actions{margin-top:4px;align-items:center}.modal.ai-settings .grow{flex:1}.ok-text{color:var(--ok)}.ai-demo-info{display:flex;flex-direction:column;gap:6px;background:var(--ai-bg);border:1px solid var(--ai-line);border-radius:var(--radius);padding:10px 12px}.ai-demo-info p:first-child{color:var(--text)!important}.ai-demo-banner{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;padding:7px 14px;font-size:12px;line-height:1.4;color:var(--text);background:#f2a93b1f;border-bottom:1px solid rgba(242,169,59,.35)}.ai-demo-banner b{color:var(--warn);font-weight:600}.ai-demo-banner .link{font-size:12px}.lib-thumb{width:26px;height:26px;border-radius:5px;object-fit:cover;flex-shrink:0;background:#fff}.pe-photo{position:absolute;right:10px;bottom:10px;width:96px;height:96px;object-fit:cover;border-radius:8px;border:1px solid var(--line);background:#fff}.board-chip{display:inline-flex;align-items:center;gap:6px;cursor:pointer;margin-left:4px;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-chip:hover{border-color:var(--muted);color:var(--text)}.modal.board-picker{width:min(980px,95vw);max-height:90vh;overflow:auto;display:flex;flex-direction:column;gap:10px}.modal.board-picker .row.gap .text-in{flex:1}.board-groups{display:flex;flex-direction:column;gap:14px}.board-card-main .label{font-size:10px;margin:0}.board-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px}.board-card{display:flex;gap:12px;align-items:flex-start;text-align:left;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:10px;color:var(--text);cursor:pointer;font:inherit}.board-card:hover{border-color:var(--muted)}.board-card.on{border-color:var(--ok);box-shadow:inset 0 0 0 1px var(--ok)}.board-card.detected{border-color:var(--ai)}.board-card .board-thumb{flex:none;width:110px;height:auto;margin-top:2px}.board-card-main{display:flex;flex-direction:column;gap:3px;min-width:0}.board-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:3px}.board-chips .chip{font-size:10.5px;padding:1px 6px}.snapshot-clean .vp-toolbar,.snapshot-clean .look-bar,.snapshot-clean .legend,.snapshot-clean .badges,.snapshot-clean .kbd-hint,.snapshot-clean .wire-hint,.snapshot-clean .info-card{display:none!important}.code-check{display:flex;flex-direction:column;gap:8px}.code-input{width:100%;min-height:160px;resize:vertical;background:var(--chrome);color:var(--text);border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px;font-size:12px;line-height:1.45}.code-line{display:block;margin-top:3px;font-family:var(--font-mono);font-size:11px;color:var(--muted);background:var(--bg);border-radius:3px;padding:2px 6px;white-space:pre;overflow:hidden;text-overflow:ellipsis}.card-note.gotcha{border-left:2px solid var(--warn);padding-left:8px}.tpl-list{display:flex;flex-direction:column;gap:6px}.tpl-card{text-align:left;display:flex;flex-direction:column;gap:3px;background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px 10px;color:var(--text);cursor:pointer}.tpl-card:hover:not(:disabled){border-color:var(--pin-gpio)}.tpl-card:disabled{opacity:.55;cursor:default}.tpl-meta{color:var(--muted)}.warn-text{color:var(--warn)}.tpl-view{display:flex;flex-direction:column;gap:8px}.tpl-learn{margin:0;padding-left:18px;color:var(--muted)}.tpl-now{display:flex;gap:8px;align-items:center}.tpl-story{max-height:210px;overflow:auto;display:flex;flex-direction:column;gap:2px;background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius-sm);padding:6px}.story-line{display:grid;grid-template-columns:44px 1fr;gap:8px;text-align:left;background:none;border:0;color:var(--text);font-size:12px;padding:2px 4px;border-radius:3px;cursor:pointer}.story-line:hover{background:var(--raised)}.story-line.k-step span:last-child{font-weight:600}.story-line.k-state span:last-child{color:var(--ai);font-family:var(--font-mono)}.story-line.k-event span:last-child{color:var(--warn)}.story-line.k-value span:last-child,.story-line.k-show span:last-child{color:var(--muted)}.story-line.k-pin span:last-child{color:var(--pin-gpio);font-family:var(--font-mono)}.tpl-code{max-height:280px;overflow:auto}.tpl-code .run-line{background:#5ccb8f2e;box-shadow:inset 3px 0 0 var(--ok)}.part-live{display:block;color:var(--pin-sda);font-size:11px}.learn{position:absolute;inset:0;display:grid;grid-template-columns:250px minmax(0,1fr)}.learn-list{border-right:1px solid var(--line);background:var(--chrome);overflow:auto;padding:12px 10px 20px}.learn-progress{padding:2px 8px 4px;display:flex;flex-direction:column;gap:6px}.learn-progress .bar{height:4px;background:var(--raised);border-radius:2px;overflow:hidden}.learn-progress .bar i{display:block;height:100%;background:var(--ok);transition:width .3s}.learn-item{display:flex;gap:10px;align-items:flex-start;width:100%;text-align:left;background:none;border:none;border-radius:var(--radius-sm);padding:7px 8px;color:var(--muted)}.learn-item:hover{background:var(--panel);color:var(--text)}.learn-item.on{background:var(--raised);color:var(--text)}.learn-num{flex:none;width:20px;height:20px;border-radius:50%;border:1px solid #3d4a58;display:grid;place-items:center;font-size:10.5px;margin-top:1px}.learn-num.done{background:var(--ok);border-color:var(--ok);color:#0c1a12}.learn-item-text{display:flex;flex-direction:column;gap:1px;min-width:0}.learn-item-text b{font-size:12.5px;font-weight:500}.learn-item-text span{font-size:11.5px;color:var(--dim)}.learn-scroll{overflow:auto;min-height:0}.learn-article{max-width:760px;margin:0 auto;padding:28px 32px 48px;line-height:1.6}.learn-article h1{font-size:24px;font-weight:600;margin:4px 0 2px;line-height:1.25}.learn-article>.lead{margin-bottom:18px}.learn-article h3{font-size:15px;font-weight:600;margin:28px 0 6px}.learn-article p{margin:8px 0;max-width:68ch}.learn-article ol,.learn-article ul{padding-left:22px;margin:8px 0;max-width:68ch}.learn-article li{margin:5px 0}.learn-article li::marker{color:var(--dim)}.learn-fig{margin:16px 0;background:var(--viewport);border:1px solid var(--line);border-radius:10px;padding:12px}.learn-fig svg{width:100%;height:auto;display:block}.lf-t{fill:var(--text);font-size:13px;font-weight:600;font-family:var(--font-ui)}.lf-t.mono{font-family:var(--font-mono)}.lf-s,.lf-l{fill:var(--muted);font-size:11.5px;font-family:var(--font-ui)}.lf-l.mono{font-family:var(--font-mono);fill:var(--dim)}.learn-widget{margin:16px 0;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:10px}.learn-widget .learn-fig{margin:0}.reg-grid{display:grid;grid-template-columns:repeat(16,minmax(0,1fr));gap:4px}.reg-cell{position:relative;height:42px;padding:12px 0 0;border:1px solid var(--line);background:var(--chrome);border-radius:var(--radius-sm);font-size:14px;color:var(--dim)}.reg-cell.on{background:color-mix(in srgb,var(--pin-gpio) 28%,var(--panel));border-color:var(--pin-gpio);color:var(--text)}.reg-cell.sel{outline:2px solid var(--ai);outline-offset:1px}.reg-idx{position:absolute;top:3px;left:0;right:0;font-size:9.5px;color:var(--dim)}.learn-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.learn-controls label{display:flex;gap:6px;align-items:center;color:var(--muted)}.learn-controls select,.learn-controls input.num{background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius-sm);padding:4px 8px}.learn-controls input.num{width:84px;font-family:var(--font-mono)}.learn-out{background:var(--chrome);border-radius:var(--radius-sm);padding:8px 10px;display:flex;flex-direction:column;gap:3px;font-size:12.5px}.learn-two .learn-out{margin-top:8px}.muted-text{color:var(--muted)}.learn-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.learn-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px}.learn-stats>div{background:var(--chrome);border-radius:var(--radius-sm);padding:8px 10px;display:flex;flex-direction:column;gap:2px}.learn-stats .label{margin:0}.learn-stats .led-stat{flex-direction:row;align-items:center;gap:10px}.led-stat>span{display:flex;flex-direction:column;gap:2px}.led{flex:none;display:block;width:24px;height:24px;border-radius:50%;border:1.5px solid var(--dim)}.led.on{background:var(--warn);border-color:var(--warn);box-shadow:0 0 12px color-mix(in srgb,var(--warn) 55%,transparent)}.led.blur{background:color-mix(in srgb,var(--warn) 50%,transparent);border-color:var(--warn)}.learn-slider{display:grid;grid-template-columns:130px minmax(0,1fr) 130px;gap:12px;align-items:center}.learn-slider input{width:100%;accent-color:var(--ai)}.learn-slider b{font-weight:500}.learn-legend{display:flex;gap:16px;color:var(--muted)}.learn-legend i{display:inline-block;width:14px;height:3px;border-radius:2px;margin-right:6px;vertical-align:middle}.learn-code{position:relative;margin:12px 0}.learn-code pre{margin:0;background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius);padding:12px 40px 12px 14px;overflow:auto;font-size:12.5px;line-height:1.55}.learn-code .btn.icon{position:absolute;top:6px;right:6px;color:var(--dim)}.learn-code .btn.icon:hover{color:var(--text);background:var(--raised)}.learn-table-wrap{overflow-x:auto;margin:12px 0}.learn-table{border-collapse:collapse;width:100%;font-size:13px;line-height:1.45}.learn-table th{text-align:left;font-weight:600;color:var(--muted);font-size:12px;padding:6px 10px;border-bottom:1px solid #3d4a58}.learn-table td{padding:7px 10px;border-bottom:1px solid var(--line);vertical-align:top}.learn-table td:first-child{color:var(--muted)}.learn-table td.mono{color:var(--pin-gpio);white-space:nowrap;font-size:12.5px}.learn-tip{margin:18px 0;border-left:3px solid var(--warn);background:var(--panel);border-radius:0 var(--radius) var(--radius) 0;padding:10px 14px}.learn-tip b{color:var(--warn);font-size:12.5px;font-weight:600}.learn-tip p{margin:3px 0 0}.learn-interview{margin-top:30px;border-top:1px solid var(--line)}.learn-ai{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:22px 0 8px}.learn-ai .btn{display:inline-flex;align-items:center;gap:6px}.learn-nav{display:flex;justify-content:space-between;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.learn-banner{width:100%;margin:0 0 22px;display:flex;gap:14px;align-items:center;text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px 14px}.learn-banner:hover{border-color:#4a5868;background:#202831}.learn-banner>span:last-child{display:flex;flex-direction:column;gap:2px}.learn-banner b{font-size:14px;font-weight:600}.learn-banner span span{color:var(--dim);font-size:12px}.learn-item:focus-visible,.reg-cell:focus-visible,.learn-banner:focus-visible{outline:2px solid var(--ai);outline-offset:2px}@media(max-width:1180px){.learn{grid-template-columns:206px minmax(0,1fr)}.learn-article{padding:22px 20px 40px}.learn-slider{grid-template-columns:1fr;gap:4px}.learn-two{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.learn-progress .bar i{transition:none}}.pinout-wrap.dg-host{place-items:stretch}.dg-wrap{position:relative;width:100%;height:100%;overflow:auto;display:grid;place-items:center}.diagram{max-width:100%;height:auto}.dg-block{fill:var(--panel);stroke:var(--line);cursor:pointer}.dg-block.hot{stroke:var(--ai);stroke-width:2}.dg-title{fill:var(--text);font:600 13px var(--font-ui);pointer-events:none}.dg-sub,.dg-gap{fill:var(--dim);font:11px var(--font-ui);pointer-events:none}.dg-pin{cursor:pointer}.dg-pin circle.hot{stroke:#fff;stroke-width:2}.dg-pin-label{fill:var(--muted);font:11px var(--font-mono)}.dg-wire,.dg-mark{cursor:pointer}.dg-mark-text{fill:#12171d;font:700 11px var(--font-ui);pointer-events:none}.dg-empty{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:24px}.bom{display:flex;flex-direction:column;gap:8px}.bom-table{width:100%;border-collapse:collapse;font-size:12px}.bom-table th{text-align:left;color:var(--dim);font-weight:500;border-bottom:1px solid var(--line);padding:4px 6px}.bom-table td{border-bottom:1px solid var(--line);padding:5px 6px;vertical-align:top}.bom-table tr.bom-extra td:first-child{box-shadow:inset 2px 0 0 var(--warn)}.bom-details summary{cursor:pointer}.report-bom{grid-column:1 / -1}.planner{display:flex;flex-direction:column;gap:8px}.planner-needs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px}.planner-need{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted)}.planner-need input[type=number]{width:56px}.planner-row{cursor:pointer}.planner-row:hover td{background:var(--raised)}.learn-seg{align-self:flex-start;flex-wrap:wrap}.mcp-settings{display:flex;flex-direction:column;gap:6px;border-top:1px solid var(--line);padding-top:12px;margin-top:4px}.mcp-cmd{flex:1;background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius-sm);padding:6px 8px;overflow-x:auto;white-space:nowrap}.learn.with-preview{grid-template-columns:250px minmax(0,1fr) minmax(0,1.1fr)}.learn-board{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0;padding:8px 10px;border:1px dashed var(--line);border-radius:var(--radius-sm)}.learn-preview{border-left:1px solid var(--line);display:flex;flex-direction:column;min-height:0;padding:10px;gap:6px;background:var(--bg)}.learn-preview-head{display:flex;align-items:center;gap:8px}.learn-preview-head .btn{margin-left:auto}.learn-preview-3d{position:relative;flex:1;min-height:0;border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden}.learn-preview-3d .viewport{position:absolute;inset:0}.power{display:flex;flex-direction:column;gap:8px}.power-inputs{display:flex;gap:10px;flex-wrap:wrap}.power-inputs label{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--muted);flex:1 1 120px}.power-inputs input{width:100%;background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius-sm);padding:4px 6px}.power-result{display:flex;gap:16px;flex-wrap:wrap}.power-result>div{display:flex;flex-direction:column;gap:2px}.power-result b{font-size:16px}.power .src{font-size:11px}.calc{display:flex;flex-direction:column;gap:8px}.calc-inputs{display:flex;gap:10px;flex-wrap:wrap}.calc-inputs label{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--muted);flex:1 1 120px}.calc-inputs input,.calc-inputs select{width:100%;background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius-sm);padding:4px 6px}.calc-result{display:flex;flex-direction:column;gap:8px;border-left:2px solid var(--ok);padding-left:10px}.calc-result.v-ok{border-left-color:var(--warn)}.calc-result.v-risky{border-left-color:var(--err)}.calc-result p{margin:0}.calc-values{display:flex;gap:16px;flex-wrap:wrap}.calc-values>div{display:flex;flex-direction:column;gap:2px}.calc-code pre{margin:4px 0 0;background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px;font-size:11.5px;overflow-x:auto;white-space:pre}.learn-lab{margin:18px 0;display:flex;gap:14px;align-items:center;justify-content:space-between;border-left:3px solid var(--ok);background:var(--panel);border-radius:0 var(--radius) var(--radius) 0;padding:10px 14px}.learn-lab p{margin:4px 0}.portfolio{display:flex;flex-direction:column;gap:8px}.portfolio select{background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius-sm);padding:4px 6px}.portfolio-stages{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.portfolio-stages>li{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel)}.portfolio-stages>li.done{border-left:3px solid var(--ok)}.portfolio-stage-head{width:100%;text-align:left;background:none;border:none;color:var(--text);padding:6px 8px;cursor:pointer}.portfolio-stage{padding:0 10px 10px;display:flex;flex-direction:column;gap:6px;font-size:13px}.portfolio-stage p,.portfolio-stage ul{margin:0}.portfolio-code{background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px;font-size:11.5px;overflow-x:auto;max-height:320px}.splitter{position:absolute;z-index:20;background:transparent;transition:background .15s}.splitter:hover,.splitter:focus-visible{background:var(--ok);outline:none}.splitter-right{left:-3px;top:0;bottom:0;width:6px;cursor:col-resize}.splitter-log,.splitter-assistant{left:0;right:0;top:-3px;height:6px;cursor:row-resize}body.resizing-x,body.resizing-x *{cursor:col-resize!important;user-select:none}body.resizing-y,body.resizing-y *{cursor:row-resize!important;user-select:none}.web-chip{cursor:pointer;color:var(--ok);border-color:#2c5a43;background:#1b2d25}.web-chip:hover{border-color:var(--ok);color:var(--text)}.web-modal{width:min(480px,calc(100vw - 32px))}.web-modal .web-reason{color:var(--text);background:var(--raised);border-radius:var(--radius-sm);padding:8px 10px}.web-modal ul{margin:4px 0 0;color:var(--muted);font-size:13px}.web-modal li{margin:3px 0}.web-modal a.btn{text-decoration:none}.os-web .topbar{-webkit-app-region:no-drag}.ce-files{display:flex;align-items:center;gap:2px;padding:0 6px;height:28px;flex-shrink:0;background:var(--chrome);border-bottom:1px solid var(--line);overflow-x:auto;overflow-y:hidden}.ce-file{display:flex;align-items:center;border-radius:5px 5px 0 0;height:100%}.ce-file>button[role=tab]{background:none;border:none;color:var(--dim);font-size:11.5px;padding:0 8px;height:100%;white-space:nowrap;border-bottom:2px solid transparent}.ce-file>button[role=tab]:hover{color:var(--text)}.ce-file.on>button[role=tab]{color:var(--text);border-bottom-color:var(--ai)}.ce-file-x{background:none;border:none;color:var(--dim);font-size:13px;padding:0 5px 0 0;line-height:1}.ce-file-x:hover{color:var(--err)}.ce-file-add{background:none;border:1px dashed var(--line);color:var(--dim);border-radius:5px;width:22px;height:20px;line-height:1;margin-left:4px;flex-shrink:0}.ce-file-add:hover{color:var(--text);border-color:var(--muted)}.ce-file-in{width:140px;height:20px;font-size:11.5px;background:var(--bg);color:var(--text);border:1px solid var(--ai-line);border-radius:4px;padding:0 6px;margin:0 4px}.ce-file-problem{color:var(--warn);white-space:nowrap;margin-left:6px}.ce-file-confirm{display:flex;align-items:center;gap:6px;margin-left:10px;white-space:nowrap;color:var(--muted)}.ce-file-confirm .btn.small{padding:1px 8px}.ce-host{position:relative;flex:1;min-height:0}.ce-host>.cm-editor{position:absolute;inset:0}.ce-status{display:flex;align-items:center;gap:14px;height:22px;padding:0 10px;flex-shrink:0;font-size:11px;color:var(--muted);background:var(--chrome);border-top:1px solid var(--line);white-space:nowrap;overflow:hidden}.ce-status .grow{flex:1}.ce-status .ok{color:var(--ok)}.ce-status .err{color:var(--err)}.ce-status-btn{background:none;border:none;padding:0;font:inherit;color:var(--ok)}.ce-status-btn.warn{color:var(--warn)}.ce-status-btn:hover{text-decoration:underline}.ce-status-run{color:var(--ai)}.cm-pin{text-decoration:underline dotted var(--pin-c, var(--dim));text-decoration-thickness:1.5px;text-underline-offset:3px;cursor:help}.cm-pin-lit{background:color-mix(in srgb,var(--pin-c, var(--dim)) 22%,transparent);border-radius:3px;text-decoration-style:solid}.cm-pincard{display:flex;flex-direction:column;gap:5px;padding:9px 11px;max-width:340px;font-size:12px;line-height:1.4;border-left:3px solid var(--pin-c, var(--line))}.cm-pincard-head{display:flex;align-items:center;gap:8px}.cm-pincard-dot{width:9px;height:9px;border-radius:50%;background:var(--pin-c, var(--dim));flex-shrink:0}.cm-pincard-row{display:flex;gap:8px}.cm-pincard-row>.dim:first-child{min-width:58px}.cm-pincard-caution{color:var(--warn)}.cm-pincard-caution:before{content:"! ";font-weight:700}.cm-pincard-src{font-size:10.5px;color:var(--dim)}.cm-pincard-actions{display:flex;align-items:center;gap:8px;margin-top:2px}.cm-completion-src{margin-top:6px;font-family:var(--font-mono);font-size:10.5px;color:var(--dim)}.cm-line.ce-line.run{background:#5ccb8f21;box-shadow:inset 3px 0 0 var(--ok)}.cm-lineNumbers .cm-gutterElement.ce-run-gutter{color:var(--ok);font-weight:600}.cm-foldGutter .cm-gutterElement.ce-run-gutter{position:relative}.cm-foldGutter .cm-gutterElement.ce-run-gutter:before{content:"▶";position:absolute;left:1px;color:var(--ok);font-size:9px}.cm-sug{margin:4px 0 6px;padding:8px 10px;background:var(--ai-bg);border:1px solid var(--ai-line);border-left:3px solid var(--ai);border-radius:6px;font-family:var(--font-ui);display:flex;flex-direction:column;gap:5px;max-width:760px}.cm-sug-head{display:flex;align-items:center;gap:10px}.cm-sug-title{color:var(--ai);font-weight:600;font-size:12.5px}.cm-sug-code{margin:0;font-size:12px;line-height:19px;color:var(--muted);font-style:italic;white-space:pre;overflow-x:auto;background:#0003;border-radius:4px;padding:4px 8px}.cm-sug-text{color:var(--text);white-space:pre-line}.cm-sug-actions{display:flex;gap:6px;flex-wrap:wrap}.cm-line.cm-sug-old{text-decoration:line-through;text-decoration-color:#ff5d52b3;background:#ff5d5214;opacity:.75}.cm-tooltip.cm-tooltip-above:has(>.cm-seltools),.cm-tooltip:has(>.cm-seltools){background:var(--ai-bg);border-color:var(--ai-line)}.cm-seltools{display:flex;gap:2px;padding:2px}.cm-seltool{background:none;border:none;color:var(--ai);font-size:11.5px;padding:2px 8px;border-radius:4px}.cm-seltool:hover{background:var(--ai-line);color:var(--text)}.ce-ask{position:absolute;top:36px;right:18px;z-index:6;width:min(520px,calc(100% - 36px));display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--ai-bg);border:1px solid var(--ai-line);border-radius:var(--radius);box-shadow:0 12px 30px #00000073}.ce-ask-label{color:var(--ai);white-space:nowrap}.ce-ask .text-in{flex:1;min-width:0}.ce-ask-note{position:absolute;top:100%;left:10px;right:10px;margin-top:4px;color:var(--muted)}.serial-src{margin-left:8px;background:none;border:none;padding:0;font:inherit;font-size:10.5px;color:var(--dim);opacity:0}.console>div:hover .serial-src{opacity:1}.serial-src:hover{color:var(--ai);text-decoration:underline}.dg-bar{position:absolute;top:0;left:0;z-index:1;display:flex;gap:8px;align-items:center}.dg-wrap{padding-top:36px;box-sizing:border-box}.sch-host{line-height:0}.sch-host svg{display:block;max-width:none}.sch-host [data-target],.sch-host [data-mark]{cursor:pointer}.sch-host g.hot polyline,.sch-host g.hot polygon,.sch-host g.hot rect{stroke:var(--ai)}.sch-host g.hot rect{stroke-width:2}.sch-host g.hot text{fill:var(--ai)}.sch-host g.hot circle{fill:var(--ai)}.sch-host .sch-wire g.hot polyline{stroke-width:3}.regmap{display:flex;flex-direction:column;gap:8px;min-width:0}.regmap-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.regmap-where{display:flex;align-items:center;gap:6px;flex-wrap:wrap;color:var(--muted)}.regmap-where .chip{margin:0}.regmap-addr{background:var(--chrome);color:var(--text);border:1px solid var(--line);border-radius:var(--radius-sm);padding:2px 6px;font-size:12px}.regmap-ro{margin:0;color:var(--ok)}.regmap .card-note,.regmap .card-flag{margin:0}.regmap-table{width:100%;border-collapse:collapse;font-size:12px;table-layout:auto}.regmap-table th{text-align:left;font-weight:500;color:var(--dim);font-size:11px;padding:4px 6px;border-bottom:1px solid var(--line)}.regmap-table td{padding:5px 6px;border-bottom:1px solid var(--line);vertical-align:top}.regmap-row{cursor:pointer}.regmap-row:hover td{background:var(--raised)}.regmap-row.open td{background:var(--chrome)}.regmap-row.read td:nth-child(4){color:var(--ok)}.regmap-meaning{color:var(--muted)}.regmap-acc{display:inline-block;font-family:var(--font-mono);font-size:10px;padding:1px 5px;border-radius:3px;border:1px solid var(--line);color:var(--muted)}.regmap-acc.acc-r{color:var(--pin-sda);border-color:var(--pin-sda)}.regmap-acc.acc-rw{color:var(--pin-gpio);border-color:var(--pin-gpio)}.regmap-acc.acc-w{color:var(--warn);border-color:var(--warn)}.regmap-detail td{background:var(--chrome);padding:8px 10px 10px}.regmap-strip{display:flex;gap:3px;margin:6px 0 8px}.regmap-seg{flex-basis:0;min-width:0;border:1px solid var(--pin-sda);border-radius:var(--radius-sm);padding:3px 4px;background:var(--panel)}.regmap-seg.undescribed{border-color:var(--line);border-style:dashed}.regmap-seg-name{font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}.regmap-seg-bits{display:flex;justify-content:space-around}.regmap-seg-bits span{font-size:13px;color:var(--dim)}.regmap-seg-bits span.one{color:var(--text);font-weight:600}.regmap-fields{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column;gap:4px}.regmap-fields li{display:grid;grid-template-columns:64px minmax(80px,max-content) 40px 1fr;gap:8px;align-items:baseline}.regmap-fields li.undescribed{color:var(--dim)}.regmap-bits{color:var(--dim);font-size:11px}.regmap-fname{color:var(--text)}.regmap-fval{color:var(--ok)}.regmap-foot{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;margin-top:4px}.regmap-foot .btn{margin-left:auto}.regmap-src{color:var(--dim);font-size:10.5px;margin-top:2px}.regmap-cmds summary{cursor:pointer;color:var(--muted);font-size:12px;padding:4px 0}.regmap-cmds p{margin:4px 0 6px}.regmap-modal{width:min(820px,calc(100vw - 48px));max-height:calc(100vh - 80px);overflow:auto}.regmap-modal h2{font-size:16px}.regmap-tabs{display:flex;gap:4px;flex-wrap:wrap}.archive{position:absolute;inset:0;display:flex;min-height:0}.archive-main{flex:1;min-width:0;overflow:auto;padding:18px 20px 30px;display:flex;flex-direction:column;gap:10px}.archive-main>*{flex-shrink:0}.archive-main .screen-head{align-items:flex-start;gap:16px}.archive-note{font-size:12px;padding:7px 10px;border-radius:var(--radius-sm);background:var(--panel);border:1px solid var(--line);color:var(--muted)}.archive-note.ok{border-color:#2c5a43;color:var(--ok)}.archive-note.err{border-color:#5a2a28;color:var(--err)}.archive-empty{max-width:640px}.archive-filters .text-in{width:260px}.archive-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.archive-table th{position:sticky;top:0;background:var(--panel)}.archive-table tbody tr{cursor:pointer}.archive-table tbody tr:hover td{background:#202831}.archive-table tbody tr.on td{background:var(--ai-bg)}.archive-table td .chip{font-size:10.5px;padding:1px 6px}.archive-table .chip.raw{background:transparent;border-color:var(--line)}.archive-table .chip.proto{color:var(--ai);background:var(--ai-bg);border-color:var(--ai-line)}.chip.role-sda{color:var(--pin-sda);border-color:var(--pin-sda);background:transparent}.chip.role-spi{color:var(--pin-spi);border-color:var(--pin-spi);background:transparent}.chip.role-uart{color:var(--pin-uart);border-color:var(--pin-uart);background:transparent}.chip.role-gpio{color:var(--pin-gpio);border-color:var(--pin-gpio);background:transparent}.chip.role-adc{color:var(--pin-adc);border-color:var(--pin-adc);background:transparent}.src-mark{color:var(--ai);font-size:10.5px}.archive-roots{display:flex;flex-direction:column;gap:4px}.archive-detail{width:380px;flex:none;border-left:1px solid var(--line);background:var(--chrome);overflow:auto;padding:14px 16px 24px;display:flex;flex-direction:column;gap:8px}.archive-detail h3{margin:0;font-size:16px}.archive-detail p{margin:0}.archive-path{word-break:break-all}.archive-facts{margin:0;display:grid;grid-template-columns:1fr;gap:2px}.archive-facts dt{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--dim);margin-top:8px}.archive-facts dd{margin:0;font-size:12.5px}.archive-facts ul{margin:2px 0 0;padding-left:16px}.archive-facts li{margin:1px 0}.archive-fix{margin-top:4px}.archive-fix .text-in{flex:1;min-width:0}.src{color:var(--dim);margin-left:4px;font-size:10.5px}.src.user{color:var(--ai)}.src.ai{color:var(--ai);font-style:italic}button.src{color:var(--dim)}button.src:hover{color:var(--text)}.archive-detail textarea{width:100%;resize:vertical}.similar-list{display:flex;flex-direction:column;gap:6px;padding:0 12px 8px}.similar-card{display:flex;flex-direction:column;gap:5px;background:var(--panel);border:1px solid var(--ai-line);border-radius:var(--radius);padding:9px 11px}.similar-title{color:var(--ai);font-size:11.5px;font-weight:600;display:inline-flex;align-items:center;gap:6px}.similar-why{color:var(--muted)}.similar-summary{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.np-describe .similar-list{padding:0}.top-menu{display:flex;gap:2px;flex-shrink:0}.menu-item{display:inline-flex;align-items:center;gap:6px;background:none;border:none;border-radius:6px;padding:6px 10px;color:var(--muted);font-size:13px;white-space:nowrap}.menu-item svg{opacity:.75}.menu-item:hover{color:var(--text);background:var(--panel)}.menu-item.on{background:var(--raised);color:var(--text)}.menu-item.on svg{color:var(--ok);opacity:1}.top-mid{flex:1 1 0;min-width:0;display:flex;justify-content:center;overflow:hidden}.topbar .conn{flex:0 1 auto}.topbar .board-chip{min-width:40px;flex-shrink:1;max-width:200px}.conn-status{display:inline-flex;align-items:center;gap:7px;background:none;border:none;padding:3px 4px;border-radius:6px;font-size:12px;min-width:0;flex-shrink:1;overflow:hidden}.conn-status .mono{overflow:hidden;text-overflow:ellipsis}.topbar .top-actions{flex-shrink:0}@media(max-width:1720px){.topbar .wide-only{display:none}}.conn-status:hover{background:var(--panel)}@media(max-width:1500px){.menu-item svg{display:none}.menu-item{padding:6px 8px}.conn-status .chip{display:none}}@media(max-width:1200px){.brand span,.topbar .board-chip{display:none}}.edge-toggle{position:absolute;z-index:25;left:-11px;top:50%;width:20px;height:36px;margin-top:-18px;border-radius:10px;border:1px solid var(--line);background:var(--chrome);color:var(--dim);display:grid;place-items:center;padding:0;opacity:0;transition:opacity .15s}.right:hover>.edge-toggle,.edge-toggle:focus-visible{opacity:1}.edge-toggle:hover{color:var(--text);border-color:var(--muted)}.right-strip{height:100%;display:flex;flex-direction:column;align-items:center;gap:10px;padding-top:10px;background:var(--chrome)}.right-strip button{background:none;border:none;color:var(--ai);display:flex;flex-direction:column;align-items:center;gap:8px;padding:6px 4px;border-radius:6px}.right-strip button:hover{background:var(--panel)}.right-strip .vtext{writing-mode:vertical-rl;font-size:12px;letter-spacing:.04em}.right-tabs{display:flex;flex-direction:column;height:100%}.right-tabs>.tabbar{flex-shrink:0}.right-tabs>.tab-body{flex:1;min-height:0;position:relative;overflow:auto}.right-tabs>.tab-body.no-scroll{overflow:hidden}.tabbar{display:flex;align-items:center;gap:2px;padding:0 8px;min-height:34px;background:var(--chrome);border-bottom:1px solid var(--line)}.tabbar .tab{display:inline-flex;align-items:center;gap:6px;background:none;border:none;border-radius:5px;padding:4px 10px;font-size:12.5px;color:var(--muted);white-space:nowrap}.tabbar .tab:hover{color:var(--text);background:var(--panel)}.tabbar .tab.on{background:var(--raised);color:var(--text)}.tabbar .tab.ai.on{color:var(--ai);background:var(--ai-bg)}.tabbar .count{font-family:var(--font-mono);font-size:10px;border-radius:8px;padding:0 5px;background:var(--raised);color:var(--muted)}.tabbar .count.warn{color:#1d1405;background:var(--warn)}.tabbar .count.err{color:#fff;background:var(--err)}.tabbar .grow{flex:1}.tabbar .tb-btn{background:none;border:none;color:var(--dim);padding:4px 6px;border-radius:5px;display:grid;place-items:center}.tabbar .tb-btn:hover{color:var(--text);background:var(--panel)}.tabbar .tools{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden}.bottom-panel{display:flex;flex-direction:column;height:100%;background:var(--panel)}.bottom-panel>.tab-body{flex:1;min-height:0;position:relative}.work.bottom-closed .bottom-panel>.tab-body{display:none}.bottom-panel .log-panel header{display:none}.bottom-panel .filters{flex:0 1 auto;overflow:hidden}.code-pane{position:absolute;inset:0;display:flex}.ce-wrap{position:relative;flex:1;min-width:0;display:flex;flex-direction:column}.tk-comment{color:#6f7c8a;font-style:italic}.tk-string{color:#e8b86a}.tk-pre{color:#e07bd4}.tk-keyword{color:#c9beff}.tk-type{color:#9adcf7}.tk-number{color:#e8d24a}.tk-call{color:#e9edf1}.tk-api{color:#5ccb8f}.tk-const{color:#ff9f8f}.bottom-panel .log-list{position:absolute;inset:0}.ce-suggest{position:absolute;right:18px;bottom:12px;width:min(440px,60%);max-height:calc(100% - 24px);overflow:auto;z-index:5;display:flex;flex-direction:column;gap:6px;background:var(--ai-bg);border:1px solid var(--ai-line);border-radius:var(--radius);padding:10px 12px;box-shadow:0 12px 30px #00000073}.ce-suggest-title{color:var(--ai);font-weight:600;font-size:12.5px}.ce-suggest-code{margin:0;max-height:150px;overflow:auto;font-size:11px;background:#00000040;border-radius:4px;padding:6px 8px;color:var(--muted);font-style:italic;white-space:pre;user-select:text}.code-debug{width:230px;flex-shrink:0;border-left:1px solid var(--line);background:var(--panel);overflow:auto;padding:8px 10px;display:flex;flex-direction:column;gap:3px;font-size:12px}.code-debug .label{margin:6px 0 2px}.dbg-row{display:flex;justify-content:space-between;align-items:center;gap:8px;background:none;border:none;padding:2px 4px;border-radius:4px;text-align:left;font-size:12px;min-width:0}.dbg-row.col{flex-direction:column;align-items:flex-start}.dbg-row.clickable:hover{background:var(--raised)}.dbg-row .mono{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lvl-1{color:var(--ok)}.lvl-0{color:var(--dim)}.run-story{position:absolute;inset:0;overflow:auto;padding:6px 12px;max-height:none}.run-controls{flex-wrap:nowrap}.bottom-panel .tools .btn.small{padding:3px 9px}.bottom-panel .tools .seg button{padding:3px 8px}.log-row{border-left:3px solid transparent}.log-row.sev-bar-warning{border-left-color:var(--warn)}.log-row.sev-bar-failed{border-left-color:var(--err)}.log-row.sev-bar-found{border-left-color:var(--ok)}.assistant header[hidden]{display:none}.project-tabs{flex-shrink:0;height:36px;display:flex;align-items:flex-end;gap:2px;padding:0 10px;background:var(--chrome);border-bottom:1px solid var(--line);overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.ptab{display:flex;align-items:center;gap:8px;height:31px;padding:0 8px 0 13px;border:1px solid transparent;border-bottom:none;border-radius:8px 8px 0 0;font-size:12.5px;color:var(--muted);cursor:pointer;white-space:nowrap;max-width:240px;outline:none}.ptab:hover{color:var(--text);background:var(--panel)}.ptab.on{background:var(--bg);border-color:var(--line);color:var(--text);margin-bottom:-1px;height:32px}.ptab:focus-visible{box-shadow:inset 0 0 0 1px var(--ai-line)}.ptab-name{overflow:hidden;text-overflow:ellipsis}.ptab-name-in{background:var(--chrome);border:1px solid var(--ai-line);border-radius:4px;color:var(--text);font-size:12.5px;width:150px;padding:1px 4px}.ptab-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.ptab-dot.sev-warning{background:var(--warn)}.ptab-dot.sev-error{background:var(--err)}.ptab-close{background:none;border:none;color:var(--dim);padding:0 3px;font-size:14px;line-height:1;border-radius:4px}.ptab-close:hover{color:var(--text);background:var(--raised)}.ptab-new{background:none;border:none;color:var(--muted);font-size:18px;padding:2px 10px 5px;align-self:center;border-radius:6px}.ptab-new:hover{color:var(--text);background:var(--panel)}.modal.np-modal{width:min(1040px,94vw);max-height:92vh;overflow:auto;padding:26px 30px;display:flex;flex-direction:column;gap:14px;background:#1f262e}.np-modal h2{font-size:22px;margin:0}.np-modal>p{margin:-8px 0 0}.np-board-row .np-board{min-width:260px}.np-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.np-card{text-align:left;display:flex;flex-direction:column;gap:6px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:18px 18px 16px;color:var(--muted)}.np-card b{color:var(--text);font-size:15px;margin-top:6px}.np-card span{font-size:12.5px;color:var(--muted)}.np-card:hover{border-color:#4a5868;background:#202831}.np-card.on{border:2px solid var(--ok);background:linear-gradient(180deg,#1c3027,#1a2420);color:var(--ok);padding:17px 17px 15px}.np-describe{background:var(--ai-bg);border:1px solid var(--ai-line);border-radius:10px;padding:12px 16px 10px;display:flex;flex-direction:column;gap:8px}.np-describe-title{color:var(--ai);font-weight:600;font-size:13px}.np-describe .grow{flex:1}.np-describe p{margin:0}.np-questions,.np-proposal{display:flex;flex-direction:column;gap:8px;background:#0000002e;border-radius:8px;padding:10px 12px}.np-q{display:flex;flex-direction:column;gap:5px}.small-in{padding:3px 7px;font-size:12px;width:180px}.np-part{display:flex;align-items:baseline;gap:8px;font-size:12.5px}.np-templates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.np-port{background:var(--chrome);border:1px solid var(--line);border-radius:10px;padding:16px 20px;display:flex;flex-direction:column;gap:10px}.np-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 24px;font-size:12.5px}.np-steps li{display:grid;grid-template-columns:18px 1fr;gap:4px}.np-steps .log-src{display:block;margin:0;white-space:normal}.np-ico{font-weight:600}.np-steps .st-ok .np-ico{color:var(--ok)}.np-steps .st-warn .np-ico{color:var(--warn)}.np-steps .st-fail .np-ico{color:var(--err)}.np-steps .st-skip .np-ico,.np-steps .st-run .np-ico{color:var(--dim)}.np-bar{height:5px;background:var(--raised);border-radius:3px;overflow:hidden}.np-bar i{display:block;height:100%;background:var(--ok);transition:width .3s}.np-confirm{display:flex;flex-direction:column;gap:6px}.np-confirm .label{margin:4px 0 0}.np-guess{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12.5px}.np-foot{gap:12px;flex-wrap:wrap}.np-foot>.small{flex:1;min-width:240px}@media(max-width:900px){.np-cards,.np-steps,.np-templates{grid-template-columns:1fr}}.tag-detected{margin-left:6px;color:var(--ok);font-size:10px}.cmd-open{width:min(360px,100%);display:flex;align-items:center;gap:8px;padding:5px 10px;background:var(--panel);border:1px solid var(--ai-line);border-radius:8px;color:var(--muted);font-size:12.5px;min-width:0;-webkit-app-region:no-drag}.cmd-open:hover{border-color:var(--ai);color:var(--text)}.cmd-spark{color:var(--ai)}.cmd-ph{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.kbd{font-size:10.5px;color:var(--dim);border:1px solid var(--line);border-radius:4px;padding:0 5px}.cmd-ph-short{display:none}@media(max-width:1760px){.cmd-ph{display:none}.cmd-ph-short{display:inline;white-space:nowrap}.cmd-open{width:auto}.cmd-ph-short{overflow:hidden;text-overflow:ellipsis}}@media(max-width:1300px){.cmd-ph-short{display:none}}.top-mid{container-type:inline-size}@container (max-width: 80px){.cmd-open .kbd{display:none}.cmd-open{justify-content:center}}.cmd-back{position:fixed;inset:0;z-index:90;background:#080a0d73;display:flex;justify-content:center;align-items:flex-start;padding-top:70px}.cmd{width:min(620px,92vw);background:var(--panel);border:1px solid var(--ai-line);border-radius:12px;box-shadow:0 24px 60px #0000008c;overflow:hidden}.cmd-in{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line)}.cmd-in input{flex:1;background:none;border:none;outline:none;font-size:15px;color:var(--text);user-select:text}.cmd-list{list-style:none;margin:0;padding:6px;max-height:50vh;overflow:auto}.cmd-list li{display:grid;grid-template-columns:20px minmax(0,auto) minmax(0,1fr);align-items:center;gap:10px;padding:7px 10px;border-radius:7px;cursor:pointer;color:var(--muted)}.cmd-list li.on{background:var(--raised);color:var(--text)}.cmd-list li.ai{color:var(--ai)}.cmd-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.cmd-hint{font-size:11.5px;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cmd-foot{padding:7px 14px;border-top:1px solid var(--line)}.ai-action{background:var(--ai-bg);border:1px solid var(--ai-line);border-radius:10px 10px 10px 2px;padding:9px 11px;display:flex;flex-direction:column;gap:7px}.act-steps{list-style:none;margin:0;padding:8px 10px;background:#0003;border-radius:7px;display:flex;flex-direction:column;gap:5px;font-size:12.5px}.act-steps li{display:flex;align-items:center;gap:8px}.as-ico{width:14px;display:inline-grid;place-items:center;flex-shrink:0}.as-ok .as-ico{color:var(--ok)}.as-fail{color:var(--err)}.as-skip{color:var(--dim)}.as-bar{flex:1;height:4px;background:var(--raised);border-radius:2px;overflow:hidden;min-width:60px}.as-bar i{display:block;height:100%;background:var(--ai);transition:width .2s}.ai-notice{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--warn);border-radius:8px;padding:9px 11px;display:flex;flex-direction:column;gap:6px}.ai-notice.sev-error{border-left-color:var(--err)}.ai-notice.sev-info{border-left-color:var(--pin-sda)}.ai-notice.resolved{border-left-color:var(--ok);opacity:.7}.ai-notice.resolved .notice-kicker{color:var(--ok)}.ai-notice.resolved .ai-text{color:var(--muted)}.notice-kicker{color:var(--ai);font-size:11.5px;font-weight:600}.ai-proposal{background:#0000002e;border-radius:7px;padding:8px 10px;display:flex;flex-direction:column;gap:6px}.ai-proposal .label{margin:0}.ai-proposal ul{margin:0;padding-left:16px}.where-pulse{position:relative;animation:where-pulse .9s ease-out 3;box-shadow:0 0 0 2px var(--ai)!important;border-radius:6px}@keyframes where-pulse{0%{box-shadow:0 0 #c9beffe6}to{box-shadow:0 0 0 10px #c9beff00}}@media(prefers-reduced-motion:reduce){.where-pulse{animation:none}}.warn-banner{flex-shrink:0;min-height:42px;display:flex;align-items:center;gap:12px;padding:5px 12px;background:linear-gradient(90deg,#f2a93b33,#f2a93b12 60%,#f2a93b0a);border-bottom:1px solid rgba(242,169,59,.45);box-shadow:inset 3px 0 0 var(--warn);color:var(--warn);font-size:13px}.warn-banner.sev-error{background:linear-gradient(90deg,#ff5d5233,#ff5d5212 60%,#ff5d520a);border-bottom-color:#ff5d5273;box-shadow:inset 3px 0 0 var(--err);color:var(--err)}.wb-text{color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto}.wb-text span{color:#d8dee4}.wb-src{font-size:11px;color:var(--muted);white-space:nowrap}.warn-banner .grow{flex:1 0 0}.wb-btn{background:none;color:var(--warn);border:1px solid rgba(242,169,59,.5);border-radius:6px;padding:4px 10px;font-size:12px;white-space:nowrap}.warn-banner.sev-error .wb-btn{color:var(--err);border-color:#ff5d5280}.wb-btn.fix{background:var(--warn);color:#161b21;border-color:var(--warn);font-weight:600}.warn-banner.sev-error .wb-btn.fix{background:var(--err);color:#fff;border-color:var(--err)}.wb-btn.ai,.warn-banner.sev-error .wb-btn.ai{color:var(--ai);border-color:var(--ai-line)}.wb-btn:hover{filter:brightness(1.15)}.wb-nav{display:inline-flex;align-items:center;gap:2px;color:var(--muted);font-size:12px;white-space:nowrap;padding-left:4px}.wb-nav button,.wb-close{background:none;border:none;color:var(--text);font-size:15px;padding:0 5px;line-height:1}.wb-close{color:var(--muted);font-size:17px}@media(max-width:1300px){.wb-src{display:none}}.look-bar{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:6px}.vp-toolbar{align-items:flex-start;pointer-events:none}.vp-toolbar>*:not(.look-bar),.look-bar>*{pointer-events:auto}.look-bar .seg{background:#12171ce0}.seg-label{font-size:11px;color:var(--dim);padding:4px 8px;border-right:1px solid var(--line);display:inline-flex;align-items:center}.viewport .badges{top:auto;bottom:36px}.viewport{container-type:inline-size}@container (max-width: 840px){.kbd-hint{display:none}}.chip-tag{font-size:11px;color:var(--text);white-space:nowrap;background:#12171dd9;border:1px solid var(--line);border-radius:5px;padding:2px 7px}@media(max-width:1640px){.topbar .wide-only-2{display:none}}.ex-back{place-items:stretch}.ex{position:fixed;inset:3vh 3vw;display:grid;grid-template-columns:340px minmax(0,1fr);background:#12171d;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 24px 60px #00000080}.ex-side{background:var(--panel);border-right:1px solid var(--line);padding:20px 22px;display:flex;flex-direction:column;gap:6px;overflow:auto}.ex-side h2{margin:0;font-size:19px}.ex-side p{margin:2px 0 6px;font-size:12.5px}.ex-side .label{margin:12px 0 4px}.ex-side .grow{flex:1}.ex-check{display:flex;gap:8px;align-items:center;font-size:13px;padding:2px 0}.ex-check.dim{color:var(--dim)}.ex-field{display:grid;grid-template-columns:84px 1fr;align-items:center;gap:8px;font-size:12.5px;color:var(--muted)}.ex-warn{margin-top:12px;background:var(--ai-bg);border:1px solid var(--ai-line);border-radius:8px;padding:9px 11px;font-size:12px;color:var(--text)}.ex-warn b{color:var(--ai)}.ex-actions .grow{flex:1;justify-content:center}.ex-main{display:grid;grid-template-rows:minmax(0,1fr) auto;min-width:0}.ex-preview{position:relative;display:grid;place-items:center;min-height:0;overflow:hidden}.ex-paper{background:#fff;box-shadow:0 10px 40px #00000080;overflow:hidden}.ex-paper iframe{border:0;transform-origin:0 0;background:#fff;display:block}.ex-thumbs{display:flex;gap:10px;justify-content:center;padding:12px;flex-wrap:wrap}.ex-thumb{display:flex;flex-direction:column;align-items:center;gap:4px;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:8px 12px;min-width:110px;font-size:11.5px;color:var(--muted)}.ex-thumb.on{border-color:var(--ok);color:var(--text)}.ex-thumb-n{font-size:18px;font-weight:600;color:var(--text)}.uplot,.uplot *,.uplot *:before,.uplot *:after{box-sizing:border-box}.uplot{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5;width:min-content}.u-title{text-align:center;font-size:18px;font-weight:700}.u-wrap{position:relative;user-select:none}.u-over,.u-under{position:absolute}.u-under{overflow:hidden}.uplot canvas{display:block;position:relative;width:100%;height:100%}.u-axis{position:absolute}.u-legend{font-size:14px;margin:auto;text-align:center}.u-inline{display:block}.u-inline *{display:inline-block}.u-inline tr{margin-right:16px}.u-legend th{font-weight:600}.u-legend th>*{vertical-align:middle;display:inline-block}.u-legend .u-marker{width:1em;height:1em;margin-right:4px;background-clip:padding-box!important}.u-inline.u-live th:after{content:":";vertical-align:middle}.u-inline:not(.u-live) .u-value{display:none}.u-series>*{padding:4px}.u-series th{cursor:pointer}.u-legend .u-off>*{opacity:.3}.u-select{background:#00000012;position:absolute;pointer-events:none}.u-cursor-x,.u-cursor-y{position:absolute;left:0;top:0;pointer-events:none;will-change:transform}.u-hz .u-cursor-x,.u-vt .u-cursor-y{height:100%;border-right:1px dashed #607D8B}.u-hz .u-cursor-y,.u-vt .u-cursor-x{width:100%;border-bottom:1px dashed #607D8B}.u-cursor-pt{position:absolute;top:0;left:0;border-radius:50%;border:0 solid;pointer-events:none;will-change:transform;background-clip:padding-box!important}.u-axis.u-off,.u-select.u-off,.u-cursor-x.u-off,.u-cursor-y.u-off,.u-cursor-pt.u-off{display:none}.timing-card{gap:8px;margin-bottom:12px}.timing-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.timing-badge{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--warn);border:1px solid var(--warn);border-radius:4px;padding:0 5px;line-height:16px}.timing-rate{font-weight:400}.timing-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.timing-bar .seg button:disabled{opacity:1;color:var(--muted);cursor:default}.timing-spacer{flex:1}.timing-wrap{position:relative;min-width:0;border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden;background:var(--panel)}.timing-canvas{display:block;width:100%;cursor:crosshair;touch-action:none}.timing-foot{display:flex;flex-direction:column;gap:6px;font-size:12px}.timing-cursors .mono{display:inline-flex;gap:14px;flex-wrap:wrap;font-size:11.5px}.timing-cursors .cur-a{color:var(--ai)}.timing-cursors .cur-b,.timing-measure{color:var(--text)}.timing-values{display:inline-flex;gap:14px;flex-wrap:wrap;align-items:baseline}.timing-values i{font-style:normal;color:var(--ok)}.timing-refuse{color:var(--warn)}.timing-notes{line-height:1.45}.sm{display:flex;flex-direction:column;gap:10px}.sm-examples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.sm-examples .lib-item b{font-size:12.5px}.sm-head{display:flex;align-items:flex-end;gap:6px;flex-wrap:wrap}.sm-field{display:flex;flex-direction:column;gap:3px;flex:1;min-width:150px}.sm-head .select{padding:6px 8px;font-size:12px;max-width:150px}.sm-diagram{background:var(--viewport);border:1px solid var(--line);border-radius:10px;padding:6px;overflow:auto;max-height:460px}.sm-diagram svg{display:block;margin:0 auto}.sm-diagram.fit svg{width:100%;height:auto}.sm-box{cursor:pointer;--tone: var(--pin-sda)}.sm-box rect{fill:color-mix(in srgb,var(--tone) 13%,var(--panel));stroke:var(--tone);stroke-opacity:.75}.sm-box.tone-start{--tone: var(--ok)}.sm-box.tone-dead{--tone: var(--warn)}.sm-box.tone-unreachable{--tone: var(--err)}.sm-box.tone-unreachable rect{stroke-dasharray:5 4}.sm-box.hot rect{stroke:var(--ai);stroke-opacity:1;stroke-width:2}.sm-title{fill:var(--text);font:600 12px var(--font-mono)}.sm-sub{fill:var(--muted);font:11px var(--font-ui)}.sm-edge{fill:none;stroke:var(--dim);stroke-width:1.4;cursor:pointer}.sm-edge.hot{stroke:var(--ai);stroke-width:2}.sm-start circle{fill:var(--ok)}.sm-start path{fill:none;stroke:var(--ok);stroke-width:1.4}.sm-label{cursor:pointer}.sm-label rect{fill:var(--viewport);fill-opacity:.92;stroke:none}.sm-label.hot rect{stroke:var(--ai-line)}.sm-label text{fill:var(--muted);font:11px var(--font-ui)}.sm-label.hot text{fill:var(--ai)}.sm-legend{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center}.sm-legend [class^=tone-]:before{content:"";display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:5px;vertical-align:-1px;border:1px solid var(--tone);background:color-mix(in srgb,var(--tone) 20%,var(--panel))}.sm-legend .sm-spacer{flex:1}.sm-ignored summary{cursor:pointer}.sm-ignored .findings{margin-top:6px}.sm-legend .tone-start{--tone: var(--ok)}.sm-legend .tone-dead{--tone: var(--warn)}.sm-legend .tone-unreachable{--tone: var(--err)}.sm-section{display:flex;flex-direction:column;gap:6px;border-top:1px solid var(--line);padding-top:10px}.sm-section>.btn{align-self:flex-start}.sm-section .text-in,.sm-section .select{padding:5px 7px;font-size:12px;min-width:0}.sm-row{display:grid;align-items:center;gap:6px;border-radius:var(--radius-sm)}.sm-state{grid-template-columns:auto minmax(0,1fr) minmax(0,1.3fr) auto}.sm-event{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) auto}.sm-tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto minmax(0,1fr) auto;align-items:center;gap:5px;padding:6px;background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius-sm)}.sm-tr .sm-guard{grid-column:1 / 3}.sm-tr .sm-action{grid-column:3 / 6}.sm-row.hot,.sm-tr.hot{outline:1px solid var(--ai-line);outline-offset:2px;background:var(--ai-bg)}.sm-row input[type=radio]{accent-color:var(--ok);margin:0 2px}.sm-cmd{display:block;background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius-sm);padding:6px 8px;overflow-x:auto;white-space:nowrap;user-select:text}.starter-files{display:flex;flex-wrap:wrap;max-width:100%}.starter-files button{font-size:11px;padding:4px 8px;border-bottom:1px solid var(--line)}.starter-files button+button{border-left:1px solid var(--line)}.replay-bar{display:flex;flex-direction:column;gap:6px;padding:8px 12px;background:var(--ai-bg);border-bottom:1px solid var(--ai-line);font-size:12px;color:var(--muted)}.replay-bar b{color:var(--ai)}.example-chats{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:6px}.example-chat{text-align:left;display:flex;flex-direction:column;gap:2px;padding:8px 10px;background:var(--chrome);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--text);cursor:pointer}.example-chat:hover{border-color:var(--ai-line)}.display-studio{display:flex;flex-direction:column;gap:12px}.display-part,.display-spec{display:flex;flex-direction:column;gap:6px}.display-canvas{background:#000;border:6px solid #0B0E12;border-radius:4px;box-shadow:0 0 0 1px var(--line);align-self:flex-start}.display-canvas canvas{width:100%;height:100%;display:block;image-rendering:pixelated;image-rendering:crisp-edges}.display-canvas.round{border-radius:50%;overflow:hidden}.display-canvas.panel-epaper{border-color:#2a2f35;background:#ecece4}.display-screens{display:flex;flex-wrap:wrap;gap:4px}.display-screens .chip.on{border-color:var(--ai);color:var(--text)}.display-flow{margin:0;padding-left:16px}.display-var{display:grid;grid-template-columns:70px 1fr 70px auto;align-items:center;gap:6px}.display-var input[type=range]{width:100%}.display-pip{position:absolute;right:14px;bottom:44px;z-index:5;display:flex;flex-direction:column;gap:4px;padding:6px 8px 8px;background:color-mix(in srgb,var(--chrome) 88%,transparent);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--muted);backdrop-filter:blur(4px)}.memory-panel{display:flex;flex-direction:column;gap:8px}.memory-panel .grow{flex:1;min-width:0}.memory-panel p{margin:0}.memory-card{border:1px solid var(--line);border-left:3px solid var(--line);border-radius:var(--radius-sm);background:var(--chrome);padding:7px 9px;display:flex;flex-direction:column;gap:6px}.memory-card.on{border-left-color:var(--gold)}.memory-attach{cursor:pointer}.memory-attach input{accent-color:var(--gold)}.memory-note{display:flex;flex-direction:column;gap:6px}.memory-sources{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.memory-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.memory-hit summary{cursor:pointer;color:var(--muted)}.memory-hit pre.code{max-height:220px;margin:4px 0 0}.memory-err{color:var(--err)}.src-memory span{color:var(--gold)}.coach-open{display:inline-flex;align-items:center;gap:5px;margin-left:8px;vertical-align:middle}.coach{margin:10px 0 16px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;display:flex;flex-direction:column;gap:8px}.coach p{margin:0}.coach .label{margin:4px 0 0}.coach textarea{resize:vertical;min-height:96px;line-height:1.5}.coach h4{margin:6px 0 2px;font-size:13px;font-weight:600}.coach ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:3px}.coach-hint{display:flex;justify-content:space-between;gap:12px}.coach-actions{display:flex;flex-wrap:wrap;gap:8px}.coach-actions .btn{display:inline-flex;align-items:center;gap:6px}.coach-error{display:flex;flex-direction:column;gap:3px;border-left:3px solid var(--err);background:var(--chrome);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:8px 10px}.coach-feedback{background:var(--chrome);border:1px solid var(--ai-line);border-radius:var(--radius-sm);padding:10px 12px;display:flex;flex-direction:column;gap:4px;user-select:text}.coach-feedback-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.coach-followup{color:var(--ai)}.coach-sources{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px}.coach-sources .label{margin:0}.coach-sources .chip{white-space:normal;max-width:100%;border-radius:10px}.coach-keys{border-left:3px solid var(--pin-sda);background:var(--chrome);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:8px 12px;display:flex;flex-direction:column;gap:6px}.coach-key b{font-size:12.5px;font-weight:600}.coach-key ul{margin-top:3px;color:var(--muted)}.coach-history{border-top:1px solid var(--line);margin-top:6px;padding-top:6px;display:flex;flex-direction:column;gap:6px}.coach-history-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.coach-history-head .btn{display:inline-flex;align-items:center;gap:5px}.learn-article .coach-attempts{list-style:none;margin:0;padding:0;max-width:none;display:flex;flex-direction:column;gap:4px}.learn-article .coach li{margin:2px 0}.coach-attempts details{background:var(--chrome);border-radius:var(--radius-sm);padding:6px 10px}.coach-attempts summary{cursor:pointer;display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:12.5px}.coach-attempts details[open]{display:flex;flex-direction:column;gap:6px}.coach-score{font-size:11.5px}.coach-score.ok{color:var(--ok)}.coach-score.warn{color:var(--warn)}.coach-answer{color:var(--muted);font-size:12.5px;margin-top:6px;user-select:text}.coach-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12.5px}.coach-delete-all{align-self:flex-start}
