.react-flow{direction:ltr;--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: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--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: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--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: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--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 rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.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: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--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: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--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: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--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 rgba(0, 0, 0, .08);--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{position:absolute;width:100%;height:100%;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{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.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;-moz-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:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.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:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;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%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;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{position:absolute;z-index:5;margin:15px}.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{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.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{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.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{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;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))}.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{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.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-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.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{--bg: #ffffff;--surface: #f7f8fa;--surface-2: #eef0f3;--surface-3: #e6e9ee;--border: #e7e9ee;--border-strong: #d7dbe2;--text: #1a1c21;--text-2: #565c66;--text-3: #878d98;--accent: #16a394;--accent-strong: #0e8073;--accent-soft: rgba(22, 163, 148, .1);--accent-ring: rgba(22, 163, 148, .26);--fg: var(--text);--muted: var(--text-3);--accent-2: #2b6cb0;--accent-ink: var(--accent-strong);--ink-900: #0e1a2b;--ink-800: #16243d;--radius-sm: 6px;--radius: 8px;--radius-lg: 12px;--shadow-1: 0 1px 2px rgba(16, 24, 40, .06);--shadow-2: 0 8px 24px rgba(16, 24, 40, .1), 0 1px 2px rgba(16, 24, 40, .05);--shadow-3: 0 24px 60px rgba(8, 16, 30, .24);--ease: cubic-bezier(.22, .61, .36, 1);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"cv02","cv03","cv04","cv11"}*{box-sizing:border-box}html,body,#root{margin:0;height:100%}body{background:var(--bg)}.app{position:relative;display:flex;width:100vw;height:100vh}.canvas{flex:1;position:relative;background:var(--bg);min-width:0}.sidenav{width:312px;flex:none;display:flex;flex-direction:column;background:var(--surface);color:var(--text-2);padding:14px 12px;overflow-y:auto;height:100%;border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-3)}.nav-fab{position:absolute;top:14px;left:14px;z-index:22;width:40px;height:40px;border-radius:10px;cursor:pointer;background:var(--text);color:#fff;border:1px solid var(--text);display:grid;place-items:center;box-shadow:var(--shadow-2);transition:background-color .12s var(--ease),border-color .12s var(--ease),box-shadow .12s var(--ease),transform .12s var(--ease)}.nav-fab:hover{background:#000;border-color:#000;transform:translateY(-1px)}.nav-fab svg{display:block}.sn-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:38;background:#1018281f;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px)}.sn-drawer{position:fixed;top:0;left:0;height:100vh;z-index:40;padding:14px;box-sizing:border-box;transform:translate(-110%);transition:transform .24s var(--ease);will-change:transform}.sn-drawer.open{transform:translate(0)}.sn-close{position:absolute;top:24px;right:24px;z-index:2;width:30px;height:30px;border-radius:8px;border:1px solid var(--border);cursor:pointer;background:#fff;color:var(--text-3);font-size:14px;display:grid;place-items:center;transition:background-color .12s var(--ease),color .12s var(--ease)}.sn-close:hover{background:var(--surface-2);color:var(--text)}.sn-actions{display:flex;flex-wrap:wrap;gap:6px;padding:2px 4px 4px}.sn-btn{padding:6px 11px;font-size:12px;font-weight:500;cursor:pointer;background:#fff;color:var(--text-2);border:1px solid var(--border);border-radius:7px;transition:background-color .12s var(--ease),border-color .12s var(--ease),color .12s var(--ease)}.sn-btn:hover{background:var(--surface-2);border-color:var(--border-strong);color:var(--text)}.sn-btn.primary{background:var(--accent);border-color:transparent;color:#fff;font-weight:600}.sn-btn.primary:hover{background:var(--accent-strong)}.sn-toggle{margin-top:4px}.sn-brand{display:flex;align-items:center;gap:10px;padding:4px 6px 14px}.sn-logo-img{width:36px;height:36px;flex:none;object-fit:contain;display:block}.sn-logo{width:34px;height:34px;flex:none;border-radius:9px;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;font-size:18px;box-shadow:0 4px 12px #16a39447}.sn-title{font-size:14px;font-weight:700;color:var(--text);line-height:1.1;letter-spacing:-.01em}.sn-sub{font-size:11px;color:var(--text-3)}.sn-section{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-3);font-weight:700;padding:16px 8px 6px}.sn-item{display:flex;align-items:center;gap:10px;width:100%;background:none;border:none;border-radius:8px;padding:8px 10px;font-size:13px;color:var(--text-2);cursor:pointer;text-align:left;transition:background-color .11s var(--ease),color .11s var(--ease)}.sn-item:hover{background:var(--surface-2);color:var(--text)}.sn-item.active{background:var(--accent-soft);color:var(--accent-strong);font-weight:600;box-shadow:inset 2px 0 0 var(--accent)}.sn-item.active .sn-badge{color:var(--accent-strong)}.sn-item.active-graph{color:var(--text)}.sn-item.disabled{color:var(--text-3);cursor:default;opacity:.7}.sn-dot{width:10px;height:10px;border-radius:50%;flex:none}.sn-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sn-badge{flex:none;min-width:22px;text-align:center;font-size:11px;font-weight:600;background:var(--surface-2);color:var(--text-3);border-radius:999px;padding:1px 7px;font-variant-numeric:tabular-nums}.sn-soon{flex:none;font-size:9px;text-transform:uppercase;letter-spacing:.05em;background:var(--surface-2);color:var(--text-3);border-radius:4px;padding:2px 5px}.sn-seg{display:flex;gap:3px;padding:3px;margin:0 4px;background:var(--surface-2);border-radius:9px}.sn-seg-btn{flex:1;padding:7px 8px;cursor:pointer;font-size:12px;font-weight:600;background:none;border:none;border-radius:6px;color:var(--text-2);transition:background-color .12s var(--ease),color .12s var(--ease),box-shadow .12s var(--ease)}.sn-seg-btn:hover{color:var(--text)}.sn-seg-btn.active{background:#fff;color:var(--text);box-shadow:var(--shadow-1)}.sn-check{display:flex;align-items:center;gap:10px;width:100%;padding:7px 10px;border-radius:8px;font-size:13px;color:var(--text-2);cursor:pointer;transition:background-color .11s var(--ease)}.sn-check:hover{background:var(--surface-2)}.sn-check input{cursor:pointer;margin:0;accent-color:var(--accent)}.sn-link{float:right;background:none;border:none;cursor:pointer;padding:0;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--accent-strong);font-weight:700}.sn-link:hover{color:var(--accent)}.sn-combo{position:relative;padding:0 4px}.sn-combo-btn{display:flex;align-items:center;gap:8px;width:100%;box-sizing:border-box;padding:8px 10px;font-size:13px;color:var(--text);cursor:pointer;background:#fff;border:1px solid var(--border);border-radius:8px;outline:none;text-align:left;transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}.sn-combo-btn:hover{border-color:var(--border-strong)}.sn-combo-btn[aria-expanded=true]{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.sn-combo-caret{flex:none;font-size:10px;color:var(--text-3)}.sn-combo-pop{position:absolute;left:4px;right:4px;top:calc(100% + 6px);z-index:20;background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-2);padding:5px}.sn-combo-head{display:flex;align-items:center;justify-content:space-between;padding:4px 8px 6px;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);font-weight:700}.sn-combo-head .sn-link{float:none}.sn-combo-list{max-height:240px;overflow-y:auto}.sn-search{padding:6px 4px 2px}.sn-search-input{width:100%;box-sizing:border-box;padding:9px 11px;font-size:13px;color:var(--text);background:#fff;border:1px solid var(--border);border-radius:8px;outline:none;transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}.sn-search-input::placeholder{color:var(--text-3)}.sn-search-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.sn-results{margin-top:6px;display:flex;flex-direction:column;gap:1px}.sn-result{display:flex;align-items:center;gap:9px;width:100%;text-align:left;background:none;border:none;border-radius:7px;padding:7px 9px;font-size:12px;color:var(--text-2);cursor:pointer;transition:background-color .11s var(--ease)}.sn-result:hover{background:var(--surface-2);color:var(--text)}.sn-result-kind{flex:none;font-size:10px;color:var(--text-3)}.sn-empty{padding:2px 10px 6px;font-size:11px;line-height:1.45;color:var(--text-3)}.member-search{width:100%;box-sizing:border-box;margin:2px 0 8px;padding:8px 10px;font-size:12px;color:var(--text);background:#fff;border:1px solid var(--border);border-radius:8px;outline:none;transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}.member-search:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.sn-foot{margin-top:auto;padding-top:14px;border-top:1px solid var(--border)}.sn-acct{font-size:12px;color:var(--text);font-weight:600;padding:4px 6px 0}.sn-source{font-size:11px;color:var(--text-3);padding:1px 6px 10px;word-break:break-all}.sn-auth{display:flex;align-items:center;gap:8px;width:100%;justify-content:center;background:#fff;color:var(--text-2);border:1px solid var(--border);border-radius:8px;padding:9px 10px;font-size:12px;font-weight:600;cursor:pointer;transition:background-color .12s var(--ease),border-color .12s var(--ease),color .12s var(--ease)}.sn-auth:hover{background:var(--surface-2);border-color:var(--border-strong);color:var(--text)}.sn-auth.primary{background:var(--accent);border-color:transparent;color:#fff}.sn-auth.primary:hover{background:var(--accent-strong)}.box-node{position:relative;display:flex;align-items:center;min-width:150px;max-width:220px;background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:9px 12px;cursor:pointer;box-shadow:var(--shadow-1);transition:box-shadow .14s var(--ease),border-color .14s var(--ease),transform .14s var(--ease)}.box-node:hover{border-color:var(--border-strong);box-shadow:var(--shadow-2);transform:translateY(-1px)}.box-main{display:flex;align-items:center;gap:9px;min-width:0;width:100%}.box-text{min-width:0}.box-toggle{position:absolute;top:-9px;right:-9px;min-width:20px;height:20px;padding:0 6px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:1px;font-size:11px;font-weight:700;line-height:1;color:#fff;background:var(--text-2);border:2px solid #fff;border-radius:999px;box-shadow:var(--shadow-1);font-variant-numeric:tabular-nums}.box-toggle.open{background:var(--accent)}.box-toggle-caret{font-size:9px;margin-right:1px}.box-node.sel{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring),var(--shadow-2)}.box-node.exp{box-shadow:var(--shadow-2)}.box-node.alert{border-color:#d64545}.box-node.alert-inside{border-color:#e59a9a}.box-stop{position:absolute;top:-10px;left:-10px;z-index:4;line-height:0;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.box-stop.dim{opacity:.8;transform:scale(.85)}.box-kind{font-size:9px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;margin-bottom:2px}.box-name{font-size:12px;color:var(--text);word-break:break-word;line-height:1.25;font-weight:500}.box-h{left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;width:1px;height:1px;min-width:0;min-height:0;border:none;background:transparent;opacity:0}.react-flow__edge-text{font-size:10px}.react-flow__nodes{z-index:3!important}.react-flow__edges{z-index:1!important}.panel-wrap{position:absolute;top:0;right:0;height:100%;z-index:16;display:flex;box-shadow:-8px 0 40px #1018281f}.panel-close{position:absolute;top:12px;right:12px;z-index:2;width:28px;height:28px;border-radius:8px;border:1px solid var(--border);background:#fff;color:var(--text-3);font-size:14px;cursor:pointer;display:grid;place-items:center;transition:background-color .12s var(--ease),color .12s var(--ease),border-color .12s var(--ease)}.panel-close:hover{color:var(--text);border-color:var(--border-strong);background:var(--surface-2)}.panel{width:500px;max-width:90vw;height:100%;background:var(--surface);color:var(--text);border-left:1px solid var(--border);padding:18px;overflow-y:auto}.panel h1{font-size:15px;margin:0 0 2px;letter-spacing:-.01em}.panel .sub{color:var(--text-3);font-size:12px;margin-bottom:12px;word-break:break-all}.panel-head{display:flex;align-items:flex-start;gap:11px;margin-bottom:2px}.panel-head-text{min-width:0}.panel-region{display:inline-flex;align-items:center;gap:5px;margin-top:5px;font-size:11px;font-weight:600;color:var(--text-3)}.panel-region-pin{width:8px;height:8px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--accent);flex:none}.panel-head-text h1{margin-top:6px}.panel h2{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);margin:20px 0 8px}.panel-h2-link{display:flex;align-items:center;gap:8px}.panel-h2-count{font-size:10px;font-weight:700;color:var(--text-3);background:var(--surface-2);border-radius:999px;padding:1px 7px;letter-spacing:0;font-variant-numeric:tabular-nums}.panel-h2-more{margin-left:auto;background:none;border:none;cursor:pointer;padding:0;font-size:10px;font-weight:700;letter-spacing:.02em;text-transform:none;color:var(--accent-strong)}.panel-h2-more:hover{text-decoration:underline}.prl{display:flex;flex-direction:column;gap:5px}.prl-wrap{display:flex;flex-direction:column}.prl-item{display:flex;align-items:flex-start;gap:8px;width:100%;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:7px 9px}.prl-btn{cursor:pointer;transition:background-color .11s var(--ease),border-color .11s var(--ease)}.prl-btn:hover{background:var(--surface-2);border-color:var(--border-strong)}.prl-btn.open{border-color:var(--border-strong);border-bottom-left-radius:0;border-bottom-right-radius:0}.prl-body{min-width:0;flex:1}.prl-title{font-size:12px;color:var(--text);line-height:1.35;overflow-wrap:anywhere}.prl-sub{font-size:10.5px;color:var(--text-3);margin-top:1px}.prl-item .sev-tag{flex:none;margin-top:1px}.prl-go{flex:none;color:var(--text-3);font-size:11px;margin-top:1px}.prl-btn:hover .prl-go{color:var(--accent-strong)}.prl-detail{border:1px solid var(--border-strong);border-top:none;border-bottom-left-radius:8px;border-bottom-right-radius:8px;background:#fff;padding:9px 11px}.prl-desc{margin:0 0 7px;font-size:11.5px;line-height:1.5;color:var(--text-2);overflow-wrap:anywhere}.prl-meta{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:10.5px;color:var(--text-3)}.prl-detail-link{margin-top:8px;background:none;border:none;padding:0;cursor:pointer;font-size:11px;font-weight:700;color:var(--accent-strong)}.prl-detail-link:hover{text-decoration:underline}.prl-more{font-size:11px;color:var(--text-3);padding:3px 2px}.kv{display:grid;grid-template-columns:116px 1fr;gap:5px 12px;font-size:12px;align-items:start}.kv .k{color:var(--text-3);min-width:0;overflow-wrap:anywhere;word-break:break-word}.kv .v{min-width:0;overflow-wrap:anywhere}.pv-item{font-size:12px;color:var(--text);line-height:1.4;padding:3px 0;overflow-wrap:anywhere}.policy-row{font-size:12px;padding:4px 0;border-bottom:1px solid var(--border)}.policy-row:last-of-type{border-bottom:none}.policy-row .v{word-break:break-all}.policy-row .policy-id{display:block;color:var(--text-3);font-size:11px;word-break:break-all}.stmt{border:1px solid var(--border);border-radius:8px;padding:9px 11px;margin:0 0 8px;font-size:12px;background:#fff}.stmt-effect{font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:5px}.stmt-effect.allow{color:#1f8a4c}.stmt-effect.deny{color:#c0392b}.stmt-row{display:grid;grid-template-columns:72px 1fr;gap:4px 8px;margin-top:3px}.stmt-k{color:var(--text-3)}.stmt-v{word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.tag{display:inline-block;font-size:10px;padding:2px 8px;border-radius:999px;color:#fff}table.rules{width:100%;border-collapse:collapse;font-size:11px;margin-top:4px}table.rules th,table.rules td{text-align:left;padding:4px 6px;border-bottom:1px solid var(--border)}table.rules th{color:var(--text-3);font-weight:600}table.matrix td.num,table.matrix th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}table.matrix th.num{font-weight:600}.matrix-kind{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.matrix .zero{color:var(--border-strong)}.empty{color:var(--text-3);font-size:12px;line-height:1.5}.region-page{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;background:var(--bg);display:flex;flex-direction:column;overflow:hidden}.region-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 28px 16px 68px;border-bottom:1px solid var(--border)}.region-page-head h1{font-size:19px;margin:0 0 3px;letter-spacing:-.02em}.region-page-head .sub{color:var(--text-3);font-size:12px}.region-page-tools{display:flex;align-items:center;gap:14px;flex:none}.region-page-tools button{padding:7px 12px;font-size:12px;cursor:pointer;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text-2);transition:background-color .12s var(--ease),border-color .12s var(--ease)}.region-page-tools button:hover:not(:disabled){background:var(--surface-2);border-color:var(--border-strong)}.region-pager{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-3)}.region-pager button{padding:5px 10px;font-size:14px;line-height:1}.region-pager button:disabled{opacity:.4;cursor:default}.region-page-body{flex:1;overflow:auto;padding:14px 28px 28px}.region-page table.region-matrix{font-size:12.5px}.region-page table.region-matrix th,.region-page table.region-matrix td{padding:5px 14px;white-space:nowrap}.region-page table.region-matrix thead th{position:sticky;top:0;background:var(--bg);z-index:2;color:var(--text-3);font-weight:600}.region-page table.region-matrix .rk{position:sticky;left:0;background:var(--bg);text-align:left;z-index:1}.region-page table.region-matrix thead .rk{z-index:3}.region-page table.region-matrix .rt{position:sticky;right:0;background:var(--bg);z-index:1;box-shadow:inset 1px 0 0 var(--border)}.region-page table.region-matrix thead .rt{z-index:3}.region-page table.region-matrix tfoot td{border-top:2px solid var(--border);background:var(--surface)}.sec-search{padding:7px 11px;font-size:12px;border:1px solid var(--border);border-radius:8px;min-width:160px;background:#fff;color:var(--text);outline:none;transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}.sec-search:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.sec-sev-bar{display:flex;flex-wrap:wrap;gap:8px;padding:12px 28px 0}.sev-chip{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-size:12px;padding:5px 12px;border:1px solid var(--border);border-radius:999px;background:#fff;text-transform:capitalize;color:var(--text-2);transition:background-color .12s var(--ease),border-color .12s var(--ease)}.sev-chip:hover{border-color:var(--border-strong)}.sev-chip.on{background:var(--surface-2);border-color:var(--border-strong);color:var(--text)}.sev-chip b{font-variant-numeric:tabular-nums}.sev-dot{width:9px;height:9px;border-radius:50%}.sec-table{font-size:12.5px}.sec-table th,.sec-table td{padding:7px 12px;vertical-align:top}.sec-table thead th{position:sticky;top:0;background:var(--bg);z-index:1;color:var(--text-3);font-weight:600}.sec-table tbody tr{border-top:1px solid var(--border)}.sev-tag{display:inline-block;color:#fff;font-size:10px;text-transform:uppercase;letter-spacing:.03em;padding:2px 8px;border-radius:999px}.sec-link{background:none;border:none;padding:0;color:var(--accent-strong);cursor:pointer;font:inherit;text-align:left;word-break:break-all}.sec-link:hover{text-decoration:underline}.sec-res{word-break:break-all;color:var(--text-3)}.drift-views{display:flex;flex-wrap:wrap;gap:4px;padding:12px 28px 0}.drift-view{padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer;background:#fff;color:var(--text-2);border:1px solid var(--border);border-radius:999px;transition:background-color .12s var(--ease),border-color .12s var(--ease),color .12s var(--ease)}.drift-view:hover{border-color:var(--border-strong);color:var(--text)}.drift-view.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-strong)}.drift-when{color:var(--text-3);white-space:nowrap;font-variant-numeric:tabular-nums}.drift-row{cursor:pointer;transition:background-color .11s var(--ease)}.drift-row:hover{background:var(--surface-2)}.drift-trace-cell{width:22px;color:var(--text-3);vertical-align:middle}.drift-row:hover .drift-trace-cell{color:var(--accent-strong)}.drift-table thead th:first-child{width:22px}.dt-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:45;display:grid;place-items:center;background:#1018284d;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:24px}.dt-modal{width:100%;max-width:900px;max-height:88%;overflow-y:auto;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);padding:20px 22px 22px;animation:dt-pop .16s var(--ease)}@keyframes dt-pop{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:none}}.dt-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.dt-head-main{display:flex;align-items:center;flex-wrap:wrap;gap:9px;min-width:0}.dt-change{font-size:12px;font-weight:600;color:var(--text-2);text-transform:capitalize}.dt-title{font-size:16px;font-weight:700;letter-spacing:-.01em;color:var(--text);word-break:break-all}.dt-kindtag{font-size:11px;color:var(--text-3);background:var(--surface-2);border-radius:999px;padding:2px 9px}.dt-close{position:static;flex:none}.dt-flow{display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch;gap:10px;margin:20px 0 4px}.dt-state{display:flex;flex-direction:column;gap:8px;min-width:0}.dt-state-label{font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:700;color:var(--text-3);display:flex;align-items:baseline;gap:7px}.dt-state-label span{font-size:10px;letter-spacing:0;text-transform:none;font-weight:500;color:var(--text-3);opacity:.8}.dt-state-body{flex:1;display:flex;align-items:center;justify-content:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 14px}.dt-node{display:flex;align-items:center;gap:11px;min-width:0}.dt-node-body{min-width:0}.dt-node-kind{font-size:10px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--text-3)}.dt-node-name{font-size:13px;font-weight:600;color:var(--text);word-break:break-all;line-height:1.3}.dt-node.ghost{flex-direction:column;gap:6px;color:var(--text-3)}.dt-ghost-mark{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;border:1.5px dashed var(--border-strong);color:var(--text-3);font-size:18px}.dt-node.ghost .dt-node-name{font-weight:500;color:var(--text-3);font-style:italic}.dt-rel{display:flex;flex-direction:column;align-items:stretch;gap:7px;width:100%}.dt-rel .dt-node{width:100%}.dt-edge{align-self:center;font-size:10px;font-weight:600;letter-spacing:.02em;color:var(--accent-strong);border:1px solid var(--accent);border-radius:999px;padding:2px 9px;white-space:nowrap;position:relative}.dt-edge.absent{color:var(--text-3);border-style:dashed;border-color:var(--border-strong)}.dt-arrow{position:relative;display:flex;align-items:center;justify-content:center;min-width:92px;padding:0 6px}.dt-arrow-line{position:absolute;left:6px;right:6px;top:50%;height:2px;border-radius:2px;opacity:.55}.dt-arrow-head{position:absolute;right:2px;top:calc(50% - 7px)}.dt-arrow-chip{position:relative;z-index:1;background:var(--bg);border:1px solid;border-radius:999px;padding:3px 10px;font-size:10.5px;font-weight:700;white-space:nowrap}.dt-fields{margin-top:16px}.dt-fields-h{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:700;margin-bottom:8px}.dt-field{display:grid;grid-template-columns:150px 1fr;gap:8px 14px;align-items:start;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);margin-bottom:6px;background:var(--surface)}.dt-field.hot{border-color:#f0b8b8;background:#fdf3f3}.dt-field-name{font-size:12px;font-weight:600;color:var(--text);word-break:break-word;display:flex;align-items:center;gap:5px}.dt-hot{color:#d64545;font-size:12px}.dt-field-vals{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0}.dt-field-vals code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;padding:2px 7px;border-radius:6px;word-break:break-all;max-width:100%}.dt-before{background:#fdecec;color:#a3352f;text-decoration:line-through;text-decoration-color:#a3352f80}.dt-after{background:#e9f7ef;color:#1c7a44}.dt-vals-arrow{color:var(--text-3);font-weight:700;flex:none}.dt-field.list{grid-template-columns:1fr;gap:8px}.dt-field-count{margin-left:8px;font-weight:500;color:var(--text-3);font-variant-numeric:tabular-nums}.dt-list-diff{display:flex;flex-direction:column;gap:4px}.dt-ld{display:flex;align-items:baseline;gap:8px}.dt-ld>span{flex:none;font-weight:800;width:12px;text-align:center;font-family:ui-monospace,monospace}.dt-ld code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;padding:3px 8px;border-radius:6px;word-break:break-word;overflow-wrap:anywhere;flex:1}.dt-ld-add>span{color:#1c7a44}.dt-ld-add code{background:#e9f7ef;color:#1c7a44}.dt-ld-rem>span{color:#a3352f}.dt-ld-rem code{background:#fdecec;color:#a3352f}.dt-ld-none{font-size:11.5px;color:var(--text-3);font-style:italic}.dt-ld-json{align-items:flex-start}.dt-ld-json>span{padding-top:8px}.dt-json{flex:1;margin:0;padding:8px 10px;border-radius:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;line-height:1.5;white-space:pre;overflow-x:auto;max-height:340px;overflow-y:auto;-moz-tab-size:2;tab-size:2}.dt-ld-add .dt-json{background:#e9f7ef;color:#14663a}.dt-ld-rem .dt-json{background:#fdecec;color:#8f2d28}.dt-crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin-top:14px}.dt-crumb{display:inline-flex;align-items:center;gap:5px;max-width:210px;background:none;border:none;cursor:pointer;padding:3px 6px;border-radius:6px;font-size:12px;color:var(--text-2);transition:background-color .11s var(--ease),color .11s var(--ease)}.dt-crumb span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dt-crumb:hover{background:var(--surface-2);color:var(--text)}.dt-crumb.current{color:var(--text);font-weight:600;cursor:default}.dt-crumb-sep{color:var(--text-3);font-size:10px;flex:none}.dt-mini{margin-top:18px}.dt-mini-graph{display:flex;flex-direction:column;align-items:center;gap:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 12px}.dt-mini-row{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.dt-mini-row.focus-row{padding:2px 0}.dt-mini-link{width:2px;height:16px;background:var(--border-strong);border-radius:2px}.dt-mini-legend{margin-top:8px;font-size:11px;color:var(--text-3);line-height:1.4}.dt-chip{position:relative;display:inline-flex;align-items:center;gap:7px;max-width:190px;background:#fff;border:1px solid var(--border);border-radius:8px;cursor:pointer;padding:6px 10px 6px 8px;font-size:12px;color:var(--text);transition:border-color .12s var(--ease),box-shadow .12s var(--ease),transform .12s var(--ease)}.dt-chip:hover{border-color:var(--border-strong);box-shadow:var(--shadow-1);transform:translateY(-1px)}.dt-chip-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.dt-chip.focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring);font-weight:600}.dt-chip.changed{border-color:var(--border-strong)}.dt-chip-dot{position:absolute;top:-4px;right:-4px;width:10px;height:10px;border-radius:50%;border:2px solid var(--bg);box-sizing:content-box}.dt-related{margin-top:18px}.dt-count{font-size:11px;font-weight:700;color:var(--text-3);background:var(--surface-2);border-radius:999px;padding:1px 8px;margin-left:4px}.dt-related-list{display:flex;flex-direction:column;gap:4px}.dt-related-item{display:flex;align-items:center;gap:9px;width:100%;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:8px;cursor:pointer;padding:7px 10px;font-size:12px;color:var(--text);transition:background-color .11s var(--ease),border-color .11s var(--ease)}.dt-related-item:hover{background:var(--surface-2);border-color:var(--border-strong)}.dt-related-change{color:var(--text-2);text-transform:capitalize;font-weight:500;flex:none}.dt-related-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.sf-desc{margin:14px 0 0;font-size:13px;line-height:1.55;color:var(--text-2);overflow-wrap:anywhere}.sf-meta{margin-top:16px;display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px}.sf-meta-row{display:flex;flex-direction:column;gap:2px;min-width:0}.sf-meta-k{font-size:10px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--text-3)}.sf-meta-v{font-size:12.5px;color:var(--text);overflow-wrap:anywhere}.sf-res{margin-top:18px}.sf-res .sf-desc{margin-top:8px}.sf-steps{margin:10px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:5px}.sf-steps li{font-size:12.5px;line-height:1.5;color:var(--text-2)}.sf-foot{gap:8px}.sf-foot .sn-btn{text-decoration:none;display:inline-flex;align-items:center}@media (max-width: 620px){.sf-meta{grid-template-columns:1fr}}.dt-when{display:flex;align-items:center;gap:7px;margin-top:14px;font-size:12px;color:var(--text-2)}.dt-when svg{flex:none;color:var(--text-3)}.dt-when b{font-weight:600;color:var(--text)}.dt-note{margin-top:14px;font-size:12.5px;line-height:1.5;color:var(--text-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.dt-foot{margin-top:18px;display:flex;justify-content:flex-end}@media (max-width: 620px){.dt-flow{grid-template-columns:1fr}.dt-arrow{min-height:44px;transform:rotate(90deg)}}.rels{display:flex;flex-direction:column;gap:2px}.rel{display:flex;align-items:center;gap:8px;width:100%;background:none;border:none;border-radius:7px;padding:6px 7px;font-size:12px;color:var(--text);cursor:pointer;text-align:left;transition:background-color .11s var(--ease)}.rel:hover{background:var(--surface-2)}.rel .swatch{width:11px;height:11px;border-radius:50%;flex:none}.rel-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rel-phrase{color:var(--text-3);margin-left:auto;flex:none;font-size:11px}.legend{position:absolute;left:14px;bottom:14px;z-index:5;background:#ffffffe6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:var(--radius);padding:11px 13px;color:var(--text);font-size:11px;box-shadow:var(--shadow-2)}.legend .row{display:flex;align-items:center;gap:8px;margin:3px 0}.legend .swatch{width:12px;height:12px;border-radius:50%;flex:none}.legend .line{flex:none}.legend hr{border:none;border-top:1px solid var(--border);margin:8px 0}.legend .title{font-weight:600}.legend-toggle{display:flex;align-items:center;gap:6px;width:100%;background:none;border:none;padding:0;cursor:pointer;color:var(--text);font-size:11px}.legend-toggle .caret{color:var(--text-3);font-size:9px;width:9px}.legend.open .legend-toggle{margin-bottom:6px}.legend-body{max-height:60vh;overflow-y:auto}.ctx-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9}.ctx-menu{position:fixed;z-index:10;min-width:188px;background:#fff;border:1px solid var(--border);border-radius:10px;padding:5px;box-shadow:var(--shadow-2)}.ctx-title{font-size:11px;color:var(--text-3);font-weight:600;padding:6px 8px 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-bottom:1px solid var(--border);margin-bottom:4px}.ctx-menu button{display:block;width:100%;text-align:left;background:none;border:none;border-radius:6px;padding:7px 8px;font-size:12px;color:var(--text);cursor:pointer;transition:background-color .11s var(--ease)}.ctx-menu button:hover{background:var(--surface-2)}.toolbar{position:absolute;left:66px;top:14px;z-index:5;display:flex;gap:8px}.toolbar button{background:#fff;color:var(--text-2);border:1px solid var(--border);border-radius:8px;padding:7px 11px;font-size:12px;cursor:pointer;box-shadow:var(--shadow-1);transition:background-color .12s var(--ease),border-color .12s var(--ease),color .12s var(--ease)}.toolbar button:hover{border-color:var(--border-strong);background:var(--surface-2);color:var(--text)}.toolbar button.primary{background:var(--accent);color:#fff;border-color:transparent;font-weight:600}.toolbar button.primary:hover{background:var(--accent-strong)}.toolbar .toggle{display:flex;align-items:center;gap:6px;background:#fff;color:var(--text-2);border:1px solid var(--border);border-radius:8px;padding:7px 11px;font-size:12px;cursor:pointer;box-shadow:var(--shadow-1)}.toolbar .toggle input{cursor:pointer;margin:0;accent-color:var(--accent)}.panel button.primary{background:var(--accent);color:#fff;border:none;font-weight:600;border-radius:8px;padding:9px 15px;font-size:13px;cursor:pointer;box-shadow:var(--shadow-1);transition:background-color .12s var(--ease)}.panel button.primary:hover{background:var(--accent-strong)}.auth{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;grid-template-columns:1.1fr 1fr;background:var(--surface)}.auth-hero{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:56px 56px 32px;color:#eaf1f8;overflow:hidden;background:radial-gradient(1200px 500px at -10% -20%,rgba(22,163,148,.35),transparent 60%),radial-gradient(900px 600px at 120% 120%,rgba(43,108,176,.4),transparent 55%),linear-gradient(160deg,#0e1a2b,#13233b 60%,#0e1a2b)}.auth-hero-inner{max-width:460px}.auth-logo{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;font-size:26px;color:#fff;margin-bottom:26px;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 10px 30px #16a39459}.auth-brand{display:flex;align-items:center;gap:16px;margin-bottom:8px}.auth-brand .auth-logo-img{margin-bottom:0}.auth-brand h1{margin:0}.auth-logo-img{width:64px;height:64px;box-sizing:border-box;border-radius:16px;padding:9px;object-fit:contain;margin-bottom:26px;background:#fff;box-shadow:0 10px 30px #00000047}.auth-hero h1{font-size:34px;line-height:1.1;margin:0 0 16px;font-weight:800;letter-spacing:-.02em}.auth-tagline{font-size:16px;line-height:1.6;color:#a9bbd0;margin:0 0 28px}.auth-points{list-style:none;padding:0;margin:0;display:grid;gap:12px}.auth-points li{position:relative;padding-left:26px;color:#c6d3e4;font-size:14px}.auth-points li:before{content:"✓";position:absolute;left:0;top:-1px;width:18px;height:18px;display:grid;place-items:center;border-radius:50%;font-size:11px;font-weight:700;color:#0e1a2b;background:var(--accent)}.auth-hero-foot{color:#6f8199;font-size:12px}.auth-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px}.auth-card{width:100%;max-width:380px;background:#fff;border:1px solid var(--border);border-radius:18px;padding:30px 30px 34px;box-shadow:var(--shadow-2)}.auth-tabs{display:flex;gap:4px;padding:4px;margin-bottom:22px;background:var(--surface-2);border-radius:12px}.auth-tabs button{flex:1;padding:9px 10px;border:none;border-radius:9px;cursor:pointer;font-size:13px;font-weight:600;color:var(--text-3);background:none;transition:background-color .12s var(--ease),color .12s var(--ease),box-shadow .12s var(--ease)}.auth-tabs button.on{background:#fff;color:var(--text);box-shadow:var(--shadow-1)}.auth-form{display:flex;flex-direction:column}.auth-form h2{margin:0 0 4px;font-size:20px;color:var(--text);letter-spacing:-.01em}.auth-sub{margin:0 0 20px;font-size:13px;color:var(--text-3);line-height:1.5}.auth-form label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;color:var(--text);margin-bottom:14px}.auth-opt{color:var(--text-3);font-weight:400}.auth-form input,.auth-form textarea{font:inherit;font-size:14px;font-weight:400;padding:11px 13px;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--text);outline:none;transition:border-color .12s var(--ease),box-shadow .12s var(--ease);resize:vertical}.auth-form input:focus,.auth-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.auth-btn{margin-top:6px;padding:12px 16px;border:none;border-radius:11px;cursor:pointer;font-size:14px;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-ink));box-shadow:0 8px 20px #16a39447;transition:filter .12s var(--ease),transform .02s}.auth-btn:hover:not(:disabled){filter:brightness(1.05)}.auth-btn:active:not(:disabled){transform:translateY(1px)}.auth-btn:disabled{opacity:.55;cursor:default;box-shadow:none}.auth-err{background:#fdecec;border:1px solid #f5c2c2;color:#b02a2a;border-radius:9px;padding:9px 12px;font-size:12.5px;margin-bottom:14px}.auth-note{margin:14px 0 0;font-size:11.5px;color:var(--text-3);text-align:center}.auth-linkbtn{background:none;border:none;cursor:pointer;padding:0;font:inherit;font-size:12.5px;font-weight:600;color:var(--accent-ink)}.auth-linkbtn:hover{text-decoration:underline}.auth-forgot{align-self:flex-end;margin:-6px 0 16px}.auth-done .auth-linkbtn,.auth-form>.auth-linkbtn:not(.auth-forgot){margin:14px auto 0}.auth-done{text-align:center;padding:12px 4px 6px}.auth-done-mark{width:52px;height:52px;margin:0 auto 16px;border-radius:50%;display:grid;place-items:center;font-size:26px;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-ink));box-shadow:0 10px 26px #16a3944d}.auth-done h2{margin:0 0 8px;font-size:20px;color:var(--text)}.auth-foot{margin-top:22px;font-size:11px;color:var(--text-3)}@media (max-width: 860px){.auth{grid-template-columns:1fr}.auth-hero{display:none}}.ac-page .region-page-tools button{cursor:pointer}.ac-body{display:block}.ac-flash{margin:0 0 14px;padding:10px 14px;border-radius:var(--radius);font-size:13px;border:1px solid var(--border)}.ac-flash.ok{background:var(--accent-soft);border-color:var(--accent-ring);color:var(--accent-strong)}.ac-flash.err{background:#fdecec;border-color:#f3c2c2;color:#b42318}.ac-pending{margin:12px 0 0;font-size:12px;color:var(--text-3);display:flex;gap:6px;flex-wrap:wrap;align-items:center}.ac-pending code{background:var(--surface-2);padding:2px 7px;border-radius:var(--radius-sm);color:var(--text-2)}.ac-requests{margin:0 0 22px}.ac-requests h2{font-size:15px;margin:0 0 10px;color:var(--text)}.ac-table{width:100%}.ac-table th{text-align:left;font-weight:600;color:var(--text-3);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.ac-table td{vertical-align:middle}.ac-id{font-size:14px;color:var(--text);font-weight:600}.ac-label{font-size:12px;color:var(--text-3);margin-top:2px}.ac-when{color:var(--text-2);font-size:13px;white-space:nowrap}.ac-act-col{text-align:right;white-space:nowrap}.ac-row-actions{display:inline-flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.ac-row-actions button{font-size:12px;padding:5px 11px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--bg);color:var(--text);cursor:pointer}.ac-row-actions button:hover:not(:disabled){background:var(--surface-2)}.ac-row-actions button:disabled{opacity:.5;cursor:default}.ac-row-actions .ac-danger{color:#b42318;border-color:#f0c4c0}.ac-row-actions .ac-danger:hover:not(:disabled){background:#fdecec}.ac-muted{color:var(--text-3)}.ac-pill{display:inline-block;font-size:12px;font-weight:600;padding:3px 10px;border-radius:999px;border:1px solid transparent}.ac-pill.ok{background:var(--accent-soft);color:var(--accent-strong);border-color:var(--accent-ring)}.ac-pill.warn{background:#fff5e6;color:#b76e00;border-color:#f3dcb0}.ac-pill.bad{background:#fdecec;color:#b42318;border-color:#f3c2c2}.ac-err{font-size:11px;color:#b42318;margin-top:4px;max-width:220px}.ac-add,.ac-onboard{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-lg);padding:20px 22px;margin:0 0 18px}.ac-add h2,.ac-onboard-head h2{margin:0 0 6px;font-size:17px;color:var(--text)}.ac-lead{margin:0 0 14px;font-size:13px;color:var(--text-2);line-height:1.55;max-width:640px}.ac-add-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.ac-add-row input{padding:9px 12px;border:1px solid var(--border-strong);border-radius:var(--radius);font-size:14px;background:var(--bg);color:var(--text)}.ac-add-row input:first-of-type{width:160px;font-family:ui-monospace,Menlo,Consolas,monospace}.ac-add-row input:nth-of-type(2){flex:1;min-width:160px}.ac-btn{display:inline-block;font-size:13px;font-weight:600;padding:9px 16px;border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--bg);color:var(--text);cursor:pointer;text-decoration:none}.ac-btn:hover:not(:disabled){background:var(--surface-2)}.ac-btn:disabled{opacity:.5;cursor:default}.ac-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.ac-btn.primary:hover:not(:disabled){background:var(--accent-strong)}.ac-pill.owner{background:#efe7ff;color:#6035c9;border-color:#d9c9f7}.ac-pill.admin{background:#e6f0ff;color:#1c60c4;border-color:#c2d8f5}.ac-add-row input[type=email]{width:auto;flex:1;min-width:220px;font-family:inherit}.ac-role-sel{padding:9px 12px;border:1px solid var(--border-strong);border-radius:var(--radius);font-size:13px;background:var(--surface);color:var(--text-1);cursor:pointer}.ac-grant{margin-top:14px}.ac-grant-lbl{font-size:12px;font-weight:600;color:var(--text-2);margin-bottom:8px}.ac-grant-list{display:flex;gap:8px;flex-wrap:wrap}.ac-chip{display:inline-flex;align-items:center;gap:7px;font-size:12px;padding:6px 11px;border:1px solid var(--border-strong);border-radius:999px;cursor:pointer;-webkit-user-select:none;user-select:none}.ac-chip.on{background:var(--accent-soft);border-color:var(--accent-ring);color:var(--accent-strong)}.ac-chip input{margin:0}.ac-chip em{font-style:normal;color:var(--text-3)}.ac-grant-note{margin-top:8px;font-size:11px}.ac-callout{margin:2px 0 16px;padding:12px 14px;border-radius:10px;background:#fff7e6;border:1px solid #f3dcb0;color:#7a5b1e;font-size:13px;line-height:1.55}.ac-callout code{background:#0000000d;padding:1px 4px;border-radius:4px}.ac-update-note{margin-top:6px}.ac-update-note .ac-muted{font-size:11px;margin-top:3px;max-width:280px;line-height:1.45}.ac-onboard-head{display:flex;align-items:center;justify-content:space-between}.ac-x{border:none;background:none;font-size:16px;color:var(--text-3);cursor:pointer}.ac-steps{margin:6px 0 0;padding-left:20px}.ac-steps li{margin:0 0 18px;font-size:13px;color:var(--text);line-height:1.6}.ac-actions{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.ac-note{font-size:12px;color:var(--text-3);margin:10px 0 6px}.ac-copy{margin:0 0 8px}.ac-copy-label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);margin-bottom:3px}.ac-copy-row{display:flex;align-items:stretch;gap:0;max-width:640px}.ac-copy-row code{flex:1;padding:8px 11px;background:var(--surface-2);border:1px solid var(--border-strong);border-right:none;border-radius:var(--radius) 0 0 var(--radius);font-size:12.5px;overflow-x:auto;white-space:nowrap;color:var(--text)}.ac-copy-row .mono{font-family:ui-monospace,Menlo,Consolas,monospace}.ac-copy-row button{padding:8px 14px;border:1px solid var(--border-strong);background:var(--bg);border-radius:0 var(--radius) var(--radius) 0;font-size:12px;cursor:pointer;color:var(--text-2)}.ac-copy-row button:hover{background:var(--surface-2)}code.mono{font-family:ui-monospace,Menlo,Consolas,monospace}.sn-group{display:contents}.sn-caret{font-size:10px;color:var(--text-3);padding:0 4px}.sn-sub{padding-left:26px;font-size:12.5px}.sn-sub .sn-label{color:var(--text-2)}.sn-sub.active .sn-label{color:var(--text)}.sn-subdot{width:7px;height:7px;border-radius:2px;flex:none;opacity:.85}.sn-acctpick{margin:4px 0 10px}.sn-acctpick-label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);margin:0 0 4px 2px}.sn-acctpick-select{width:100%;padding:8px 10px;font-size:13px;color:var(--text);background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius);cursor:pointer}.sn-acctpick-select:hover{border-color:var(--accent-ring)}.sn-acctpick-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.dash{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;background:var(--bg);overflow-y:auto;padding:26px 32px 40px 64px}@media (max-width: 640px){.dash{padding-left:32px;padding-top:62px}}.dash-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:22px}.dash-eyebrow{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-strong);margin-bottom:6px}.dash-title{margin:0 0 5px;font-size:26px;letter-spacing:-.02em;color:var(--text)}.dash-sub{font-size:13px;color:var(--text-3)}.dash-sub code{font-size:12px}.dash-cta{flex:none;padding:10px 18px;font-size:13px;font-weight:600;cursor:pointer;background:var(--accent);color:#fff;border:1px solid transparent;border-radius:var(--radius);box-shadow:var(--shadow-1)}.dash-cta:hover{background:var(--accent-strong)}.dash-nodata{display:grid;place-items:center;gap:14px;text-align:center;max-width:460px;margin:80px auto;color:var(--text-2);font-size:14px;line-height:1.6}.dash-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.dash-kpi{position:relative;display:flex;align-items:center;gap:14px;text-align:left;padding:18px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);cursor:pointer;transition:box-shadow .15s ease,transform .15s ease,border-color .15s ease}.dash-kpi:hover{box-shadow:var(--shadow-2);transform:translateY(-1px);border-color:var(--border-strong)}.dash-kpi-ic{flex:none;width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:var(--accent-soft);color:var(--accent-strong)}.dash-kpi.bad .dash-kpi-ic{background:#e031311a}.dash-kpi.warn .dash-kpi-ic{background:#f08c001f}.dash-kpi.ok .dash-kpi-ic{background:#2f9e441f}.dash-kpi-body{display:flex;flex-direction:column;gap:1px;min-width:0}.dash-kpi-val{font-size:26px;font-weight:700;letter-spacing:-.02em;color:var(--text);line-height:1.1}.dash-kpi-label{font-size:12.5px;color:var(--text-2)}.dash-kpi-sub{position:absolute;top:14px;right:16px;font-size:11px;color:var(--text-3);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:2px 9px}.dash-kpi.bad .dash-kpi-sub{color:#b42318;border-color:#f3c2c2;background:#fdecec}.dash-kpi.warn .dash-kpi-sub{color:#b76e00;border-color:#f3dcb0;background:#fff7e6}.dash-kpi.ok .dash-kpi-sub{color:#1c7a44;border-color:#bfe6cd;background:#e9f7ef}.dash-biz{margin-bottom:20px}.dash-biz-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-top:12px}.dash-biz-card{text-align:left;background:var(--bg);border:1px solid var(--border);border-top:3px solid var(--border-strong);border-radius:var(--radius);padding:12px 14px;display:flex;flex-direction:column;gap:7px;cursor:pointer;min-width:0;transition:box-shadow .15s ease,transform .15s ease}.dash-biz-card:hover{box-shadow:var(--shadow-2);transform:translateY(-1px)}.dash-biz-top{display:flex;align-items:center;gap:7px}.dash-biz-dot{width:9px;height:9px;border-radius:3px;flex:none}.dash-biz-name{font-weight:650;font-size:13.5px;color:var(--text);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-biz-crit{font-size:10px;font-weight:700;border:1px solid;border-radius:999px;padding:0 7px;flex:none}.dash-biz-count{font-size:12.5px;color:var(--text-2)}.dash-biz-count b{font-size:19px;font-weight:700;color:var(--text);margin-right:3px}.dash-biz-badges{display:flex;gap:7px}.dash-biz-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px;border:1px solid var(--border);color:var(--text-3);background:var(--surface)}.dash-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.dash-span2{grid-column:span 2}.dash-span3{grid-column:span 3}.dash-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);padding:18px 20px;min-width:0}.dash-card-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.dash-card-h h2{margin:0;font-size:14px;font-weight:650;color:var(--text);letter-spacing:-.01em}.dash-card-lead{margin:0 0 12px;font-size:12px;color:var(--text-3)}.dash-link{background:none;border:none;cursor:pointer;font-size:12px;font-weight:600;color:var(--accent-strong);padding:2px 4px;border-radius:6px}.dash-link:hover{background:var(--accent-soft)}.dash-empty{font-size:12.5px;color:var(--text-3);padding:14px 2px}.dash-bars{display:flex;flex-direction:column;gap:9px;margin-top:8px}.dash-bar-row{display:grid;grid-template-columns:130px 1fr 40px;align-items:center;gap:12px;padding:3px 6px;border-radius:7px}.dash-bar-row.clickable{cursor:pointer}.dash-bar-row.clickable:hover{background:var(--surface)}.dash-bar-label{font-size:12.5px;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-bar-track{height:9px;background:var(--surface-3);border-radius:999px;overflow:hidden}.dash-bar-fill{display:block;height:100%;border-radius:999px;min-width:3px;transition:width .3s ease}.dash-bar-num{font-size:12.5px;font-weight:600;color:var(--text);text-align:right}.dash-sec{display:flex;flex-direction:column;align-items:center;gap:16px;margin-top:12px}.dash-donut{flex:none}.dash-donut-num{font-size:42px;font-weight:700;fill:var(--text)}.dash-donut-sub{font-size:12px;fill:var(--text-3);text-transform:uppercase;letter-spacing:.06em}.dash-legend{list-style:none;margin:0;padding:0;display:flex;flex-flow:row wrap;justify-content:center;gap:8px 18px;width:100%}.dash-legend li{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--text-2)}.dash-legend .dash-legend-label{flex:none}.dash-legend b{color:var(--text)}.dash-dot{width:9px;height:9px;border-radius:3px;flex:none}.dash-drift{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column}.dash-drift-row{display:flex;align-items:center;gap:9px;padding:7px 4px;border-bottom:1px solid var(--border);cursor:pointer}.dash-drift-row:last-child{border-bottom:none}.dash-drift-row:hover{background:var(--surface)}.dash-drift-verb{font-size:12px;font-weight:600;color:var(--text-2);flex:none}.dash-drift-id{font-size:11.5px;color:var(--text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-sevdot{width:8px;height:8px;border-radius:999px;flex:none}.dash-sevdot.critical{background:#b00020}.dash-sevdot.high{background:#e8590c}.dash-sevdot.medium{background:#f08c00}.dash-sevdot.low{background:#2f9e44}.dash-sevdot.informational{background:#868e96}.dash-findings{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column}.dash-finding{display:flex;align-items:center;gap:12px;padding:9px 4px;border-bottom:1px solid var(--border);cursor:pointer}.dash-finding:last-child{border-bottom:none}.dash-finding:hover{background:var(--surface)}.dash-finding-title{flex:1;font-size:12.5px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-finding-src{font-size:11px;color:var(--text-3);flex:none}.dash-sevtag{flex:none;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#fff;padding:2px 8px;border-radius:999px}.dash-sevtag.critical{background:#b00020}.dash-sevtag.high{background:#e8590c}.dash-sevtag.medium{background:#f08c00}.dash-sevtag.low{background:#2f9e44}.dash-sevtag.informational{background:#868e96}@media (max-width: 1024px){.dash-kpis{grid-template-columns:repeat(2,1fr)}.dash-grid{grid-template-columns:1fr}.dash-span2,.dash-span3{grid-column:span 1}}.dash-head-tools{display:flex;align-items:center;gap:12px;flex:none;flex-wrap:wrap}.dash-loading{display:grid;place-items:center;min-height:240px;color:var(--text-3);font-size:13px}.dash-acctpick{position:relative}.dash-acctpick-btn{display:inline-flex;align-items:center;gap:8px;cursor:pointer;padding:9px 14px;font-size:13px;font-weight:600;color:var(--text);background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-1)}.dash-acctpick-btn:hover{background:var(--surface)}.dash-acctpick-btn .dash-caret{color:var(--text-3);font-size:11px}.dash-acctpick-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30}.dash-acctpick-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:31;width:320px;max-width:84vw;background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);padding:6px;max-height:60vh;overflow:auto}.dash-acctpick-head{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3)}.dash-acctpick-quick{display:flex;gap:4px}.dash-acctpick-quick button{border:none;background:none;cursor:pointer;font-size:11px;font-weight:600;color:var(--accent-strong);padding:2px 6px;border-radius:5px;letter-spacing:0}.dash-acctpick-quick button:hover{background:var(--accent-soft)}.dash-acctpick-list{display:flex;flex-direction:column}.dash-acctpick-opt{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:7px;cursor:pointer;font-size:13px}.dash-acctpick-opt:hover{background:var(--surface)}.dash-acctpick-opt input{margin:0;cursor:pointer;accent-color:var(--accent)}.dash-acctpick-id{color:var(--text)}.dash-acctpick-lbl{color:var(--text-3);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-acctpick-busy{padding:8px 10px;font-size:12px;color:var(--text-3)}.crumbs{display:flex;align-items:center;gap:7px;margin-bottom:6px;font-size:12px}.crumb-link{background:none;border:none;cursor:pointer;padding:1px 4px;border-radius:5px;color:var(--accent-strong);font-weight:600;font-size:12px}.crumb-link:hover{background:var(--accent-soft);text-decoration:underline}.crumb-sep,.crumb-current{color:var(--text-3)}.dash-svc{display:inline-flex;align-items:center;gap:8px}.dash-svc-lbl{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);white-space:nowrap}.dash-svc-select{padding:9px 12px;font-size:13px;font-weight:600;color:var(--text);background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius);cursor:pointer;box-shadow:var(--shadow-1);min-width:160px}.dash-head-tools{align-items:center}.dash-map{margin-top:6px;position:relative}.dash-map-svg{width:100%;height:auto;display:block;touch-action:none;cursor:default}.dash-map-svg.grab{cursor:grab}.dash-map-svg.grab:active{cursor:grabbing}.dash-pin.clickable{cursor:pointer}.dash-pin.clickable:hover circle:nth-child(2){stroke-width:3}.dash-map-zoom{position:absolute;top:8px;right:8px;display:flex;flex-direction:column;gap:4px}.dash-map-zoom button{width:28px;height:28px;border:1px solid var(--border-strong);background:var(--bg);border-radius:7px;cursor:pointer;font-size:15px;line-height:1;color:var(--text-2);box-shadow:var(--shadow-1);display:grid;place-items:center}.dash-map-zoom button:hover:not(:disabled){background:var(--surface);color:var(--text)}.dash-map-zoom button:disabled{opacity:.45;cursor:default}.dash-map-land-path{fill:var(--surface-3);stroke:var(--border-strong);stroke-width:.4}.dash-map-num{fill:#fff;font-weight:700}.dash-map-extra{margin-top:10px;display:flex;flex-wrap:wrap;gap:14px;font-size:12px;color:var(--text-3)}.dash-map-extra b{color:var(--text-2);font-weight:600}.dash-hero{grid-column:span 1;border-radius:var(--radius-lg);padding:22px 22px 20px;color:#fff;display:flex;flex-direction:column;box-shadow:var(--shadow-1);position:relative;overflow:hidden}.dash-hero-ic{width:44px;height:44px;border-radius:12px;background:#fff3;display:grid;place-items:center;margin-bottom:12px}.dash-hero-num{font-size:44px;font-weight:800;line-height:1;letter-spacing:-.03em}.dash-hero-label{font-size:15px;font-weight:600;margin-top:4px}.dash-hero-sub{font-size:12.5px;opacity:.9;margin-top:3px}.dash-hero-cta{align-self:flex-start;margin-top:16px;cursor:pointer;background:#ffffff2e;border:1px solid rgba(255,255,255,.35);color:#fff;font-size:12.5px;font-weight:600;padding:7px 13px;border-radius:8px}.dash-hero-cta:hover{background:#ffffff4d}.dash-legend-more{color:var(--text-3);font-size:11.5px;margin-top:2px}.dash-dyn{display:flex;gap:16px;margin:6px 0 12px}.dash-dyn-kpi{display:flex;flex-direction:column;font-size:11px;color:var(--text-3)}.dash-dyn-kpi b{font-size:20px;font-weight:700;line-height:1.1}.dash-trend-cols{display:flex;align-items:flex-end;gap:7px;height:140px}.dash-trend-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%}.dash-trend-stack{width:66%;max-width:26px;display:flex;flex-direction:column;border-radius:4px 4px 0 0;overflow:hidden}.dash-trend-stack>div{min-height:2px}.dash-trend-x{margin-top:6px;font-size:10px;color:var(--text-3);white-space:nowrap}.dash-trend-legend{display:flex;gap:14px;margin-top:10px;font-size:11.5px;color:var(--text-2);text-transform:capitalize}.dash-trend-legend span{display:inline-flex;align-items:center;gap:6px}.dash-rt-panel{margin:6px 0 12px;border:1px solid var(--accent-ring);border-radius:var(--radius);background:var(--surface);padding:10px 12px}.dash-rt-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:2px}.dash-rt-title{font-size:13px;font-weight:650;color:var(--text)}.dash-rt-tools{display:flex;align-items:center;gap:10px}.dash-rt-close{border:none;background:none;cursor:pointer;font-size:15px;color:var(--text-3);padding:2px 6px;border-radius:6px}.dash-rt-close:hover{background:var(--surface-2);color:var(--text)}.dash-rt-wrap{max-height:360px;overflow-y:auto;margin-top:6px;border:1px solid var(--border);border-radius:var(--radius)}.dash-rt{width:100%;border-collapse:collapse;font-size:12.5px}.dash-rt thead th{position:sticky;top:0;background:var(--surface);text-align:left;font-size:11px;font-weight:600;color:var(--text-3);padding:8px 12px;border-bottom:1px solid var(--border);z-index:1}.dash-rt tbody tr{cursor:pointer;border-bottom:1px solid var(--border)}.dash-rt tbody tr:last-child{border-bottom:none}.dash-rt tbody tr:hover{background:var(--accent-soft)}.dash-rt td{padding:8px 12px}.dash-rt-name{color:var(--text);font-weight:500;word-break:break-all}.dash-rt-kind{display:inline-flex;align-items:center;gap:7px;color:var(--text-2);white-space:nowrap}.dash-rt-dot{width:9px;height:9px;border-radius:3px;flex:none}.dash-rt-go{text-align:right;color:var(--accent-strong);font-weight:700;width:28px}.set-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#1018286b;display:grid;place-items:center;padding:24px}.set-modal{width:100%;max-width:520px;max-height:86vh;overflow-y:auto;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-3)}.set-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--bg);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.set-head h2{margin:0;font-size:16px;letter-spacing:-.01em}.set-body{padding:8px 20px 20px}.set-group{padding:14px 0;border-bottom:1px solid var(--border)}.set-group:last-child{border-bottom:none}.set-group-h{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-3);margin-bottom:10px}.set-note{margin:0 0 10px;font-size:12.5px;color:var(--text-3);line-height:1.5}.set-actions{display:flex;flex-wrap:wrap;gap:8px}.set-toggle{display:flex;align-items:flex-start;gap:11px;padding:9px 0;cursor:pointer}.set-toggle input{margin:3px 0 0;cursor:pointer;accent-color:var(--accent);width:16px;height:16px;flex:none}.set-toggle span{display:flex;flex-direction:column;gap:2px}.set-toggle b{font-size:13.5px;font-weight:600;color:var(--text)}.set-toggle em{font-style:normal;font-size:12px;color:var(--text-3);line-height:1.45}.canvas-search{position:absolute;top:14px;left:50%;transform:translate(-50%);z-index:20;width:min(400px,46vw)}.canvas-search-input{width:100%;padding:10px 14px;font-size:13px;color:var(--text);background:var(--bg);border:1px solid var(--border-strong);border-radius:999px;box-shadow:var(--shadow-2);outline:none}.canvas-search-input:focus{border-color:var(--accent);box-shadow:var(--shadow-2),0 0 0 3px var(--accent-ring)}.canvas-search-results{margin-top:6px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-2);max-height:320px;overflow-y:auto;padding:4px}.canvas-search-result{display:flex;align-items:center;gap:9px;width:100%;text-align:left;padding:8px 10px;border:none;background:none;cursor:pointer;border-radius:7px;font-size:12.5px;color:var(--text)}.canvas-search-result:hover{background:var(--surface-2)}.canvas-search-result .sn-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-search-result .sn-result-kind{font-size:11px;color:var(--text-3);flex:none}.set-select{width:100%;padding:9px 12px;font-size:13px;color:var(--text);background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius);cursor:pointer}.set-seg{display:inline-flex;background:var(--surface-2);border-radius:9px;padding:3px;gap:3px}.set-seg .sn-seg-btn{padding:7px 22px}.biz-page .region-page-tools .biz-new,.biz-new{background:var(--accent, #2563eb);color:#fff;border:1px solid var(--accent, #2563eb);border-radius:var(--radius);padding:8px 14px;font-size:13px;font-weight:600;cursor:pointer}.biz-page .region-page-tools .biz-new:hover,.biz-new:hover{background:var(--accent, #2563eb);border-color:var(--accent, #2563eb);color:#fff;filter:brightness(1.07)}.biz-empty{max-width:560px;margin:40px auto;text-align:center}.biz-empty-icon{width:76px;height:76px;margin:0 auto 14px;border-radius:18px;display:grid;place-items:center;background:var(--surface-2)}.biz-empty h2{margin:0 0 10px;font-size:20px;letter-spacing:-.01em}.biz-empty p{color:var(--text-2);line-height:1.6;font-size:13.5px;margin:0 0 16px}.biz-empty code{background:var(--surface-2);padding:1px 5px;border-radius:4px;font-size:12px}.biz-coverage{margin-bottom:18px}.biz-cov-bar{height:9px;border-radius:999px;background:var(--surface-2);overflow:hidden}.biz-cov-fill{height:100%;background:linear-gradient(90deg,#16a394,#2563eb);border-radius:999px;transition:width .3s}.biz-cov-legend{display:flex;gap:16px;margin-top:7px;font-size:12px;color:var(--text-2);align-items:center}.biz-cov-legend b{color:var(--text)}.biz-cov-unassigned{background:none;border:none;font:inherit;color:var(--text-3);cursor:pointer;padding:0}.biz-cov-unassigned:not(:disabled):hover{color:var(--accent, #2563eb)}.biz-cov-unassigned.on{color:var(--accent, #2563eb);font-weight:600}.biz-cov-unassigned:disabled{cursor:default}.biz-card.drop-ready{border-style:dashed}.biz-card.drop-on{outline:2px solid var(--accent, #2563eb);outline-offset:1px;box-shadow:var(--shadow-2)}.biz-unassigned{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 16px;margin-bottom:16px}.biz-unassigned-head{display:flex;align-items:flex-start;justify-content:space-between}.biz-unassigned-head h3{margin:0 0 3px;font-size:14px}.biz-unassigned .biz-pick{width:100%;margin:8px 0 10px}.biz-unassigned-list{max-height:340px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.biz-unassigned-row{display:flex;align-items:center;gap:9px;padding:6px 8px;border-radius:7px;background:var(--bg);border:1px solid var(--border);cursor:grab;font-size:12.5px}.biz-unassigned-row:hover{border-color:var(--border-strong)}.biz-unassigned-row:active{cursor:grabbing}.biz-drag-grip{color:var(--text-3);flex:none;font-size:13px;letter-spacing:-2px}.biz-unassigned-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.biz-unassigned-add{flex:none;font-size:11.5px;font-weight:600;color:var(--accent, #2563eb);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:6px;padding:3px 6px;cursor:pointer}.biz-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.biz-card{text-align:left;background:var(--bg);border:1px solid var(--border);border-top:3px solid var(--border-strong);border-radius:var(--radius-lg);padding:15px 16px;cursor:pointer;display:flex;flex-direction:column;gap:8px;box-shadow:var(--shadow-1);transition:box-shadow .15s,transform .15s}.biz-card:hover{box-shadow:var(--shadow-2);transform:translateY(-1px)}.biz-card-top{display:flex;align-items:center;gap:8px}.biz-dot{width:10px;height:10px;border-radius:3px;flex:none}.biz-card-name{font-weight:700;font-size:15px;color:var(--text);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.biz-crit{font-size:10.5px;font-weight:700;border:1px solid;border-radius:999px;padding:1px 8px;flex:none;letter-spacing:.02em}.biz-crit.inline{display:inline-block;margin-top:4px}.biz-owner{font-size:12px;color:var(--text-3);margin-top:-2px}.biz-count{font-size:13px;color:var(--text-2)}.biz-count b{font-size:22px;color:var(--text);font-weight:700;margin-right:4px}.biz-badges{display:flex;gap:8px}.biz-badge{font-size:11.5px;font-weight:600;padding:2px 9px;border-radius:999px;border:1px solid var(--border);color:var(--text-3);background:var(--surface)}.biz-badge.hot{background:#fff}.biz-badge.warn{border-color:#f0a020;color:#b8730a}.biz-rulecount{font-size:11.5px}.biz-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:62;background:#10182861;display:flex;justify-content:flex-end}.biz-drawer{width:min(440px,92vw);height:100%;overflow-y:auto;background:var(--bg);border-left:1px solid var(--border);box-shadow:var(--shadow-3);padding:0 0 24px}.biz-drawer-head{display:flex;align-items:flex-start;justify-content:space-between;padding:18px 20px 14px;border-top:4px solid var(--border-strong)}.biz-drawer-title{display:flex;align-items:center;gap:9px;font-size:18px;font-weight:700}.biz-x{background:none;border:none;font-size:24px;line-height:1;color:var(--text-3);cursor:pointer;padding:0 4px}.biz-x:hover{color:var(--text)}.biz-desc{margin:0 20px 12px;color:var(--text-2);font-size:13px;line-height:1.55}.biz-drawer-stats{display:flex;gap:8px;padding:0 20px 8px}.biz-drawer-stats>div{flex:1;background:var(--surface-2);border-radius:var(--radius);padding:10px;text-align:center}.biz-drawer-stats b{display:block;font-size:21px;font-weight:700}.biz-drawer-stats span{font-size:11px;color:var(--text-3)}.biz-sec{padding:12px 20px 4px}.biz-sec h3{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);margin:0 0 8px}.biz-sec-h{display:flex;align-items:center;justify-content:space-between}.biz-sec-title{background:none;border:none;padding:0;cursor:pointer;font:inherit;color:inherit;text-transform:uppercase;letter-spacing:.05em}.biz-sec-title:hover{color:var(--text);text-decoration:underline}.biz-sec-all{background:none;border:none;cursor:pointer;font-size:11px;font-weight:600;text-transform:none;letter-spacing:0;color:var(--accent, #2563eb);padding:0}.biz-sec-all:hover{text-decoration:underline}.biz-stat-btn{border:none;background:var(--surface-2);border-radius:var(--radius);padding:10px;text-align:center;cursor:pointer;flex:1;transition:background-color .12s}.biz-stat-btn:hover:not(:disabled){background:var(--border)}.biz-stat-btn:disabled{cursor:default;opacity:.75}.biz-stat-btn b{display:block;font-size:21px;font-weight:700}.biz-stat-btn span{font-size:11px;color:var(--text-3)}.scope-chip{display:inline-flex;align-items:center;gap:8px;margin-top:8px;font-size:12px;color:var(--text-2);background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:4px 12px}.scope-chip-dot{width:8px;height:8px;border-radius:3px;background:var(--accent, #2563eb);flex:none}.scope-chip b{color:var(--text)}.scope-chip-link,.scope-chip-x{background:none;border:none;cursor:pointer;font-size:12px;font-weight:600;padding:0}.scope-chip-link{color:var(--accent, #2563eb)}.scope-chip-x{color:var(--text-3)}.scope-chip-link:hover,.scope-chip-x:hover{text-decoration:underline}.biz-row{display:flex;align-items:center;gap:9px;width:100%;text-align:left;border:none;background:none;padding:7px 8px;border-radius:7px;cursor:pointer;font-size:12.5px;color:var(--text)}.biz-row:hover{background:var(--surface-2)}.biz-row-main{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.biz-row-sub{font-size:11px;color:var(--text-3);flex:none}.biz-sev{width:8px;height:8px;border-radius:999px;flex:none}.biz-chg{width:8px;height:8px;border-radius:2px;flex:none;background:var(--text-3)}.biz-chg-added{background:#16a394}.biz-chg-removed{background:#d6336c}.biz-chg-modified{background:#f0a020}.biz-kind-group{margin-bottom:10px}.biz-kind-head{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--text-2);margin:6px 0 3px}.biz-kind-dot{width:9px;height:9px;border-radius:3px;flex:none}.biz-more{font-size:11.5px;padding:2px 8px}.biz-drawer-foot{display:flex;gap:8px;padding:14px 20px 0}.biz-edit{flex:1;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius);padding:9px;font-size:13px;font-weight:600;cursor:pointer;color:var(--text)}.biz-del{background:none;border:1px solid var(--border);border-radius:var(--radius);padding:9px 14px;font-size:13px;cursor:pointer;color:#c0392b}.biz-del:hover{background:#fdecea}.set-x{background:none;border:none;font-size:24px;line-height:1;color:var(--text-3);cursor:pointer}.set-x:hover{color:var(--text)}.set-foot{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--border);position:sticky;bottom:0;background:var(--bg)}.set-btn{padding:9px 16px;font-size:13px;font-weight:600;border-radius:var(--radius);cursor:pointer;background:var(--bg);border:1px solid var(--border-strong);color:var(--text)}.set-btn.primary{background:var(--accent, #2563eb);border-color:var(--accent, #2563eb);color:#fff}.demo-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4000;display:flex;align-items:center;justify-content:center;padding:20px;background:#10141c6b;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.demo-modal{width:min(420px,92vw);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg, 14px);box-shadow:0 24px 60px #10141c47;padding:28px 26px 22px;text-align:center;animation:demo-modal-in .14s ease-out}@keyframes demo-modal-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}.demo-modal-icon{font-size:34px;line-height:1;margin-bottom:10px}.demo-modal-title{margin:0 0 8px;font-size:18px;font-weight:700;color:var(--text)}.demo-modal-body{margin:0 0 20px;font-size:14px;line-height:1.5;color:var(--text-2)}.demo-modal-btn{padding:10px 22px;font-size:14px;font-weight:600;border-radius:999px;cursor:pointer;background:var(--accent);border:1px solid var(--accent);color:#fff}.demo-modal-btn:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.auth-demo-badge{display:inline-block;margin:0 0 14px;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.02em;color:#fff;background:#ffffff29;border:1px solid rgba(255,255,255,.28)}.auth-note{font-size:13px;color:var(--accent, #16a394);margin:-2px 0 2px}.auth-subtitle{font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#fff9;margin:0 0 16px}.set-btn:disabled{opacity:.6;cursor:default}.biz-editor{max-width:600px}.biz-editor-body{display:flex;flex-direction:column;gap:13px}.biz-field{display:flex;flex-direction:column;gap:5px}.biz-field>span{font-size:12px;font-weight:600;color:var(--text-2)}.biz-field input,.biz-field select{padding:8px 11px;font-size:13px;color:var(--text);background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius);outline:none}.biz-field input:focus,.biz-field select:focus{border-color:var(--accent)}.biz-field-row{display:flex;gap:12px}.biz-field-row .biz-field{flex:1}.biz-swatches{display:flex;gap:7px}.biz-swatch{width:26px;height:26px;border-radius:7px;border:2px solid transparent;cursor:pointer}.biz-swatch.on{border-color:var(--text);box-shadow:0 0 0 2px var(--bg) inset}.biz-rules{border:1px solid var(--border);border-radius:var(--radius);padding:12px;background:var(--surface)}.biz-rules-head{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;color:var(--text-2)}.biz-match{font-weight:700;color:var(--accent, #2563eb);font-size:12px}.biz-rules-hint{font-size:11.5px;margin:4px 0 10px;line-height:1.45}.biz-rule{display:flex;align-items:center;gap:6px;margin-bottom:7px}.biz-rule select,.biz-rule input{padding:6px 8px;font-size:12.5px;border:1px solid var(--border-strong);border-radius:7px;background:var(--bg);color:var(--text);outline:none;min-width:0}.biz-rule>input{flex:1}.biz-rule-key{width:96px;flex:none}.biz-op-fixed{font-size:12px;color:var(--text-3);padding:0 2px}.biz-rule-del{background:none;border:none;font-size:18px;color:var(--text-3);cursor:pointer;flex:none;padding:0 4px}.biz-rule-del:hover{color:#c0392b}.biz-add-rule{background:none;border:1px dashed var(--border-strong);border-radius:7px;padding:6px 12px;font-size:12.5px;color:var(--text-2);cursor:pointer;margin-top:3px}.biz-add-rule:hover{border-color:var(--accent);color:var(--accent)}.biz-pins{display:flex;flex-direction:column;gap:6px}.biz-pins>span{font-size:12px;font-weight:600;color:var(--text-2)}.biz-pick{padding:8px 11px;font-size:13px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--bg);color:var(--text);outline:none}.biz-pick-results{border:1px solid var(--border);border-radius:var(--radius);max-height:200px;overflow-y:auto;padding:4px}.biz-pick-row{display:flex;align-items:center;gap:8px;padding:6px 8px;font-size:12.5px}.biz-pick-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.biz-pick-kind{font-size:11px;flex:none}.biz-pin-btn{font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--border-strong);background:var(--bg);color:var(--text-2);cursor:pointer;flex:none}.biz-pin-btn.on{background:#16a394;border-color:#16a394;color:#fff}.biz-pin-btn.ex.on{background:#c0392b;border-color:#c0392b}.biz-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.biz-chip{display:inline-flex;align-items:center;gap:6px;font-size:12px;padding:3px 6px 3px 9px;border-radius:7px;border:1px solid var(--border);background:var(--surface);color:var(--text-2);max-width:240px;height:26px}.biz-chip.in{border-color:#16a394}.biz-chip.ex{border-color:#c0392b}.biz-chip-sign{font-weight:700;flex:none}.biz-chip.in .biz-chip-sign{color:#0f7d70}.biz-chip.ex .biz-chip-sign{color:#a03228}.biz-chip-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.biz-chip button{background:none;border:none;cursor:pointer;color:var(--text-3);font-size:15px;line-height:1;flex:none;padding:0 1px}.biz-chip button:hover{color:var(--text)}.biz-err{color:#c0392b;font-size:12.5px;background:#fdecea;border-radius:var(--radius);padding:8px 11px}.biz-auto{border:1px solid var(--border);border-radius:var(--radius);padding:12px;background:var(--surface)}.biz-auto-toggle{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.biz-auto-toggle input{margin-top:3px;width:16px;height:16px;flex:none;accent-color:var(--accent);cursor:pointer}.biz-auto-toggle span{display:flex;flex-direction:column;gap:3px}.biz-auto-toggle b{font-size:13px}.biz-auto-toggle em{font-style:normal;font-size:12px;color:var(--text-3);line-height:1.45}.biz-auto-opts{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:11px;padding-top:11px;border-top:1px dashed var(--border);flex-wrap:wrap}.biz-auto-opts label{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--text-2)}.biz-auto-opts select{padding:5px 8px;font-size:12.5px;border:1px solid var(--border-strong);border-radius:7px;background:var(--bg);color:var(--text)}.biz-auto-count{font-size:12px;color:var(--text-2)}.biz-auto-count b{color:var(--accent, #2563eb)}.biz-auto-up{display:flex;align-items:flex-start;gap:9px;margin-top:11px;cursor:pointer;font-size:12px;color:var(--text-2);line-height:1.45}.biz-auto-up input{margin-top:2px;width:15px;height:15px;flex:none;accent-color:var(--accent);cursor:pointer}.biz-linked{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--text-3);border:1px solid var(--border);border-radius:999px;padding:0 6px;flex:none}.panel-svc{margin:10px 0 4px}.panel-svc-label{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3)}.panel-svc-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.panel-svc-chip{display:inline-flex;align-items:center;font-size:12px;font-weight:600;border:1px solid;border-radius:999px;padding:2px 4px;background:var(--bg)}.panel-svc-open{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:inherit;font:inherit;cursor:pointer;padding:1px 4px}.panel-svc-open:hover{text-decoration:underline}.panel-svc-rm{background:none;border:none;color:inherit;cursor:pointer;font-size:14px;line-height:1;opacity:.6;padding:0 3px}.panel-svc-rm:hover{opacity:1}.panel-svc-dot{width:8px;height:8px;border-radius:3px;flex:none}.panel-svc-add{font-size:12px;font-weight:600;color:var(--text-2);background:var(--surface-2);border:1px dashed var(--border-strong);border-radius:999px;padding:3px 10px;cursor:pointer}.panel-svc-add:hover{border-color:var(--accent);color:var(--accent)}
