:root{--bg:#0e0e12;--bar:#18181b;--sidebar:#1e1e1e;--hover:#252525;--sel:#2a2a2a;--editor:#1e1e2e;--panel:#181818;--border:#2a2a2a;--border-light:#3a3a3a;--text:#ccc;--dim:#858585;--muted:#666;--accent:#7c5cff;--accent-hover:#6a4de6;--error:#f85149;--warn:#d29922;--success:#3fb950;--surface:#1e1e1e;--t1:#eee;--t2:#ccc;--t3:#999;--t4:#777;--t5:#555}
*{box-sizing:border-box}html,body{height:100%;margin:0}
body{background:var(--bg);color:var(--text);font:13px/1.4 Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;display:flex;flex-direction:column;overflow:hidden}
.mono{font-family:"JetBrains Mono","Fira Code",ui-monospace,Menlo,Consolas,monospace}
.muted{color:var(--muted)}.pad{padding:10px 12px}.spacer{flex:1}kbd{background:#2a2a2a;border:1px solid #3a3a3a;border-radius:4px;padding:0 5px;font-size:11px}
#topbar{height:44px;flex:none;display:flex;align-items:center;gap:10px;padding:0 12px;background:var(--bar);border-bottom:1px solid var(--border)}
.logo{width:24px;height:24px;border-radius:4px;background:var(--accent);color:#fff;font-weight:700;font-size:12px;display:grid;place-items:center}
.title{font-weight:600;color:#fff}
.chip{font-size:11px;color:var(--muted);background:#222;border:1px solid var(--border);border-radius:4px;padding:2px 6px}
.divider{width:1px;height:20px;background:var(--border)}
.pill{display:flex;align-items:center;gap:6px;background:#1e1e1e;border:1px solid var(--border);border-radius:6px;padding:3px 8px;font-size:12px}
.pill select{background:transparent;color:var(--text);border:0;font-size:12px;max-width:170px}
.git{font-size:11px;color:var(--muted)}
.btn{font:inherit;font-size:12px;color:var(--dim);background:#1e1e1e;border:1px solid var(--border);border-radius:6px;padding:5px 10px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.btn:hover{border-color:var(--border-light);color:#fff}.btn.on{background:var(--sel);border-color:var(--border-light);color:#fff}
.btn.save{font-weight:500;padding:5px 14px;background:var(--sel);color:var(--muted);border-color:transparent}
.btn.save.dirty{background:var(--accent);color:#fff}.btn.save.dirty:hover{background:var(--accent-hover)}.btn:disabled{cursor:default}
.toggle input{margin:0}.toggle.small{font-size:11px;color:var(--dim);display:inline-flex;gap:4px;align-items:center}
#main{flex:1;display:flex;min-height:0}
#sidebar{width:260px;flex:none;background:var(--sidebar);border-right:1px solid var(--border);display:flex;flex-direction:column;transition:width .2s}
#sidebar.collapsed{width:40px}#sidebar.collapsed .filter,#sidebar.collapsed .tree,#sidebar.collapsed .legend,#sidebar.collapsed .palette,#sidebar.collapsed .side-head span{display:none}
.side-head{height:36px;display:flex;align-items:center;justify-content:space-between;padding:0 8px 0 12px;font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--dim)}
.icon{background:none;border:0;color:var(--muted);cursor:pointer;font-size:14px}.icon:hover{color:#fff}
.filter{padding:0 8px 6px}.filter input{width:100%;font:inherit;font-size:12px;background:#252525;border:1px solid var(--border);border-radius:6px;color:var(--text);padding:5px 8px}
.tree{flex:1;overflow:auto;font-size:12px;padding:4px 0}
.node{display:flex;align-items:center;gap:5px;padding:2px 8px;cursor:pointer;white-space:nowrap;color:#999}
.node:hover{background:var(--hover)}.node.sel{background:var(--sel);color:#fff}
.node .chev{width:10px;color:var(--muted);font-size:10px}.node .fico{width:12px;text-align:center;font-size:11px}
.node.dir{color:var(--dim);font-weight:500}.node .badge{margin-left:auto;font-size:10px;background:var(--sel);border-radius:9px;padding:0 6px;color:var(--dim)}
.node .err{color:var(--error);margin-left:4px}.children{border-left:1px solid rgba(42,42,42,.6);margin-left:14px}
.legend{font-size:10px;color:#555;padding:8px 12px;border-top:1px solid var(--border);line-height:1.6}
#editor-col{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--editor)}
.tabs{height:36px;flex:none;display:flex;background:var(--bar);border-bottom:1px solid var(--border);overflow-x:auto}
.tab{display:flex;align-items:center;gap:6px;padding:0 10px;font-size:12px;color:var(--muted);border-right:1px solid var(--border);cursor:pointer;white-space:nowrap}
.tab.on{background:var(--editor);color:#fff}.tab .dot{width:6px;height:6px;border-radius:50%;background:var(--accent);display:none}.tab.dirty .dot{display:inline-block}
.tab .ecount{font-size:10px;color:var(--error);background:rgba(248,81,73,.2);border-radius:8px;padding:0 5px}.tab .x{opacity:.6;margin-left:2px}.tab .x:hover{opacity:1;color:#fff}
.editor{flex:1;min-height:0;position:relative}
.welcome{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--dim);text-align:center;padding:20px}
.welcome h2{color:#fff;font-weight:600;margin:0 0 8px}.welcome p{max-width:520px;margin:4px 0}
.panel{height:200px;flex:none;background:var(--panel);border-top:1px solid var(--border);display:flex;flex-direction:column}
.panel-head{height:32px;flex:none;display:flex;align-items:center;gap:4px;padding:0 8px;background:var(--sidebar)}
.ptab{font:inherit;font-size:11px;font-weight:500;color:var(--muted);background:none;border:0;border-radius:4px;padding:4px 8px;cursor:pointer;display:inline-flex;gap:6px;align-items:center}
.ptab.on{background:var(--sel);color:#fff}.count{font-size:10px;background:var(--sel);color:var(--dim);border-radius:8px;padding:0 6px}.count.bad{background:var(--error);color:#fff}
.pos{font-size:10px;color:#555}
.panel-body{flex:1;overflow:auto;font-size:12px}
.prob{display:flex;align-items:center;gap:8px;padding:4px 12px;cursor:pointer;border-bottom:1px solid rgba(42,42,42,.5)}.prob:hover{background:var(--hover)}
.prob .sev{width:8px;height:8px;border-radius:50%;background:var(--error);flex:none}.prob.warning .sev{background:var(--warn)}
.prob .where{font-family:ui-monospace,Menlo,monospace;font-size:11px;color:var(--dim);flex:none}.prob .src{font-size:10px;color:var(--muted);background:var(--sel);border-radius:4px;padding:0 5px}
#output{padding:8px 12px;font-size:11px;color:var(--dim);white-space:pre-wrap}
#preview-col{width:460px;flex:none;border-left:1px solid var(--border);display:flex;flex-direction:column;background:#fff;color:#111}
#preview-col[hidden]{display:none}
.pv-head{height:36px;flex:none;display:flex;align-items:center;gap:8px;padding:0 12px;background:#fafafa;border-bottom:1px solid #e5e5e5;font-size:11px;font-weight:600;letter-spacing:.08em;color:#444}
.pv-head .muted{font-weight:400;letter-spacing:0;color:#888}.pv-head .toggle.small{color:#666}
.pill-err{font-size:10px;font-weight:600;letter-spacing:0;background:var(--error);color:#fff;border-radius:9px;padding:1px 7px}
.pv-body{flex:1;overflow:auto;padding:20px 24px;font:16px/1.55 Georgia,"Times New Roman",serif}
.pv-body .apc-question{border:1px solid #e5e5e5;border-radius:8px;padding:10px 16px;margin:14px 0;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.pv-body canvas{max-width:100%}.pv-body .qid{font:11px ui-monospace,Menlo,monospace;color:#6b7280}
.pv-body .pv-active{box-shadow:inset 4px 0 0 var(--accent)}
.pv-body .pv-error{background:#fff5f5;border:1px solid #f2b8b5;border-radius:8px;padding:12px 16px;color:#8b1a1a;font:13px/1.5 system-ui}
.pv-body .pv-error pre{white-space:pre-wrap;font-size:12px}
.pv-foot{height:28px;flex:none;display:flex;align-items:center;gap:8px;padding:0 12px;font-size:10px;background:#fafafa;border-top:1px solid #e5e5e5;color:#666}
.dot{width:8px;height:8px;border-radius:50%;background:#bbb}.dot.ok{background:var(--success)}.dot.bad{background:var(--error)}.dot.busy{background:var(--warn);animation:pulse 1s infinite}
@keyframes pulse{50%{opacity:.3}}
[hidden]{display:none!important}
.gate{position:fixed;inset:44px 0 0 0;background:rgba(14,14,18,.85);display:grid;place-items:center;z-index:20}.gate-card{width:380px}
.quick{position:fixed;inset:0;background:rgba(0,0,0,.5);backdrop-filter:blur(2px);z-index:30}
.quick-box{width:560px;max-width:92vw;margin:20vh auto 0;background:#1e1e1e;border:1px solid var(--border);border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.6);overflow:hidden}
.quick-box input{width:100%;font:inherit;font-size:14px;background:transparent;border:0;border-bottom:1px solid var(--border);color:#fff;padding:12px 14px;outline:0}
.quick-list{max-height:320px;overflow:auto}.qrow{padding:7px 14px;cursor:pointer;display:flex;flex-direction:column}.qrow.on,.qrow:hover{background:var(--sel)}
.qrow .p{font-family:ui-monospace,Menlo,monospace;font-size:13px;color:#fff}.qrow .s{font-size:11px;color:var(--muted)}
.quick-foot{background:#181818;padding:6px 14px;display:flex;gap:8px}.key{font-size:10px;color:var(--dim);background:var(--sel);border-radius:4px;padding:1px 6px}
#toasts{position:fixed;right:16px;bottom:16px;display:flex;flex-direction:column;gap:8px;z-index:40}
.toast{max-width:420px;background:#1e1e1e;border:1px solid var(--border);border-radius:8px;padding:10px 14px;font-size:12px;box-shadow:0 8px 24px rgba(0,0,0,.5);display:flex;gap:10px;align-items:flex-start}
.toast b{color:#fff}.toast .sub{color:var(--dim)}.toast.bad{border-color:var(--error)}.toast .ok{color:var(--success)}.toast.bad .ok{color:var(--error)}
::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#3a3a3a;border-radius:4px}::-webkit-scrollbar-track{background:transparent}
#preview-col ::-webkit-scrollbar-thumb{background:#ccc}

/* W3: sidebar tabs and the block palette */
.side-tabs{display:flex;gap:2px}.stab{font:inherit;font-size:11px;font-weight:600;letter-spacing:.08em;background:none;border:0;border-bottom:2px solid transparent;color:var(--muted);padding:9px 6px 7px;cursor:pointer}.stab.on{color:var(--text);border-bottom-color:var(--accent)}.stab:hover{color:var(--text)}
.palette{flex:1;display:flex;flex-direction:column;min-height:0}.pal-list{flex:1;overflow:auto}
.pal-sec{font-size:10px;font-weight:600;letter-spacing:.08em;color:var(--muted);padding:8px 12px 2px}
.pal-group{display:flex;align-items:center;gap:5px;padding:3px 8px;cursor:pointer;color:var(--dim);font-weight:500;white-space:nowrap}.pal-group:hover{background:var(--hover)}.pal-group .chev{width:10px;color:var(--muted);font-size:10px}
.pal-group .badge{margin-left:auto;font-size:10px;background:var(--sel);border-radius:9px;padding:0 6px;color:var(--dim)}.pal-cloud{font-size:9px;color:var(--accent);border:1px solid var(--accent);border-radius:6px;padding:0 4px;margin-left:4px}
.pal-row{display:flex;flex-direction:column;padding:3px 8px 3px 22px;cursor:pointer;border-left:2px solid transparent}.pal-row:hover{background:var(--hover);border-left-color:var(--accent)}
.pal-name{color:#e06c75;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pal-row[data-fn] .pal-name{color:#61afef}
.pal-sum{color:var(--t4);font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.monaco-editor .suggest-widget{border-color:var(--border-light)}

/* W4: the agent column */
#agent-col{width:400px;flex:none;border-left:1px solid var(--border);display:flex;flex-direction:column;background:var(--panel);min-height:0}
.ag-head{height:36px;flex:none;display:flex;align-items:center;gap:8px;padding:0 10px;background:var(--sidebar);border-bottom:1px solid var(--border);font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--dim)}
.ag-head select{background:#1e1e1e;color:var(--text);border:1px solid var(--border);border-radius:4px;font-size:11px;padding:1px 4px}
.ag-head .icon{background:transparent;border:0;color:var(--dim);font-size:16px;cursor:pointer;padding:0 4px}.ag-head .icon:hover{color:#fff}
.ag-head .muted.bad{color:var(--error)}
.ag-msgs{flex:1;overflow:auto;padding:10px;display:flex;flex-direction:column;gap:8px;min-height:0}
.ag-msg{border-radius:8px;padding:8px 10px;max-width:100%;white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.45}
.ag-msg.user{background:var(--accent);color:#fff;align-self:flex-end;max-width:90%}
.ag-msg.assistant{background:#232330;color:var(--text);white-space:normal}.ag-msg.assistant p{margin:0 0 8px}.ag-msg.assistant p:last-child{margin:0}
.ag-msg.assistant .ag-code{background:#15151c;border:1px solid var(--border);border-radius:6px;padding:8px;font-size:12px;overflow:auto;margin:4px 0;white-space:pre}
.ag-msg.assistant code{background:#15151c;border-radius:3px;padding:0 4px;font-size:12px}.ag-msg.assistant .ag-list{margin:0 0 8px;padding-left:18px}.ag-msg.assistant .ag-list li{margin:2px 0}
.ag-msg.error{background:#3a1d1d;color:#f8b4b4}
.ag-msg.work{background:transparent;padding:0 4px;display:flex;flex-direction:column;gap:3px}
.ag-step{font-size:11px;color:var(--dim)}.ag-step::before{content:"› ";color:var(--muted)}
.ag-edits{display:flex;flex-direction:column;gap:8px}
.ag-edits-bar{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--dim)}
.ag-edit{border:1px solid var(--border-light);border-radius:8px;overflow:hidden;background:#1a1a22}
.ag-edit.done{opacity:.6}.ag-edit.accepted{border-color:#3a7d44}.ag-edit.rejected{border-color:#5a3a3a}
.ag-edit-head{display:flex;align-items:center;gap:8px;padding:6px 10px;font-size:11px;background:#20202a;border-bottom:1px solid var(--border)}
.ag-edit-head .path{color:var(--dim);flex:none}.ag-edit-head .note{flex:1;color:var(--text);white-space:normal}
.ag-edit-head .errs{flex:none;border-radius:4px;padding:0 6px;font-size:10px}.ag-edit-head .errs.ok{background:#1f3a26;color:#8fd19e}.ag-edit-head .errs.bad{background:#3a1f1f;color:#f1a1a1}
.ag-diff{margin:0;padding:6px 0;max-height:260px;overflow:auto;font-family:"JetBrains Mono","Fira Code",ui-monospace,Menlo,Consolas,monospace;font-size:11.5px;line-height:1.5}
.ag-diff .dl{padding:0 10px;white-space:pre}.ag-diff .del{background:#3a1f1f;color:#f1a1a1}.ag-diff .add{background:#1f3a26;color:#b5e8c0}.ag-diff .ctx{color:var(--muted)}
.ag-edit-acts{display:flex;gap:6px;padding:6px 10px;border-top:1px solid var(--border)}
.btn.ok{background:#1f3a26;border-color:#2e5a38;color:#b5e8c0}.btn.ok:hover{background:#2a4d33}
.ag-compose{flex:none;border-top:1px solid var(--border);padding:8px 10px;display:flex;flex-direction:column;gap:6px;background:var(--sidebar)}
.ag-chips{display:flex;gap:6px;flex-wrap:wrap;min-height:18px}
.ag-chip{font-size:10px;background:#2a2a36;color:var(--dim);border-radius:10px;padding:1px 8px}.ag-chip.bad{background:#3a1f1f;color:#f1a1a1}.ag-chip.dim{color:var(--muted)}
.ag-compose textarea{font:inherit;font-size:13px;background:#1e1e2e;color:var(--text);border:1px solid var(--border);border-radius:6px;padding:8px;resize:vertical;min-height:54px}
.ag-compose textarea:focus{outline:none;border-color:var(--accent)}
.ag-row{display:flex;align-items:center;gap:8px;font-size:11px}

/* W5: present mode (slides), notebook mode, the timeline strip, the draw pane */
.present{position:fixed;inset:0;z-index:50;display:flex;flex-direction:column;background:var(--pr-bg,#101014);color:var(--pr-ink,#f3f3f7);font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
.present.theme-dark{--pr-bg:#101014;--pr-slide:#1b1b24;--pr-ink:#f3f3f7;--pr-accent:#9d85ff;--pr-font:system-ui,sans-serif}
.present.theme-light{--pr-bg:#e9e9ef;--pr-slide:#ffffff;--pr-ink:#15151c;--pr-accent:#5b3fd6;--pr-font:system-ui,sans-serif}
.present.theme-chalk{--pr-bg:#1a2a22;--pr-slide:#24402f;--pr-ink:#f1f6e8;--pr-accent:#ffd166;--pr-font:"Comic Sans MS","Chalkboard SE",cursive}
.present.theme-paper{--pr-bg:#d9d2c3;--pr-slide:#fbf7ee;--pr-ink:#2b2418;--pr-accent:#9c4b1f;--pr-font:Georgia,"Times New Roman",serif}
.pr-bar{height:40px;flex:none;display:flex;align-items:center;gap:8px;padding:0 12px;background:rgba(0,0,0,.35);color:#eee;font-size:12px;border-bottom:1px solid rgba(255,255,255,.08)}
.pr-bar .btn{color:#eee;border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.06)}.pr-bar .btn.on,.pr-bar .btn[data-active]{background:var(--pr-accent);color:#111}
.pr-bar select{background:#222;color:#eee;border:1px solid #444;border-radius:4px;font-size:12px;padding:2px 4px}.pr-bar input[type=color]{width:26px;height:22px;border:0;background:transparent;padding:0}
.pr-title{font-weight:600}.pr-counter{color:#bbb;font-variant-numeric:tabular-nums}
.annotation-toolbar{display:flex;align-items:center;gap:4px}.annotation-toolbar .btn[aria-pressed=true]{background:var(--pr-accent);color:#111}
.pr-main{flex:1;display:flex;min-height:0}
.pr-stagewrap{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px;min-width:0;position:relative;background:var(--pr-bg)}
.pr-stagewrap:fullscreen{padding:0;background:var(--pr-bg)}
.stage{width:min(100%,calc((100vh - 140px) * 16 / 9));aspect-ratio:16/9;overflow:auto;background:var(--pr-slide);color:var(--pr-ink);border-radius:10px;box-shadow:0 10px 40px rgba(0,0,0,.35)}
.pr-stagewrap:fullscreen .stage{width:min(100vw,calc(100vh * 16 / 9));border-radius:0}
.slides{height:100%}.slide{position:relative;min-height:var(--slide-min-height,100%);padding:clamp(1.2rem,3vw,3.5rem);font-size:clamp(18px,1.65vw,30px);line-height:1.45;font-family:var(--pr-font);box-sizing:border-box}
.pr-stagewrap:fullscreen .slide{font-size:clamp(22px,2.2vw,40px)}
.slide h1,.slide h2,.slide h3{margin:0 0 .6em;color:var(--pr-accent);line-height:1.15}.slide h2{font-size:1.5em}.slide p,.slide li{margin:.3em 0}.slide .apc-question{border:1px solid rgba(127,127,127,.35);border-radius:10px;padding:.5em .9em;margin:.6em 0}
.slide .katex-display{margin:.5em 0}.slide canvas,.slide svg,.slide img{max-width:100%}
.slide-ink{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3}.slide[data-drawing] .slide-ink,.ink-drawing .slide-ink{pointer-events:auto;cursor:crosshair}
.pr-nav{position:absolute;bottom:22px;right:26px;display:flex;gap:6px}.pr-nav .btn{color:#eee;border-color:rgba(255,255,255,.2);background:rgba(0,0,0,.4)}
.pr-notes{width:300px;flex:none;border-left:1px solid rgba(255,255,255,.08);background:rgba(0,0,0,.25);color:#ddd;padding:14px 16px;overflow:auto;font-size:14px;line-height:1.5}.pr-notes .dim{color:#888}
body.presenting #main{visibility:hidden}

#nb-root{padding:0;background:#f4f4f6}
.nb-bar{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:6px;padding:6px 12px;background:#fff;border-bottom:1px solid #e5e5e5;font:12px system-ui,sans-serif}
.nb-bar .btn{color:#333;border-color:#d4d4d8;background:#fafafa}.nb-bar .btn:hover{background:#eee}.nb-title{font-weight:600;letter-spacing:.06em;color:#555}
.nb-cells{padding:12px 16px 40px;display:flex;flex-direction:column;gap:12px;font:15px/1.5 Georgia,"Times New Roman",serif}
.nb-cell{background:#fff;border:1px solid #e3e3e8;border-left:4px solid #cfcfd6;border-radius:8px;overflow:hidden}
.nb-cell.nb-code{border-left-color:#7c5cff}.nb-cell.nb-question{border-left-color:#1f9d55}.nb-cell.nb-active{box-shadow:0 0 0 2px var(--accent)}.nb-cell.has-error{border-left-color:var(--error)}
.nb-head{display:flex;align-items:center;gap:8px;padding:5px 10px;background:#f8f8fa;border-bottom:1px solid #eee;font:11px system-ui,sans-serif;color:#555;cursor:default}
.nb-kind{text-transform:uppercase;letter-spacing:.08em;font-weight:600;font-size:10px}.nb-id{color:#888}.nb-lines{font-size:10px}
.nb-head .btn.mini,.tl-row .btn.mini{padding:1px 7px;font-size:11px;line-height:1.4;color:#333;border-color:#d4d4d8;background:#fff}.nb-head .btn.mini:hover{background:#eee}
.nb-src{margin:0;padding:8px 12px;font-size:11.5px;line-height:1.4;color:#444;background:#fcfcfd;border-bottom:1px dashed #eee;white-space:pre-wrap;max-height:160px;overflow:auto}
.nb-out{padding:8px 14px}.nb-out .cell-error{background:#fff5f5;border:1px solid #f2b8b5;border-radius:6px;padding:6px 10px;color:#8b1a1a;font:12px/1.45 system-ui;margin:2px 0}.nb-out .cell-error.dim{color:#a08080;background:#fffafa}
.nb-none{font:12px system-ui;color:#999}.nb-empty{padding:40px 24px;text-align:center;font:14px system-ui;color:#555}.nb-empty .btn{color:#fff;background:var(--accent);border-color:var(--accent);margin:10px 0}
.nb-out .apc-question{border:1px solid #e5e5e5;border-radius:8px;padding:8px 14px;margin:8px 0}

.tl{flex:none;max-height:120px;overflow:auto;background:#f6f6f8;border-top:1px solid #e5e5e5;padding:4px 10px;font-size:11px;color:#333}
.tl-row{display:flex;align-items:center;gap:6px;padding:3px 0}.tl-label{color:#5b3fd6;cursor:pointer;min-width:90px}.tl-row input[type=range]{flex:1;min-width:80px}.tl-time{min-width:84px}.tl-dur{font-size:10px}

#draw-col{width:720px;flex:none;border-left:1px solid var(--border);display:flex;flex-direction:column;background:var(--panel);min-height:0}
.draw-bar{height:36px;flex:none;display:flex;align-items:center;gap:8px;padding:0 10px;background:var(--sidebar);border-bottom:1px solid var(--border);font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--dim)}
.draw-bar .dim{font-weight:400;letter-spacing:0}.draw-title{color:var(--text)}
#draw-frame{flex:1;border:0;width:100%;min-height:0;background:#fff}
