.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#555;--xy-background-pattern-lines-color-default:#333;--xy-background-pattern-cross-color-default:#333;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}:root{color:#1a1c1a;font-synthesis:none;text-rendering:optimizelegibility;--md-primary:#3f6651;--md-on-primary:#fff;--md-primary-container:#c1ecd0;--md-on-primary-container:#092016;--md-secondary:#52645a;--md-secondary-container:#d5e8db;--md-on-secondary-container:#101f17;--md-tertiary:#5f617a;--md-error:#ba1a1a;--md-error-container:#ffdad6;--md-surface:#f7f9f4;--md-surface-dim:#d8dbd5;--md-surface-container-lowest:#fff;--md-surface-container-low:#f1f4ee;--md-surface-container:#ecefe9;--md-surface-container-high:#e6e9e3;--md-surface-container-highest:#e0e3dd;--md-on-surface:#1a1c1a;--md-on-surface-variant:#414941;--md-outline:#717972;--md-outline-variant:#c1c9c1;--md-scrim:#000;--elevation-1:0 1px 2px #19221c38, 0 1px 3px 1px #19221c1a;--elevation-2:0 2px 6px 2px #19221c21, 0 1px 2px #19221c38;--elevation-3:0 4px 8px 3px #19221c1f, 0 1px 3px #19221c38;--elevation-4:0 6px 10px 4px #19221c1c, 0 2px 3px #19221c38;--motion-standard:cubic-bezier(.2, 0, 0, 1);background:#f7f9f4;font-family:Roboto Flex,Roboto,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}html,body,#root{overscroll-behavior:none;width:100%;height:100%;min-height:100%;margin:0;overflow:hidden}button,input{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid color-mix(in srgb, var(--md-primary) 34%, transparent);outline-offset:2px}.material-icon{flex:none;display:block}.loading,.login-screen{background:radial-gradient(circle at 18% 18%, color-mix(in srgb, var(--md-primary-container) 58%, transparent) 0 11rem, transparent 24rem), radial-gradient(circle at 86% 80%, #d9e2ff7a 0 9rem, transparent 22rem), var(--md-surface);place-items:center;width:100%;height:100%;display:grid}.loading{color:var(--md-on-surface-variant);letter-spacing:.01em;align-content:center;gap:18px;font-size:14px;font-weight:600}.progress-ring{border:3px solid var(--md-primary-container);border-top-color:var(--md-primary);border-radius:50%;width:34px;height:34px;animation:.85s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-state{align-content:center;gap:18px}.error-state button,.filled-button{background:var(--md-primary);min-height:48px;color:var(--md-on-primary);letter-spacing:.01em;box-shadow:var(--elevation-1);transition:background .16s var(--motion-standard), box-shadow .16s var(--motion-standard);border:0;border-radius:999px;padding:0 24px;font-weight:700}.error-state button:hover,.filled-button:hover{background:color-mix(in srgb, var(--md-primary) 92%, black);box-shadow:var(--elevation-2)}.login-card{border:1px solid var(--md-outline-variant);background:color-mix(in srgb, var(--md-surface-container-lowest) 94%, transparent);width:min(450px,100vw - 32px);box-shadow:var(--elevation-3);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:28px;padding:42px}.eyebrow{color:var(--md-primary);text-transform:uppercase;letter-spacing:.11em;font-size:11px;font-weight:800}.login-card h1{color:var(--md-on-surface);letter-spacing:-.03em;margin:9px 0 14px;font-size:40px;font-weight:550;line-height:1.08}.login-card p{color:var(--md-on-surface-variant);margin:0 0 30px;font-size:14px;line-height:1.55}.text-field{color:var(--md-on-surface-variant);letter-spacing:.02em;gap:7px;font-size:12px;font-weight:600;display:grid}.text-field input{border:1px solid var(--md-outline);width:100%;height:56px;color:var(--md-on-surface);background:0 0;border-radius:12px;outline:none;padding:0 16px;transition:border-color .15s,box-shadow .15s}.text-field input:hover{border-color:var(--md-on-surface)}.text-field input:focus{border:2px solid var(--md-primary);box-shadow:none;padding:0 15px}.login-card .filled-button{width:100%;margin-top:20px}.filled-button:disabled{opacity:.38;cursor:default;box-shadow:none}.login-error{background:var(--md-error-container);color:#410002;border-radius:12px;margin-top:10px;padding:10px 12px;font-size:12px}.markdown-screen{background:var(--md-surface);width:100%;height:100%;color:var(--md-on-surface);flex-direction:column;display:flex;overflow:hidden}.markdown-topbar{border-bottom:1px solid var(--md-outline-variant);background:color-mix(in srgb, var(--md-surface-container-lowest) 96%, transparent);min-height:72px;box-shadow:var(--elevation-1);flex:none;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:10px 24px;display:grid}.markdown-back,.markdown-raw{min-height:40px;color:var(--md-primary);border-radius:999px;align-items:center;gap:7px;padding:0 13px;font-size:12px;font-weight:750;text-decoration:none;display:inline-flex}.markdown-back:hover,.markdown-raw:hover{background:var(--md-primary-container);color:var(--md-on-primary-container)}.markdown-title{gap:3px;min-width:0;display:grid}.markdown-title strong,.markdown-title span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.markdown-title strong{font-size:15px;line-height:1.25}.markdown-title span{color:var(--md-on-surface-variant);font-size:10px}.markdown-scroll{overscroll-behavior:contain;scroll-behavior:smooth;flex:auto;min-height:0;overflow:auto}.markdown-message{min-height:60vh;color:var(--md-on-surface-variant);justify-content:center;align-items:center;gap:16px;display:flex}.markdown-article{border:1px solid var(--md-outline-variant);background:var(--md-surface-container-lowest);width:min(960px,100% - 48px);box-shadow:var(--elevation-1);color:var(--md-on-surface);border-radius:24px;margin:34px auto 88px;padding:44px 52px 64px;font-size:14px;line-height:1.68}.markdown-article>:first-child{margin-top:0}.markdown-article>:last-child{margin-bottom:0}.markdown-article h1,.markdown-article h2,.markdown-article h3,.markdown-article h4,.markdown-article h5,.markdown-article h6{color:var(--md-on-surface);letter-spacing:-.015em;outline:none;margin:2.15em 0 .75em;scroll-margin-top:20px;line-height:1.25}.markdown-article h1{font-size:2.15em;font-weight:600}.markdown-article h2{border-bottom:1px solid var(--md-outline-variant);padding-bottom:.35em;font-size:1.6em;font-weight:650}.markdown-article h3{font-size:1.3em;font-weight:700}.markdown-article h4,.markdown-article h5,.markdown-article h6{font-size:1.05em;font-weight:750}.heading-anchor{color:inherit;text-decoration:none}.heading-anchor:hover{color:var(--md-primary)}.markdown-article .is-target-heading{border:1px solid color-mix(in srgb, var(--md-primary) 38%, var(--md-outline-variant));background:color-mix(in srgb, var(--md-primary-container) 54%, transparent);border-radius:14px;margin-left:-18px;margin-right:-18px;padding:12px 18px}.markdown-article p,.markdown-article ul,.markdown-article ol,.markdown-article blockquote,.markdown-article table,.markdown-article pre{margin:1em 0}.markdown-article ul,.markdown-article ol{padding-left:1.65em}.markdown-article li+li{margin-top:.28em}.markdown-article a{color:var(--md-primary);text-underline-offset:3px}.markdown-article a:hover{color:color-mix(in srgb, var(--md-primary) 78%, black)}.markdown-article blockquote{border-left:4px solid var(--md-primary);background:var(--md-surface-container-low);color:var(--md-on-surface-variant);margin-left:0;padding:10px 18px}.markdown-article code{background:var(--md-surface-container-high);border-radius:6px;padding:.12em .38em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.88em}.markdown-article pre{color:#f0f4ee;background:#20251f;border-radius:14px;max-width:100%;padding:16px;overflow:auto}.markdown-article pre code{color:inherit;background:0 0;padding:0}.markdown-article table{border-spacing:0;border-collapse:collapse;width:100%;font-size:12px;display:block;overflow-x:auto}.markdown-article th,.markdown-article td{border:1px solid var(--md-outline-variant);text-align:left;vertical-align:top;min-width:110px;padding:9px 11px}.markdown-article th{background:var(--md-surface-container);font-weight:750}.markdown-article img{max-width:100%;height:auto;box-shadow:var(--elevation-1);border-radius:14px}.markdown-article hr{border:0;border-top:1px solid var(--md-outline-variant);margin:2em 0}.workspace{--topbar-height:72px;--filterbar-height:64px;background:var(--md-surface);width:100%;height:100%;color:var(--md-on-surface);position:relative}.topbar{height:var(--topbar-height);border-bottom:1px solid var(--md-outline-variant);background:color-mix(in srgb, var(--md-surface-container-lowest) 94%, transparent);z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);align-items:center;gap:28px;padding:0 20px 0 24px;display:flex;position:relative}.brand{align-items:center;min-width:250px;display:flex}.brand>div{gap:2px;display:grid}.brand strong{color:var(--md-on-surface);letter-spacing:-.015em;font-size:20px;font-weight:600;line-height:1.2}.brand span{color:var(--md-on-surface-variant);font-size:11px;line-height:1.25}.search-wrap{flex:1;max-width:680px;height:48px;position:relative}.search-wrap>.material-icon{z-index:2;color:var(--md-on-surface-variant);pointer-events:none;position:absolute;top:50%;left:17px;transform:translateY(-50%)}.search-wrap input{background:var(--md-surface-container-high);width:100%;height:48px;color:var(--md-on-surface);transition:background .16s var(--motion-standard), box-shadow .16s var(--motion-standard);border:0;border-radius:999px;outline:none;padding:0 18px 0 48px;font-size:14px}.search-wrap input::placeholder{color:var(--md-on-surface-variant);opacity:.8}.search-wrap input:hover{background:var(--md-surface-container-highest)}.search-wrap input:focus{background:var(--md-surface-container-lowest);box-shadow:0 0 0 2px var(--md-primary)}.search-results{z-index:10;border:1px solid var(--md-outline-variant);background:var(--md-surface-container-low);box-shadow:var(--elevation-3);border-radius:18px;padding:6px;position:absolute;top:56px;left:0;right:0;overflow:hidden}.search-results button{text-align:left;width:100%;color:var(--md-on-surface);background:0 0;border:0;border-radius:12px;gap:3px;padding:11px 14px;display:grid}.search-results button:hover{background:var(--md-secondary-container)}.search-results strong{font-size:13px;font-weight:650}.search-results span{color:var(--md-on-surface-variant);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.top-actions{gap:4px;margin-left:auto;display:flex}.top-icon-button,.icon-button{width:42px;height:42px;color:var(--md-on-surface-variant);transition:background .15s var(--motion-standard), color .15s var(--motion-standard);background:0 0;border:0;border-radius:50%;place-items:center;display:inline-grid}.top-icon-button:hover,.icon-button:hover{background:color-mix(in srgb, var(--md-on-surface) 9%, transparent);color:var(--md-on-surface)}.top-icon-button:active,.icon-button:active{background:color-mix(in srgb, var(--md-on-surface) 14%, transparent)}.search-toggle{display:none}.filterbar{height:var(--filterbar-height);background:var(--md-surface-container-low);border-bottom:1px solid var(--md-outline-variant);z-index:12;align-items:center;gap:16px;padding:0 20px 0 24px;display:flex;position:relative}.filter-list{align-items:center;gap:8px;min-width:0;display:flex}.filter-list>span{color:var(--md-on-surface-variant);white-space:nowrap;margin-right:4px;font-size:12px;font-weight:600}.filter{--filter-color:var(--md-primary);border:1px solid var(--md-outline);height:34px;color:var(--md-on-surface-variant);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:background .15s var(--motion-standard), border-color .15s var(--motion-standard), color .15s var(--motion-standard);background:0 0;border-radius:10px;align-items:center;gap:7px;padding:0 12px 0 8px;font-size:11px;font-weight:650;display:inline-flex}.filter:hover{background:color-mix(in srgb, var(--filter-color) 8%, transparent)}.filter input{opacity:0;pointer-events:none;position:absolute}.filter i{border:1.5px solid var(--md-outline);color:#0000;border-radius:5px;place-items:center;width:18px;height:18px;font-size:12px;font-style:normal;line-height:1;display:grid}.filter:has(input:checked){border-color:color-mix(in srgb, var(--filter-color) 70%, var(--md-outline));background:color-mix(in srgb, var(--filter-color) 13%, var(--md-surface));color:var(--md-on-surface)}.filter:has(input:checked) i{border-color:var(--filter-color);background:var(--filter-color);color:#fff}.filter-documented{--filter-color:#2d6a4f}.filter-family{--filter-color:#4f6193}.filter-strong{--filter-color:#8b5a12}.filter-weak{--filter-color:#795548}.filter-excluded{--filter-color:#8c4354}.canvas{inset:calc(var(--topbar-height) + var(--filterbar-height)) 0 0;background:var(--md-surface);overscroll-behavior:none;touch-action:none;position:absolute;overflow:hidden}.canvas>.react-flow,.canvas .react-flow__renderer,.canvas .react-flow__pane{overscroll-behavior:none;touch-action:none!important}.react-flow__node{transition:transform .34s var(--motion-standard)}.react-flow__pane{cursor:grab}.react-flow__pane:active{cursor:grabbing}.react-flow__controls{overflow:hidden;background:var(--md-surface-container-lowest)!important;box-shadow:var(--elevation-2)!important;border:0!important;border-radius:16px!important}.react-flow__controls button{width:38px;height:38px;border:0!important;border-bottom:1px solid var(--md-outline-variant)!important;color:var(--md-on-surface-variant)!important;background:0 0!important}.react-flow__controls button:last-child{border-bottom:0!important}.react-flow__controls button:hover{background:var(--md-secondary-container)!important}.react-flow__controls button svg{fill:currentColor}.react-flow__minimap{border:1px solid var(--md-outline-variant);background:var(--md-surface-container-lowest);box-shadow:var(--elevation-1);border-radius:18px;overflow:hidden}.workspace.is-focus-mode .react-flow__minimap{display:none}.family-node{border:1px solid var(--md-outline-variant);background:color-mix(in srgb, var(--md-surface-container-lowest) 96%, var(--branch));width:226px;min-height:96px;box-shadow:var(--elevation-1);transition:box-shadow .18s var(--motion-standard), transform .18s var(--motion-standard), border-color .18s var(--motion-standard);border-radius:18px;flex-direction:column;padding:15px 15px 12px 18px;display:flex;position:relative;overflow:hidden}.family-node:before{content:"";background:var(--branch);width:5px;position:absolute;inset:0 auto 0 0}.family-node:hover{border-color:color-mix(in srgb, var(--branch) 52%, var(--md-outline-variant));box-shadow:var(--elevation-3);transform:translateY(-2px)}.family-node.is-selected{border-color:var(--branch);box-shadow:0 0 0 3px color-mix(in srgb, var(--branch) 22%, transparent), var(--elevation-3)}.family-node.is-focus{border-color:var(--branch);width:264px;min-height:110px;box-shadow:0 0 0 4px color-mix(in srgb, var(--branch) 19%, transparent), var(--elevation-4);transform:scale(1.035)}.family-node.is-focus:before{width:7px}.family-node.is-focus:hover,.family-node.is-focus.is-selected{transform:translateY(-2px)scale(1.035)}.family-node.is-focus .node-name{font-size:17px}.family-node.is-group{background:color-mix(in srgb, var(--md-surface-container) 92%, var(--branch));width:246px;box-shadow:none;border-style:dashed}.node-name{color:var(--md-on-surface);letter-spacing:-.006em;font-size:14px;font-weight:700;line-height:1.28}.node-subtitle{color:var(--md-on-surface-variant);min-height:27px;margin-top:6px;font-size:10px;line-height:1.35}.node-meta{color:var(--md-outline);text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;align-items:center;gap:6px;margin-top:auto;padding-top:8px;font-size:9px;display:flex}.tiny-status{text-transform:none;text-overflow:ellipsis;letter-spacing:0;white-space:nowrap;border-radius:999px;max-width:108px;padding:3px 7px;overflow:hidden}.node-handle{background:var(--branch);border:2px solid var(--md-surface-container-lowest);width:8px;height:8px}.lateral-handle{opacity:.74}.edge-label{pointer-events:all;background:var(--md-surface-container-lowest);max-width:150px;color:var(--md-on-surface-variant);box-shadow:var(--elevation-1);border:1px solid;border-radius:8px;padding:5px 8px;font-size:9px;line-height:1.25;position:absolute}.focus-toolbar{z-index:15;border:1px solid var(--md-outline-variant);background:color-mix(in srgb, var(--md-surface-container-lowest) 94%, transparent);width:min(760px,100% - 120px);min-height:56px;box-shadow:var(--elevation-2);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:28px;justify-content:center;align-items:center;gap:10px;padding:7px 10px;display:flex;position:absolute;top:16px;left:50%;transform:translate(-50%)}.focus-toolbar button{min-height:38px;color:var(--md-primary);background:0 0;border:0;border-radius:999px;flex:none;align-items:center;gap:6px;padding:0 13px;font-size:11px;font-weight:700;display:inline-flex}.focus-toolbar button:hover{background:var(--md-primary-container);color:var(--md-on-primary-container)}.focus-summary{text-align:center;flex:auto;gap:2px;min-width:0;display:grid}.focus-summary strong,.focus-summary span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.focus-summary strong{color:var(--md-on-surface);font-size:14px;font-weight:700}.focus-summary span{color:var(--md-on-surface-variant);font-size:10px}.detail-panel{z-index:30;right:0;top:var(--topbar-height);background:var(--md-surface-container-lowest);border-left:1px solid var(--md-outline-variant);width:480px;animation:panel-in .22s var(--motion-standard);scrollbar-color:var(--md-outline-variant) transparent;padding:28px;position:absolute;bottom:0;overflow-y:auto;box-shadow:-8px 0 24px #19221c24}@keyframes panel-in{0%{opacity:0;transform:translate(28px)}}.panel-header{z-index:3;border-bottom:1px solid var(--md-outline-variant);background:color-mix(in srgb, var(--md-surface-container-lowest) 95%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);justify-content:space-between;align-items:flex-start;gap:20px;margin:-28px -28px 0;padding:25px 22px 20px 28px;display:flex;position:sticky;top:-28px}.panel-header h2{color:var(--md-on-surface);letter-spacing:-.025em;margin:6px 0 0;font-size:30px;font-weight:550;line-height:1.12}.panel-title-button{appearance:none;color:inherit;font:inherit;text-align:left;cursor:default;background:0 0;border:0;padding:0}.panel-drag-handle{display:none}.panel-actions{flex:none;align-items:center;gap:5px;display:flex}.panel-toggle{min-height:40px;color:var(--md-primary);background:0 0;border:0;border-radius:999px;align-items:center;gap:5px;padding:0 13px;font-size:11px;font-weight:700;display:none}.panel-toggle:hover{background:var(--md-primary-container)}.icon-button{flex:none}.media-strip{overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;touch-action:pan-x;gap:12px;margin:22px -28px 0;padding:0 28px 10px;display:flex;overflow-x:auto}.media-strip::-webkit-scrollbar{display:none}.media-card{border:1px solid var(--md-outline-variant);background:var(--md-surface-container);color:#fff;height:152px;box-shadow:var(--elevation-1);scroll-snap-align:start;border-radius:18px;flex:0 0 196px;position:relative;overflow:hidden}.media-card img{object-fit:cover;width:100%;height:100%;transition:transform .2s var(--motion-standard);display:block}.media-card:hover img{transform:scale(1.025)}.media-card span{background:linear-gradient(#0000,#000000bd);padding:30px 12px 10px;font-size:10px;line-height:1.3;position:absolute;bottom:0;left:0;right:0}.identity-block{background:var(--md-secondary-container);color:var(--md-on-secondary-container);border-radius:16px;margin:20px 0 2px;padding:16px 18px;font-size:12px;line-height:1.5;position:relative}.identity-block>div+div{margin-top:3px}.profile-id{color:color-mix(in srgb, var(--md-on-secondary-container) 54%, transparent);font-size:9px;position:absolute;top:9px;right:10px}.fact-section{margin-top:26px}.fact-section h3{color:var(--md-on-surface-variant);letter-spacing:.03em;margin:0 0 11px;font-size:12px;font-weight:750;line-height:1.3}.fact-section.unverified h3{color:#765517}.fact-section.open-questions h3{color:var(--md-primary)}.fact{border:1px solid var(--md-outline-variant);background:var(--md-surface-container-low);border-radius:16px;margin-bottom:10px;padding:14px 15px}.open-question{background:var(--md-primary-container);border-style:dashed}.open-question p{color:var(--md-on-primary-container);margin:0}.fact-topline{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.fact-topline strong{color:var(--md-on-surface);font-size:13px;font-weight:700;line-height:1.35}.fact p{color:var(--md-on-surface-variant);white-space:pre-line;margin:7px 0 10px;font-size:12px;line-height:1.52}.status-pill{border-radius:999px;flex:none;padding:4px 8px;font-size:9px;font-weight:800;line-height:1.25}.status-documented{color:#165d3b;background:#d5ebdd}.status-family{color:#354b7d;background:#dce3ff}.status-strong{color:#5d4100;background:#ffdea8}.status-weak{color:#603c31;background:#f1dfd7}.status-excluded{color:#70283a;background:#ffd9df}.source-list{flex-wrap:wrap;gap:6px;display:flex}.source-link{text-overflow:ellipsis;white-space:nowrap;border:1px solid var(--md-outline-variant);background:var(--md-surface-container-lowest);max-width:100%;color:var(--md-primary);border-radius:999px;padding:6px 10px;font-size:9px;font-weight:650;text-decoration:none;overflow:hidden}.source-link:after{content:" ↗"}.source-link.source-markdown:after{content:" →"}.source-link:hover{border-color:var(--md-primary);background:var(--md-primary-container);color:var(--md-on-primary-container)}.no-source,.empty-panel{color:var(--md-outline);font-size:11px;font-style:italic}.empty-panel{border:1px dashed var(--md-outline);background:var(--md-surface-container-low);border-radius:16px;margin-top:24px;padding:20px}.relation-pair{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:24px 0 18px;display:grid}.relation-pair div{border:1px solid var(--md-outline-variant);background:var(--md-surface-container-low);min-height:68px;color:var(--md-on-surface);text-align:center;border-radius:16px;place-items:center;padding:12px;font-size:14px;font-weight:700;line-height:1.3;display:grid}.relation-pair span{color:var(--md-primary);font-size:22px}.relation-summary{background:var(--md-secondary-container);border-radius:16px;gap:10px;padding:16px 18px;display:grid}.relation-summary div{justify-content:space-between;gap:20px;font-size:11px;display:flex}.relation-summary span{color:color-mix(in srgb, var(--md-on-secondary-container) 70%, transparent)}.relation-summary strong{color:var(--md-on-secondary-container);text-align:right}.text-documented{color:#2d6a4f!important}.text-family{color:#4f6193!important}.text-strong{color:#8b5a12!important}.text-weak{color:#795548!important}.text-excluded{color:#8c4354!important}@media (width<=1120px){.brand{min-width:210px}.filter-list>span{display:none}.detail-panel{width:432px}}@media (width>=1121px){.workspace.has-detail .canvas{right:480px}}@media (width>=761px) and (width<=1120px){.workspace.has-detail .canvas{right:432px}}@media (width<=760px){.markdown-topbar{gap:8px;min-height:64px;padding:8px 10px}.markdown-back,.markdown-raw{min-height:40px;padding:0 10px;font-size:11px}.markdown-title strong{font-size:13px}.markdown-title span{display:none}.markdown-article{width:100%;min-height:100%;box-shadow:none;border:0;border-radius:0;margin:0;padding:28px 18px 64px;font-size:14px}.markdown-article h1{font-size:1.8em}.markdown-article h2{font-size:1.45em}.markdown-article .is-target-heading{margin-left:-8px;margin-right:-8px;padding:10px 8px}.workspace{--topbar-height:64px;--filterbar-height:60px}.workspace.search-open{--topbar-height:120px}.topbar{height:var(--topbar-height);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand actions";align-content:center;gap:8px 10px;padding:8px 10px 8px 16px;display:grid}.workspace.search-open .topbar{grid-template-areas:"brand actions""search search"}.brand{grid-area:brand;min-width:0}.brand strong{font-size:18px}.brand span{font-size:10px}.search-wrap{grid-area:search;width:100%;max-width:none;height:46px;display:none}.workspace.search-open .search-wrap{display:block}.search-wrap input{height:46px}.search-wrap input,.text-field input{font-size:16px}.search-results{top:52px}.top-actions{grid-area:actions;margin:0}.top-icon-button{width:40px;height:40px}.search-toggle{display:inline-grid}.filterbar{height:var(--filterbar-height);gap:8px;padding:0 10px 0 12px;overflow:hidden}.filter-list{overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;touch-action:pan-x;flex:auto;gap:7px;min-width:0;overflow-x:auto}.filter-list::-webkit-scrollbar{display:none}.filter{flex:none;height:32px;padding-right:10px;font-size:10px}.react-flow__minimap{display:none}.react-flow__controls{transform-origin:0 100%;transform:scale(.92)}.focus-toolbar{gap:4px;width:calc(100% - 76px);min-height:50px;padding:5px 7px;top:10px}.focus-toolbar button{min-height:36px;padding:0 10px;font-size:10px}.focus-summary strong{font-size:12px}.detail-panel{border-left:0;border-top:1px solid var(--md-outline-variant);border-radius:28px 28px 0 0;width:100%;height:min(64%,640px);padding:20px 16px 30px;animation-name:panel-up;inset:auto 0 0;box-shadow:0 -8px 28px #19221c2e}.workspace.has-collapsed-person .canvas{bottom:116px}.person-panel.is-collapsed{height:116px;padding-bottom:10px;overflow:hidden}.person-panel.is-collapsed>:not(.panel-header):not(.panel-drag-handle){display:none}.person-panel.is-collapsed .panel-header{border-bottom:0}.person-panel.is-expanded{height:min(82%,760px)}.person-panel{overscroll-behavior-y:contain;touch-action:pan-x pan-y}.panel-drag-handle{z-index:5;background:var(--md-outline-variant);border-radius:4px;width:40px;height:4px;display:block;position:absolute;top:9px;left:50%;transform:translate(-50%)}.panel-title-button{cursor:pointer}.panel-toggle{display:inline-flex}@keyframes panel-up{0%{opacity:0;transform:translateY(28px)}}.panel-header{border-radius:28px 28px 0 0;margin:-20px -16px 0;padding:24px 10px 15px 16px;top:-20px}.panel-header h2{font-size:24px}.media-strip{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}.media-card{flex-basis:172px;height:136px}}@media (width<=470px){.workspace{--topbar-height:60px;--filterbar-height:56px}.workspace.search-open{--topbar-height:116px}.topbar{padding-left:13px;padding-right:7px}.brand span{display:none}.top-icon-button{width:38px;height:38px}.filterbar{padding-left:8px;padding-right:7px}.filter i{width:16px;height:16px;font-size:10px}.focus-toolbar{width:auto;left:8px;right:8px;transform:none}.focus-summary span{display:none}.login-card{border-radius:24px;padding:32px 24px}.login-card h1{font-size:34px}.relation-pair{grid-template-columns:1fr}.relation-pair>span{transform:rotate(90deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
