@layer reset{*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}}@layer tokens{:root{--surface-paper:#edf0f2;--surface-panel:#fbfcfd;--surface-raised:#fff;--surface-sunken:#f0f3f5;--surface-band:#f2f5f7;--surface-input:#fff;--surface-hover:#f0f4f7;--surface-selected:#e7eff6;--surface-drop-hover:#f2f7fb;--surface-scrim:#22303c59;--ink-base:#22303c;--ink-soft:#5b6b7a;--ink-inverse:#fff;--ink-hover:#33434f;--line-base:#d4dae0;--line-strong:#b9c2ca;--line-subtle:#eaeef1;--line-danger:#e3c4c1;--line-dot-grid:#c9d1d8;--line-port-ring:#c2cbd3;--wire-direct:#3e7cb1;--wire-transform:#c77d2e;--wire-constant:#7a5ea8;--wire-expression:#2e8b74;--wire-merge:#a8557e;--wire-template:var(--wire-merge);--wire-join:var(--wire-transform);--corr:#8895a2;--danger:#b54a44;--danger-surface:#f9efee;--danger-surface-strong:#fbf1f0;--danger-surface-hover:#f7e7e5;--warn-surface:#f8f2e9;--merge-surface:#f7f1f4;--ok-ink:#22685a;--ok-surface:#e5f0ed;--ok-line:#bfdcd4;--focus:#3e7cb1;--type-string-ink:#2e5e86;--type-string-surface:#e7eff6;--type-number-ink:#8a5a1e;--type-number-surface:#f3ece1;--type-boolean-ink:#5c4685;--type-boolean-surface:#efe9f6;--type-object-ink:#22685a;--type-object-surface:#e5f0ed;--type-array-ink:#7a4642;--type-array-surface:#f0e9e9;--kind-openapi:var(--wire-direct);--kind-asyncapi:var(--wire-constant);--kind-schema:var(--ink-soft);--font-sans:"Space Grotesk", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--radius:8px;--radius-sm:4px;--radius-md:6px;--radius-lg:12px;--radius-pill:20px;--shadow-modal:0 18px 50px #22303c40;--panel-width:340px;--attr-pad-x:14px;--indent-step:14px;--z-sticky:2;--z-canvas:5;--z-overlay:50;--z-toast:60;font-size:15px}}@layer base{body{font-family:var(--font-sans);background:var(--surface-paper);color:var(--ink-base);flex-direction:column;display:flex;overflow:hidden}#root{flex-direction:column;height:100%;min-height:0;display:flex}code{font-family:var(--font-mono)}}@layer layout{header{background:var(--surface-panel);border-bottom:1px solid var(--line-base);flex:none;align-items:center;gap:14px;padding:10px 18px;display:flex}header h1{letter-spacing:.01em;white-space:nowrap;flex:none;font-size:1.05rem;font-weight:700}header h1 .tag{font-family:var(--font-mono);color:var(--ink-soft);border:1px solid var(--line-base);border-radius:var(--radius-sm);vertical-align:2px;margin-left:8px;padding:2px 6px;font-size:.68rem;font-weight:500}.hdr-actions{flex:none;gap:8px;margin-left:16px;display:flex}.hdr-actions button{white-space:nowrap}.hdr-session{align-items:center;gap:8px;margin-left:16px;display:flex}.hdr-session-name{font-size:.8rem;font-weight:600}main{flex:1;min-height:0;display:flex;position:relative}.panel{flex:0 0 var(--panel-width);background:var(--surface-panel);border-right:1px solid var(--line-base);flex-direction:column;min-height:0;display:flex}.panel.right{border-right:none;border-left:1px solid var(--line-base)}.attr-scroll{flex:1;padding:6px 0 40px;position:relative;overflow:hidden auto}.canvas-gap{background-image:radial-gradient(var(--line-dot-grid) 1px, transparent 1px);background-size:18px 18px;flex:1;min-width:120px;position:relative}.canvas-hint{color:var(--ink-soft);text-align:center;pointer-events:none;justify-content:center;align-items:center;padding:20px;font-size:.8rem;display:flex;position:absolute;inset:0}#wires{width:100%;height:100%;z-index:var(--z-canvas);pointer-events:none;position:absolute;inset:0;overflow:visible}footer{background:var(--surface-panel);border-top:1px solid var(--line-base);color:var(--ink-soft);flex:none;align-items:center;gap:12px;padding:8px 18px;font-size:.75rem;display:flex}footer .stat b{color:var(--ink-base);font-family:var(--font-mono)}footer .stat.warn,footer .stat.warn b{color:var(--danger)}footer .stat.warn{align-items:center;gap:5px;display:inline-flex}footer .spacer{flex:1}header h1 a{color:inherit;text-decoration:none}header h1 a:hover{color:var(--wire-direct)}.hdr-crumbs{color:var(--ink-soft);flex:0 auto;align-items:center;gap:8px;min-width:0;font-size:.8rem;display:flex;overflow:hidden}.hdr-crumbs a{white-space:nowrap;color:var(--ink-soft);text-decoration:none}.hdr-crumbs a:hover{color:var(--ink-base);text-decoration:underline}.hdr-crumb-current{color:var(--ink-base);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.hdr-crumb-sep{color:var(--line-strong)}main.page{display:block;overflow-y:auto}.page-inner{flex-direction:column;gap:18px;max-width:760px;margin:0 auto;padding:28px 18px 60px;display:flex}.board-scroll{background:var(--surface-paper);display:block;overflow:auto}.board{width:calc(var(--board-w) * 1px);height:calc(var(--board-h) * 1px);background-image:radial-gradient(var(--line-dot-grid) 1px, transparent 1px);background-size:18px 18px;position:relative}.board-hint{text-align:center;max-width:420px;color:var(--ink-soft);z-index:var(--z-sticky);pointer-events:none;font-size:.82rem;line-height:1.5;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}}@layer components{button{border:1px solid var(--line-base);background:var(--surface-panel);color:var(--ink-base);border-radius:var(--radius);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:7px 13px;font-family:inherit;font-size:.8rem;font-weight:600;transition:background .12s,border-color .12s;display:inline-flex}button:hover{background:var(--surface-sunken);border-color:var(--line-strong)}button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}button.primary{background:var(--ink-base);color:var(--ink-inverse);border-color:var(--ink-base)}button.primary:hover{background:var(--ink-hover)}button.ghost{color:var(--ink-soft);border-color:#0000}button.ghost:hover{background:var(--surface-paper);color:var(--ink-base)}button.danger{color:var(--danger);border-color:var(--line-danger)}button.danger:hover{background:var(--danger-surface)}button:disabled{opacity:.45;cursor:default}.avatar{object-fit:cover;border-radius:50%;flex:none;width:26px;height:26px}.avatar--fallback{background:var(--ink-base);color:var(--ink-inverse);justify-content:center;align-items:center;font-size:.65rem;font-weight:700;display:inline-flex}.panel-head{border-bottom:1px solid var(--line-base);flex:none;padding:10px 14px 8px}.panel-head--bare{border:none;padding:0 0 4px}.panel-head .row1{align-items:baseline;gap:8px;display:flex}.panel-head .side-label{font-family:var(--font-mono);letter-spacing:.12em;color:var(--ink-soft);text-transform:uppercase;font-size:.62rem;font-weight:600}.panel-head .api-name{text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:700;overflow:hidden}.panel-head .api-kind,.doc-choices .api-kind,.node-docs .api-kind{font-family:var(--font-mono);color:var(--ink-inverse);border-radius:var(--radius-sm);flex:none;margin-left:auto;padding:1px 6px;font-size:.65rem}.doc-choices .api-kind,.node-docs .api-kind{margin-left:0}.kind-openapi{background:var(--kind-openapi)}.kind-asyncapi{background:var(--kind-asyncapi)}.kind-schema{background:var(--kind-schema)}.panel-tools{gap:6px;margin-top:8px;display:flex}.panel-tools input[type=search]{min-width:0;font-family:var(--font-mono);border:1px solid var(--line-base);border-radius:var(--radius-md);background:var(--surface-input);color:var(--ink-base);flex:1;padding:5px 8px;font-size:.72rem}.panel-tools input:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.panel-tools button{white-space:nowrap;flex:none}.doc-head{background:var(--surface-band);border-top:1px solid var(--line-base);border-bottom:1px solid var(--line-base);align-items:center;gap:8px;padding:9px 14px 7px;font-size:.82rem;font-weight:700;display:flex}.doc-head:first-child{border-top:none}.doc-head .api-kind{margin-left:0}.doc-head .name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.doc-head button{padding:1px 7px;font-size:.72rem}.group-head{text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;width:100%;color:var(--ink-base);background:var(--surface-panel);z-index:var(--z-sticky);border:none;border-bottom:1px solid var(--line-subtle);border-radius:0;justify-content:flex-start;align-items:center;gap:6px;padding:7px 14px 5px;font-size:.8rem;font-weight:600;display:flex;position:sticky;top:0}.group-head:hover{background:var(--surface-panel);border-color:#0000}.group-head .chev{color:var(--ink-soft);font-size:.6rem;transition:transform .12s}.group-head.collapsed .chev{transform:rotate(-90deg)}.group-head .count{font-family:var(--font-mono);color:var(--ink-soft);margin-left:auto;font-size:.65rem}.attr{padding:4px var(--attr-pad-x);cursor:pointer;font-family:var(--font-mono);padding-left:calc(var(--attr-pad-x) + var(--depth,0) * var(--indent-step));border-left:3px solid #0000;align-items:center;gap:7px;font-size:.74rem;display:flex;position:relative}.attr:hover{background:var(--surface-hover)}.attr:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.attr .name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.attr .dim{color:var(--ink-soft)}.attr .type{border-radius:var(--radius-sm);background:var(--surface-paper);color:var(--ink-soft);flex:none;margin-left:auto;padding:1px 6px;font-size:.62rem}.attr .type.t-string{background:var(--type-string-surface);color:var(--type-string-ink)}.attr .type.t-number,.attr .type.t-integer{background:var(--type-number-surface);color:var(--type-number-ink)}.attr .type.t-boolean{background:var(--type-boolean-surface);color:var(--type-boolean-ink)}.attr .type.t-object{background:var(--type-object-surface);color:var(--type-object-ink)}.attr .type.t-array{background:var(--type-array-surface);color:var(--type-array-ink)}.attr.pending{background:var(--surface-selected);border-left-color:var(--wire-direct)}.attr .port{border:2px solid var(--line-port-ring);background:var(--surface-raised);opacity:.55;border-radius:50%;flex:none;width:8px;height:8px}.attr.mapped .port{opacity:1;border-color:currentColor}.attr .req{color:var(--danger);margin-left:1px;font-weight:700}.attr .gtd{color:var(--ok-ink);background:var(--ok-surface);border:1px solid var(--ok-line);border-radius:var(--radius-sm);flex:none;align-items:center;padding:2px 4px;font-size:.6rem;line-height:1;display:inline-flex}.attr.req-missing{background:var(--danger-surface-strong);border-left-color:var(--danger)}.attr.req-missing .port{border-color:var(--danger);opacity:.9}.attr.req-missing:hover{background:var(--danger-surface-hover)}.attr .static-btn{font-family:var(--font-mono);border-radius:var(--radius-sm);border:1px solid var(--line-base);background:var(--surface-raised);color:var(--ink-soft);cursor:pointer;flex:none;padding:2px 6px;font-size:.68rem;line-height:1;display:none}.attr:hover .static-btn{display:inline-flex}.attr .static-btn:hover{border-color:var(--wire-constant);color:var(--wire-constant)}.attr.attr--rule-direct .port{border-color:var(--wire-direct);background:var(--wire-direct)}.attr.attr--rule-transform .port{border-color:var(--wire-transform);background:var(--wire-transform)}.attr.attr--rule-constant .port{border-color:var(--wire-constant);background:var(--wire-constant)}.attr.attr--rule-expression .port{border-color:var(--wire-expression);background:var(--wire-expression)}.attr.attr--rule-template .port{border-color:var(--wire-template);background:var(--wire-template)}.attr.attr--rule-join .port{border-color:var(--wire-join);background:var(--wire-join)}.attr.attr--correlated .port{border-color:var(--corr);background:var(--surface-raised);opacity:1}.spec-input{flex-direction:column;flex:1;gap:10px;padding:16px 14px;display:flex;overflow-y:auto}.spec-input p.lead{color:var(--ink-soft);font-size:.8rem;line-height:1.45}.drop{border:1.5px dashed var(--line-strong);border-radius:var(--radius);text-align:center;width:100%;color:var(--ink-soft);cursor:pointer;background:0 0;padding:18px 12px;font-size:.78rem;font-weight:400;transition:border-color .12s,background .12s;display:block}.drop-formats{font-size:.65rem}.drop:hover,.drop.over{border-color:var(--wire-direct);background:var(--surface-drop-hover);color:var(--ink-base)}.spec-input textarea{font-family:var(--font-mono);resize:vertical;border:1px solid var(--line-base);border-radius:var(--radius);background:var(--surface-input);min-height:150px;color:var(--ink-base);padding:10px;font-size:.7rem;line-height:1.5}.spec-input textarea:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.spec-input .btnrow{flex-wrap:wrap;gap:8px;display:flex}.parse-error{color:var(--danger);background:var(--danger-surface);border:1px solid var(--line-danger);border-radius:var(--radius-md);white-space:pre-wrap;font-size:.72rem;font-family:var(--font-mono);padding:8px 10px}.add-doc-bar{border-top:1px solid var(--line-base);flex:none;padding:8px 14px}.add-doc-bar button{width:100%}.overlay{background:var(--surface-scrim);z-index:var(--z-overlay);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--surface-panel);border-radius:var(--radius-lg);width:min(540px,92vw);box-shadow:var(--shadow-modal);flex-direction:column;gap:14px;max-height:88vh;padding:20px;display:flex;overflow-y:auto}.modal h2{font-size:.95rem}.modal--compact{width:min(430px,92vw)}.ask-body{color:var(--ink-soft);white-space:pre-wrap;font-size:.78rem;line-height:1.5;font-family:var(--font-mono)}.provider-list{flex-direction:column;gap:8px;display:flex}.provider-option{justify-content:flex-start;padding:11px 13px}.map-route{font-family:var(--font-mono);background:var(--surface-sunken);border-radius:var(--radius);gap:8px;padding:10px 12px;font-size:.72rem;display:flex}.map-route--stack{flex-direction:column;align-items:stretch;gap:6px}.map-route--inline{align-items:center}.flow-divider{color:var(--ink-soft);justify-content:center;font-size:.7rem;display:flex}.map-route .ep{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.map-route .ep small{color:var(--ink-soft);font-size:.62rem;display:block}.src-stack{flex-direction:column;gap:6px;display:flex}.src-row{font-family:var(--font-mono);background:var(--surface-sunken);border-radius:var(--radius);align-items:center;gap:8px;padding:8px 12px;font-size:.72rem;display:flex}.src-row .ep{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.src-row .ep small{color:var(--ink-soft);font-size:.62rem;display:block}.src-row button{flex:none;padding:2px 8px;font-size:.7rem}.src-row--empty .ep{color:var(--ink-soft)}.funnel-note{color:var(--ink-soft);border-left:3px solid var(--wire-merge);background:var(--merge-surface);border-radius:0 var(--radius-md) var(--radius-md) 0;padding:4px 10px;font-size:.68rem;line-height:1.45}.funnel-note--warn{border-left-color:var(--wire-transform);background:var(--warn-surface)}.funnel-note--danger{border-left-color:var(--danger);background:var(--danger-surface-strong)}.modal .actions{justify-content:flex-end;gap:8px;display:flex}.modal .actions .danger{margin-right:auto}.hint{color:var(--ink-soft);font-size:.68rem;line-height:1.4}.field{flex-direction:column;gap:5px;display:flex}fieldset.field{border:0;margin:0;padding:0}.field label,.field legend{color:var(--ink-soft);font-size:.72rem;font-weight:600}.field select,.field input[type=text],.field textarea{font-family:var(--font-mono);border:1px solid var(--line-base);border-radius:var(--radius-md);background:var(--surface-input);color:var(--ink-base);padding:8px;font-size:.75rem}.field textarea{resize:vertical;min-height:64px}.field select:focus-visible,.field input:focus-visible,.field textarea:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.rule-types{flex-wrap:wrap;gap:6px;display:flex}.rule-pill{border-radius:var(--radius-pill);border:1.5px solid var(--line-base);background:var(--surface-raised);cursor:pointer;padding:6px 11px;font-size:.72rem;font-weight:600}.rule-pill[data-active=true]{color:var(--ink-inverse);border-color:#0000}.rule-pill[data-rt=direct][data-active=true]{background:var(--wire-direct)}.rule-pill[data-rt=transform][data-active=true]{background:var(--wire-transform)}.rule-pill[data-rt=constant][data-active=true]{background:var(--wire-constant)}.rule-pill[data-rt=expression][data-active=true]{background:var(--wire-expression)}.rule-pill[data-rt=template][data-active=true]{background:var(--wire-template)}.rule-pill[data-rt=join][data-active=true]{background:var(--wire-join)}#wires path.wire{fill:none;pointer-events:stroke;cursor:pointer}#wires path.wire:hover{filter:brightness(.85)}#wires text.wire{fill:var(--ink-inverse);font-family:var(--font-mono);font-size:9px;font-weight:700}#wires text.wire--correlation{font-size:8px}#wires g:has(>polygon)>text.wire{font-size:8px}#wires g.wire{pointer-events:all;cursor:pointer}#wires .wire--direct{stroke:var(--wire-direct);fill:var(--wire-direct)}#wires .wire--transform{stroke:var(--wire-transform);fill:var(--wire-transform)}#wires .wire--constant{stroke:var(--wire-constant);fill:var(--wire-constant)}#wires .wire--expression{stroke:var(--wire-expression);fill:var(--wire-expression)}#wires .wire--template{stroke:var(--wire-template);fill:var(--wire-template)}#wires .wire--join{stroke:var(--wire-join);fill:var(--wire-join)}#wires .wire--correlation{stroke:var(--corr);fill:var(--corr);stroke-dasharray:5 4}#wires .wire{stroke-width:2.5px}#wires .wire--thin{stroke-width:2px}#wires .wire--thick{stroke-width:3px}#wires .wire--direct,#wires .wire--transform,#wires .wire--constant,#wires .wire--expression,#wires .wire--template,#wires .wire--join{opacity:.9}#wires .wire--correlation{opacity:.85}#wires .wire--clipped{opacity:.35}#wires .wire--correlation.wire--clipped{opacity:.3}#toast{background:var(--ink-base);color:var(--ink-inverse);border-radius:var(--radius-pill);opacity:0;pointer-events:none;z-index:var(--z-toast);text-align:center;max-width:80vw;padding:8px 16px;font-size:.75rem;transition:opacity .2s,transform .2s;position:fixed;bottom:64px;left:50%;transform:translate(-50%)translateY(10px)}#toast.show{opacity:1;transform:translate(-50%)translateY(0)}.legend{color:var(--ink-soft);gap:12px;margin-left:auto;font-size:.72rem;display:flex}.legend span{align-items:center;gap:5px;display:flex}.swatch{border-radius:2px;width:14px;height:3px;display:inline-block}.swatch--direct{background:var(--wire-direct)}.swatch--transform{background:var(--wire-transform)}.swatch--constant{background:var(--wire-constant)}.swatch--expression{background:var(--wire-expression)}.swatch--template{background:var(--wire-template)}.swatch--correlation{background:repeating-linear-gradient(90deg, var(--corr) 0 3px, transparent 3px 6px)}.node-card{left:calc(var(--node-x) * 1px);top:calc(var(--node-y) * 1px);width:calc(var(--node-w) * 1px);height:calc(var(--node-h) * 1px);background:var(--surface-raised);border:1px solid var(--line-base);border-radius:var(--radius-lg);z-index:var(--z-canvas);-webkit-user-select:none;user-select:none;touch-action:none;cursor:grab;flex-direction:column;gap:4px;padding:8px 10px;display:flex;position:absolute;box-shadow:0 2px 6px #22303c14}.node-card:active{cursor:grabbing}.node-card.linking{border-color:var(--wire-direct);box-shadow:0 0 0 2px var(--surface-selected)}.node-card.link-target{cursor:pointer;border-style:dashed}.node-card.link-target:hover{border-color:var(--wire-direct);background:var(--surface-drop-hover)}.node-card-head{align-items:center;min-width:0;display:flex}.node-name,.linklike{all:unset;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:700;overflow:hidden}.node-name:focus-visible,.linklike:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.node-rename{border:1px solid var(--line-base);border-radius:var(--radius-sm);background:var(--surface-input);width:100%;color:var(--ink-base);padding:2px 6px;font-family:inherit;font-size:.9rem;font-weight:700}.node-card-docs{font-family:var(--font-mono);color:var(--ink-soft);justify-content:space-between;font-size:.65rem;display:flex}.node-card-actions{align-items:center;gap:2px;margin-top:auto;display:flex}.node-card-actions button{padding:4px 7px;font-size:.7rem}button.icon-only{padding:4px 6px}.edges{pointer-events:none;position:absolute;inset:0;overflow:visible}.edge{fill:none;stroke:var(--wire-direct);stroke-width:2px;opacity:.75}.edge-chip{left:calc(var(--edge-x) * 1px);top:calc(var(--edge-y) * 1px);background:var(--surface-raised);border:1px solid var(--line-base);border-radius:var(--radius-pill);z-index:var(--z-canvas);white-space:nowrap;align-items:center;gap:2px;padding:2px 4px 2px 8px;font-size:.7rem;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 1px 3px #22303c1f}.edge-chip a{color:var(--ink-base);font-weight:600;text-decoration:none}.edge-chip a:hover{color:var(--wire-direct)}.inline-form{gap:8px;display:flex}.inline-form input{border:1px solid var(--line-base);border-radius:var(--radius);background:var(--surface-input);color:var(--ink-base);flex:1;padding:8px 12px;font-family:inherit;font-size:.85rem}.inline-form input:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.card-list{flex-direction:column;gap:8px;list-style:none;display:flex}.card-list li{background:var(--surface-panel);border:1px solid var(--line-base);border-radius:var(--radius);align-items:center;gap:8px;padding:4px 8px 4px 14px;display:flex}.card-list li:hover{border-color:var(--line-strong)}.card-list-main{color:inherit;flex-direction:column;flex:1;gap:2px;min-width:0;padding:8px 0;text-decoration:none;display:flex}.card-list-title{font-size:.9rem;font-weight:700}.card-list-meta{font-family:var(--font-mono);color:var(--ink-soft);font-size:.68rem}.empty-state{color:var(--ink-soft);font-size:.82rem}.doc-picker{flex-direction:column;flex:1;gap:10px;padding:16px 14px;display:flex;overflow-y:auto}.doc-picker p.lead{color:var(--ink-soft);font-size:.8rem;line-height:1.45}.doc-choices{flex-direction:column;gap:6px;list-style:none;display:flex}.doc-choices button{flex-wrap:wrap;justify-content:flex-start;gap:6px;width:100%;padding:9px 12px;font-weight:400}.doc-choice-name{font-weight:700}.doc-choice-count{font-family:var(--font-mono);color:var(--ink-soft);margin-left:auto;font-size:.65rem}.doc-choices-empty{color:var(--ink-soft);font-size:.78rem;line-height:1.5}.node-docs{margin-bottom:14px}.node-docs h3{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);justify-content:space-between;align-items:center;margin-bottom:6px;font-size:.78rem;display:flex}.node-docs ul{flex-direction:column;gap:4px;list-style:none;display:flex}.node-docs li{border:1px solid var(--line-subtle);border-radius:var(--radius-md);align-items:center;gap:8px;padding:6px 6px 6px 10px;font-size:.8rem;display:flex}.node-docs-empty{color:var(--ink-soft);font-size:.75rem}.browser{grid-template-columns:180px 1fr;gap:12px;height:320px;margin-bottom:14px;display:grid}.browser-orgs{border:1px solid var(--line-base);border-radius:var(--radius);background:var(--surface-sunken);flex-direction:column;gap:2px;padding:6px;display:flex;overflow-y:auto}.browser-org{all:unset;cursor:pointer;border-radius:var(--radius-md);flex-direction:column;gap:1px;padding:7px 9px;display:flex}.browser-org:hover{background:var(--surface-hover)}.browser-org.selected{background:var(--surface-selected)}.browser-org:focus-visible,.browser-item:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.browser-org-name{font-size:.82rem;font-weight:700}.browser-org-kind{font-family:var(--font-mono);color:var(--ink-soft);font-size:.62rem}.browser-list{border:1px solid var(--line-base);border-radius:var(--radius);background:var(--surface-input);padding:6px;overflow-y:auto}.browser-list--flat{height:auto;max-height:260px;margin-bottom:14px}.browser-list ul{flex-direction:column;gap:2px;list-style:none;display:flex}.browser-item{all:unset;cursor:pointer;box-sizing:border-box;border-radius:var(--radius-md);grid-template-columns:1fr auto;gap:2px 10px;width:100%;padding:8px 10px;display:grid}.browser-item:hover{background:var(--surface-hover)}.browser-item.selected{background:var(--surface-selected)}.browser-item[disabled]{cursor:default;opacity:.45}.browser-item-name{font-size:.85rem;font-weight:700}.browser-item-meta,.browser-item-date{font-family:var(--font-mono);color:var(--ink-soft);font-size:.65rem}.browser-item-date{grid-area:1/2/span 2;align-self:center}.browser-message{color:var(--ink-soft);padding:10px;font-size:.8rem}.browser-message--error{color:var(--danger)}.badge-local{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);border:1px solid var(--line-base);border-radius:var(--radius-sm);margin-left:8px;padding:1px 5px;font-size:.6rem}}@layer utilities{.not-found{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:40px;display:flex}.mono{font-family:var(--font-mono)}}@layer responsive{@media (prefers-reduced-motion:reduce){*{transition:none!important}}@media (width<=900px){.panel{flex-basis:44vw}.legend{display:none}}}
