:root{--bg: #1c1c1c;--accent: #7b7fd4;--light: #b6b8ba;--white: #ffffff;--red: #ae3a3c;--green: #3bad7e;--yellow: #f4a261;--toolbar-height: 52px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{min-height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--white)}.toolbar{display:flex;align-items:center;justify-content:space-between;height:var(--toolbar-height);padding:0 1rem;background:#252525;border-bottom:1px solid #333}.toolbar-brand{display:flex;align-items:center;gap:.6rem;min-width:0}.toolbar-brand-logo{width:34px;height:34px;flex-shrink:0;border-radius:5px;overflow:hidden}.bbt-logo-bg{fill:#5f63c0}.bbt-logo-block{fill:#000}.bbt-logo-accent{fill:#fff}.toolbar-brand-text{display:flex;flex-direction:column;min-width:0}.toolbar-title{font-size:.95rem;font-weight:600;color:var(--accent);line-height:1.2;white-space:nowrap}.toolbar-byline{font-size:.75rem;color:#888;text-decoration:none;line-height:1.2;white-space:nowrap;transition:color .15s}.toolbar-byline:hover{color:var(--accent)}.toolbar-actions{display:flex;gap:.5rem}.toolbar-actions button{padding:.4rem .85rem;border:1px solid #555;border-radius:4px;background:transparent;color:var(--light);font-size:.8rem;cursor:pointer;transition:background .15s,color .15s}.toolbar-actions button:hover{background:var(--accent);color:var(--white);border-color:var(--accent)}.toolbar-actions .btn-theme{font-size:1.1rem;line-height:1;padding:.25rem .55rem;border-color:#666;color:var(--yellow)}.toolbar-actions .btn-theme:hover{background:#333;border-color:var(--yellow);color:var(--yellow)}.toolbar-actions .btn-analysis{border-color:var(--yellow);color:var(--yellow)}.toolbar-actions .btn-analysis:hover,.toolbar-actions .btn-analysis.active{background:var(--yellow);color:#1c1c1c;border-color:var(--yellow)}.editor-layout{display:grid;grid-template-columns:1fr 2fr;gap:0;height:calc(100vh - var(--toolbar-height));overflow:hidden}#editor{resize:none;border:none;border-right:1px solid #333;padding:1rem;font-family:SF Mono,Fira Code,Fira Mono,Menlo,Consolas,monospace;font-size:.85rem;line-height:1.6;color:var(--white);background:var(--bg);outline:none;-moz-tab-size:2;tab-size:2;overflow:auto}#editor::placeholder{color:#555}.preview-pane{display:flex;flex-direction:column;overflow:hidden;background:var(--white)}.error-bar{padding:.6rem 1rem;background:var(--red);color:var(--white);font-size:.8rem;font-family:SF Mono,Fira Code,monospace;white-space:pre-wrap;word-break:break-word}.error-bar[hidden]{display:none}.diagram-output{flex:1;overflow:auto;padding:1rem;display:flex;align-items:flex-start;justify-content:center}.diagram-output svg{max-width:100%;height:auto}.docs-drawer{position:fixed;top:var(--toolbar-height);right:0;bottom:0;width:66.67%;background:var(--bg);border-left:1px solid #333;transform:translate(100%);transition:transform .25s ease;z-index:100;display:flex;flex-direction:column}.docs-drawer.open{transform:translate(0)}.toolbar-actions button.active{background:var(--accent);color:var(--white);border-color:var(--accent)}.docs-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.25rem;border-bottom:1px solid #333;flex-shrink:0}.docs-title{font-size:.9rem;font-weight:600;color:var(--accent)}.docs-close{background:none;border:none;color:var(--light);font-size:1.4rem;cursor:pointer;line-height:1;padding:0 .25rem}.docs-close:hover{color:var(--white)}.docs-body{flex:1;overflow-y:auto;padding:1.25rem;color:#ccc;font-size:.85rem;line-height:1.7}.docs-toc{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #333}.docs-toc-link{padding:.25rem .6rem;border:1px solid #444;border-radius:3px;color:var(--light);text-decoration:none;font-size:.75rem;transition:background .15s,color .15s}.docs-toc-link:hover{background:var(--accent);color:var(--white);border-color:var(--accent)}.docs-body h1{font-size:1.3rem;color:var(--white);margin-bottom:.5rem}.docs-body h2{font-size:1.05rem;color:var(--white);margin-top:2rem;margin-bottom:.5rem;padding-top:1rem;border-top:1px solid #333}.docs-body h3{font-size:.9rem;color:var(--white);margin-top:1.25rem;margin-bottom:.4rem}.docs-body h4{font-size:.85rem;color:var(--accent);margin-top:1rem;margin-bottom:.3rem}.docs-body p{margin-bottom:.6rem}.docs-body ul{margin-bottom:.6rem;padding-left:1.25rem}.docs-body li{margin-bottom:.3rem}.docs-body a{color:var(--accent)}.docs-body code{font-family:SF Mono,Fira Code,monospace;font-size:.8rem;background:#2a2a2a;padding:.15rem .35rem;border-radius:3px;color:var(--yellow)}.docs-body pre{background:#2a2a2a;border:1px solid #3a3a3a;border-radius:4px;padding:.75rem 1rem;overflow-x:auto;margin-bottom:.6rem}.docs-body pre code{background:none;padding:0;font-size:.78rem;color:#ccc;line-height:1.6}.docs-example{position:relative;margin-bottom:.6rem}.docs-example pre{margin-bottom:0}.docs-try-btn{position:absolute;top:.5rem;right:.5rem;padding:.25rem .6rem;border:1px solid var(--accent);border-radius:3px;background:transparent;color:var(--accent);font-size:.7rem;cursor:pointer;transition:background .15s,color .15s}.docs-try-btn:hover{background:var(--accent);color:var(--white)}.docs-body table{width:100%;border-collapse:collapse;margin-bottom:.8rem;font-size:.8rem}.docs-body th,.docs-body td{text-align:left;padding:.4rem .6rem;border:1px solid #3a3a3a}.docs-body th{background:#2a2a2a;color:var(--white);font-weight:600}.docs-body td{color:#bbb}.docs-note{border-left:3px solid var(--accent);padding-left:.75rem;color:#999;font-size:.8rem}.docs-swatch{display:inline-block;width:12px;height:12px;border-radius:2px;vertical-align:middle;margin-right:.3rem;border:1px solid #555}.docs-build-stamp{margin-top:2rem;padding-top:1rem;border-top:1px solid #333;font-size:.7rem;color:#555;font-family:SF Mono,Fira Code,monospace}.docs-diagram{margin-top:.5rem;background:var(--white);border-radius:4px;padding:.5rem}.docs-diagram svg{max-width:100%;height:auto}.analysis-drawer{position:fixed;top:var(--toolbar-height);right:0;bottom:0;width:66.67%;background:var(--bg);border-left:1px solid #333;transform:translate(100%);transition:transform .25s ease;z-index:100;display:flex;flex-direction:column}.analysis-drawer.open{transform:translate(0)}.analysis-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.25rem;border-bottom:1px solid #333;flex-shrink:0}.analysis-title{font-size:.9rem;font-weight:600;color:var(--accent)}.analysis-close{background:none;border:none;color:var(--light);font-size:1.4rem;cursor:pointer;line-height:1;padding:0 .25rem}.analysis-close:hover{color:var(--white)}.analysis-body{flex:1;overflow-y:auto;padding:1.25rem;color:#ccc;font-size:.85rem;line-height:1.7}.analysis-loading,.analysis-empty,.analysis-error{color:#999;font-style:italic}.analysis-error{color:var(--red)}.analysis-intro{margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #333;color:#999;font-size:.8rem;line-height:1.6}.analysis-experimental{display:inline-block;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.15rem .5rem;border-radius:3px;border:1px solid var(--yellow);color:var(--yellow);margin-bottom:.5rem}.analysis-card{border-radius:4px;padding:.75rem 1rem;margin-bottom:.75rem;background:#252525}.analysis-card.analysis-caution{border-left:3px solid var(--yellow)}.analysis-card.analysis-topology-hint{border-left:3px solid #6b7280}.analysis-card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.4rem}.analysis-badge{display:inline-block;font-size:.65rem;font-weight:600;text-transform:uppercase;padding:.15rem .45rem;border-radius:9999px;letter-spacing:.03em}.analysis-badge-caution{background:var(--yellow);color:#1c1c1c}.analysis-badge-topology-hint{background:#4b5563;color:#e5e7eb}.analysis-rule-name{color:var(--white);font-size:.85rem}.analysis-finding+.analysis-finding{margin-top:.5rem;padding-top:.5rem;border-top:1px solid #333}.analysis-reason{color:#bbb;font-size:.8rem;margin-bottom:.5rem}.analysis-diagram{background:var(--white);border-radius:4px;padding:.5rem}.analysis-diagram svg{max-width:100%;height:auto}.analysis-diagram-error{color:#999;font-size:.75rem;font-style:italic}.analysis-cta{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #333;display:flex;gap:.75rem;align-items:flex-start}.analysis-cta-logo{flex-shrink:0;border-radius:4px;overflow:hidden;margin-top:.1rem}.analysis-cta-text{font-size:.8rem;line-height:1.6;color:#999;max-width:350px}.analysis-cta-text strong{display:block;color:#ccc;margin-bottom:.25rem}.analysis-cta-link{display:inline-block;margin-top:.4rem;font-size:.8rem;color:var(--accent);text-decoration:none;transition:color .15s}.analysis-cta-link:hover{color:var(--white)}[data-theme=light] body{background:#f0f0f0;color:#222}[data-theme=light] .toolbar{background:#e0e0e0;border-bottom-color:#ccc}[data-theme=light] .toolbar-title{color:#5558a8}[data-theme=light] .toolbar-byline{color:#999}[data-theme=light] .toolbar-byline:hover{color:#5558a8}[data-theme=light] .toolbar-actions button{border-color:#aaa;color:#555}[data-theme=light] .toolbar-actions button:hover{background:#5558a8;color:#fff;border-color:#5558a8}[data-theme=light] .toolbar-actions .btn-theme{color:#c08020;border-color:#aaa}[data-theme=light] .toolbar-actions .btn-theme:hover{background:#eee;border-color:#c08020;color:#c08020}[data-theme=light] .toolbar-actions .btn-analysis{border-color:#c08020;color:#c08020}[data-theme=light] .toolbar-actions .btn-analysis:hover,[data-theme=light] .toolbar-actions .btn-analysis.active{background:#c08020;color:#fff;border-color:#c08020}[data-theme=light] .toolbar-actions button.active{background:#5558a8;color:#fff;border-color:#5558a8}[data-theme=light] #editor{background:#fafafa;color:#222;border-right-color:#ccc}[data-theme=light] #editor::placeholder{color:#aaa}[data-theme=light] .docs-drawer,[data-theme=light] .analysis-drawer{background:#f5f5f5;border-left-color:#ccc}[data-theme=light] .docs-header,[data-theme=light] .analysis-header{border-bottom-color:#ddd}[data-theme=light] .docs-title,[data-theme=light] .analysis-title{color:#5558a8}[data-theme=light] .docs-close,[data-theme=light] .analysis-close{color:#888}[data-theme=light] .docs-close:hover,[data-theme=light] .analysis-close:hover{color:#333}[data-theme=light] .docs-body,[data-theme=light] .analysis-body{color:#444}[data-theme=light] .docs-body h1,[data-theme=light] .docs-body h2,[data-theme=light] .docs-body h3{color:#222}[data-theme=light] .docs-body h2{border-top-color:#ddd}[data-theme=light] .docs-body h4{color:#5558a8}[data-theme=light] .docs-body code{background:#e8e8e8;color:#a06020}[data-theme=light] .docs-body pre{background:#e8e8e8;border-color:#d0d0d0}[data-theme=light] .docs-body pre code{color:#444}[data-theme=light] .docs-body th{background:#e0e0e0;color:#222}[data-theme=light] .docs-body td{color:#555}[data-theme=light] .docs-body th,[data-theme=light] .docs-body td{border-color:#d0d0d0}[data-theme=light] .docs-toc{border-bottom-color:#ddd}[data-theme=light] .docs-toc-link{border-color:#bbb;color:#555}[data-theme=light] .docs-toc-link:hover{background:#5558a8;color:#fff;border-color:#5558a8}[data-theme=light] .docs-build-stamp{border-top-color:#ddd;color:#aaa}[data-theme=light] .docs-body a{color:#5558a8}[data-theme=light] .docs-note{border-left-color:#5558a8;color:#777}[data-theme=light] .docs-swatch{border-color:#aaa}[data-theme=light] .analysis-card{background:#e8e8e8}[data-theme=light] .analysis-rule-name{color:#222}[data-theme=light] .analysis-reason{color:#555}[data-theme=light] .analysis-intro{border-bottom-color:#ddd;color:#777}[data-theme=light] .analysis-finding+.analysis-finding{border-top-color:#ddd}[data-theme=light] .analysis-cta{border-top-color:#ddd}[data-theme=light] .analysis-cta-text{color:#777}[data-theme=light] .analysis-cta-text strong{color:#444}[data-theme=light] .analysis-cta-link{color:#5558a8}[data-theme=light] .analysis-cta-link:hover{color:#222}[data-theme=light] .error-bar{background:#d44}:is(.diagram-output,.docs-diagram,.analysis-diagram) .interaction-xaas>path{fill-opacity:.5!important}[data-theme=dark] .preview-pane,[data-theme=dark] .docs-diagram,[data-theme=dark] .analysis-diagram{background:#1c1c1c}[data-theme=dark] .diagram-output,[data-theme=dark] .docs-diagram,[data-theme=dark] .analysis-diagram{color:#ccc}[data-theme=dark] :is(.diagram-output,.docs-diagram,.analysis-diagram) .team-stream-aligned>rect{fill:#3d3420!important;stroke:#b8a050!important}[data-theme=dark] :is(.diagram-output,.docs-diagram,.analysis-diagram) .team-enabling>rect{fill:#382832!important;stroke:#a07a8e!important}[data-theme=dark] :is(.diagram-output,.docs-diagram,.analysis-diagram) .team-complicated-subsystem>path{fill:#3e2a14!important;stroke:#c07830!important}[data-theme=dark] :is(.diagram-output,.docs-diagram,.analysis-diagram) .team-undefined>rect{fill:#333!important;stroke:#777!important}[data-theme=dark] :is(.diagram-output,.docs-diagram,.analysis-diagram) .platform-group>rect{fill:#1e2840!important;stroke:#5a7ab0!important}[data-theme=dark] :is(.diagram-output,.docs-diagram,.analysis-diagram) .group>rect{stroke:#555!important}[data-theme=dark] :is(.diagram-output,.docs-diagram,.analysis-diagram) .interaction-collaboration>path{fill:#5a5888!important;stroke:#7a70a0!important}[data-theme=dark] :is(.diagram-output,.docs-diagram,.analysis-diagram) .interaction-xaas>path{fill:#585858!important;stroke:#707070!important}[data-theme=dark] :is(.diagram-output,.docs-diagram,.analysis-diagram) .interaction-facilitation>circle{fill:#3a6034!important;stroke:#608058!important}[data-theme=dark] :is(.diagram-output,.docs-diagram,.analysis-diagram) .interaction-undefined>rect{fill:#4a4a4a!important;stroke:#666!important}[data-theme=dark] :is(.diagram-output,.docs-diagram,.analysis-diagram) .team text{fill:#e0e0e0!important}[data-theme=dark] :is(.diagram-output,.docs-diagram,.analysis-diagram) .platform-group text{fill:#8ab0d8!important}[data-theme=dark] :is(.diagram-output,.docs-diagram,.analysis-diagram) .group text{fill:#999!important}@media(max-width:768px){.editor-layout{grid-template-columns:1fr;grid-template-rows:1fr 2fr}#editor{border-right:none;border-bottom:1px solid #333}.toolbar-title{font-size:.75rem}.toolbar-byline{font-size:.6rem}.toolbar-brand-logo{width:28px;height:28px}.toolbar-actions button{padding:.3rem .6rem;font-size:.75rem}.docs-drawer,.analysis-drawer{width:100%}}
