:root{--bg-0:#0a0e13;--bg-1:#0f141a;--bg-2:#141a22;--bg-3:#1a222c;--bg-4:#212b37;--line:#1f2833;--line-2:#2a3542;--line-3:#364353;--fg-0:#e8eef4;--fg-1:#b8c3cf;--fg-2:#8593a3;--fg-3:#5d6a79;--accent:#20d3ee;--accent-2:#47bbf5;--accent-weak:#20d3ee21;--accent-line:#20d3ee61;--c-green:#30cf75;--c-amber:#f9b339;--c-red:#ee585f;--c-violet:#b582f7;--c-teal:#25d0ae;--c-blue:#59a0f8;--c-rose:#f06a97;--tone-green:#30cf7524;--tone-amber:#f9b33924;--tone-red:#ee585f24;--tone-violet:#b582f726;--tone-teal:#25d0ae24;--tone-blue:#59a0f824;--tone-gray:#8a99a81f;--font-ui:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "Cascadia Code", Consolas, monospace;--fs-2xs:10px;--fs-xs:11px;--fs-sm:12px;--fs-md:13px;--fs-lg:15px;--fs-xl:19px;--fs-2xl:24px;--r-sm:4px;--r-md:6px;--r-lg:10px;--shadow-pop:0 12px 32px -8px #0009, 0 0 0 1px var(--line-2);--ease:cubic-bezier(.2, .7, .2, 1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg-0);color:var(--fg-0);font-family:var(--font-ui);font-size:var(--fs-md);-webkit-font-smoothing:antialiased;line-height:1.45;overflow:hidden}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;color:inherit}code,pre,.mono{font-family:var(--font-mono);font-size:.92em}::selection{background:#20d3ee4d}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--line-2);background-clip:padding-box;border:2px solid #0000;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--line-3);background-clip:padding-box;border:2px solid #0000}::-webkit-scrollbar-corner{background:0 0}:focus-visible{outline:1px solid var(--accent);outline-offset:1px}.muted{color:var(--fg-2)}.dim{color:var(--fg-3)}.strong{font-weight:600}.small{font-size:var(--fs-sm)}.xs{font-size:var(--fs-xs)}.upper{text-transform:uppercase;letter-spacing:.06em;font-size:var(--fs-2xs);color:var(--fg-3);font-weight:600}.ellipsis{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.row{align-items:center;gap:8px;min-width:0;display:flex}.col{flex-direction:column;gap:8px;min-width:0;display:flex}.grow{flex:1;min-width:0}.wrap{flex-wrap:wrap}.gap-4{gap:4px}.gap-12{gap:12px}.gap-16{gap:16px}.p-8{padding:8px}.p-12{padding:12px}.p-16{padding:16px}.scroll{min-height:0;overflow:auto}.fill{height:100%;min-height:0}.center{place-items:center;display:grid}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.t-green{color:var(--c-green)}.t-red{color:var(--c-red)}.t-amber{color:var(--c-amber)}.t-violet{color:var(--c-violet)}.t-teal{color:var(--c-teal)}.t-blue{color:var(--c-blue)}.t-accent{color:var(--accent)}.btn{border-radius:var(--r-md);border:1px solid var(--line-2);background:var(--bg-3);height:28px;color:var(--fg-0);font-size:var(--fs-sm);cursor:pointer;white-space:nowrap;transition:background .12s var(--ease), border-color .12s var(--ease), transform 80ms;align-items:center;gap:6px;padding:0 10px;font-weight:500;display:inline-flex}.btn:hover{background:var(--bg-4);border-color:var(--line-3)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn.sm{height:24px;font-size:var(--fs-xs);gap:4px;padding:0 8px}.btn.primary{color:#04161b;background:linear-gradient(#12d0ed,#0f9cc7);border-color:#2ad5ef;font-weight:600}.btn.primary:hover{background:linear-gradient(#2ed6ef,#10abda)}.btn.ghost{color:var(--fg-1);background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--bg-3);color:var(--fg-0)}.btn.danger{color:var(--c-red)}.btn.danger:hover{background:var(--tone-red);border-color:#ee585f66}.btn.success{color:var(--c-green)}.icon-btn{border-radius:var(--r-sm);width:26px;height:26px;color:var(--fg-2);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:inline-grid}.icon-btn:hover{background:var(--bg-3);color:var(--fg-0)}.icon-btn.active{color:var(--accent)}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.icon-btn.sm{width:22px;height:22px}.badge{height:18px;font-size:var(--fs-2xs);letter-spacing:.02em;white-space:nowrap;background:var(--tone-gray);color:var(--fg-1);border:1px solid #0000;border-radius:999px;flex:none;align-items:center;gap:4px;padding:0 6px;font-weight:600;display:inline-flex}.badge.green{background:var(--tone-green);color:var(--c-green)}.badge.amber{background:var(--tone-amber);color:var(--c-amber)}.badge.red{background:var(--tone-red);color:var(--c-red)}.badge.violet{background:var(--tone-violet);color:var(--c-violet)}.badge.teal{background:var(--tone-teal);color:var(--c-teal)}.badge.blue{background:var(--tone-blue);color:var(--c-blue)}.badge.accent{background:var(--accent-weak);color:var(--accent)}.badge.outline{border-color:var(--line-3);color:var(--fg-2);background:0 0}.badge.demo{color:var(--c-amber);background:repeating-linear-gradient(135deg,#f9b33929 0 6px,#f9b33914 6px 12px);border-color:#f9b33959}.dot{background:var(--fg-3);border-radius:50%;flex:none;width:8px;height:8px}.dot.green{background:var(--c-green);box-shadow:0 0 0 3px var(--tone-green)}.dot.amber{background:var(--c-amber);box-shadow:0 0 0 3px var(--tone-amber)}.dot.red{background:var(--c-red);box-shadow:0 0 0 3px var(--tone-red)}.dot.violet{background:var(--c-violet);box-shadow:0 0 0 3px var(--tone-violet)}.dot.blue{background:var(--c-blue);box-shadow:0 0 0 3px var(--tone-blue)}.dot.pulse{animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.35}}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:.9s linear infinite spin}@keyframes fade-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}.fade-in{animation:fade-in .18s var(--ease)}.path-chip{border-radius:var(--r-sm);background:var(--bg-2);border:1px solid var(--line-2);max-width:100%;height:22px;font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--fg-1);align-items:center;gap:6px;padding:0 4px 0 8px;display:inline-flex}.path-chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.input,.select,.textarea{border-radius:var(--r-md);border:1px solid var(--line-2);background:var(--bg-1);height:28px;color:var(--fg-0);font:inherit;font-size:var(--fs-sm);min-width:0;padding:0 8px}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-weak);outline:none}.input.mono{font-family:var(--font-mono)}.textarea{resize:vertical;height:auto;padding:8px;line-height:1.5}.select{padding-right:4px}label.field{font-size:var(--fs-xs);color:var(--fg-2);flex-direction:column;gap:4px;display:flex}.seg{background:var(--bg-1);border:1px solid var(--line-2);border-radius:var(--r-md);gap:2px;padding:2px;display:inline-flex}.seg button{border-radius:var(--r-sm);height:22px;color:var(--fg-2);font-size:var(--fs-xs);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:0 10px;font-weight:500;display:inline-flex}.seg button:hover{color:var(--fg-0)}.seg button.on{background:var(--bg-4);color:var(--fg-0);box-shadow:inset 0 1px #ffffff0a}.subtabs{border-bottom:1px solid var(--line);flex:none;gap:2px;padding:0 8px;display:flex}.subtabs button{height:30px;color:var(--fg-2);font-size:var(--fs-sm);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.subtabs button:hover{color:var(--fg-0)}.subtabs button.on{color:var(--fg-0);border-bottom-color:var(--accent)}.card{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--r-lg)}.card-h{border-bottom:1px solid var(--line);align-items:center;gap:8px;min-height:40px;padding:10px 14px;display:flex}.card-h h2,.card-h h3{font-size:var(--fs-md);margin:0;font-weight:600}.card-b{padding:12px 14px}.section-title{align-items:center;gap:6px;padding:10px 12px 6px;display:flex}.kv{font-size:var(--fs-sm);grid-template-columns:minmax(90px,max-content) 1fr;align-items:baseline;gap:5px 12px;display:grid}.kv>dt{color:var(--fg-2);margin:0}.kv>dd{overflow-wrap:anywhere;min-width:0;margin:0}.empty{text-align:center;color:var(--fg-2);font-size:var(--fs-sm);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:28px 16px;display:flex}.empty svg{color:var(--fg-3)}.empty h4{color:var(--fg-1);font-size:var(--fs-md);margin:0;font-weight:600}.callout{border-radius:var(--r-md);border:1px solid var(--line-2);background:var(--bg-2);font-size:var(--fs-sm);color:var(--fg-1);gap:10px;padding:10px 12px;display:flex}.callout.violet{background:var(--tone-violet);border-color:#b582f759}.callout.amber{background:var(--tone-amber);border-color:#f9b33959}.callout.red{background:var(--tone-red);border-color:#ee585f59}.callout.teal{background:var(--tone-teal);border-color:#25d0ae59}.callout svg{flex:none;margin-top:1px}.dtable{border-collapse:separate;border-spacing:0;font-size:var(--fs-xs);width:max-content;min-width:100%}.dtable th,.dtable td{border-bottom:1px solid var(--line);border-right:1px solid var(--line);text-align:left;white-space:nowrap;text-overflow:ellipsis;max-width:280px;padding:4px 10px;overflow:hidden}.dtable thead th{background:var(--bg-2);z-index:1;color:var(--fg-1);font-weight:600;position:sticky;top:0}.dtable thead th .dtype{font-family:var(--font-mono);font-weight:400;font-size:var(--fs-2xs);color:var(--c-blue);display:block}.dtable td{font-family:var(--font-mono);color:var(--fg-1)}.dtable td.idx,.dtable th.idx{color:var(--fg-3);background:var(--bg-1);z-index:2;position:sticky;left:0}.dtable thead th.idx{z-index:3}.dtable td.null{color:var(--c-red);background:#ee585f0f;font-style:italic}.dtable td.numc{text-align:right}.dtable tbody tr:hover td{background:var(--bg-2)}.list-table{border-collapse:collapse;width:100%;font-size:var(--fs-sm)}.list-table th{text-align:left;font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.05em;color:var(--fg-3);border-bottom:1px solid var(--line);background:var(--bg-1);z-index:1;padding:6px 10px;font-weight:600;position:sticky;top:0}.list-table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:6px 10px}.list-table tr.clickable{cursor:pointer}.list-table tr.clickable:hover td{background:var(--bg-2)}.list-table tr.selected td{background:var(--accent-weak)}.overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:100;background:#03060a99;justify-content:center;align-items:flex-start;padding-top:12vh;animation:.12s fade-in;display:flex;position:fixed;inset:0}.palette{background:var(--bg-2);border-radius:var(--r-lg);width:min(640px,92vw);box-shadow:var(--shadow-pop);overflow:hidden}.palette input{border:0;border-bottom:1px solid var(--line-2);width:100%;height:44px;color:var(--fg-0);font-size:var(--fs-lg);background:0 0;outline:none;padding:0 16px}.palette-list{max-height:50vh;padding:4px;overflow:auto}.palette-item{border-radius:var(--r-md);cursor:pointer;font-size:var(--fs-sm);align-items:center;gap:10px;padding:7px 12px;display:flex}.palette-item.on{background:var(--accent-weak)}.palette-item .hint{color:var(--fg-3);font-size:var(--fs-xs);margin-left:auto}.menu{background:var(--bg-2);border-radius:var(--r-md);min-width:220px;box-shadow:var(--shadow-pop);z-index:60;padding:4px;animation:.1s fade-in;position:absolute}.menu button{border-radius:var(--r-sm);text-align:left;width:100%;font-size:var(--fs-sm);cursor:pointer;color:var(--fg-1);background:0 0;border:0;align-items:center;gap:8px;padding:6px 10px;display:flex}.menu button:hover:not(:disabled){background:var(--bg-4);color:var(--fg-0)}.menu button:disabled{opacity:.4;cursor:not-allowed}.menu hr{border:0;border-top:1px solid var(--line-2);margin:4px 0}.modal{background:var(--bg-2);border-radius:var(--r-lg);width:min(520px,92vw);box-shadow:var(--shadow-pop)}.modal-h{font-weight:600;font-size:var(--fs-lg);padding:14px 16px 6px}.modal-b{flex-direction:column;gap:10px;padding:8px 16px 12px;display:flex}.modal-f{justify-content:flex-end;gap:8px;padding:10px 16px 14px;display:flex}.toast-stack{z-index:200;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:34px;right:16px}.toast{background:var(--bg-3);border:1px solid var(--line-3);border-radius:var(--r-md);min-width:260px;max-width:420px;box-shadow:var(--shadow-pop);font-size:var(--fs-sm);align-items:flex-start;gap:8px;padding:10px 12px;animation:.15s fade-in;display:flex}.md{font-size:var(--fs-md);color:var(--fg-1);max-width:860px;line-height:1.65}.md h1{color:var(--fg-0);letter-spacing:-.01em;margin:0 0 12px;font-size:22px}.md h2{color:var(--fg-0);border-bottom:1px solid var(--line);margin:22px 0 8px;padding-bottom:4px;font-size:16px}.md h3{color:var(--fg-0);margin:18px 0 6px;font-size:14px}.md p{margin:8px 0}.md code{background:var(--bg-3);color:var(--c-teal);border-radius:4px;padding:1px 5px}.md pre{background:var(--bg-0);border:1px solid var(--line-2);border-radius:var(--r-md);padding:10px 12px;overflow:auto}.md pre code{color:var(--fg-1);background:0 0;padding:0}.md table{border-collapse:collapse;font-size:var(--fs-sm);margin:10px 0}.md th,.md td{border:1px solid var(--line-2);text-align:left;padding:5px 10px}.md th{background:var(--bg-2);color:var(--fg-0)}.md blockquote{border-left:3px solid var(--accent);background:var(--accent-weak);color:var(--fg-1);border-radius:0 var(--r-sm) var(--r-sm) 0;margin:10px 0;padding:6px 12px}.md ul,.md ol{padding-left:22px}.md a{color:var(--accent)}.spark{display:block}.bar-row{font-size:var(--fs-xs);grid-template-columns:110px 1fr 60px;align-items:center;gap:8px;display:grid}.bar-track{background:var(--bg-3);border-radius:4px;height:8px;overflow:hidden}.bar-fill{background:linear-gradient(90deg, var(--accent), var(--accent-2));height:100%;transition:width .4s var(--ease);border-radius:4px}.meter{background:var(--bg-3);border-radius:3px;height:6px;overflow:hidden}.meter>div{background:linear-gradient(90deg, var(--c-teal), var(--accent));height:100%}.ws-root{background:var(--bg-0);flex-direction:column;height:100vh;display:flex}.ws-root>*{flex:none}.ws-root>.ws-body{flex:1 1 0}.topbar{background:var(--bg-1);border-bottom:1px solid var(--line);z-index:20;align-items:center;gap:10px;min-width:0;height:42px;padding:0 10px 0 0;display:flex;position:relative}.brand{border-right:1px solid var(--line);flex:none;justify-content:center;align-items:center;gap:8px;width:46px;height:100%;padding:0 12px;display:flex}.brand-wide{width:auto;padding:0 14px}.brand-logo{background:conic-gradient(from 200deg, var(--accent), var(--c-violet), var(--c-teal), var(--accent));color:#041015;width:22px;height:22px;box-shadow:0 0 18px -4px var(--accent);border-radius:6px;place-items:center;font-size:11px;font-weight:800;display:grid}.brand-name{letter-spacing:-.01em;font-weight:700;font-size:var(--fs-md)}.crumbs{min-width:0;font-size:var(--fs-sm);color:var(--fg-2);align-items:center;gap:4px;display:flex;overflow:hidden}.crumbs>*{flex:none}.crumbs .crumb.cur{text-overflow:ellipsis;flex:0 auto;min-width:0;overflow:hidden}.crumbs .crumb{border-radius:var(--r-sm);white-space:nowrap;color:var(--fg-2);padding:3px 6px}.crumbs a.crumb:hover{background:var(--bg-3);color:var(--fg-0);text-decoration:none}.crumbs .crumb.cur{color:var(--fg-0);font-weight:600}.search-btn{border-radius:var(--r-md);border:1px solid var(--line-2);background:var(--bg-0);min-width:240px;height:28px;color:var(--fg-3);font-size:var(--fs-sm);cursor:pointer;align-items:center;gap:8px;padding:0 10px;display:flex}.search-btn:hover{border-color:var(--line-3);color:var(--fg-2)}.search-btn kbd,kbd{font-family:var(--font-mono);font-size:var(--fs-2xs);border:1px solid var(--line-3);color:var(--fg-2);background:var(--bg-2);border-radius:4px;padding:1px 5px}.pill{border-radius:var(--r-md);border:1px solid var(--line-2);background:var(--bg-2);height:28px;font-size:var(--fs-xs);color:var(--fg-1);cursor:pointer;white-space:nowrap;align-items:center;gap:7px;padding:0 10px;display:inline-flex;position:relative}.pill:hover{border-color:var(--line-3);background:var(--bg-3)}.pill .lbl{color:var(--fg-3)}.avatar{background:linear-gradient(135deg, var(--c-violet), var(--accent));color:#08131a;width:28px;height:28px;font-weight:700;font-size:var(--fs-xs);border-radius:50%;flex:none;place-items:center;display:grid}.topbar>*{flex-shrink:0}.search-btn{white-space:nowrap;overflow:hidden}.search-btn .tb-lbl{text-overflow:ellipsis;min-width:0;overflow:hidden}.topbar>.crumbs,.topbar>.search-btn{flex-shrink:1}@media (width<=1599px){.topbar .live-tools .tb-lbl,.topbar .tb-sid{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (width<=1439px){#runtime-pill .lbl{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.search-btn{min-width:160px}}@media (width<=1279px){.topbar .tb-lbl,.topbar [data-testid=usage-s3] .num,.topbar [data-testid=usage-pg] .num{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.search-btn{min-width:0}}.ws-body{min-width:0;min-height:0;display:flex}.activitybar{background:var(--bg-1);border-right:1px solid var(--line);flex-direction:column;flex:none;align-items:center;gap:2px;width:46px;padding:6px 0;display:flex}.activitybar .grp-sep{background:var(--line-2);width:22px;height:1px;margin:6px 0}.act-btn{border-radius:var(--r-md);width:36px;height:36px;color:var(--fg-3);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:relative}.act-btn:hover{color:var(--fg-0);background:var(--bg-3)}.act-btn.on{color:var(--fg-0)}.act-btn.on:before{content:"";background:var(--accent);border-radius:2px;width:2px;position:absolute;top:8px;bottom:8px;left:-5px}.act-btn .count{background:var(--accent);color:#041015;border-radius:7px;place-items:center;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:700;display:grid;position:absolute;top:2px;right:2px}.act-btn .count.red{background:var(--c-red);color:#fff}.act-label{text-transform:uppercase;letter-spacing:.08em;color:var(--fg-3);margin-top:4px;font-size:8.5px;font-weight:600}.panels{flex:1;min-width:0;height:100%}.sep-v{background:var(--line);flex:none;width:1px;transition:background .12s;position:relative}.sep-v:after{content:"";position:absolute;inset:0 -3px}.sep-h{background:var(--line);flex:none;height:1px;transition:background .12s;position:relative}.sep-h:after{content:"";position:absolute;inset:-3px 0}.sep-v:hover,.sep-h:hover,.sep-v[data-separator-state=drag],.sep-h[data-separator-state=drag]{background:var(--accent)}.pane{background:var(--bg-1);flex-direction:column;min-width:0;height:100%;min-height:0;display:flex}.pane-h{border-bottom:1px solid var(--line);flex:none;align-items:center;gap:6px;height:34px;padding:0 6px 0 12px;display:flex}.pane-h .title{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.08em;color:var(--fg-2);font-weight:700}.pane-b{flex:1;min-height:0;overflow:auto}.tree{-webkit-user-select:none;user-select:none;padding:4px 0}.tree-row{cursor:pointer;height:24px;font-size:var(--fs-sm);color:var(--fg-1);align-items:center;gap:5px;padding-right:6px;display:flex;position:relative}.tree-row:hover{background:var(--bg-3)}.tree-row.on{background:var(--accent-weak);color:var(--fg-0)}.tree-row .tw{width:14px;color:var(--fg-3);flex:none;place-items:center;display:grid}.tree-row .fi{flex:none}.tree-row .meta{align-items:center;gap:4px;margin-left:auto;display:flex}.tree-row .acts{display:none}.tree-row:hover .acts{display:flex}.tree-row:hover .meta-static{display:none}.dirty-dot{background:var(--c-amber);border-radius:50%;flex:none;width:7px;height:7px}.list-item{cursor:pointer;border-bottom:1px solid var(--line);font-size:var(--fs-sm);align-items:flex-start;gap:8px;padding:7px 12px;display:flex}.list-item:hover{background:var(--bg-2)}.list-item.on{background:var(--accent-weak)}.list-item .li-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.group-h{font-size:var(--fs-2xs);letter-spacing:.07em;text-transform:uppercase;color:var(--fg-3);align-items:center;gap:6px;padding:10px 12px 4px;font-weight:700;display:flex}.egroup{background:var(--bg-0);flex-direction:column;min-width:0;height:100%;min-height:0;display:flex}.tabbar{background:var(--bg-1);border-bottom:1px solid var(--line);scrollbar-width:none;flex:none;align-items:stretch;height:34px;display:flex;overflow:auto hidden}.tabbar::-webkit-scrollbar{display:none}.etab{border-right:1px solid var(--line);font-size:var(--fs-sm);color:var(--fg-2);cursor:pointer;white-space:nowrap;flex:none;align-items:center;gap:6px;max-width:240px;padding:0 6px 0 12px;display:flex;position:relative}.etab:hover{color:var(--fg-0);background:var(--bg-2)}.etab.on{background:var(--bg-0);color:var(--fg-0)}.etab.on:before{content:"";background:var(--accent);height:2px;position:absolute;top:0;left:0;right:0}.etab .x{opacity:0;width:18px;height:18px;color:var(--fg-2);cursor:pointer;background:0 0;border:0;border-radius:3px;place-items:center;display:grid}.etab:hover .x,.etab.on .x{opacity:1}.etab .x:hover{background:var(--bg-4);color:var(--fg-0)}.etab .dirty-dot{margin:0 5px}.tabbar-acts{background:var(--bg-1);align-items:center;gap:2px;margin-left:auto;padding:0 6px;display:flex;position:sticky;right:0}.ebody{flex:1;min-height:0;position:relative;overflow:hidden}.toolbar{border-bottom:1px solid var(--line);background:var(--bg-1);flex:none;align-items:center;gap:6px;min-width:0;height:36px;padding:0 10px;display:flex}.toolbar .sep{background:var(--line-2);width:1px;height:18px}.cm-wrap{height:100%}.cm-wrap .cm-editor{height:100%;font-size:13px}.cm-wrap .cm-scroller{font-family:var(--font-mono)!important}.nb{max-width:1180px;padding:14px 24px 80px 12px}.cell{grid-template-columns:56px minmax(0,1fr);gap:0;margin-bottom:10px;display:grid;position:relative}.cell-gutter{text-align:right;font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--fg-3);flex-direction:column;align-items:flex-end;gap:4px;padding-top:6px;padding-right:10px;display:flex}.cell-gutter .run{border:1px solid var(--line-3);background:var(--bg-2);width:24px;height:24px;color:var(--fg-1);cursor:pointer;border-radius:50%;place-items:center;display:grid}.cell-gutter .run:hover{border-color:var(--accent);color:var(--accent)}.cell-main{border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--bg-1);transition:border-color .12s;overflow:hidden}.cell.active .cell-main{border-color:var(--accent-line);box-shadow:0 0 0 3px #20d3ee0f}.cell.running .cell-main{border-color:#f9b33999}.cell.errored .cell-main{border-left:2px solid var(--c-red)}.cell-tools{border-radius:var(--r-sm);background:var(--bg-3);border:1px solid var(--line-2);z-index:3;gap:2px;padding:2px;display:none;position:absolute;top:-11px;right:6px}.cell:hover .cell-tools,.cell.active .cell-tools{display:flex}.cell-md{cursor:text;padding:8px 14px}.cell-out{border-top:1px solid var(--line);background:var(--bg-0);font-size:var(--fs-sm);flex-direction:column;gap:8px;max-height:520px;padding:8px 12px;display:flex;overflow:auto}.out-meta{font-size:var(--fs-2xs);color:var(--fg-3);flex-wrap:wrap;align-items:center;gap:8px;display:flex}pre.stream{white-space:pre-wrap;word-break:break-word;font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--fg-1);margin:0;line-height:1.5}pre.stream.err{color:#f27d83}pre.stream.sys{color:var(--fg-3)}pre.tb{white-space:pre-wrap;font-family:var(--font-mono);font-size:var(--fs-xs);color:#f3868c;border-radius:var(--r-sm);background:#ee585f0f;border:1px solid #ee585f40;margin:0;padding:8px 10px}.df-card{border:1px solid var(--line-2);border-radius:var(--r-md);overflow:hidden}.df-card-h{background:var(--bg-2);border-bottom:1px solid var(--line-2);font-size:var(--fs-xs);flex-wrap:wrap;align-items:center;gap:8px;padding:6px 8px;display:flex}.df-scroll{max-height:300px;overflow:auto}.nb-add{opacity:.6;justify-content:center;gap:6px;padding:4px 0 0 56px;display:flex}.nb-add:hover{opacity:1}.figure-out{border-radius:var(--r-sm);background:#fff;max-width:100%}.bp-tabs{border-bottom:1px solid var(--line);flex:none;align-items:center;gap:0;height:32px;padding:0 4px 0 6px;display:flex}.bp-tab{height:32px;color:var(--fg-2);font-size:var(--fs-2xs);letter-spacing:.07em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #0000;align-items:center;gap:6px;padding:0 10px;font-weight:700;display:inline-flex}.bp-tab:hover{color:var(--fg-0)}.bp-tab.on{color:var(--fg-0);border-bottom-color:var(--accent)}.repl{height:100%;font-family:var(--font-mono);font-size:var(--fs-xs);flex-direction:column;display:flex}.repl-out{flex:1;padding:8px 12px;overflow:auto}.repl-in{border-top:1px solid var(--line);align-items:center;gap:6px;padding:4px 10px;display:flex}.repl-in input{color:var(--fg-0);font-family:var(--font-mono);font-size:var(--fs-xs);background:0 0;border:0;outline:none;flex:1;height:24px}.log-line{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--fg-1);grid-template-columns:70px 70px 1fr;gap:10px;padding:2px 12px;display:grid}.log-line.warn{color:var(--c-amber)}.log-line.error{color:var(--c-red)}.statusbar{border-top:1px solid var(--line);height:24px;font-size:var(--fs-xs);color:var(--fg-2);white-space:nowrap;background:#0b1117;align-items:center;gap:0;display:flex;overflow:hidden}.sb-item{border-right:1px solid var(--line);cursor:default;align-items:center;gap:6px;height:100%;padding:0 10px;display:inline-flex}.sb-item.click{cursor:pointer}.sb-item.click:hover{background:var(--bg-3);color:var(--fg-0)}.sb-item.right{border-left:1px solid var(--line);margin-left:auto}.sb-runtime.running{color:var(--c-green);background:#30cf751a}.sb-runtime.busy,.sb-runtime.starting{color:var(--c-amber);background:#f9b3391f}.sb-runtime.error{color:var(--c-red);background:#ee585f24}.sb-runtime.restart-required{color:var(--c-violet);background:#b582f724}.insp-section{border-bottom:1px solid var(--line);flex-direction:column;gap:8px;padding:12px;display:flex}.insp-title{font-weight:600;font-size:var(--fs-md);word-break:break-all;align-items:center;gap:8px;display:flex}.persist-grid{grid-template-columns:1fr;gap:6px;display:grid}.persist-row{font-size:var(--fs-xs);border-radius:var(--r-sm);background:var(--bg-2);border:1px solid var(--line);align-items:center;gap:8px;padding:6px 8px;display:flex}.dv{flex-direction:column;height:100%;min-height:0;display:flex}.dv-head{border-bottom:1px solid var(--line);background:var(--bg-1);flex-wrap:wrap;flex:none;align-items:center;gap:10px;padding:8px 12px;display:flex}.dv-stats{flex-wrap:wrap;gap:18px;display:flex}.stat{flex-direction:column;gap:1px;display:flex}.stat .v{font-family:var(--font-mono);font-size:var(--fs-lg);color:var(--fg-0);font-variant-numeric:tabular-nums;font-weight:600}.stat .k{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.06em;color:var(--fg-3);font-weight:600}.stat .d{font-size:var(--fs-xs);font-family:var(--font-mono)}.dv-body{flex:1;min-height:0;overflow:auto}.pager{border-top:1px solid var(--line);background:var(--bg-1);font-size:var(--fs-xs);color:var(--fg-2);flex:none;align-items:center;gap:8px;padding:4px 10px;display:flex}.profile-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;padding:12px;display:grid}.pcol{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--r-md);flex-direction:column;gap:6px;padding:10px 12px;display:flex}.pcol-h{align-items:center;gap:6px;display:flex}.compare-grid{grid-template-columns:1fr 1fr;gap:12px;padding:12px;display:grid}.diff-pos{color:var(--c-green)}.diff-neg{color:var(--c-red)}.lineage-canvas{background-color:var(--bg-0);background-image:radial-gradient(circle, var(--line) 1px, transparent 1px);background-size:18px 18px;height:100%;position:relative;overflow:auto}.lnode{border-radius:var(--r-md);border:1px solid var(--line-3);background:var(--bg-2);cursor:pointer;flex-direction:column;gap:4px;width:210px;padding:8px 10px;transition:border-color .12s,box-shadow .12s;display:flex;position:absolute}.lnode:hover{border-color:var(--accent-line)}.lnode.on{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-weak)}.lnode.stale{border-color:#f9b33999}.lnode.missing{opacity:.7;border-style:dashed}.lnode .ln-name{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--fg-0);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.chart-box{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--r-md);padding:10px 12px}.cm-grid{gap:2px;display:grid}.cm-cell{font-family:var(--font-mono);font-size:var(--fs-sm);height:46px;color:var(--fg-0);border-radius:3px;place-items:center;display:grid}.terminal-host{background:#0b0f14;width:100%;height:100%;padding:4px 8px}.app{grid-template-rows:48px minmax(0,1fr);height:100vh;display:grid}.app-nav{background:var(--bg-1);border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:0 16px 0 0;display:flex}.app-nav nav{gap:2px;display:flex}.app-nav nav a{border-radius:var(--r-md);height:30px;color:var(--fg-2);font-size:var(--fs-sm);align-items:center;gap:6px;padding:0 12px;font-weight:500;text-decoration:none;display:inline-flex}.app-nav nav a:hover,.app-nav nav a.active{background:var(--bg-3);color:var(--fg-0)}.role-switch{align-items:center;gap:6px;display:inline-flex}.page{min-height:0;overflow:auto}.page-inner{flex-direction:column;gap:18px;max-width:1440px;margin:0 auto;padding:22px 28px 48px;display:flex}.page-head{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.page-head h1{font-size:var(--fs-2xl);letter-spacing:-.02em;margin:0;font-weight:700}.page-head p{color:var(--fg-2);margin:4px 0 0}.grid-home{grid-template-columns:minmax(0,2fr) minmax(320px,1fr);align-items:start;gap:16px;display:grid}.grid-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}@media (width<=1180px){.grid-home,.grid-2{grid-template-columns:1fr}.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:1fr 1fr}}.resume{border-radius:var(--r-lg);border:1px solid var(--accent-line);background:radial-gradient(120% 140% at 0% 0%, #20d3ee21, transparent 55%), radial-gradient(90% 120% at 100% 100%, #b582f71a, transparent 60%), var(--bg-1);grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:16px 18px;display:grid}.resume h2{font-size:var(--fs-xl);letter-spacing:-.01em;margin:2px 0 4px}.ws-card{border-bottom:1px solid var(--line);grid-template-columns:4px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px 12px 0;display:grid}.ws-card:last-child{border-bottom:0}.ws-card .stripe{border-radius:0 3px 3px 0;align-self:stretch}.ws-card:hover{background:var(--bg-2)}.metric-tile{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--r-lg);flex-direction:column;gap:4px;padding:12px 14px;display:flex}.metric-tile .v{font-size:22px;font-weight:700;font-family:var(--font-mono);letter-spacing:-.02em}.metric-tile .k{font-size:var(--fs-xs);color:var(--fg-2)}.catalog{grid-template-columns:260px 240px minmax(0,1fr);align-items:start;gap:16px;display:grid}@media (width<=1180px){.catalog{grid-template-columns:1fr}}.pick{flex-direction:column;gap:2px;padding:6px;display:flex}.pick button{border-radius:var(--r-md);cursor:pointer;text-align:left;color:var(--fg-1);background:0 0;border:1px solid #0000;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 10px;display:flex}.pick button:hover{background:var(--bg-2)}.pick button.on{background:var(--accent-weak);border-color:var(--accent-line);color:var(--fg-0)}.proj-card{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-1);flex-direction:column;gap:10px;padding:14px 16px;transition:border-color .15s,transform .15s;display:flex}.proj-card:hover{border-color:var(--line-3);transform:translateY(-1px)}.proj-card h3{font-size:var(--fs-lg);margin:0}.concepts{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}@media (width<=1180px){.concepts{grid-template-columns:repeat(3,1fr)}}.concept{border-radius:var(--r-md);background:var(--bg-1);border:1px solid var(--line);font-size:var(--fs-xs);color:var(--fg-2);flex-direction:column;gap:4px;padding:10px 12px;display:flex}.concept b{color:var(--fg-0);font-size:var(--fs-sm);align-items:center;gap:6px;display:flex}.console{grid-template-columns:220px minmax(0,1fr);height:100%;min-height:0;display:grid}.console-nav{border-right:1px solid var(--line);background:var(--bg-1);flex-direction:column;gap:2px;padding:10px 8px;display:flex;overflow:auto}.console-nav button{border-radius:var(--r-md);height:32px;color:var(--fg-2);font-size:var(--fs-sm);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:0 10px;display:flex}.console-nav button:hover{background:var(--bg-3);color:var(--fg-0)}.console-nav button.on{background:var(--accent-weak);color:var(--fg-0)}.console-main{min-height:0;overflow:auto}.split-review{grid-template-columns:minmax(0,1.2fr) minmax(360px,1fr);align-items:start;gap:16px;display:grid}@media (width<=1280px){.split-review{grid-template-columns:1fr}}.progress-cells{gap:2px;display:flex}.progress-cells span{background:var(--bg-4);border-radius:2px;width:10px;height:14px}.progress-cells span.l1{background:#20d3ee59}.progress-cells span.l2{background:#20d3eea6}.progress-cells span.l3{background:var(--accent)}.lock{color:var(--fg-2);text-align:center;flex-direction:column;align-items:center;gap:6px;padding:26px;display:flex}.live-banner{z-index:40;background:var(--c-amber);color:var(--bg-0);font-size:var(--fs-xs);border-radius:0 0 8px 8px;align-items:center;gap:6px;padding:4px 12px;display:flex;position:fixed;top:0;left:50%;transform:translate(-50%)}.live-tools{flex:none;align-items:center;gap:6px;display:flex}.live-cp{position:relative}.live-help-active .tb-lbl{text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.live-cp-menu{min-width:280px;top:30px;right:0}.live-cp-note{padding:8px}.live-annots{z-index:30;width:320px;max-height:40vh;position:fixed;bottom:36px;right:12px;overflow:auto}.live-annot{border-top:1px solid var(--line);gap:4px;padding:8px 10px;display:grid}.live-annot-f{justify-content:space-between}.live-link{color:var(--accent);cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.live-link:hover{text-decoration:underline}.live-link:focus-visible{outline:1px solid var(--accent);outline-offset:2px}.live-consent{max-height:50vh;overflow:auto}.live-purposes{border:0;gap:6px;margin-top:8px;padding:0}.live-purpose{align-items:flex-start;gap:8px;display:flex}.live-consent-f{justify-content:space-between;align-items:center;gap:12px}.cm-annot-line{box-shadow:inset 3px 0 0 var(--c-amber);background:#f4c02524}.live-locked{font-size:var(--fs-2xs);color:var(--c-amber)}.live-inspector{min-width:0}.live-timeline{max-height:24vh;margin:0;padding-left:18px;overflow:auto}.live-timeline li.on{color:var(--c-teal)}.live-diff{border:1px solid var(--line)}.live-diff .cm-mergeView{height:60vh;overflow:auto}.radar-scroll{height:60vh;position:relative;overflow:auto}.radar-row{border-bottom:1px solid var(--line);cursor:pointer;font-variant-numeric:tabular-nums;grid-template-columns:1.6fr .9fr .8fr 2.2fr auto;align-items:center;gap:8px;padding:0 10px;display:grid}.radar-row:hover{background:var(--bg-2)}.radar-row:focus-visible{outline:1px solid var(--accent);outline-offset:-1px}.radar-row.stuck{background:#e8303014}.radar-row.on{outline:1px solid var(--c-teal);outline-offset:-1px}.radar-row .dot.on{background:var(--c-teal)}.live-grid{grid-template-columns:minmax(420px,1.3fr) minmax(260px,.7fr) minmax(420px,1.4fr);gap:12px;display:grid}.live-help-item{border-bottom:1px solid var(--line);gap:4px;padding-bottom:6px}@media (width<=1200px){.live-grid{grid-template-columns:1fr}}.live-steps{z-index:30;width:300px;max-height:40vh;position:fixed;bottom:36px;left:12px;overflow:auto}.live-stepbar{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin-bottom:8px;display:grid}.live-stepcell{font-variant-numeric:tabular-nums;gap:2px;display:grid}.sim-sides{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}@media (width<=900px){.sim-sides{grid-template-columns:minmax(0,1fr)}}.sim-code{margin:0;overflow-x:auto}.sim-line{white-space:pre}.sim-line.hl{background:var(--tone-amber)}.sim-ln{-webkit-user-select:none;user-select:none;width:32px;display:inline-block}.sim-callout{border-radius:var(--r-md);border:1px solid var(--line-2);background:var(--bg-2);font-size:var(--fs-sm);color:var(--fg-1);gap:10px;padding:10px 12px;display:flex}.sim-callout svg{flex:none;margin-top:2px}.sim-callout.critical{border-color:#ee585f59;border-left:4px solid var(--c-red);background:var(--tone-red)}.sim-callout.critical svg{color:var(--c-red)}.sim-callout-k{font-size:var(--fs-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--c-red);font-weight:700}.sim-stars{gap:2px;display:inline-flex}.sim-star{border-radius:var(--r-sm);color:var(--fg-3);cursor:pointer;transition:color .12s var(--ease), transform .12s var(--ease);background:0 0;border:0;padding:3px}.sim-star.on{color:var(--c-amber)}.sim-star:not(:disabled):hover{color:var(--c-amber);transform:scale(1.12)}.sim-star:disabled{cursor:default}.sim-star:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.sim-metric{flex-direction:column;gap:2px;min-width:110px;display:flex}.sim-metric-v{font-family:var(--font-mono);font-size:var(--fs-xl);color:var(--fg-0);font-variant-numeric:tabular-nums;font-weight:600}.sim-metric-k{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.06em;color:var(--fg-3);font-weight:600}.sim-metric-h{font-size:var(--fs-xs);font-family:var(--font-mono);color:var(--fg-2);font-variant-numeric:tabular-nums}.sim-metrics{flex-wrap:wrap;gap:20px 28px;display:flex}.sim-status{border:1px dashed var(--line-3);border-radius:var(--r-md);background:var(--bg-1);max-width:65ch;padding:14px 16px}.sim-status-t{color:var(--fg-0);margin-bottom:4px;font-weight:600}.sim-impact{border-radius:var(--r-md);background:var(--tone-red);border:1px solid #ee585f59;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.sim-impact .upper{color:var(--c-red)}.sim-impact-body{flex-wrap:wrap;gap:12px 28px;display:flex}.sim-impact-v{font-family:var(--font-mono);font-size:var(--fs-2xl);color:var(--fg-0);font-variant-numeric:tabular-nums;font-weight:700}.sim-impact-unit{margin-left:8px}.cm-cell.btn-cell{cursor:pointer;font:inherit;font-family:var(--font-mono);border:1px solid #0000}.cm-cell.btn-cell:hover{border-color:var(--line-3)}.cm-cell.btn-cell:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.cm-cell.danger{border:2px solid #ee585fb3}.cm-cell.selected{border:2px solid var(--accent)}.cm-cell.danger.selected{border-color:var(--c-red)}@media (prefers-reduced-motion:reduce){.sim-star,.sim-star:not(:disabled):hover{transition:none;transform:none}.sim-poll .spin{animation:none}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sim-artifact{min-width:0;margin:0;padding:0}.sim-artifact-err{border-left:3px solid var(--c-red);background:var(--tone-red);border-radius:var(--r-sm);padding:6px 8px}.scroll-x{max-width:100%;overflow-x:auto}.sim-pre{white-space:pre-wrap;word-break:break-word;background:var(--bg-1);border-radius:var(--r-sm);max-height:260px;margin:0;padding:8px;overflow:auto}.sim-bubble{border-radius:var(--r-lg);max-width:65ch;font-size:var(--fs-sm);padding:8px 12px;line-height:1.5}.sim-bubble.user{background:var(--accent-weak);color:var(--fg-0);align-self:flex-end}.sim-bubble.bot{background:var(--bg-3);color:var(--fg-0);align-self:flex-start}.sim-bubble.ctx{opacity:.7}.sim-chat{flex-direction:column;gap:6px;display:flex}.sim-2x2{grid-template-columns:90px repeat(2,minmax(80px,1fr));gap:2px;max-width:360px;display:grid}.sim-outline{grid-template-columns:minmax(180px,240px) 1fr;align-items:start;gap:20px;display:grid}.sim-toc{max-height:calc(100vh - 24px);position:sticky;top:12px;overflow:auto}.sim-toc ol{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.sim-toc a{border-radius:var(--r-sm);color:var(--fg-2);font-size:var(--fs-sm);border-left:2px solid #0000;padding:5px 8px;text-decoration:none;display:block}.sim-toc a:hover{color:var(--fg-0);background:var(--bg-2)}.sim-toc a[aria-current]{color:var(--accent);border-left-color:var(--accent);background:var(--accent-weak)}.sim-toc a:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.sim-prose{white-space:pre-line;max-width:65ch;margin:0}.sim-warn-list{margin:0;padding-left:16px}tr.warn td{background:var(--tone-amber)}.sim-track-ai{border-top:2px solid var(--c-blue)}.sim-track-de{border-top:2px solid var(--c-teal)}.sim-track-ba{border-top:2px solid var(--c-violet)}@media (width<=900px){.sim-outline{grid-template-columns:1fr}.sim-toc{max-height:none;position:static}}.gh-bar{border-bottom:1px solid var(--line-2);background:var(--bg-1);font-size:var(--fs-sm);align-items:center;gap:8px;padding:6px 12px;display:flex}.gh-bar.col{align-items:stretch}.gh-list{flex-direction:column;gap:4px;max-height:160px;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.modal.modal-wide{width:min(1100px,96vw)}.code-block{background:var(--bg-0);border:1px solid var(--line-2);border-radius:var(--r-md);white-space:pre-wrap;word-break:break-all;margin:0;padding:8px 10px}
