.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#555;--xy-background-pattern-lines-color-default:#333;--xy-background-pattern-cross-color-default:#333;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", "Helvetica Neue", Arial, sans-serif;--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--color-primary:#2f6fed;--color-primary-hover:#255fd1;--color-primary-soft:#eef4ff;--color-app-background:#f7f9fc;--color-surface:#fff;--color-surface-subtle:#f2f5f9;--color-text:#172033;--color-text-secondary:#475467;--color-text-muted:#667085;--color-border:#e4e9f0;--color-border-strong:#d3dae6;--color-success:#18a66a;--color-success-soft:#eaf8f1;--color-warning:#b86f12;--color-warning-soft:#fff6e8;--color-danger:#d94a4a;--color-danger-soft:#fff0f0;--color-info:#4d7ff0;--color-focus-ring:#2f6fed3d;--color-backdrop:#17203347;--color-canvas-mask:#f7f9fcc7;--text-page-size:22px;--text-page-line:30px;--text-section-size:15px;--text-section-line:22px;--text-body-size:14px;--text-body-line:20px;--text-label-size:13px;--text-label-line:18px;--text-meta-size:12px;--text-meta-line:16px;--text-code-size:12px;--text-code-line:16px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--radius-control:8px;--radius-panel:12px;--radius-card:10px;--radius-small:6px;--shadow-panel:0 8px 24px #17203314;--shadow-floating:0 16px 40px #17203324;--shadow-node:0 8px 22px #17203314;--control-height:36px;--control-height-compact:32px;--icon-button-size:32px;--icon-size:16px;--touch-target:44px;--card-padding:var(--space-4);--card-padding-compact:var(--space-3);--content-max-width:1100px;--topbar-height:52px;--statusbar-height:32px;--sidebar-width:200px;--palette-width:220px;--palette-rail-width:48px;--inspector-width:360px;--z-topbar:40;--z-panel:20;--z-popover:80;--z-dialog:500;--motion-fast:.14s;--motion-standard:.18s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--bg:var(--color-app-background);--panel:var(--color-surface-subtle);--surface:var(--color-surface);--surface-soft:var(--color-surface-subtle);--line:var(--color-border);--line-strong:var(--color-border-strong);--ink:var(--color-text);--muted:var(--color-text-secondary);--faint:var(--color-text-muted);--brand:var(--color-primary);--brand-dark:var(--color-primary);--brand-hover:var(--color-primary-hover);--brand-foreground:#fff;--brand-soft:var(--color-primary-soft);--brand-border:var(--color-primary);--brand-focus:var(--color-focus-ring);--green:var(--color-success);--red:var(--color-danger);--orange:var(--color-warning);--ease:var(--ease-standard)}@layer reset{*,:before,:after{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}button,input,select,textarea{font:inherit}button{border:0}}@layer base{:root{font-family:var(--font-sans);color:var(--color-text);background:var(--color-app-background);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{overflow:hidden}button{color:inherit;cursor:pointer}button:disabled{cursor:not-allowed}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}::selection{background:var(--brand);color:var(--brand-foreground)}}@layer components{.app-shell{background:var(--bg);grid-template-rows:64px minmax(0,1fr) 28px;width:100%;height:100%;display:grid;position:relative}.visual-flow-loading{color:#7b8491;background:#f5f6f8;justify-content:center;align-items:center;gap:9px;min-width:0;min-height:0;font-size:12px;display:flex}.skip-link{z-index:999;color:var(--brand-foreground);background:var(--brand);border-radius:7px;padding:9px 14px;font-size:13px;text-decoration:none;position:fixed;top:-50px;left:12px}.skip-link:focus{top:10px}.topbar{border-bottom:1px solid var(--line);z-index:20;background:#fffffff5;align-items:center;gap:14px;height:64px;padding:0 16px 0 18px;display:flex;box-shadow:0 1px #181c2603}.brand{letter-spacing:0;align-items:center;gap:8px;min-width:170px;display:flex}.brand>strong{white-space:nowrap;font-size:16px;font-weight:700}.brand-mark{flex:none;width:32px;height:32px;display:block}.version-mark{color:#626b78;letter-spacing:0;font-size:9px;font-weight:650;line-height:1}.project-switcher-wrap{position:relative}.project-switcher{text-align:left;background:0 0;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;min-width:190px;height:44px;padding:4px 5px 4px 10px;transition:background .18s;display:flex}.project-switcher:hover{background:var(--surface-soft)}.project-switcher>span{flex:1;gap:1px;min-width:0;display:grid}.project-switcher small{color:var(--faint);letter-spacing:.06em;text-transform:uppercase;font-size:9px;font-weight:720;line-height:1}.project-name-input{width:100%;min-width:0;height:22px;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;border-radius:4px;outline:0;margin-left:-3px;padding:1px 3px;font-size:13px;font-weight:650;overflow:hidden}.project-name-input:hover{background:#fff}.project-name-input:focus{box-shadow:0 0 0 2px var(--brand-focus);background:#fff}.project-switcher-toggle{color:#7e8692;background:0 0;border-radius:6px;flex:0 0 28px;place-items:center;width:28px;height:28px;display:grid}.project-switcher-toggle:hover{color:var(--ink);background:#eceff2}.project-menu{z-index:80;border:1px solid var(--line);background:#fff;border-radius:11px;width:240px;padding:8px;position:absolute;top:48px;left:0;box-shadow:0 18px 45px #22263224}.project-menu>span{color:var(--faint);letter-spacing:.08em;padding:5px 8px 7px;font-size:9px;font-weight:750;display:block}.project-menu button{text-align:left;background:0 0;border-radius:7px;align-items:center;gap:8px;width:100%;padding:9px 8px;font-size:12px;display:flex}.project-menu button:hover:not(:disabled){background:var(--surface-soft)}.project-menu button.is-active{color:#285f8f;background:var(--brand-soft)}.project-menu button>span:not(.project-menu-placeholder){text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.project-menu-placeholder{flex:0 0 13px;width:13px;height:13px}.project-menu button small{color:var(--faint);margin-left:auto;font-size:9px}.save-indicator{color:#747b86;white-space:nowrap;align-items:center;gap:7px;margin-left:auto;font-size:11px;display:flex}.language-switcher-wrap{position:relative}.language-switcher{border:1px solid var(--line);color:#666d79;white-space:nowrap;background:#fff;border-radius:8px;align-items:center;gap:6px;height:32px;padding:0 9px;font-size:11px;font-weight:650;transition:background .16s,border-color .16s;display:flex}.language-switcher:hover{background:var(--surface-soft);border-color:var(--line-strong)}.language-menu{z-index:80;border:1px solid var(--line);background:#fff;border-radius:10px;width:138px;padding:6px;position:absolute;top:39px;right:0;box-shadow:0 18px 45px #22263224}.language-menu button{color:#5f6672;background:0 0;border-radius:7px;justify-content:space-between;align-items:center;width:100%;height:32px;padding:0 9px;font-size:11px;display:flex}.language-menu button:hover,.language-menu button.is-active{background:var(--surface-soft);color:var(--ink)}.saved-dot,.saving-dot{background:#48a274;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #e9f5ee}.saving-dot{background:#d19a52;animation:1s infinite pulse-save;box-shadow:0 0 0 3px #faf0e1}@keyframes pulse-save{50%{opacity:.4}}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.top-actions{align-items:center;gap:8px;display:flex}.runtime-service-wrap{position:relative}.runtime-service-trigger{color:#7c838f;background:#fff;border:1px solid #e1e4e9;border-radius:6px;align-items:center;gap:5px;height:30px;padding:0 9px;font-size:8px;display:inline-flex}.runtime-service-trigger:hover,.runtime-service-trigger.is-connected{color:#3d7f5e;background:#f3faf5;border-color:#b9d9c6}.runtime-service-popover{z-index:60;background:#fff;border:1px solid #dfe3e8;border-radius:8px;gap:9px;width:270px;padding:13px;display:grid;position:absolute;top:38px;right:0;box-shadow:0 12px 30px #23283224}.runtime-service-heading{justify-content:space-between;gap:8px;display:flex}.runtime-service-heading>div{gap:2px;display:grid}.runtime-service-heading span{color:#9b8dc8;letter-spacing:.1em;text-transform:uppercase;font-size:7px;font-weight:800}.runtime-service-heading strong{color:#4e5662;font-size:12px}.runtime-service-heading .icon-button{width:23px;height:23px;font-size:15px}.runtime-service-popover p{color:#838b98;margin:0;font-size:8px;line-height:1.45}.runtime-service-popover label{color:#757d89;gap:4px;font-size:8px;display:grid}.runtime-service-popover input{color:#4f5662;background:#fff;border:1px solid #dfe3e8;border-radius:5px;min-width:0;height:30px;padding:0 8px;font-size:9px}.runtime-service-popover input:focus{border-color:#9ebee0;outline:2px solid #74a1cf2e}.runtime-service-error{color:#a34f49;background:#fff0ee;border-radius:5px;padding:7px 8px;font-size:8px;line-height:1.4}.runtime-service-status{color:#3e805f;align-items:center;gap:5px;font-size:8px;display:flex}.runtime-service-actions{gap:6px;display:flex}.runtime-service-actions .secondary-action{min-height:28px;padding:0 8px;font-size:8px}.runtime-service-popover>small{color:#9a9fa8;font-size:7px;line-height:1.4}.runtime-source-panel{background:#f7fbf8;border:1px solid #dce7e0;border-radius:8px;gap:8px;margin:0 0 14px;padding:9px;display:grid}.runtime-source-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.runtime-source-heading>div{gap:2px;display:grid}.runtime-source-heading span{color:#6b9b7c;letter-spacing:.08em;text-transform:uppercase;font-size:7px;font-weight:800}.runtime-source-heading strong{color:#4d6e5b;font-size:9px}.runtime-source-actions{grid-template-columns:1fr 1fr;gap:5px;display:grid}.runtime-source-actions .inspector-secondary-button{min-height:30px;padding:0 5px;font-size:7.5px}.runtime-source-interval{color:#71817a;grid-template-columns:1fr 1fr;align-items:center;gap:7px;font-size:7.5px;display:grid}.runtime-source-interval select{color:#5e6f65;background:#fff;border:1px solid #dbe4de;border-radius:5px;min-height:27px;font-size:8px}.runtime-source-error{color:#a55d4d;font-size:7.5px;line-height:1.4}.runtime-history-list{border-top:1px solid #dce7e0;gap:4px;max-height:140px;padding-top:5px;display:grid;overflow:auto}.runtime-history-list>div{justify-content:space-between;align-items:center;gap:6px;padding:4px 0;display:flex}.runtime-history-list>div>span{gap:2px;display:grid}.runtime-history-list strong{color:#536c5d;font-size:8px}.runtime-history-list small{color:#84938a;font-size:7px}.runtime-history-list .icon-button{color:#5f9171;width:24px;height:24px}.top-action-group{border-right:1px solid var(--line);align-items:center;gap:2px;padding-right:8px;display:flex}.icon-button{color:#666d79;background:0 0;border-radius:7px;place-items:center;width:32px;height:32px;transition:background .16s,color .16s,transform .16s;display:grid}.icon-button:hover:not(:disabled){color:var(--ink);background:#f1f2f5}.icon-button:active:not(:disabled){transform:scale(.94)}.icon-button:disabled{opacity:.3}.secondary-action,.primary-action{white-space:nowrap;height:34px;transition:transform .18s var(--ease), box-shadow .18s ease, background .18s ease;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:12px;font-weight:640;display:inline-flex}.secondary-action{border:1px solid var(--line-strong);background:#fff}.secondary-action:hover{background:#f7f7f9;border-color:#c8ccd5}.primary-action{color:var(--brand-foreground);background:linear-gradient(180deg, #a7d4fa, var(--brand));border:1px solid var(--brand-border);box-shadow:0 2px 5px #397ebc2e,inset 0 1px #ffffff73}.primary-action:hover{background:linear-gradient(180deg, #94c6f4, var(--brand-hover));transform:translateY(-1px);box-shadow:0 5px 12px #397ebc38,inset 0 1px #ffffff59}.primary-action:active{transform:translateY(0)}.workspace{grid-template-columns:var(--library-width,300px) 10px minmax(0, 1fr) 10px var(--inspector-width,390px);min-height:0;display:grid;position:relative}.block-library,.inspector{z-index:12;background:#fbfbfcfa;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.panel-resizer{z-index:18;cursor:col-resize;touch-action:none;background:#fbfbfcfa;min-width:10px;position:relative}.panel-resizer:before{content:"";background:var(--line);transition:inset .15s,background .15s;position:absolute;inset:0 4px}.panel-resizer>span{z-index:1;background:0 0;border-radius:999px;width:4px;height:42px;transition:background .15s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.panel-resizer:hover:before,.panel-resizer:focus-visible:before,body.is-resizing-panel .panel-resizer:before{background:var(--brand-border);inset-inline:3px}.panel-resizer:hover>span,.panel-resizer:focus-visible>span,body.is-resizing-panel .panel-resizer>span{background:var(--brand-dark)}.panel-resizer:focus-visible{outline-offset:-2px}body.is-resizing-panel,body.is-resizing-panel *{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}.panel-heading{flex:0 0 66px;justify-content:space-between;align-items:center;height:66px;padding:16px 15px 12px;display:flex}.panel-heading>div{gap:1px;display:grid}.panel-heading span,.inspector-node-header span{color:#9a9fab;letter-spacing:.12em;font-size:8.5px;font-weight:800}.panel-heading h2{letter-spacing:-.01em;margin:0;font-size:14px;font-weight:680}.panel-heading kbd{color:#9da2ad;background:#f2f3f5;border:1px solid #e0e2e7;border-bottom-color:#d2d5dc;border-radius:5px;padding:2px 6px;font-size:9px;box-shadow:0 1px #d7dae1}.library-search{border:1px solid var(--line);color:#989eaa;background:#fff;border-radius:8px;flex:0 0 34px;align-items:center;gap:8px;height:34px;margin:0 12px 10px;padding:0 10px;transition:border-color .18s,box-shadow .18s;display:flex}.library-search:focus-within{border-color:#a99fd8;box-shadow:0 0 0 3px #f0eef9}.library-search input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:11px}.library-search input::placeholder{color:#aaafb8}.library-search button{color:#9ca2ad;background:0 0;place-items:center;width:20px;height:20px;display:grid}.library-scroll,.inspector-scroll{scrollbar-width:thin;scrollbar-color:#d6d9df transparent;flex:auto;min-height:0;overflow:auto}.library-scroll{padding:0 9px 16px}.library-group{border-top:1px solid #eceef1;padding:5px 0 7px}.library-group:first-child{border-top:0}.library-group-title{color:#5e6470;background:0 0;align-items:center;gap:7px;width:100%;height:30px;padding:0 6px;font-size:10px;font-weight:720;display:flex}.library-group-title small{color:#a3a8b2;margin-left:auto;font-size:9px;font-weight:650}.library-group-title svg{color:#a4a9b3;transition:transform .2s}.library-group-title svg.is-rotated{transform:rotate(-90deg)}.category-dot{background:var(--category);border-radius:50%;width:6px;height:6px}.category-dot--source{--category:#8b7cc8}.category-dot--processing{--category:#57a47b}.category-dot--strategy{--category:#4e87c8}.category-dot--chain{--category:#c86e94}.category-dot--routing{--category:#d48654}.category-dot--dns{--category:#3aa0a2}.category-dot--output{--category:#7257b7}.library-items{gap:4px;display:grid}.library-item{--category:#8b7cc8;text-align:left;width:100%;min-height:52px;transition:transform .18s var(--ease), background .18s, border-color .18s, box-shadow .18s;background:0 0;border:1px solid #0000;border-radius:9px;grid-template-columns:32px 1fr 14px;align-items:center;gap:8px;padding:7px;display:grid;position:relative}.library-item:hover{background:#fff;border-color:#e1e3e8;transform:translate(2px);box-shadow:0 4px 12px #252a340e}.library-item--processing{--category:#57a47b}.library-item--strategy{--category:#4e87c8}.library-item--chain{--category:#c86e94}.library-item--routing{--category:#d48654}.library-item--dns{--category:#3aa0a2}.library-item--output{--category:#7257b7}.library-item-icon{width:30px;height:30px;color:var(--category);background:color-mix(in srgb, var(--category) 10%, white);border:1px solid color-mix(in srgb, var(--category) 15%, white);border-radius:8px;place-items:center;display:grid}.library-item>span:nth-child(2){gap:2px;min-width:0;display:grid}.library-item strong{color:#3a3f49;font-size:10.5px;font-weight:680}.library-item small{text-overflow:ellipsis;white-space:nowrap;color:#949aa5;font-size:8.5px;overflow:hidden}.library-grip{color:#c3c7ce;opacity:0;transition:opacity .18s}.library-item:hover .library-grip{opacity:1}.library-tip{border-top:1px solid var(--line);color:#9298a3;flex:0 0 34px;align-items:center;gap:7px;height:34px;padding:0 14px;font-size:8.5px;display:flex}.library-tip span{color:#77718e;letter-spacing:.08em;background:#eeeef4;border-radius:3px;padding:2px 4px;font-size:7px;font-weight:800}.library-empty{color:var(--faint);text-align:center;padding:35px 12px;font-size:11px}.canvas-region,.canvas-shell{background:#f5f6f8;min-width:0;min-height:0;position:relative;overflow:hidden}.canvas-shell{width:100%;height:100%}.canvas-shell:before{content:"";pointer-events:none;z-index:1;background:radial-gradient(circle at 50% -20%,#ffffffe6,#0000 48%);position:absolute;inset:0}.canvas-breadcrumb{z-index:10;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#ffffffdb;border:1px solid #dbdee5d9;border-radius:7px;align-items:center;gap:7px;height:28px;padding:0 9px;font-size:9px;display:flex;position:absolute;top:11px;left:14px;box-shadow:0 2px 7px #262a340a}.canvas-breadcrumb span{color:#969ca7}.canvas-breadcrumb b{color:#c2c6cd;font-weight:500}.canvas-breadcrumb strong{font-weight:660}.canvas-breadcrumb i{color:#3e9067;letter-spacing:.08em;background:#eaf5ee;border-radius:4px;padding:2px 4px;font-size:7px;font-style:normal;font-weight:800}.react-flow{z-index:2;position:relative}.react-flow__selection{background:#6356b412;border:1px solid #6356b473}.react-flow__edge-path{transition:opacity .22s}.react-flow__edge.selected .react-flow__edge-path{stroke:var(--brand-dark)!important;stroke-width:2.4px!important;opacity:1!important}.react-flow__edge.animated path{stroke-dasharray:5 4;animation-duration:.75s}.flow-node{--category:#8b7cc8;width:232px;box-shadow:var(--shadow-node);transition:opacity .22s, transform .2s var(--ease), border-color .2s, box-shadow .2s;background:#fffffffa;border:1px solid #dfe2e7;border-radius:12px;position:relative;overflow:visible}.flow-node--processing{--category:#57a47b}.flow-node--strategy{--category:#4e87c8}.flow-node--chain{--category:#c86e94}.flow-node--routing{--category:#d48654}.flow-node--dns{--category:#3aa0a2}.flow-node--output{--category:#7257b7}.flow-node:hover{border-color:color-mix(in srgb, var(--category) 48%, #dfe2e7);transform:translateY(-2px);box-shadow:0 5px 12px #21263114,0 18px 35px #21263117}.flow-node.is-selected{border-color:var(--category);box-shadow:0 0 0 3px color-mix(in srgb, var(--category) 14%, transparent), 0 12px 34px #2126311a}.flow-node.is-highlighted:not(.is-selected){border-color:color-mix(in srgb, var(--category) 65%, #dfe2e7);box-shadow:0 0 0 2px color-mix(in srgb, var(--category) 8%, transparent), var(--shadow-node)}.flow-node.is-dimmed{opacity:.22;filter:saturate(.45)}.flow-node.is-disabled{opacity:.48;filter:grayscale(.6)}.node-accent{background:linear-gradient(90deg, transparent, var(--category), transparent);opacity:.65;height:2px;position:absolute;top:-1px;left:11px;right:11px}.node-header{align-items:center;gap:9px;height:50px;padding:9px 10px 6px;display:flex}.node-icon{width:30px;height:30px;color:var(--category);background:color-mix(in srgb, var(--category) 10%, #fff);border:1px solid color-mix(in srgb, var(--category) 15%, #fff);border-radius:8px;flex:0 0 30px;place-items:center;display:grid}.node-icon--source{--category:#8b7cc8}.node-icon--processing{--category:#57a47b}.node-icon--strategy{--category:#4e87c8}.node-icon--chain{--category:#c86e94}.node-icon--routing{--category:#d48654}.node-icon--dns{--category:#3aa0a2}.node-icon--output{--category:#7257b7}.node-heading{gap:1px;min-width:0;display:grid}.node-heading strong{white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.01em;font-size:11px;font-weight:720;overflow:hidden}.node-heading span{color:color-mix(in srgb, var(--category) 80%, #555);letter-spacing:.12em;font-size:6.5px;font-weight:850}.node-more,.node-warning{color:#b0b5be;margin-left:auto}.node-warning{color:#cf854d}.node-content{background:#f9fafb;border:1px solid #eceef1;border-radius:8px;align-items:center;min-height:45px;margin:0 9px;padding:8px 9px;display:flex}.node-footer{color:#9aa0aa;align-items:center;gap:5px;height:29px;padding:0 11px;display:flex}.node-footer span{white-space:nowrap;text-overflow:ellipsis;font-size:7.5px;overflow:hidden}.node-footer svg{color:#c4c8cf;margin-left:auto}.flow-handle{box-shadow:0 0 0 1px color-mix(in srgb, var(--category) 65%, #bbb), 0 2px 5px #1e222b2e;transition:transform .16s,box-shadow .16s;background:var(--category)!important;border:2px solid #fff!important;width:10px!important;height:10px!important}.flow-handle:hover,.flow-handle.connectingto{box-shadow:0 0 0 4px color-mix(in srgb, var(--category) 16%, transparent);transform:scale(1.35)}.flow-handle--input{left:-5px!important}.flow-handle--output{right:-5px!important}.node-metric-row,.node-output-row,.node-target-row,.node-dns-row,.node-strategy-row{align-items:center;gap:7px;width:100%;display:flex}.status-dot-label{color:#727986;align-items:center;gap:5px;font-size:8px;display:flex}.status-dot-label i{background:#46a172;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 2px #e7f4ec}.node-metric-row>strong{font-variant-numeric:tabular-nums;margin-left:auto;font-size:13px}.node-metric-row small{color:#9da2ab;font-size:7px;font-weight:550}.node-chip-row{align-items:center;gap:4px;width:100%;display:flex;overflow:hidden}.node-chip-row span,.node-services button{color:color-mix(in srgb, var(--category) 80%, #444);background:color-mix(in srgb, var(--category) 10%, #fff);border:1px solid color-mix(in srgb, var(--category) 16%, #fff);border-radius:4px;padding:3px 5px;font-size:7px;font-weight:680}.node-chip-row em{color:#a0a5ae;white-space:nowrap;margin-left:auto;font-size:7px;font-style:normal}.node-strategy-row{color:#626a76;font-size:8px}.node-strategy-row svg{color:var(--category);fill:color-mix(in srgb, var(--category) 14%, transparent)}.node-strategy-row span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.node-chain{justify-content:center;align-items:center;gap:3px;width:100%;display:flex}.node-chain-hop{align-items:center;gap:3px;display:flex}.node-chain-hop>span{color:#fff;background:var(--category);border-radius:50%;place-items:center;width:15px;height:15px;font-size:7px;font-weight:760;display:grid}.node-chain-hop b{white-space:nowrap;font-size:7.5px}.node-chain-hop svg{color:#b6bac2}.node-empty-inline{color:#a1a6af;font-size:8px}.node-services{flex-wrap:wrap;gap:4px;display:flex}.node-services button{--category:#d48654;transition:transform .15s,background .15s}.node-services button:hover{background:#fff3ea;transform:translateY(-1px)}.node-dns-row{justify-content:space-between;font-size:8px}.node-dns-row span{color:#26878b;font-weight:750}.node-dns-row code{color:#69717d;font-family:SFMono-Regular,Consolas,monospace;font-size:7px}.node-target-row{font-size:7.5px}.node-target-row span{color:#828893}.node-target-row svg{color:#b3b8c0}.node-target-row b{color:#c16e3d;margin-left:auto}.node-output-row span{color:#3d9066;align-items:center;gap:4px;font-size:7.5px;font-weight:650;display:flex}.node-output-row b{color:#5d50a3;letter-spacing:.07em;margin-left:auto;font-size:8px}.node-default-copy{color:#868c97;margin:0;font-size:8px}.proxy-minimap{border:1px solid #d2d6dee6;border-radius:8px;overflow:hidden;box-shadow:0 5px 15px #22263012;background:#ffffffe6!important;width:132px!important;height:84px!important;bottom:12px!important;left:12px!important}.proxy-controls{overflow:hidden;border:1px solid #dfe2e7!important;border-radius:8px!important;bottom:12px!important;right:12px!important;box-shadow:0 5px 15px #22263012!important}.proxy-controls button{color:#626976;border-bottom-color:#eceef1!important;width:28px!important;height:28px!important}.context-menu{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffffa;border:1px solid #dfe2e7;border-radius:9px;width:190px;padding:5px;position:fixed;box-shadow:0 16px 40px #1c202a2b}.context-menu button{text-align:left;background:0 0;border-radius:6px;align-items:center;gap:8px;width:100%;height:31px;padding:0 8px;font-size:10px;display:flex}.context-menu button:hover:not(:disabled){background:#f3f4f6}.context-menu button.danger{color:#b55}.context-menu button:disabled{opacity:.35}.context-menu kbd{color:#a4a8b1;margin-left:auto;font-size:8px}.context-menu>span{background:#eceef1;height:1px;margin:4px;display:block}.inspector-heading{border-bottom:1px solid #edeef1}.inspector-node-header{border-bottom:1px solid #e9ebef;flex:0 0 69px;grid-template-columns:34px 1fr 28px;align-items:center;gap:9px;min-height:69px;padding:10px 13px;display:grid}.inspector-node-header>div:nth-child(2){gap:2px;min-width:0;display:grid}.inspector-node-header h2{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:13px;font-weight:700;overflow:hidden}.inspector-node-header>button{color:#9aa0aa;background:0 0;border-radius:6px;place-items:center;width:28px;height:28px;display:grid}.inspector-node-header>button:hover{color:#bd5656;background:#fff1f1}.inspector-field{gap:6px;margin-bottom:14px;display:grid}.inspector-field>span,.section-label>span{color:#626874;align-items:baseline;gap:6px;font-size:9px;font-weight:700;display:flex}.inspector-field>span small{color:#a7abb4;font-size:7px;font-weight:520}.inspector-field input,.inspector-field select,.input-with-unit,.source-reference{color:#343943;background:#fff;border:1px solid #dfe2e7;border-radius:7px;outline:0;width:100%;height:34px;padding:0 9px;font-size:10px;transition:border-color .16s,box-shadow .16s}.inspector-field input:focus,.inspector-field select:focus,.input-with-unit:focus-within{border-color:#9e94d2;box-shadow:0 0 0 3px #f0eef9}.inspector-field select{appearance:none;background-image:linear-gradient(45deg,#0000 50%,#8f95a0 50%),linear-gradient(135deg,#8f95a0 50%,#0000 50%);background-position:calc(100% - 13px) 14px,calc(100% - 9px) 14px;background-repeat:no-repeat;background-size:4px 4px;padding-right:24px}.toggle-row{justify-content:space-between;align-items:center;gap:16px;min-height:45px;margin-bottom:14px;display:flex}.toggle-row>span{gap:2px;display:grid}.toggle-row small{color:#9ba1ac;font-size:7.5px}.toggle-row>input{appearance:none;background:#d8dbe1;border-radius:999px;flex:0 0 30px;width:30px;height:17px;transition:background .18s;position:relative}.toggle-row>input:after{content:"";background:#fff;border-radius:50%;width:13px;height:13px;transition:transform .18s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #14182033}.toggle-row>input:checked{background:#6b5fba}.toggle-row>input:checked:after{transform:translate(13px)}.metric-cards{grid-template-columns:1fr 1fr;gap:7px;margin-bottom:13px;display:grid}.metric-cards>div{background:#f8f9fa;border:1px solid #e6e8ec;border-radius:8px;align-content:center;gap:4px;min-height:57px;padding:9px 10px;display:grid}.metric-cards span{color:#9399a4;font-size:7.5px}.metric-cards strong{font-variant-numeric:tabular-nums;font-size:13px;font-weight:680}.metric-cards .compact-metric{font-size:10px}.metric-cards .good-metric{color:#3b9467;font-size:10px}.inspector-secondary-button,.inspector-primary-button,.dashed-button,.danger-button{border-radius:7px;justify-content:center;align-items:center;gap:7px;width:100%;height:34px;font-size:9.5px;font-weight:660;display:flex}.inspector-secondary-button{background:#fff;border:1px solid #dadde3}.inspector-secondary-button:hover{background:#f7f8fa}.inspector-primary-button{color:#fff;background:#6154ae;box-shadow:0 3px 8px #53459d2e}.inspector-primary-button:hover{background:#55489f}.mock-note{color:#858b96;background:#f2f3f6;border-radius:6px;margin-top:10px;padding:8px 9px;font-size:7.5px;line-height:1.5}.advanced-panel{border-top:1px solid #e8eaee;margin-top:14px}.advanced-panel summary{color:#696f7b;cursor:pointer;justify-content:space-between;align-items:center;height:38px;font-size:9px;font-weight:700;list-style:none;display:flex}.advanced-panel summary::-webkit-details-marker{display:none}.advanced-panel summary svg{color:#a5aab3;transition:transform .18s}.advanced-panel[open] summary svg{transform:rotate(180deg)}.advanced-panel>div{padding:4px 0 2px}.token-input{background:#fff;border:1px solid #dfe2e7;border-radius:7px;min-height:66px;padding:6px}.token-input:focus-within{border-color:#9e94d2;box-shadow:0 0 0 3px #f0eef9}.token-list{flex-wrap:wrap;gap:4px;display:flex}.token-list span{color:#4b8364;background:#eaf4ee;border-radius:4px;align-items:center;gap:3px;padding:3px 4px 3px 6px;font-size:8px;font-weight:650;display:inline-flex}.token-list span button{color:#78a68c;background:0 0;place-items:center;width:15px;height:15px;display:grid}.token-input>input{margin-top:3px;height:25px!important;box-shadow:none!important;border:0!important;padding:0 3px!important}.filter-preview{background:#f8f9fa;border:1px solid #e4e7eb;border-radius:8px;align-items:baseline;gap:4px;min-height:50px;margin:2px 0 13px;padding:8px 10px;display:flex;position:relative;overflow:hidden}.filter-preview span{color:#858b96;margin-right:auto;font-size:8px}.filter-preview strong{color:#44936a;font-size:15px}.filter-preview small{color:#a2a7b0;font-size:7px}.filter-preview i{background:#57a47b;height:2px;position:absolute;bottom:0;left:0}.check-row{color:#727985;align-items:center;gap:7px;font-size:8.5px;display:flex}.check-row input{accent-color:#6457b2}.source-reference{color:#636a76;background:#f8f9fa;align-items:center;gap:7px;display:flex}.source-reference svg{color:#4e87c8}.input-with-unit{display:flex;overflow:hidden;padding:0!important}.input-with-unit input{height:32px!important;box-shadow:none!important;border:0!important}.input-with-unit span{color:#969ca6;background:#f5f6f8;border-left:1px solid #e2e4e9;place-items:center;padding:0 9px;font-size:8px;display:grid}.section-label{justify-content:space-between;align-items:center;height:28px;display:flex}.section-label small{color:#aaaeb7;letter-spacing:.08em;font-size:7px;font-weight:750}.section-label button{color:#6659b1;background:0 0;align-items:center;gap:3px;font-size:8px;font-weight:650;display:flex}.hop-list{margin:2px 0 8px}.hop-card{background:#fff;border:1px solid #e1e4e8;border-radius:8px;grid-template-columns:14px 22px 1fr auto;align-items:center;gap:6px;height:49px;padding:5px 7px;display:grid}.hop-card>svg{color:#bdc1c9}.hop-index{color:#fff;background:#c86e94;border-radius:50%;place-items:center;width:20px;height:20px;font-size:8px;font-weight:760;display:grid}.hop-card>div:nth-child(3){gap:2px;min-width:0;display:grid}.hop-card strong{text-overflow:ellipsis;white-space:nowrap;font-size:8.5px;overflow:hidden}.hop-card small{text-overflow:ellipsis;white-space:nowrap;color:#9ca1ab;font-size:6.8px;overflow:hidden}.hop-actions{opacity:0;transition:opacity .16s;display:flex}.hop-card:hover .hop-actions{opacity:1}.hop-actions button{color:#969ca7;background:0 0;border-radius:4px;place-items:center;width:19px;height:20px;display:grid}.hop-actions button:hover:not(:disabled){color:#5d6470;background:#f1f2f4}.hop-actions button:last-child:hover{color:#bf5757;background:#fff0f0}.hop-actions button:disabled{opacity:.2}.hop-connector{color:#b9bdc5;place-items:center;height:18px;display:grid;position:relative}.hop-connector:before{content:"";border-left:1px dashed #d5d8de;position:absolute;top:0;bottom:0}.hop-connector svg{background:#fbfbfc;position:relative}.dashed-button{color:#6c627f;background:#fafafa;border:1px dashed #cfd2d9}.dashed-button:hover{background:#f7f5fc;border-color:#a59ace}.chain-summary{color:#88617a;background:#fbf1f5;border:1px solid #f1dce5;border-radius:7px;gap:4px;margin-top:12px;padding:9px;display:grid}.chain-summary span{letter-spacing:.08em;font-size:7px;font-weight:750}.chain-summary strong{font-size:8.5px}.service-list{gap:5px;margin:2px 0 8px;display:grid}.service-list>div{background:#fff;border:1px solid #e4e6ea;border-radius:7px;grid-template-columns:25px 1fr 22px;align-items:center;gap:7px;min-height:41px;padding:4px 6px;transition:border-color .16s,background .16s;display:grid}.service-list>div.is-active{background:#fff9f5;border-color:#d8a07d}.service-avatar{color:#b76637;background:#faeade;border-radius:6px;place-items:center;width:24px;height:24px;font-size:9px;font-weight:780;display:grid}.service-list>div>span:nth-child(2){gap:1px;min-width:0;display:grid}.service-list small{color:#a0a5ae;text-overflow:ellipsis;white-space:nowrap;font-size:6.7px;overflow:hidden}.service-list button{color:#b0b4bd;background:0 0;border-radius:4px;place-items:center;width:20px;height:20px;display:grid}.service-list button:hover{color:#c15b5b;background:#fff0f0}.route-order{background:#fafbfc;border:1px solid #e4e6ea;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;margin:2px 0 14px;padding:9px 10px;display:flex}.route-order>span{gap:2px;display:grid}.route-order strong{color:#515864;font-size:9px}.route-order small{color:#9ca2ac;font-size:7px}.route-order>div{gap:3px;display:flex}.route-order button{color:#66707d;background:#fff;border:1px solid #dfe2e7;border-radius:6px;place-items:center;width:26px;height:26px;display:grid}.route-order button:hover:not(:disabled){color:#397ebc;background:#f3f9fe;border-color:#9bc9ed}.route-order button:disabled{opacity:.35}.service-picker{background:#fafbfc;border:1px solid #e4e6ea;border-radius:7px;gap:5px;margin:0 0 12px;padding:6px;display:grid}.service-search{color:#969ca6;background:#fff;border:1px solid #e0e3e8;border-radius:5px;align-items:center;gap:6px;padding:0 6px;display:flex}.service-search input{background:0 0;border:0;outline:0;width:100%;min-width:0;padding:7px 0;font-size:8px}.service-picker-options{gap:3px;max-height:180px;display:grid;overflow:auto}.service-picker-options button{text-align:left;color:#3f4650;background:0 0;border-radius:5px;grid-template-columns:24px 1fr 16px;align-items:center;gap:7px;padding:5px;display:grid}.service-picker-options button:hover{background:#fff}.service-picker-options button>span:nth-child(2){gap:1px;min-width:0;display:grid}.service-picker-options small{color:#9aa0aa;padding:6px;font-size:7px}.service-picker-options button small{text-overflow:ellipsis;white-space:nowrap;padding:0;overflow:hidden}.strategy-kind-card{background:#f7f8fa;border:1px solid #e2e5eb;border-radius:7px;justify-content:space-between;align-items:center;gap:8px;margin:-2px 0 12px;padding:8px 9px;display:flex}.strategy-kind-card span{color:#9198a3;text-transform:uppercase;letter-spacing:.04em;font-size:7px}.strategy-kind-card strong{color:#505762;font-size:8.5px}.candidate-list{gap:var(--space-1);margin:var(--space-1) 0 var(--space-3);padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-subtle);display:grid}.candidate-list>span,.candidate-list small{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.candidate-list code{color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.strategy-advanced-note{color:#8b909a;margin:0 0 10px;font-size:8px;line-height:1.45}.strategy-explanation{color:#98642f;background:#fff8ed;border:1px solid #f0dfc4;border-radius:8px;align-items:flex-start;gap:7px;margin:4px 0 12px;padding:9px;display:flex}.strategy-explanation.is-ready{color:#3f7b5e;background:#f1f8f3;border-color:#d5e9dc}.strategy-explanation>span{gap:2px;display:grid}.strategy-explanation strong{font-size:8.5px}.strategy-explanation small{color:#aa8761;font-size:7px;line-height:1.4}.strategy-explanation.is-ready small{color:#668a75}.rule-source-card{background:#fafafa;border:1px solid #e2e4e8;border-radius:8px;align-items:center;min-height:65px;margin-bottom:8px;padding:9px;display:flex}.rule-source-card>div{gap:2px;display:grid}.rule-source-card span{color:#a0a5ae;letter-spacing:.1em;font-size:6.5px;font-weight:780}.rule-source-card strong{font-size:9px}.rule-source-card small{color:#989ea8;font-size:7px}.rule-source-card a{color:#898f9b;border-radius:5px;place-items:center;width:25px;height:25px;margin-left:auto;display:grid}.rule-source-card a:hover{color:#5d51aa;background:#eeecf8}.actual-rules{color:#d8dbe2;background:#2a2d35;border-radius:7px;gap:5px;margin-top:8px;padding:8px;display:grid}.actual-rules>div{grid-template-columns:90px 1fr;gap:4px;font-family:SFMono-Regular,Consolas,monospace;font-size:7px;display:grid}.actual-rules span{color:#b79ddd}.actual-rules code{color:#d7dadd}.actual-rules small{color:#7f8592;font-size:6.5px;line-height:1.5}.client-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:6px;display:grid}.client-grid button{text-align:left;background:#fff;border:1px solid #e0e3e7;border-radius:8px;grid-template-rows:auto auto;grid-template-columns:25px 1fr;align-items:center;column-gap:7px;min-height:65px;padding:8px;display:grid;position:relative}.client-grid button:hover{border-color:#b9b2db}.client-grid button.is-selected{border-color:#7669bd;box-shadow:0 0 0 2px #efedf9}.client-grid button>span{color:#fff;background:#675ab1;border-radius:6px;grid-row:1/3;place-items:center;width:24px;height:24px;font-size:9px;font-weight:780;display:grid}.client-grid strong{align-self:end;font-size:8.5px}.client-grid small{color:#a2a7b0;letter-spacing:.06em;align-self:start;font-size:5.8px;font-weight:750}.client-grid svg{color:#6659b2;position:absolute;top:7px;right:7px}.client-grid button:not(.is-selected) small{color:#b4b8bf}.mihomo-output-profile{border-top:1px solid #e8eaee;margin-top:4px;padding-top:14px}.mihomo-output-profile>header{justify-content:space-between;align-items:flex-start;gap:9px;margin-bottom:13px;display:flex}.mihomo-output-profile>header>span{color:#397ebc;align-items:flex-start;gap:8px;min-width:0;display:flex}.mihomo-output-profile>header>span>span{gap:2px;min-width:0;display:grid}.mihomo-output-profile>header strong{color:#465364;font-size:9px}.mihomo-output-profile>header small{color:#8c96a4;font-size:7px;line-height:1.4}.mihomo-output-profile>header b{color:#285f8f;background:var(--brand-soft);border-radius:4px;flex:none;padding:3px 5px;font-size:6.5px}.output-preset-control{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.output-preset-control button{color:#6d7581;text-align:left;background:#fff;border:1px solid #dfe3e8;border-radius:7px;align-content:center;gap:3px;min-width:0;min-height:55px;padding:7px 8px;display:grid}.output-preset-control button:hover{border-color:var(--brand-border);background:#f8fbfe}.output-preset-control button.is-active{border-color:var(--brand-border);color:#285f8f;background:var(--brand-soft);box-shadow:inset 0 -2px var(--brand)}.output-preset-control strong,.output-preset-control small{overflow-wrap:anywhere;min-width:0}.output-preset-control small{color:#9098a4;font-size:6.5px;line-height:1.35}.mihomo-runtime-summary{border-block:1px solid #e5e8ec;grid-template-columns:repeat(3,minmax(0,1fr));margin:2px 0 6px;display:grid}.mihomo-runtime-summary>div{text-align:center;gap:3px;min-width:0;padding:9px 5px;display:grid}.mihomo-runtime-summary>div+div{border-inline-start:1px solid #e5e8ec}.mihomo-runtime-summary span{color:#969da8;font-size:6.5px}.mihomo-runtime-summary strong{overflow-wrap:anywhere;color:#536172;font-size:7.5px}.mihomo-profile-note{color:#7e8998;margin-bottom:12px;font-size:7.5px;line-height:1.5}.compat-card{color:#3f7e5d;background:#eef7f1;border:1px solid #dbeee2;border-radius:8px;grid-template-columns:24px 1fr auto;align-items:center;gap:8px;min-height:62px;margin:14px 0;padding:9px;display:grid}.compat-card>div{gap:2px;display:grid}.compat-card strong{font-size:8.5px}.compat-card span{color:#719080;font-size:7px}.compat-card b{background:#dcefe3;border-radius:4px;padding:3px 5px;font-size:6.5px}.validation-banner{color:#9a662f;background:#fff6e8;border:1px solid #f4e2c3;border-radius:7px;flex:none;align-items:flex-start;gap:7px;min-height:49px;margin:10px 12px 0;padding:8px;display:flex}.validation-banner svg{margin-top:1px}.validation-banner span{gap:2px;font-size:7.5px;line-height:1.35;display:grid}.validation-banner--error{color:#ad4d4d;background:#fff0f0;border-color:#f3d5d5}.inspector-empty{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:35px;display:flex}.inspector-empty-graphic{width:96px;height:74px;margin-bottom:19px;position:relative}.inspector-empty-graphic span{background:#fff;border:1px solid #dfe2e7;border-radius:6px;width:30px;height:22px;position:absolute;box-shadow:0 4px 10px #2328320f}.inspector-empty-graphic span:first-child{top:25px;left:2px}.inspector-empty-graphic span:nth-child(2){top:2px;right:2px}.inspector-empty-graphic span:nth-child(3){bottom:2px;right:2px}.inspector-empty-graphic:before,.inspector-empty-graphic:after{content:"";transform-origin:0;border-top:1px dashed #bfc4cd;width:38px;position:absolute;left:31px}.inspector-empty-graphic:before{top:34px;transform:rotate(-26deg)}.inspector-empty-graphic:after{top:38px;transform:rotate(26deg)}.inspector-empty-graphic svg{color:#8b81bd;z-index:2;position:absolute;top:28px;left:39px}.inspector-empty h3{margin:0 0 6px;font-size:12px}.inspector-empty p{color:#969ca7;max-width:205px;margin:0;font-size:8.5px;line-height:1.6}.inspector-empty>div:last-child{color:#a0a5ae;align-items:center;gap:4px;margin-top:20px;font-size:8px;display:flex}.inspector-empty kbd{background:#f5f6f7;border:1px solid #dcdfe4;border-radius:4px;padding:3px 5px;font-size:8px;box-shadow:0 1px #d9dce2}.inspector-empty small{margin-left:4px}.route-inspector-panel{background:#fafbfc;border:1px solid #e1e4e9;border-radius:8px;margin-bottom:18px;padding:11px}.route-inspector-heading{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.route-inspector-heading>div{gap:2px;display:grid}.route-inspector-heading span{color:#9b8dc8;letter-spacing:.1em;text-transform:uppercase;font-size:7px;font-weight:800}.route-inspector-heading h3{color:#4d5360;margin:0;font-size:12px}.route-inspector-heading .icon-button{width:24px;height:24px}.route-inspector-intro{color:#848b97;margin:7px 0 12px;font-size:8px;line-height:1.5}.route-inspector-query{grid-template-columns:1fr 1fr;gap:0 8px;display:grid}.route-inspector-query .inspector-field{margin-bottom:9px}.route-inspector-empty,.route-inspector-blocked{color:#8b909a;background:#f2f3f6;border-radius:6px;align-items:flex-start;gap:7px;margin-top:4px;padding:8px;font-size:8px;line-height:1.45;display:flex}.route-inspector-blocked{color:#a45a45;background:#fff1ed}.route-inspector-result{gap:6px;margin-top:6px;display:grid}.route-inspector-result-header{color:#3f7b5e;background:#eef7f1;border-radius:6px;gap:2px;padding:8px;display:grid}.route-inspector-result-header span{text-transform:uppercase;letter-spacing:.08em;font-size:7px;font-weight:760}.route-inspector-detail{background:#fff;border:1px solid #e5e7eb;border-radius:6px;grid-template-columns:82px 1fr;gap:2px 7px;padding:7px 8px;display:grid}.route-inspector-detail>span{color:#9298a3;font-size:7px}.route-inspector-detail>strong{color:#515864;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:8px;overflow:hidden}.route-inspector-detail>small{color:#959ba5;grid-column:2;font-size:7px;line-height:1.35}.route-inspector-targets{background:#fff;border:1px solid #e5e7eb;border-radius:6px;gap:4px;padding:7px 8px;display:grid}.route-inspector-targets>span{color:#9298a3;font-size:7px}.route-inspector-targets>div{justify-content:space-between;align-items:center;gap:7px;display:flex}.route-inspector-targets b{color:#626975;font-size:7px}.route-inspector-targets em{text-transform:capitalize;font-size:7px;font-style:normal;font-weight:760}.route-inspector-targets em.is-supported{color:#3d9165}.route-inspector-targets em.is-unsupported{color:#b65050}.route-inspector-targets em.is-unknown{color:#a07832}.route-inspector-rules{border-top:1px solid #e5e7eb}.route-inspector-rules summary{color:#747b87;cursor:pointer;padding:7px 0 4px;font-size:7px;font-weight:700}.route-inspector-rules>div{border-top:1px solid #f0f1f3;grid-template-columns:1fr auto;gap:2px 6px;padding:5px 0;display:grid}.route-inspector-rules>div.is-matched{color:#3d9165}.route-inspector-rules strong{text-overflow:ellipsis;white-space:nowrap;font-size:7.5px;overflow:hidden}.route-inspector-rules span,.route-inspector-rules small{color:#9da2ab;font-size:6.5px}.route-inspector-rules small{grid-column:1/-1}.edge-inspector-visual{color:#786bbd;justify-content:center;align-items:center;height:60px;margin-bottom:14px;display:flex}.edge-inspector-visual span{border-top:1px dashed #a9a1cf;width:72px}.edge-inspector-visual svg{margin:0 8px}.edge-endpoints{background:#f5f6f8;border-radius:8px;grid-template-columns:1fr 20px 1fr;align-items:center;gap:5px;min-height:70px;margin-bottom:16px;padding:8px;display:grid}.edge-endpoints div{gap:3px;display:grid}.edge-endpoints span{color:#a0a5ae;font-size:6px;font-weight:750}.edge-endpoints strong{text-overflow:ellipsis;font-size:8px;overflow:hidden}.edge-endpoints svg{color:#a5aab3}.danger-button{color:#b85050;background:#fff4f4;border:1px solid #f1d9d9}.statusbar{color:#858b96;border-top:1px solid var(--line);z-index:20;background:#fafafb;align-items:center;gap:13px;height:28px;padding:0 10px;font-size:8.5px;display:flex}.statusbar button{background:0 0;border-radius:4px;align-items:center;gap:5px;height:21px;padding:0 6px;font-size:8.5px;display:flex}.statusbar button:hover{background:#f0f1f3}.status-ok{color:#418e66}.status-issues{color:#b27638}.status-separator{background:#dedfe4;width:1px;height:12px}.status-spacer{flex:1}.status-hint{color:#a0a5af;align-items:center;gap:5px;display:flex}.zoom-value{color:#676e79;font-variant-numeric:tabular-nums;text-align:right;min-width:31px}.status-fit{color:#646a75}.modal-backdrop{z-index:300;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1f222a6b;place-items:center;padding:28px;animation:.2s both backdrop-in;display:grid;position:fixed;inset:0}@keyframes backdrop-in{0%{opacity:0}}.preview-modal{width:min(930px,92vw);height:min(680px,88vh);animation:modal-in .28s var(--ease) both;background:#fff;border:1px solid #ffffffa6;border-radius:15px;grid-template-rows:66px auto minmax(0,1fr) 57px;display:grid;overflow:hidden;box-shadow:0 28px 80px #15171e47}@keyframes modal-in{0%{opacity:0;transform:translateY(12px)scale(.98)}}.preview-modal>header{border-bottom:1px solid #e5e7eb;align-items:center;gap:10px;padding:0 16px;display:flex}.preview-icon{width:34px;height:34px;color:var(--brand-dark);background:var(--brand-soft);border-radius:8px;place-items:center;display:grid}.preview-modal header>div:nth-child(2){gap:1px;display:grid}.preview-modal header span{color:#999fa9;letter-spacing:.12em;font-size:7px;font-weight:800}.preview-modal header h2{margin:0;font-size:14px}.preview-mock-pill{background:#fff0e3;border-radius:4px;margin-left:3px;padding:3px 5px;color:#a26337!important}.preview-modal header>button{color:#858b96;background:0 0;border-radius:6px;place-items:center;width:30px;height:30px;margin-left:auto;display:grid}.preview-modal header>button:hover{background:#f2f3f5}.preview-status-region{min-height:43px}.preview-notice{color:#8c663e;background:#fff8ed;border-bottom:1px solid #f1e5d2;align-items:center;gap:8px;min-height:43px;padding:0 18px;font-size:8.5px;display:flex}.preview-notice span{gap:5px;display:flex}.preview-body{grid-template-columns:178px minmax(0,1fr);min-height:0;display:grid}.preview-body>aside{background:#f8f9fa;border-right:1px solid #e4e6ea;flex-direction:column;gap:6px;padding:15px 11px;display:flex}.preview-body>aside>span{color:#a0a5ae;letter-spacing:.1em;margin:0 4px 5px;font-size:7px;font-weight:780}.preview-body aside button{text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;grid-template-columns:28px 1fr 14px;align-items:center;gap:7px;min-height:48px;padding:7px;display:grid}.preview-body aside button.is-active{border-color:var(--brand-border);background:#fff;box-shadow:0 3px 9px #2226300d}.preview-body aside button>b{width:27px;height:27px;color:var(--brand-foreground);background:var(--brand);border-radius:6px;place-items:center;font-size:9px;display:grid}.preview-body aside button>b img{object-fit:contain;width:23px;height:23px}.preview-body aside button>div{gap:2px;display:grid}.preview-body aside button strong{font-size:8.5px}.preview-body aside button small{color:#a1a6af;font-size:6.5px}.preview-body aside button svg{color:var(--brand-dark)}.preview-body aside button:disabled{opacity:.46}.preview-stats{border-top:1px solid #e3e5e9;gap:4px;margin-top:auto;padding:9px;display:grid}.preview-stats span{color:#a2a7b0;font-size:6.5px}.preview-stats strong{margin-bottom:4px;font-size:8px}.preview-stats .good{color:#3d9165}.surge-projection-summary{border-bottom:1px solid var(--color-border);background:var(--color-surface)}.surge-projection-summary dl{grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:8px 18px;display:grid}.surge-projection-summary dl>div{align-items:baseline;gap:6px;min-width:0;display:flex}.surge-projection-summary dl>div+div{border-left:1px solid var(--color-border);padding-left:14px}.surge-projection-summary dt{color:var(--color-text-muted);font-size:8px}.surge-projection-summary dd{color:#3d9165;font-variant-numeric:tabular-nums;margin:0;font-size:11px;font-weight:760}.surge-projection-summary dd span{color:var(--color-text-muted);letter-spacing:0;font-size:8px}.surge-projection-summary .is-blocked dd{color:var(--color-danger)}.surge-projection-summary details{border-top:1px solid var(--color-border)}.surge-projection-summary summary{color:#98642f;cursor:pointer;overflow-wrap:anywhere;align-items:center;min-height:30px;padding:6px 18px;font-size:8px;font-weight:700;display:flex}.surge-projection-summary details>div{max-height:112px;padding:0 18px 8px;overflow:auto}.surge-projection-summary article{border-top:1px solid var(--color-border);grid-template-columns:minmax(0,max-content) auto;gap:2px 7px;padding:7px 0;display:grid}.surge-projection-summary article code{min-width:0;color:var(--color-text-secondary);overflow-wrap:anywhere;font-size:8px}.surge-projection-summary article span{color:var(--color-text-muted);letter-spacing:0;font-size:8px}.surge-projection-summary article p{color:var(--color-text-secondary);overflow-wrap:anywhere;grid-column:1/-1;margin:0;font-size:8px;line-height:1.45}.preview-notice.is-error{color:#a74e4e;background:#fff0f0;border-bottom-color:#efd5d5}.preview-subheading{border-top:1px solid #e3e5e9;padding-top:10px;margin-top:7px!important}.preview-compatibility-summary{background:#fff;border:1px solid #e3e5e9;border-radius:7px;gap:4px;margin:2px 0 3px;padding:7px 6px;display:grid}.preview-compatibility-summary>span{color:#9299a4;letter-spacing:.08em;text-transform:uppercase;font-size:6.5px;font-weight:780}.preview-compatibility-row{justify-content:space-between;align-items:center;gap:5px;display:flex}.preview-compatibility-row strong{font-size:7.5px}.compatibility-status{font-size:6.5px;font-weight:760}.compatibility-status.is-supported{color:#3d9165}.compatibility-status.is-warning{color:#ad7832}.compatibility-status.is-loading{color:#6d83a3}.compatibility-status.is-unavailable,.compatibility-status.is-blocked,.preview-stats .bad{color:#b65050}.code-panel.ir-failed{background:#272a31}.ir-error-panel{color:#dadde4;min-height:0;padding:30px;overflow:auto}.ir-error-panel>svg{color:#df8c66}.ir-error-panel h3{margin:10px 0 4px;font-size:15px}.ir-error-panel>p{color:#9299a6;margin:0 0 20px;font-size:9px}.ir-error-panel>div{gap:8px;display:grid}.ir-error-panel article{background:#2d3038;border:1px solid #3c4049;border-radius:7px;grid-template-columns:52px 1fr;gap:4px 10px;padding:10px;display:grid}.ir-error-panel article span{color:#e29272;text-transform:uppercase;align-items:center;gap:5px;font-size:7px;font-weight:800;display:flex}.ir-error-panel article span em{color:#c8ccd5;font-style:normal}.ir-error-panel article code{color:#b9dbfa;font-size:8px}.ir-error-panel article p{color:#a9afba;grid-column:1/-1;margin:2px 0 0;font-size:8px;line-height:1.5}.ir-error-panel article button{color:#94c6f4;text-underline-offset:3px;background:0 0;grid-column:1/-1;justify-self:start;padding:4px 0;font-size:8px;font-weight:750;text-decoration:underline}.code-panel{background:#22252c;grid-template-rows:35px minmax(0,1fr);min-width:0;min-height:0;display:grid}.code-toolbar{color:#9da3ae;background:#2a2d34;border-bottom:1px solid #343840;align-items:center;padding:0 12px;font-family:SFMono-Regular,Consolas,monospace;font-size:8px;display:flex}.code-toolbar button{color:#aeb4bf;background:0 0;align-items:center;gap:5px;margin-left:auto;font-size:7.5px;display:flex}.code-toolbar button:hover{color:#fff}.code-panel pre{color:#d7d9df;tab-size:2;min-height:0;margin:0;padding:17px 20px 28px;font-family:SFMono-Regular,Consolas,monospace;font-size:10px;line-height:1.65;overflow:auto}.code-panel code{white-space:pre}.preview-modal>footer{border-top:1px solid #e4e6ea;align-items:center;padding:0 15px;display:flex}.preview-modal>footer>span{color:#999fa9;font-size:7.5px}.preview-modal>footer>div{gap:7px;margin-left:auto;display:flex}.toast{z-index:500;color:#fff;min-width:210px;height:39px;animation:toast-in .25s var(--ease) both;background:#2e3139;border:1px solid #434650;border-radius:9px;align-items:center;gap:8px;padding:0 12px;font-size:10px;display:flex;position:fixed;bottom:45px;left:50%;transform:translate(-50%);box-shadow:0 12px 30px #1619203b}.toast>span{color:#c9ead7;background:#3a684e;border-radius:50%;place-items:center;width:19px;height:19px;display:grid}.toast:after{content:"";background:#7b70c4;border-radius:2px;height:2px;animation:2.6s linear both toast-progress;position:absolute;bottom:0;left:8px;right:8px}.recovery-banner{z-index:450;background:#fbfaff;border:1px solid #ded9f2;border-radius:10px;align-items:center;gap:18px;width:min(720px,100vw - 48px);padding:12px 14px;display:flex;position:fixed;top:72px;left:50%;transform:translate(-50%);box-shadow:0 14px 38px #1f1c3a29}.recovery-banner.is-required{background:#fff9f3;border-color:#efcfb7}.recovery-banner>div:first-child{gap:3px;min-width:0;display:grid}.recovery-banner strong{font-size:10px}.recovery-banner span{color:#777d89;font-size:8px;line-height:1.45}.recovery-banner>div:last-child{white-space:nowrap;align-items:center;gap:7px;margin-left:auto;display:flex}.recovery-close{color:#858b96;background:0 0;width:26px;height:26px;font-size:16px}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}}@keyframes toast-progress{to{transform:scaleX(0)}}.loading-screen{z-index:600;background:#f7f8fa;flex-direction:column;justify-content:center;align-items:center;gap:9px;transition:opacity .2s;display:flex;position:fixed;inset:0}.loading-screen strong{font-size:17px}.loading-screen small{color:#9298a3;font-size:9px}.loading-screen .brand-mark{margin-bottom:3px}.small-screen-blocker{display:none}.source-status-card{background:#f8fafc;border:1px solid #dfe4eb;border-radius:10px;gap:3px;margin:12px 0;padding:12px 13px;display:grid}.source-status-card>span,.source-summary-list>span,.rename-preview>span{color:#8a94a3;letter-spacing:.12em;text-transform:uppercase;font-size:9px;font-weight:800}.source-status-card strong{color:#263243;font-size:14px}.source-status-card small{color:#758091;overflow-wrap:anywhere;font-size:10px;line-height:1.45}.source-error-detail{gap:5px;min-width:0;display:grid}.source-error-detail code{overflow-wrap:anywhere;color:#9b4f49;background:#fbe8e5;border-radius:4px;width:fit-content;max-width:100%;padding:2px 5px;font-family:SFMono-Regular,Consolas,monospace;font-size:8px;line-height:1.35}.source-error-detail span{color:#7b6462;overflow-wrap:anywhere;font-size:10px;line-height:1.45}.source-status-card.is-ready{background:#f3faf6;border-color:#c8e2d5}.source-status-card.is-cors,.source-status-card.is-failed{background:#fff7f5;border-color:#f0cfca}.source-timestamps{grid-template-columns:1fr 1fr;gap:6px;margin:-3px 0 10px;display:grid}.source-timestamps>div{background:#fff;border:1px solid #e5e8ee;border-radius:8px;gap:3px;padding:8px 9px;display:grid}.source-timestamps span{color:#929ba8;letter-spacing:.08em;font-size:7px;font-weight:800}.source-timestamps strong{color:#536174;font-variant-numeric:tabular-nums;font-size:9px}.import-summary{grid-template-columns:repeat(3,1fr);gap:6px;margin:8px 0 12px;display:grid}.import-summary>div{text-align:center;background:#fff;border:1px solid #e4e8ee;border-radius:8px;padding:9px 7px}.import-summary span{color:#8a94a3;letter-spacing:.08em;font-size:8px;font-weight:800;display:block}.import-summary strong{color:#2d3949;font-variant-numeric:tabular-nums;margin-top:3px;font-size:15px;display:block}.source-summary-list{background:#fff;border:1px solid #e5e8ee;border-radius:9px;margin:10px 0;padding:10px 11px}.source-summary-list>div{color:#4a5667;justify-content:space-between;padding-top:7px;font-size:11px;display:flex}.source-summary-list b{color:#758091;font-variant-numeric:tabular-nums}.subscription-actions{grid-template-columns:1fr 1fr;gap:7px;display:grid}.subscription-actions .inspector-secondary-button{justify-content:flex-start;margin:0;font-size:10px}.subscription-paste{gap:8px;margin-top:10px;display:grid}.subscription-paste textarea{resize:vertical;color:#293546;background:#fbfcfe;border:1px solid #d8dee7;border-radius:9px;min-height:128px;padding:10px;font:10px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.nodes-preview-backdrop{z-index:120;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#181f2b85;place-items:center;padding:36px;display:grid;position:fixed;inset:0}.nodes-preview{background:#f7f9fc;border:1px solid #ffffff6b;border-radius:16px;grid-template-rows:auto auto minmax(0,1fr) auto;width:min(1180px,100vw - 72px);max-height:min(780px,100vh - 72px);display:grid;overflow:hidden;box-shadow:0 28px 80px #141d2c47}.nodes-preview>header{background:#fff;border-bottom:1px solid #e1e5eb;justify-content:space-between;align-items:flex-start;padding:20px 22px 16px;display:flex}.nodes-preview>header span{color:#7766b6;letter-spacing:.14em;font-size:9px;font-weight:800}.nodes-preview>header h2{color:#253143;margin:3px 0 2px;font-size:21px}.nodes-preview>header p{color:#7d8796;margin:0;font-size:11px}.nodes-preview>header button{color:#798393;cursor:pointer;background:0 0;border:0}.nodes-preview-filters{border-bottom:1px solid #e2e6ec;grid-template-columns:minmax(240px,1fr) 155px 155px 140px;gap:9px;padding:12px 18px;display:grid}.nodes-preview-filters label{color:#8a94a3;background:#fff;border:1px solid #dbe0e8;border-radius:8px;align-items:center;gap:8px;padding:0 10px;display:flex}.nodes-preview-filters input,.nodes-preview-filters select{color:#344153;background:#fff;border:1px solid #dbe0e8;border-radius:8px;width:100%;height:34px;font-size:11px}.nodes-preview-filters label input{border:0;outline:0}.nodes-preview-table{min-height:0;padding:0 18px 18px;overflow:auto}.nodes-preview-row{color:#455164;background:#fff;border-bottom:1px solid #e8ebf0;grid-template-columns:minmax(190px,1.4fr) .65fr .55fr .85fr .35fr minmax(150px,1fr) .68fr;align-items:center;gap:12px;min-height:52px;padding:8px 11px;font-size:11px;display:grid}.nodes-preview-row.is-heading{z-index:1;color:#8a94a3;letter-spacing:.08em;text-transform:uppercase;background:#f3f5f8;min-height:34px;font-size:9px;font-weight:800;position:sticky;top:0}.nodes-preview-row>span{text-overflow:ellipsis;min-width:0;overflow:hidden}.nodes-preview-row.has-issues{cursor:pointer}.nodes-preview-row.has-issues:hover,.nodes-preview-row.has-issues:focus-visible{z-index:1;background:#fffdf8;outline:0;position:relative;box-shadow:inset 3px 0 #d89a51}.nodes-preview-row strong,.nodes-preview-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.nodes-preview-row strong{color:#2d394a}.nodes-preview-row small{color:#929aa7;margin-top:3px;font-size:9px}.nodes-preview-row .node-safe-summary{color:#667386;white-space:normal;margin-top:0;line-height:1.35}.nodes-preview-row code{color:#596678;font:10px ui-monospace,SFMono-Regular,Menlo,monospace}.node-parse-status{text-transform:capitalize;align-items:center;gap:5px;font-weight:700;display:inline-flex!important}.node-parse-status.is-ready{color:#38845f}.node-parse-status.is-partial{color:#b27730}.node-parse-status.is-unsupported{color:#be574e}.node-issue-details{background:#fff9ee;border-bottom:1px solid #e8ebf0;gap:6px;padding:9px 12px 12px 24px;display:grid}.node-issue-details>div{color:#775c39;grid-template-columns:minmax(150px,auto) 1fr;gap:12px;font-size:10px;line-height:1.45;display:grid}.node-issue-details code{color:#aa6a2f;font-weight:800}.nodes-preview-empty{text-align:center;color:#8b95a4;padding:48px}.nodes-preview>footer{color:#858f9e;background:#fff;border-top:1px solid #e1e5eb;justify-content:space-between;align-items:center;padding:12px 18px;font-size:10px;display:flex}.processing-explanation{gap:var(--space-1);margin:var(--space-2) 0 var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-subtle);display:grid}.processing-explanation span{color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);letter-spacing:0;font-weight:600}.processing-explanation p{color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);margin:0}.starter-actions{background:#f5f8fc;border:1px solid #dfe6f1;border-radius:8px;gap:5px;margin:0 0 14px;padding:10px;display:grid}.starter-actions>span{color:#7586a2;letter-spacing:.1em;text-transform:uppercase;font-size:7px;font-weight:800}.starter-actions h3{color:#4d5d73;margin:0;font-size:11px}.starter-actions p{color:#7e8998;margin:0;font-size:8px;line-height:1.45}.starter-actions>div{grid-template-columns:1fr 1fr;gap:6px;margin-top:3px;display:grid}.starter-actions button{justify-content:center;min-height:31px;padding:6px 7px;font-size:8px}.processing-debug{grid-template-columns:repeat(3,1fr);gap:6px;margin:12px 0 8px;display:grid}.processing-debug>div{text-align:center;background:#f7faf8;border:1px solid #dfe5e9;border-radius:8px;padding:9px 5px}.processing-debug span{color:#8a94a3;letter-spacing:.08em;font-size:8px;font-weight:800;display:block}.processing-debug strong{color:#356d54;font-variant-numeric:tabular-nums;margin-top:3px;font-size:15px;display:block}.processing-debug.is-error>div{background:#fff7f5;border-color:#efd2cc}.processing-debug.is-error strong{color:#b84d46}.processing-issue{color:#835f30;background:#fff8eb;border-radius:7px;gap:4px;margin:7px 0;padding:8px 9px;font-size:9px;line-height:1.45;display:grid}.processing-issue span strong{margin-bottom:2px;display:block}.processing-issue>button{color:currentColor;font-size:inherit;text-underline-offset:2px;background:0 0;justify-self:start;padding:4px 0;font-weight:750;text-decoration:underline}.processing-issue.is-error{color:#a84b44;background:#fff1ef}.processing-issue code{font-weight:800}.processing-preview-actions{grid-template-columns:1fr 1fr;gap:7px;display:grid}.processing-preview-actions button{color:#596678;cursor:pointer;background:#fff;border:1px solid #dce2e7;border-radius:7px;padding:8px;font-size:10px}.processing-preview-actions button:disabled{opacity:.45;cursor:default}.rename-preview{background:#f8fafc;border:1px solid #e2e6eb;border-radius:9px;margin:10px 0;padding:10px}.rename-preview>div{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:6px;margin-top:7px;display:grid}.rename-preview code{color:#536174;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.rename-preview b{color:#8a94a3}.node-runtime-count{border-top:1px solid #5570611f;justify-content:space-between;align-items:baseline;margin-top:8px;padding-top:8px;display:flex}.node-runtime-count strong{color:#356d54;font-variant-numeric:tabular-nums;font-size:13px}.node-runtime-count small{color:#8b96a4;font-size:9px}.node-runtime-count.is-error strong{color:#b84d46;font-size:10px}.status-dot-label.status-error i,.status-dot-label.status-unavailable i{background:#c8645a}.status-dot-label.status-stale i{background:#d99b49}.app-shell{grid-template-rows:70px minmax(0,1fr) 32px}.topbar{gap:16px;height:70px;padding-inline:20px}.brand{min-width:170px}.brand>strong{font-size:17px}.brand-mark{width:32px;height:32px}.project-switcher{width:210px;min-width:210px;height:48px}.project-switcher small{font-size:10px}.project-name-input{font-size:14px}.save-indicator,.language-switcher{font-size:12px}.language-switcher,.icon-button{height:38px}.icon-button{width:38px}.secondary-action,.primary-action{height:40px;padding-inline:15px;font-size:13px}.runtime-service-trigger{height:34px;font-size:10px}.runtime-service-popover{width:320px}.runtime-service-heading strong{font-size:14px}.runtime-service-popover p,.runtime-service-popover label,.runtime-service-error,.runtime-service-status{font-size:10px}.runtime-service-popover input{height:34px;font-size:11px}.runtime-service-popover>small{font-size:8px}.runtime-source-heading strong{font-size:11px}.runtime-source-heading span,.runtime-source-actions .inspector-secondary-button,.runtime-source-interval,.runtime-source-interval select,.runtime-source-error{font-size:9px}.runtime-source-actions .inspector-secondary-button{min-height:36px}.runtime-history-list strong{font-size:10px}.runtime-history-list small{font-size:9px}.workspace{grid-template-columns:var(--library-width,300px) 10px minmax(0, 1fr) 10px var(--inspector-width,390px)}.panel-heading{flex-basis:76px;height:76px;padding:18px 18px 14px}.panel-heading span,.inspector-node-header span{font-size:10px}.panel-heading h2{font-size:16px}.panel-heading kbd{font-size:10px}.library-search{flex-basis:42px;height:42px;margin:0 14px 12px;padding-inline:12px}.library-search input{font-size:13px}.library-scroll{padding-inline:11px}.library-group-title{height:38px;padding-inline:8px;font-size:12px}.library-group-title small{font-size:10px}.library-items{gap:6px}.library-item{grid-template-columns:38px 1fr 16px;gap:10px;min-height:64px;padding:9px}.library-item-icon{width:36px;height:36px}.library-item strong{font-size:13px}.library-item small{font-size:10.5px}.library-tip{flex-basis:40px;height:40px;font-size:10.5px}.library-tip span{font-size:8px}.react-flow__pane{cursor:grab}.react-flow__pane:active{cursor:grabbing}.react-flow__node{cursor:grab}.react-flow__node:active{cursor:grabbing}.flow-node{width:242px}.node-heading strong{font-size:12px}.node-heading span{font-size:7.5px}.node-footer span{font-size:8.5px}.status-dot-label,.node-strategy-row,.node-dns-row{font-size:9px}.node-metric-row small,.node-chip-row span,.node-services button,.node-chip-row em{font-size:8px}.inspector-node-header{flex-basis:78px;grid-template-columns:38px 1fr 32px;gap:11px;min-height:78px;padding:12px 16px}.inspector-node-header .node-icon{width:38px;height:38px}.inspector-node-header h2{font-size:15px}.inspector-scroll{padding:18px 18px 34px}.inspector-field{gap:8px;margin-bottom:17px}.inspector-field>span,.section-label>span{gap:7px;font-size:12px}.inspector-field>span small{font-size:10px;line-height:1.35}.inspector-field input,.inspector-field select,.inspector-field textarea,.input-with-unit,.source-reference{border-radius:9px;min-height:42px;padding:0 12px;font-size:13px}.inspector-field textarea{resize:vertical;color:#343943;background:#fff;border:1px solid #dfe2e7;outline:0;width:100%;min-height:92px;padding-block:10px;line-height:1.5;transition:border-color .16s,box-shadow .16s}.inspector-field textarea:focus{border-color:var(--brand-border);box-shadow:0 0 0 3px var(--brand-focus)}.inspector-field input.is-invalid,.inspector-field textarea.is-invalid{background:snow;border-color:#d98c83}.inspector-field select{background-position:calc(100% - 16px) 18px,calc(100% - 12px) 18px}.toggle-row{min-height:52px;margin-bottom:17px}.toggle-row strong{font-size:12px}.toggle-row small{font-size:10px;line-height:1.35}.toggle-row.compact{min-height:42px;margin:8px 0}.metric-cards span,.processing-debug span{font-size:10px}.metric-cards strong,.processing-debug strong{font-size:17px}.inspector-secondary-button,.inspector-primary-button,.dashed-button,.danger-button{border-radius:9px;height:40px;font-size:12px}.advanced-panel summary{height:44px;font-size:12px}.source-reference{font-size:12px}.processing-debug{gap:8px;margin:16px 0 10px}.processing-debug>div{padding:11px 7px}.processing-issue{padding:10px 11px;font-size:11px}.processing-preview-actions button{min-height:38px;font-size:12px}.validation-banner{min-height:58px;padding:10px}.validation-banner span{font-size:10px}.validation-banner strong{font-size:11px}.statusbar{gap:15px;height:32px;padding-inline:12px;font-size:10.5px}.statusbar button{height:25px;font-size:10.5px}.segmented-control{background:#f4f5f7;border:1px solid #dfe2e7;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));padding:3px;display:grid}.segmented-control button{color:#777e89;background:0 0;border-radius:7px;min-height:34px;padding:0 8px;font-size:11px;font-weight:680}.segmented-control button:hover{color:var(--brand-foreground)}.segmented-control button.is-active{color:#285f8f;box-shadow:inset 0 -2px var(--brand), 0 1px 3px #1f232d1f;background:#fff}.segmented-control--two{grid-template-columns:repeat(2,minmax(0,1fr))}.region-combobox{background:#fff;border:1px solid #dfe2e7;border-radius:10px;padding:7px;position:relative}.region-combobox:focus-within{border-color:var(--brand-border);box-shadow:0 0 0 3px var(--brand-focus)}.region-combobox-input{align-items:center;display:flex}.region-combobox-input input{min-height:34px!important;box-shadow:none!important;border:0!important;padding:0 5px!important}.region-combobox-input svg{color:#9298a3}.region-chip-list{flex-wrap:wrap;gap:6px;padding-bottom:5px;display:flex}.region-chip-list>span{color:#416f59;background:#eaf4ee;border-radius:7px;align-items:center;gap:5px;min-height:28px;padding:3px 4px 3px 8px;font-size:11px;font-weight:680;display:inline-flex}.region-chip-list button{color:#6c9b83;background:0 0;border-radius:5px;place-items:center;width:22px;height:22px;display:grid}.region-chip-list button:hover{color:#356d54;background:#ffffffa6}.region-options{z-index:60;background:#fff;border:1px solid #d9dde4;border-radius:10px;gap:2px;max-height:232px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);left:-1px;right:-1px;overflow:auto;box-shadow:0 14px 34px #1f232d29}.region-options button{text-align:left;background:0 0;border-radius:7px;grid-template-columns:24px 1fr auto;align-items:center;gap:7px;min-height:38px;padding:0 9px;display:grid}.region-options button:hover,.region-options button.is-active{background:var(--brand-soft)}.region-options button span{font-size:17px}.region-options button strong{font-size:12px}.region-options button code{color:#6c7786;font-size:10px}.region-options-empty{color:#9198a4;text-align:center;padding:14px 10px;font-size:11px}.field-validation{border-radius:8px;align-items:flex-start;gap:7px;margin:-8px 0 14px;padding:9px 10px;font-size:11px;line-height:1.4;display:flex}.field-validation.is-error{color:#a84b44;background:#fff1ef}.inspector-empty h3{font-size:15px}.inspector-empty p{font-size:11px}.inspector-empty>div:last-child,.inspector-empty kbd{font-size:10px}.route-inspector-panel{padding:15px}.route-inspector-heading h3{font-size:15px}.route-inspector-heading span{font-size:9px}.route-inspector-intro{font-size:10px}.route-inspector-query .inspector-field input,.route-inspector-query .inspector-field select{height:36px;min-height:36px;font-size:11px}.route-inspector-empty,.route-inspector-blocked{font-size:10px}.route-inspector-result-header strong{font-size:12px}.route-inspector-detail>span,.route-inspector-targets>span,.route-inspector-rules summary{font-size:9px}.route-inspector-detail>strong{font-size:10px}.route-inspector-detail>small,.route-inspector-targets b,.route-inspector-targets em,.route-inspector-rules span,.route-inspector-rules small{font-size:9px}.route-inspector-rules strong{font-size:10px}.source-status-card.is-loading{background:#f3f8fc;border-color:#bed9ee}.source-status-card.is-failed{background:#fff7f5;border-color:#f0cfca}.source-timestamps{grid-template-columns:repeat(3,minmax(0,1fr))}.source-timestamps>div{min-width:0}.source-timestamps strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.status-dot-label.status-loading i{background:#4f8fbd;animation:1.1s ease-in-out infinite pulse-dot}@keyframes pulse-dot{50%{opacity:.35;transform:scale(.78)}}.runtime-inline-status{margin:8px 0 10px;display:flex}.diff-summary-button{color:#536476;font-variant-numeric:tabular-nums;text-align:left;background:#f8fafc;border:1px solid #dce3ea;border-radius:8px;align-items:center;gap:9px;width:100%;min-height:40px;margin:8px 0 12px;padding:0 11px;font-size:11px;display:flex}.diff-summary-button:hover{background:#f1f7fb;border-color:#b7cddd}.diff-summary-button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cache-privacy-note{color:#858f9d;margin:12px 1px 0;font-size:9.5px;line-height:1.55}.source-input-panel{gap:8px;margin-bottom:17px;display:grid}.source-input-panel .inspector-field{margin-bottom:0}.source-input-panel .node-links-input{min-height:150px;font-family:SFMono-Regular,Consolas,monospace;font-size:11px}.source-export-capability-hint{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);margin:-8px 0 17px}.config-file-picker{color:#526375;text-align:left;background:#f8fbfd;border:1px dashed #bdc9d6;border-radius:10px;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;width:100%;min-height:82px;margin-bottom:17px;padding:12px;display:grid}.config-file-picker:hover{border-color:var(--brand-border);background:#f1f8fd}.config-file-picker>svg{color:var(--brand-dark)}.config-file-picker>span{gap:4px;min-width:0;display:grid}.config-file-picker strong{color:#354456;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.config-file-picker small{color:#7f8b98;font-size:10px}.asset-icon{flex:none;position:relative;overflow:hidden}.asset-icon>span{place-items:center;width:100%;height:100%;display:grid}.asset-icon img{object-fit:contain;background:var(--asset-icon-background,#fff);width:100%;height:100%;display:block;position:absolute;inset:0}.asset-icon img[hidden],.asset-icon img.asset-icon-dark,:root[data-theme=dark] .asset-icon img:not(.asset-icon-dark){display:none}:root[data-theme=dark] .asset-icon img.asset-icon-dark:not([hidden]){display:block}.service-list{gap:8px;margin-bottom:10px}.service-list>div{border-radius:8px;grid-template-columns:38px minmax(0,1fr) 28px;gap:10px;min-height:58px;padding:8px 9px}.service-avatar{--asset-icon-background:#faeade;border-radius:8px;width:36px;height:36px;font-size:11px}.service-list>div>span:nth-child(2){gap:3px}.service-list strong{font-size:13.5px}.service-list small{font-size:11px}.service-list button{width:28px;height:28px}.service-picker{border-radius:9px;gap:8px;margin-bottom:14px;padding:8px}.service-picker-heading{grid-template-columns:minmax(0,1fr) 38px;gap:7px;display:grid}.service-search{border-radius:7px;gap:8px;min-height:40px;padding-inline:10px}.service-search input{padding-block:9px;font-size:12px}.service-picker-collapse{color:#6e7480;background:#fff;border:1px solid #e0e3e8;border-radius:7px;place-items:center;width:38px;height:40px;display:grid}.service-picker-collapse:hover{color:var(--brand-dark);border-color:var(--brand-border);background:var(--brand-soft)}.service-picker-options{gap:4px;max-height:260px}.service-picker-options button{border-radius:7px;grid-template-columns:36px minmax(0,1fr) 20px;gap:10px;min-height:54px;padding:7px 9px}.service-picker-options button>span:nth-child(2){gap:3px}.service-picker-options strong{font-size:13px}.service-picker-options button small,.service-picker-options>small{font-size:10.5px}.client-grid{gap:8px}.client-grid button{grid-template-columns:40px minmax(0,1fr);column-gap:10px;min-height:78px;padding:11px}.client-grid button>.client-icon{--asset-icon-background:#fff;color:#fff;background:#675ab1;border-radius:8px;grid-row:1/3;width:38px;height:38px;font-size:11px}.client-grid strong{overflow-wrap:anywhere;min-width:0;font-size:13.5px;line-height:1.2}.client-grid button.is-selected strong{padding-inline-end:12px}.client-grid small{letter-spacing:0;font-size:10.5px;font-weight:700}.client-grid button>svg.client-check{top:8px;right:8px}.mihomo-output-profile{padding-top:18px}.mihomo-output-profile>header{gap:11px;margin-bottom:17px}.mihomo-output-profile>header>span{gap:10px}.mihomo-output-profile>header strong{font-size:13px}.mihomo-output-profile>header small{font-size:10px}.mihomo-output-profile>header b{padding:4px 7px;font-size:9px}.output-preset-control{gap:8px}.output-preset-control button{border-radius:9px;gap:4px;min-height:72px;padding:10px 11px}.output-preset-control strong{font-size:12px}.output-preset-control small{font-size:9.5px}.mihomo-runtime-summary{margin:4px 0 8px}.mihomo-runtime-summary>div{gap:4px;padding:12px 6px}.mihomo-runtime-summary span{font-size:9px}.mihomo-runtime-summary strong{font-size:10.5px}.mihomo-profile-note{margin-bottom:15px;font-size:10px}.subscription-dialog-backdrop{z-index:420;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1f222a75;place-items:center;padding:28px;animation:.2s both backdrop-in;display:grid;position:fixed;inset:0}.confirmation-dialog{width:min(470px,100vw - 40px);animation:modal-in .2s var(--ease) both;background:#fff;border:1px solid #ffffffa3;border-radius:8px;justify-items:start;padding:24px;display:grid;box-shadow:0 24px 72px #15171e47}.confirmation-icon{color:#426f8e;background:#eaf3f8;border-radius:8px;place-items:center;width:38px;height:38px;margin-bottom:14px;display:grid}.confirmation-icon.is-warning{color:#a76437;background:#fff1e5}.confirmation-dialog h2{color:#293545;margin:0 0 8px;font-size:17px}.confirmation-dialog p{color:#697586;margin:0 0 8px;font-size:11.5px;line-height:1.55}.confirmation-dialog footer{justify-content:flex-end;gap:8px;width:100%;margin-top:18px;display:flex}.danger-action{color:#fff;background:#b34f49;border-radius:7px;min-height:40px;padding:0 14px;font-size:12px;font-weight:700}.danger-action:hover{background:#9f433e}.changes-preview{width:min(760px,100vw - 56px);max-height:min(720px,100vh - 56px);animation:modal-in .24s var(--ease) both;background:#f7f9fb;border:1px solid #ffffffa3;border-radius:8px;grid-template-rows:auto auto minmax(0,1fr) auto;display:grid;overflow:hidden;box-shadow:0 28px 80px #141d2c47}.changes-preview>header{background:#fff;border-bottom:1px solid #e1e5eb;grid-template-columns:38px 1fr 32px;align-items:center;gap:10px;padding:16px 18px;display:grid}.changes-preview>header>span{color:#426f8e;background:#eaf3f8;border-radius:8px;place-items:center;width:36px;height:36px;display:grid}.changes-preview h2{color:#293545;margin:0;font-size:16px}.changes-preview header p{color:#7b8695;font-variant-numeric:tabular-nums;margin:3px 0 0;font-size:10px}.changes-preview header button{color:#7a8594;background:0 0;border-radius:6px;place-items:center;width:32px;height:32px;display:grid}.changes-summary{border-bottom:1px solid #e2e6eb;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:12px 18px;display:grid}.changes-summary>div{background:#fff;border:1px solid #e0e5eb;border-radius:7px;grid-template-columns:24px 1fr auto;align-items:center;gap:6px;min-width:0;padding:8px 10px;display:grid}.changes-summary span{color:#55798f;font-weight:800}.changes-summary small{color:#7e8997;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.changes-summary strong{color:#334253;font-variant-numeric:tabular-nums;font-size:14px}.changes-list{min-height:0;padding:14px 18px 22px;overflow:auto}.changes-list>section{margin-bottom:16px}.changes-list h3{color:#526172;text-transform:uppercase;align-items:center;gap:7px;margin:0 0 7px;font-size:10px;display:flex}.changes-list h3 span{color:#728091;text-align:center;font-variant-numeric:tabular-nums;background:#e9edf1;border-radius:4px;min-width:20px;padding:2px 5px}.changes-list article{background:#fff;border-bottom:1px solid #e8ebef;grid-template-columns:minmax(160px,.8fr) 1.2fr;gap:12px;padding:10px 11px;display:grid}.changes-list article:first-of-type{border-radius:7px 7px 0 0}.changes-list article:last-child{border-bottom:0;border-radius:0 0 7px 7px}.changes-list article strong,.changes-list article small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.changes-list article strong{color:#334052;font-size:11px}.changes-list article small{color:#929aa6;margin-top:3px;font-size:9px}.changes-list ul{flex-wrap:wrap;gap:5px;margin:0;padding:0;list-style:none;display:flex}.changes-list li{color:#6d5f37;background:#fff4d9;border-radius:5px;padding:4px 6px;font-size:9px}.changes-empty{color:#7e8997;text-align:center;padding:42px 20px;font-size:11px}.changes-preview>footer{background:#fff;border-top:1px solid #e1e5eb;justify-content:flex-end;padding:10px 18px;display:flex}.product-view-switcher{border:1px solid var(--line);background:#f3f5f7;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;min-width:216px;padding:3px;display:grid}.product-view-switcher button{color:#717985;background:0 0;border-radius:6px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 10px;font-size:11px;font-weight:700;display:inline-flex}.product-view-switcher button:hover{color:var(--ink)}.product-view-switcher button.is-active{color:#285f8f;background:#fff;box-shadow:0 1px 3px #1c222c1f}.structured-workspace{isolation:isolate;background:var(--surface);grid-template-columns:224px minmax(0,1fr);min-width:0;min-height:0;display:grid;position:relative}.workspace-navigation{border-right:1px solid var(--line);background:#f8f9fb;flex-direction:column;min-width:0;min-height:0;padding:16px 11px 12px;display:flex}.workspace-target-summary{border-bottom:1px solid var(--line);color:#467b60;text-align:left;background:0 0;align-items:center;gap:10px;width:calc(100% - 10px);min-height:58px;margin:0 5px 13px;padding:10px;display:flex}.workspace-target-summary>svg:last-child{color:#929aa5;margin-left:auto}.workspace-target-summary>span{gap:2px;min-width:0;display:grid}.workspace-target-summary small{color:#8b939f;font-size:9px;font-weight:700}.workspace-target-summary strong{color:#354052;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.workspace-navigation-items{gap:3px;display:grid}.workspace-navigation-items button,.visual-flow-link{color:#69717f;text-align:left;background:0 0;border-radius:7px;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-height:42px;padding:0 10px;font-size:12px;display:grid}.workspace-navigation-items button:hover,.visual-flow-link:hover{color:#354052;background:#eef1f4}.workspace-navigation-items button.is-active{color:#285f8f;background:#eaf4fc;box-shadow:inset 0 0 0 1px #cfe3f3}.workspace-navigation-items button small{color:#87909d;font-variant-numeric:tabular-nums;text-align:center;background:#ffffffb3;border-radius:5px;min-width:22px;padding:2px 5px;font-size:9px}.visual-flow-link{border-top:1px solid var(--line);border-radius:0;margin-top:auto;padding-top:9px}.workspace-content{background:#fff;min-width:0;min-height:0;overflow:auto}.workspace-content-header{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:20px;min-height:92px;padding:20px clamp(22px,3vw,42px);display:flex}.workspace-content-header>div:first-child{gap:4px;min-width:0;display:grid}.workspace-content-header h1{color:#263241;margin:0;font-size:20px;font-weight:740}.workspace-target-context{color:#7e8997;background:0 0;justify-self:start;align-items:center;gap:4px;padding:0;font-size:11px;display:inline-flex}.workspace-target-context:hover{color:#356b94}.workspace-content-header>div:last-child{gap:8px;display:flex}.workspace-section-body{width:min(1100px,100%);padding:24px clamp(22px,3vw,42px) 48px}.workspace-row-list{border-top:1px solid var(--line)}.workspace-node-row{border-bottom:1px solid var(--line);grid-template-columns:34px minmax(0,1fr) auto 38px auto;align-items:center;gap:12px;min-height:68px;padding:9px 8px;display:grid}.workspace-node-row>svg{color:#657587}.workspace-node-row>span{gap:4px;min-width:0;display:grid}.workspace-node-row>span strong{color:#334052;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.workspace-node-row>span small{color:#858f9d;text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;overflow:hidden}.workspace-node-row>b{color:#586779;font-variant-numeric:tabular-nums;font-size:11px}.workspace-node-row .icon-button{width:34px;height:34px}.row-action{border:1px solid var(--line-strong);color:#536173;white-space:nowrap;background:#fff;border-radius:7px;min-width:48px;min-height:34px;padding:0 11px;font-size:11px;font-weight:700}.row-action:hover{border-color:var(--brand-border);color:#285f8f;background:var(--brand-soft)}.routing-workspace-row{grid-template-columns:34px minmax(0,1fr) auto auto}.routing-workspace-row>b{color:#98643e;background:#fff2e9;border-radius:7px;place-items:center;width:28px;height:28px;display:grid}.routing-workspace-row.is-final>b{color:#4e7d62;background:#eaf5ee}.routing-workspace-row>i{color:#7e8793;font-size:10px;font-style:normal;font-weight:700}.routing-order-actions{gap:2px;display:flex}.workspace-proxy-table{border-top:1px solid var(--line);min-width:680px}.workspace-proxy-table>div{border-bottom:1px solid var(--line);color:#667386;grid-template-columns:minmax(190px,1.3fr) .65fr .45fr minmax(160px,1fr) .7fr;align-items:center;gap:14px;min-height:52px;padding:8px 10px;font-size:11px;display:grid}.workspace-proxy-table>div.is-heading{color:#929aa6;background:#f7f8fa;min-height:36px;font-size:9px;font-weight:800}.workspace-proxy-table strong{color:#334052;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.workspace-proxy-table code{color:#526174;font-size:10px}.workspace-proxy-table b{border-radius:5px;justify-self:start;padding:4px 7px;font-size:9px}.workspace-proxy-table b.is-supported{color:#347b59;background:#eaf5ee}.workspace-proxy-table b.is-partial,.workspace-proxy-table b.is-unknown{color:#95612f;background:#fff3e5}.workspace-proxy-table b.is-unsupported{color:#a84944;background:#fff0ee}.workspace-proxy-table b.is-target-native{color:#5b54a3;background:#f0eef9}.workspace-issue-list{border-top:1px solid var(--line)}.workspace-issue-list article{border-bottom:1px solid var(--line);color:#b46543;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:66px;padding:10px 8px;display:grid}.workspace-issue-list article>span{gap:4px;min-width:0;display:grid}.workspace-issue-list strong{color:#5b4b45;font-size:11px}.workspace-issue-list small{color:#87766f;font-size:10px;line-height:1.45}.workspace-issue-list button{color:#7c543f;background:0 0;padding:6px 0;font-size:10px;font-weight:750}.workspace-empty-state{color:#8b95a2;place-content:center;justify-items:center;gap:12px;min-height:220px;display:grid}.workspace-empty-state svg{color:#7e9cb4}.workspace-empty-state strong{font-size:13px}.workspace-export-summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:#44765b;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:16px;min-height:164px;padding:20px 2px;display:grid}.workspace-export-summary>div{gap:4px;display:grid}.workspace-export-summary span{color:#8a939f;font-size:9px;font-weight:750}.workspace-export-summary h2{color:#303d4d;margin:0;font-size:18px}.workspace-export-summary p{margin:3px 0 0;font-size:11px;font-weight:700}.workspace-export-summary p.is-ready{color:#3e8a62}.workspace-export-summary p.is-blocked{color:#b4564e}.workspace-add-menu{position:relative}.workspace-add-menu>.primary-action svg:last-child{transition:transform .16s var(--ease);margin-left:2px}.workspace-add-menu>.primary-action[aria-expanded=true] svg:last-child{transform:rotate(180deg)}.workspace-add-options{z-index:35;border:1px solid var(--line-strong);background:#fff;border-radius:8px;width:min(320px,100vw - 32px);padding:6px;position:absolute;top:calc(100% + 7px);right:0;overflow:hidden;box-shadow:0 14px 34px #1f273329}.workspace-add-options>button{color:#5e6b7a;text-align:left;background:0 0;border-radius:6px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:9px;width:100%;min-height:54px;padding:7px 9px;display:grid}.workspace-add-options>button:hover:not(:disabled){color:#2c3949;background:#f3f6f8}.workspace-add-options>button:disabled{opacity:.48;cursor:not-allowed}.workspace-add-options>button>span{gap:3px;min-width:0;display:grid}.workspace-add-options strong{color:#344254;font-size:12px}.workspace-add-options small{color:#87909d;text-overflow:ellipsis;white-space:nowrap;font-size:9.5px;overflow:hidden}.workspace-add-separator{background:var(--color-border);height:1px;margin:4px 8px}.workspace-editor-backdrop{z-index:60;background:#1e242d47;justify-content:flex-end;display:flex;position:absolute;inset:0}.workspace-editor-panel{width:min(440px,100%);min-width:0;min-height:0;animation:workspace-editor-in .18s var(--ease) both;background:#fbfbfc;flex-direction:column;display:flex;box-shadow:-14px 0 34px #191f282e}.workspace-editor-toolbar{border-bottom:1px solid var(--line);background:#fff;flex:none;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:9px 12px 9px 16px;display:flex}.workspace-editor-toolbar>div:first-child{gap:2px;min-width:0;display:grid}.workspace-editor-toolbar>div:first-child span{color:#939ba7;font-size:9px;font-weight:750}.workspace-editor-toolbar>div:first-child strong{color:#344153;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.workspace-editor-toolbar>div:last-child{align-items:center;gap:5px;display:flex}.workspace-editor-toolbar button{color:#657284;background:0 0;border-radius:7px;justify-content:center;align-items:center;gap:6px;min-width:36px;min-height:36px;padding-inline:9px;font-size:10px;font-weight:700;display:inline-flex}.workspace-editor-toolbar button:hover{color:#2f628d;background:#edf5fb}.workspace-input-editor{border-bottom:1px solid var(--line);background:#f7f9fa;flex:none;gap:9px;padding:12px 16px;display:grid}.workspace-input-editor>div:first-child{gap:2px;display:grid}.workspace-input-editor>div:first-child strong{color:#4b5868;font-size:11px}.workspace-input-editor>div:first-child small,.workspace-input-editor>span{color:#87919e;font-size:9px;line-height:1.45}.workspace-input-editor select{border:1px solid var(--line-strong);color:#354254;background:#fff;border-radius:7px;width:100%;min-height:36px;padding:0 10px;font-size:11px}.workspace-input-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-height:132px;display:grid;overflow:auto}.workspace-input-options label{border:1px solid var(--line);color:#536173;background:#fff;border-radius:6px;align-items:center;gap:7px;min-width:0;min-height:36px;padding:6px 8px;font-size:10px;display:flex}.workspace-input-options label span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.workspace-editor-panel>.inspector{z-index:auto;flex:auto;min-height:0}@keyframes workspace-editor-in{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}.target-switch-backdrop{z-index:70;background:#1e242d61;place-items:center;padding:22px;display:grid;position:absolute;inset:0}.target-switch-dialog{width:min(690px,100%);max-height:calc(100% - 12px);animation:modal-in .18s var(--ease) both;background:#fff;border-radius:8px;overflow:auto;box-shadow:0 24px 64px #181e2747}.target-switch-dialog>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;min-height:76px;padding:15px 20px;display:flex}.target-switch-dialog>header>div{gap:3px;display:grid}.target-switch-dialog>header span{color:#8c96a3;font-size:9px;font-weight:750}.target-switch-dialog h2{color:#2e3a4a;margin:0;font-size:18px}.target-switch-dialog>header button{color:#788492;background:0 0;border-radius:7px;place-items:center;width:36px;height:36px;display:grid}.target-switch-dialog>header button:hover{background:#f1f3f5}.target-switch-dialog>p{color:#737f8e;margin:0;padding:16px 20px 4px;font-size:11px;line-height:1.55}.target-switch-options{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:10px;padding:14px 20px;display:grid}.target-switch-options>button{border:1px solid var(--line-strong);color:#536173;text-align:left;background:#fff;border-radius:8px;grid-template-columns:50px minmax(0,1fr) auto;align-items:start;gap:12px;min-width:0;min-height:164px;padding:14px;display:grid}.target-switch-options>button:hover{background:#f8fbfd;border-color:#b8d4e8}.target-switch-options>button.is-selected{border-color:var(--brand-border);background:var(--brand-soft);box-shadow:0 0 0 2px var(--brand-focus)}.target-switch-options>button>i{color:#55738d;font-size:9px;font-style:normal;font-weight:750}.workspace-target-icon{--asset-icon-background:#fff;border-radius:8px;width:48px;height:48px}.workspace-target-status{grid-template-columns:minmax(0,1fr) auto;gap:6px 8px;min-width:0;display:grid}.workspace-target-status>span{gap:4px;min-width:0;display:grid}.workspace-target-status>span strong{color:#344152;font-size:14px}.workspace-target-status>span small,.workspace-target-status>small{color:#87919e;font-size:9px}.workspace-target-status>b{border-radius:5px;align-self:start;align-items:center;gap:4px;padding:4px 6px;font-size:9px;display:inline-flex}.workspace-target-status>b.is-ready{color:#337853;background:#eaf5ee}.workspace-target-status>b.is-loading{color:#7d6a39;background:#fff4dc}.workspace-target-status>b.is-blocked{color:#a64d46;background:#fff0ee}.workspace-target-status>small,.workspace-target-status>div{grid-column:1/-1}.workspace-target-status>div{flex-wrap:wrap;gap:4px;display:flex}.workspace-target-status code{color:#936057;background:#fff1ef;border-radius:4px;padding:3px 5px;font-size:8px}.target-switch-dialog>aside{color:#55745f;background:#eef6f1;align-items:flex-start;gap:8px;margin:0 20px 15px;padding:10px 12px;font-size:10px;line-height:1.45;display:flex}.target-switch-dialog>aside svg{flex:none}.target-switch-dialog>footer{border-top:1px solid var(--line);justify-content:flex-end;gap:8px;padding:14px 20px;display:flex}.target-switch-dialog>aside.target-product-paused{color:var(--color-warning);background:var(--color-warning-soft)}.target-product-paused span{gap:2px;display:grid}.target-product-paused strong{color:inherit;font-size:11px}.workspace-target-exports{border-top:1px solid var(--line)}.workspace-target-exports>article{border-bottom:1px solid var(--line);grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:16px;min-height:150px;padding:18px 8px;display:grid}.workspace-target-exports>article.is-primary{background:linear-gradient(90deg,#f6fbfe,#fff 36%)}.workspace-target-export-actions{justify-items:end;gap:8px;display:grid}.workspace-target-export-actions>span{color:#2e6a92;background:#eaf4fb;border-radius:4px;padding:3px 6px;font-size:8px;font-weight:800}.workspace-target-export-actions button{min-width:140px}.workspace-target-paused{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid color-mix(in srgb, var(--color-warning) 28%, var(--color-border));border-radius:var(--radius-card);color:var(--color-warning);background:var(--color-warning-soft);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.workspace-target-paused>div{gap:var(--space-1);min-width:0;display:grid}.workspace-target-paused strong{font-size:var(--text-body-size);line-height:var(--text-body-line)}.workspace-target-paused p{color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);margin:0}.new-project-backdrop{z-index:500;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1c202880;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.new-project-dialog{width:min(660px,100vw - 40px);max-height:calc(100vh - 40px);animation:modal-in .2s var(--ease) both;background:#fff;border-radius:8px;overflow:auto;box-shadow:0 26px 76px #1218224d}.new-project-dialog>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;min-height:86px;padding:18px 22px;display:flex}.new-project-dialog>header>div{gap:4px;display:grid}.new-project-dialog header span{color:#7f8c99;font-size:10px;font-weight:750}.new-project-dialog h2{color:#293646;margin:0;font-size:19px}.new-project-dialog header>button{color:#7c8795;background:0 0;border-radius:7px;place-items:center;width:36px;height:36px;display:grid}.new-project-dialog header>button:hover{background:#f1f3f5}.target-choice-list{gap:10px;padding:22px;display:grid}.target-choice-list>button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:8px;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:88px;padding:14px;display:grid}.target-choice-list>button:hover{background:#f8fbfd;border-color:#b6d2e8}.target-choice-list>button.is-selected{border-color:var(--brand-border);background:var(--brand-soft);box-shadow:0 0 0 2px var(--brand-focus)}.target-choice-icon{--asset-icon-background:#fff;border-radius:8px;width:50px;height:50px}.target-choice-list button>span:nth-child(2){gap:5px;min-width:0;display:grid}.target-choice-list strong{color:#303d4d;font-size:15px}.target-choice-list small{color:#7e8996;font-size:10px}.target-choice-list i{color:#59728a;font-size:10px;font-style:normal;font-weight:750}.source-choice-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:22px;display:grid}.source-choice-list button{border:1px solid var(--line);color:#526172;text-align:left;background:#fff;border-radius:8px;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:11px;min-height:92px;padding:14px;display:grid}.source-choice-list button:hover{background:#f8fbfd;border-color:#b6d2e8}.source-choice-list button.is-selected{border-color:var(--brand-border);background:var(--brand-soft);box-shadow:0 0 0 2px var(--brand-focus)}.source-choice-list button>span{color:#3d739f;background:#e7f2fb;border-radius:7px;place-items:center;width:36px;height:36px;display:grid}.source-choice-list strong{font-size:12px}.new-project-dialog>footer{border-top:1px solid var(--line);align-items:center;gap:9px;min-height:70px;padding:14px 22px;display:flex}.new-project-dialog>footer>span{flex:1}}@layer utilities{@media (width<=1320px){.brand{min-width:150px}.save-indicator{font-size:0}.save-indicator span{margin-right:3px}.language-switcher{justify-content:center;width:32px;padding:0}.language-switcher span,.language-switcher>svg:last-child{display:none}.flow-node{width:222px}.refresh-all-action{justify-content:center;width:40px;padding:0}.refresh-all-action span{display:none}}@media (width<=1100px){.topbar{gap:10px;padding-inline:12px}.brand{min-width:126px}.brand>strong{font-size:16px}.version-mark{display:none}.project-switcher-wrap{flex:0 190px;min-width:0}.project-switcher{width:100%;min-width:0}.product-view-switcher{min-width:190px}.top-actions .runtime-service-wrap,.top-actions .top-action-group,.top-actions .refresh-all-action,.top-actions .secondary-action{display:none}.workspace-content-header,.workspace-section-body{padding-inline:24px}}@media (width<=820px){.app-shell{grid-template-rows:160px minmax(0,1fr) 32px}.topbar{grid-template-rows:52px 48px 44px;grid-template-columns:auto minmax(0,1fr) auto;align-content:center;gap:4px 8px;height:auto;min-height:160px;padding-block:4px;display:grid}.brand{grid-area:1/1;min-width:0}.project-switcher-wrap{grid-area:2/1/auto/-1;width:100%;max-width:none}.project-switcher{height:44px}.language-switcher-wrap{grid-area:1/2;justify-self:end}.top-actions{grid-area:1/3;justify-self:end}.top-actions .top-action-group,.top-actions .refresh-all-action,.top-actions .secondary-action{display:none}.top-actions .primary-action{height:36px;padding-inline:10px;font-size:11px}.product-view-switcher{grid-area:3/1/auto/-1;width:100%;min-width:0}.top-actions .runtime-service-wrap{display:block}.top-actions .runtime-service-trigger{justify-content:center;width:36px;padding:0;font-size:0}.top-actions .runtime-service-popover{width:min(320px,100vw - 24px);position:fixed;top:58px;right:12px}.top-actions .runtime-service-popover .secondary-action{display:inline-flex}.workspace{grid-template-columns:minmax(0,1fr)}.workspace>.block-library,.workspace>.inspector,.workspace>.panel-resizer{display:none}.workspace>.canvas-region{grid-column:1}.structured-workspace{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.workspace-navigation{border-right:0;border-bottom:1px solid var(--line);min-height:auto;padding:7px 8px;display:block}.workspace-target-summary,.visual-flow-link{display:none}.workspace-navigation-items{scrollbar-width:none;gap:4px;display:flex;overflow-x:auto}.workspace-navigation-items::-webkit-scrollbar{display:none}.workspace-navigation-items button{grid-template-columns:18px auto auto;width:auto;min-width:max-content;min-height:38px;padding-inline:10px}.workspace-content-header{min-height:82px;padding:14px 18px}.workspace-content-header h1{font-size:18px}.workspace-content-header>div:last-child{flex-wrap:wrap;justify-content:flex-end}.workspace-section-body{width:100%;padding:16px 18px 36px;overflow-x:auto}.workspace-node-row{grid-template-columns:30px minmax(0,1fr) 36px auto;gap:8px}.workspace-node-row>b{display:none}.routing-workspace-row{grid-template-columns:30px minmax(0,1fr) auto auto}.routing-workspace-row>b{display:grid}.routing-workspace-row>i,.statusbar .status-hint{display:none}}@media (width<=520px){.brand>strong{font-size:15px}.language-switcher-wrap{display:none}.topbar{grid-template-columns:minmax(0,1fr) auto}.top-actions{grid-column:2}.top-actions .primary-action{max-width:116px}.workspace-content-header{flex-direction:column;align-items:flex-start;gap:11px}.workspace-content-header>div:last-child{justify-content:flex-start;width:100%}.workspace-content-header .secondary-action,.workspace-content-header .primary-action{height:auto;min-height:38px;padding:7px 10px;font-size:11px}.workspace-section-body{padding-inline:12px}.workspace-node-row{min-height:64px;padding-inline:4px}.workspace-node-row>span small{font-size:9.5px}.row-action{padding-inline:8px}.source-choice-list{grid-template-columns:1fr}.new-project-backdrop{padding:12px}.new-project-dialog{width:100%;max-height:calc(100vh - 24px)}.new-project-dialog>header,.new-project-dialog>footer,.target-choice-list,.source-choice-list{padding-inline:15px}.target-choice-list>button{grid-template-columns:44px minmax(0,1fr)}.target-choice-icon{width:42px;height:42px}.target-choice-list i{grid-column:2}.workspace-export-summary{grid-template-columns:36px minmax(0,1fr)}.workspace-export-summary>button{grid-column:1/-1;justify-self:stretch}.workspace-editor-panel{width:100%}.workspace-editor-toolbar button span{display:none}.workspace-input-options{grid-template-columns:1fr}.target-switch-backdrop{padding:10px}.target-switch-dialog{max-height:calc(100% - 4px)}.target-switch-options{grid-template-columns:1fr;padding-inline:14px}.target-switch-options>button{min-height:132px}.target-switch-dialog>header,.target-switch-dialog>footer,.target-switch-dialog>p{padding-inline:14px}.target-switch-dialog>aside{margin-inline:14px}.workspace-target-exports>article{grid-template-columns:48px minmax(0,1fr);padding-inline:6px}.workspace-target-export-actions{grid-column:1/-1;justify-items:stretch}.workspace-target-export-actions button{width:100%}.statusbar>span:not(.status-spacer){display:none}}@media (prefers-reduced-motion:reduce){.spin,.saving-dot,.react-flow__edge.animated path{animation:none!important}.workspace-editor-panel,.primary-action,.secondary-action,.ui-button,.ui-icon-button,.flow-node,.react-flow__edge-path{transition:none!important}}}@layer ui2{.workspace-card-body{width:100%;min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;padding:0}.workspace-card-body:focus-visible,.routing-rule-summary:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;border-radius:var(--radius-small)}.workspace-strategy-main{min-width:0}.workspace-item-menu-trigger{width:var(--icon-button-size);height:var(--icon-button-size)}.workspace-item-menu{z-index:1100;width:220px;padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-floating);gap:2px;display:grid}.workspace-item-menu>button{align-items:center;gap:var(--space-2);min-height:38px;padding:0 var(--space-3);border-radius:var(--radius-small);color:var(--color-text-secondary);font-size:var(--text-body-size);text-align:left;background:0 0;display:flex}.workspace-item-menu>button:hover,.workspace-item-menu>button:focus-visible{color:var(--color-text);background:var(--color-surface-subtle)}.workspace-item-menu>button.danger{color:var(--color-danger)}.workspace-item-delete-confirm{gap:var(--space-2);padding:var(--space-2);display:grid}.workspace-item-delete-confirm strong{font-size:var(--text-body-size)}.workspace-item-delete-confirm p{color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);margin:0}.workspace-item-delete-confirm>div{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.workspace-item-delete-confirm button{min-height:var(--control-height);border-radius:var(--radius-control);color:var(--color-text-secondary);background:var(--color-surface-subtle)}.workspace-item-delete-confirm button.danger{color:#fff;background:var(--color-danger)}.service-picker-trigger{width:100%;margin-bottom:var(--space-3)}.service-picker-popover{z-index:1100;border-color:var(--color-border);background:var(--color-surface);min-height:0;box-shadow:var(--shadow-floating);grid-template-rows:auto minmax(0,1fr);margin:0;display:grid;overflow:hidden}.service-picker-popover .service-picker-options{overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;min-height:0;max-height:none;overflow:hidden auto}.service-picker-options button:disabled{opacity:.58;cursor:default}.service-picker-options button[aria-selected=true]{color:var(--color-primary);background:var(--color-primary-soft)}.section-label>small{color:var(--color-text-muted);font-size:var(--text-meta-size)}.source-export-status{gap:var(--space-2);margin:calc(-1 * var(--space-2)) 0 var(--space-4);display:grid}.source-export-status>span{color:var(--color-text-secondary);font-size:var(--text-meta-size);font-weight:600}.source-export-status>div{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-subtle);display:grid}.source-export-status header{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.source-export-status header strong,.source-export-status header b{font-size:var(--text-meta-size)}.source-export-status [data-status=native] header b{color:var(--color-success)}.source-export-status [data-status=mixed] header b{color:var(--color-info)}.source-export-status [data-status=materialized] header b{color:var(--color-text-secondary)}.source-export-status [data-status=unsupported]{border-color:color-mix(in srgb, var(--color-danger) 40%, var(--color-border));background:var(--color-danger-soft)}.source-export-status [data-status=unsupported] header b{color:var(--color-danger)}.source-export-status ul{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.source-export-status li{gap:var(--space-2);grid-template-columns:minmax(72px,.45fr) minmax(0,1fr);min-width:0;display:grid}.source-export-status li span{color:var(--color-text);font-size:var(--text-meta-size);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.source-export-status li small{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.source-export-status p{gap:var(--space-2);color:var(--color-danger);font-size:var(--text-meta-size);margin:0;display:flex}.workspace-health-technical{margin-top:var(--space-2)}.workspace-health-technical summary{width:max-content;color:var(--color-text-muted);cursor:pointer;font-size:var(--text-meta-size)}.workspace-health-technical>code,.workspace-health-technical>div{margin-top:var(--space-1)}.workspace-health-technical>div{gap:var(--space-2);grid-template-columns:max-content minmax(0,1fr);display:grid}.workspace-health-technical code{color:var(--color-text-muted);font-size:var(--text-code-size)}.workspace-health-technical small{color:var(--color-text-secondary)}@media (width>=1024px){.workspace-content-header h1{font-size:var(--text-page-size);line-height:var(--text-page-line)}.workspace-navigation-items button{min-height:40px;font-size:var(--text-body-size)}.primary-action,.secondary-action,.row-action{min-height:var(--control-height);font-size:var(--text-body-size)}.workspace-processing-step{grid-template-columns:minmax(0,1fr) 44px auto}.topbar .top-export-action{display:none}}@media (width<=767px){.workspace-processing-step{grid-template-columns:minmax(0,1fr) 44px}.workspace-processing-body{grid-column:1/-1}.workspace-compact-toggle{grid-column:1}.workspace-step-actions{grid-column:2}.workspace-strategy-body{grid-template-columns:40px minmax(0,1fr)}.workspace-strategy-meta{grid-column:2}.workspace-item-menu-trigger{width:var(--touch-target);height:var(--touch-target)}.source-export-status li{grid-template-columns:1fr;gap:1px}}.preview-ir-short{display:none}.web-select-trigger{width:100%;min-width:0;height:var(--control-height);justify-content:space-between;align-items:center;gap:var(--space-2);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);color:var(--color-text-secondary);background:var(--color-surface);font-size:var(--text-meta-size);line-height:var(--text-meta-line);text-align:left;cursor:pointer;font-weight:500;display:flex}.web-select-trigger>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.web-select-trigger>svg{transition:transform .14s var(--ease-standard);flex:none}.web-select-trigger:hover{color:var(--color-text);border-color:var(--color-text-muted);background:var(--color-surface-subtle)}.web-select-trigger.is-open{color:var(--color-text);border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.web-select-trigger.is-open>svg{transform:rotate(180deg)}.web-select-trigger:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.web-select-trigger:disabled{cursor:not-allowed;opacity:.52}.web-select-popover{z-index:1000;overscroll-behavior:contain;min-width:0;padding:var(--space-1);border:1px solid var(--color-border);color:var(--color-text);background:var(--color-surface);animation:web-select-in .14s var(--ease-standard) both;border-radius:10px;position:fixed;overflow-y:auto;box-shadow:0 10px 28px #222a3724}.web-select-popover:focus{outline:none}.web-select-popover>button{justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;min-width:0;min-height:38px;padding:var(--space-2) var(--space-3);color:var(--color-text-secondary);font-size:var(--text-body-size);line-height:var(--text-body-line);text-align:left;background:0 0;border-radius:7px;display:flex}.web-select-popover>button>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.web-select-popover>button>svg{color:var(--color-primary);flex:none}.web-select-popover>button.is-active{color:var(--color-text);background:var(--color-surface-subtle)}.web-select-popover>button.is-selected{color:var(--color-primary);font-weight:600}.web-select-popover>button:disabled{opacity:.45}@keyframes web-select-in{0%{opacity:.72;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.workspace-filter-select{min-width:0}.workspace-filter-select .web-select-trigger{height:var(--control-height)}.workspace-input-editor>.web-select-trigger{width:100%}.runtime-source-interval .web-select-trigger{height:30px;min-height:30px}.dns-resolver-fields .web-select-trigger{height:36px;min-height:36px}.nodes-preview-mobile-meta{display:none}.region-combobox{gap:var(--space-2);padding:var(--space-2);display:grid}.region-selection-summary{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:28px;padding:0 var(--space-1);display:flex}.region-selection-summary>span{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);font-variant-numeric:tabular-nums}.region-selection-summary>button{min-height:28px;padding:0 var(--space-2);border-radius:var(--radius-small);color:var(--color-primary);font-size:var(--text-meta-size);background:0 0;font-weight:600}.region-selection-summary>button:hover{background:var(--color-primary-soft)}.region-combobox-input{min-height:var(--control-height);gap:var(--space-2);padding:0 var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-control)}.region-combobox-input input{flex:1;min-width:0;min-height:calc(var(--control-height) - 2px)!important;padding:0!important}.region-options{overscroll-behavior:contain;max-height:264px;box-shadow:none;border:0;gap:2px;padding:0;display:grid;position:static;overflow-y:auto}.region-options>button{align-items:center;gap:var(--space-2);min-height:42px;padding:var(--space-2);color:var(--color-text-secondary);text-align:left;background:0 0;border-radius:7px;grid-template-columns:24px minmax(0,1fr) auto 18px;display:grid}.region-options>button strong{min-width:0;color:var(--color-text);font-size:var(--text-body-size);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.region-options>button code{color:var(--color-text-muted);font-size:var(--text-meta-size)}.region-options>button>svg{color:var(--color-primary)}.region-options>button.is-active{background:var(--color-surface-subtle)}.region-options>button.is-selected{color:var(--color-primary);background:var(--color-primary-soft)}.region-options>button.is-selected strong{font-weight:600}.custom-rule-source-icon-field{gap:var(--space-2);display:grid}.custom-rule-source-icon-field>span{color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);font-weight:600}.custom-rule-source-icon{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.custom-rule-source-icon-preview{flex:0 0 32px;width:32px;height:32px}.custom-rule-source-icon .inspector-secondary-button{width:auto;min-height:34px;padding-inline:var(--space-3)}@media (width<=1023px){body input:not([type]),body input[type=text],body input[type=search],body input[type=url],body input[type=email],body input[type=password],body input[type=number],body textarea{font-size:16px!important}}@media (width<=767px){.preview-ir-short{display:inline}.preview-ir-long{display:none}.web-select-trigger{min-height:var(--touch-target);height:var(--touch-target);padding-inline:10px;font-size:13px}.web-select-popover>button{min-height:var(--touch-target);font-size:14px}.workspace-proxy-filters{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr))}.workspace-proxy-filters .workspace-search-field,.workspace-proxy-filters .workspace-clear-filters{grid-column:1/-1}.workspace-proxy-filters .workspace-clear-filters{justify-self:stretch}.workspace-filter-select .web-select-trigger{min-width:0;padding-inline:8px}.custom-rule-source{min-width:0;padding:var(--space-3)}.custom-rule-source-upload{min-width:0;min-height:var(--touch-target);overflow:hidden}.custom-rule-source-upload span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.custom-rule-source-icon .inspector-secondary-button{min-height:40px}.region-options{max-height:292px}.region-options>button{min-height:var(--touch-target)}.nodes-preview-backdrop{background:var(--color-surface);-webkit-backdrop-filter:none;backdrop-filter:none;padding:0;display:block}.nodes-preview{width:100%;max-width:none;height:100dvh;max-height:none;box-shadow:none;border:0;border-radius:0;grid-template-rows:auto auto minmax(0,1fr) auto}.nodes-preview>header{min-width:0;padding:calc(var(--space-3) + env(safe-area-inset-top)) var(--space-4) var(--space-3)}.nodes-preview>header>div{min-width:0}.nodes-preview>header h2{margin-top:1px;font-size:20px;line-height:1.25}.nodes-preview>header p{text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.45;overflow:hidden}.nodes-preview>header button{width:var(--touch-target);height:var(--touch-target);flex:0 0 var(--touch-target);place-items:center;display:grid}.nodes-preview-filters{gap:var(--space-2);padding:var(--space-2) var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr))}.nodes-preview-filters>label{min-width:0;min-height:var(--touch-target);grid-column:1/-1}.nodes-preview-filters .web-select-trigger{padding-inline:8px}.nodes-preview-table{align-content:start;gap:var(--space-2);min-width:0;padding:var(--space-3);background:var(--color-surface-subtle);display:grid}.nodes-preview-row.is-heading{display:none}.nodes-preview-row{gap:var(--space-2) var(--space-3);min-width:0;min-height:0;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-card);color:var(--color-text-secondary);background:var(--color-surface);grid-template-columns:minmax(0,1fr) auto;font-size:12px;display:grid}.nodes-preview-name{grid-column:1;min-width:0}.nodes-preview-name strong{font-size:14px;line-height:1.35}.nodes-preview-name small{font-size:12px}.nodes-preview-protocol,.nodes-preview-region,.nodes-preview-server,.nodes-preview-port,.nodes-preview-security{display:none!important}.nodes-preview-row .node-parse-status{white-space:nowrap;grid-area:1/2;align-self:start;overflow:visible}.nodes-preview-mobile-meta{justify-content:space-between;align-items:center;gap:var(--space-3);grid-column:1/-1;min-width:0;display:flex;overflow:visible!important}.nodes-preview-mobile-meta>span{color:var(--color-text-secondary);font-size:12px}.nodes-preview-mobile-meta>small{min-width:0;color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:11px;overflow:hidden}.node-issue-details{margin:calc(var(--space-2) * -1) 0 0;border-radius:var(--radius-control)}.nodes-preview-empty{padding:var(--space-6) var(--space-4)}.nodes-preview>footer{gap:var(--space-3);min-height:60px;padding:var(--space-2) var(--space-3) calc(var(--space-2) + env(safe-area-inset-bottom))}.nodes-preview>footer>span{min-width:0;line-height:1.4}.nodes-preview>footer button{min-width:92px;min-height:var(--touch-target)}.preview-body{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr}.preview-body>aside{gap:var(--space-1);min-height:0;padding:var(--space-2) var(--space-3);border-right:0;border-bottom:1px solid var(--color-border);grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:visible}.preview-body>aside>span,.preview-body>aside>.preview-subheading,.preview-body>aside>button:disabled,.preview-body .preview-compatibility-summary,.preview-body .preview-stats{display:none}.preview-body aside button{min-width:0;min-height:var(--touch-target);height:var(--touch-target);border-radius:7px;grid-template-columns:22px minmax(0,1fr) 12px;gap:5px;padding:5px 7px}.preview-body aside button>b{border-radius:5px;width:22px;height:22px}.preview-body aside button>b img{width:19px;height:19px}.preview-body aside button>div{min-width:0}.preview-body aside button strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;display:block;overflow:hidden}.preview-body aside button small{display:none}.code-panel{min-width:0}.code-toolbar{min-width:0;min-height:38px;font-size:11px}.code-toolbar>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.code-toolbar button{justify-content:flex-end;min-width:64px;min-height:36px;font-size:11px}.code-panel pre{overscroll-behavior:contain;max-width:100%;font-size:12px;line-height:1.55;overflow:auto}}@media (prefers-reduced-motion:reduce){.web-select-trigger>svg{transition:none}.web-select-popover{animation:none}}.workspace-section-body[data-section=overview]{max-width:1040px}.project-overview{gap:var(--space-6);min-width:0;display:grid}.project-overview-summary{justify-content:space-between;align-items:center;gap:var(--space-6);min-width:0;padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);display:flex}.project-overview-summary>div:first-child{gap:var(--space-1);min-width:0;display:grid}.project-overview-summary>div:first-child>span{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.project-overview-summary h2{min-width:0;color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:clamp(22px,3vw,30px);font-weight:650;line-height:1.2;overflow:hidden}.project-overview-health{align-items:center;gap:var(--space-2);color:var(--color-warning);flex:none;display:flex}.project-overview-health[data-ready]{color:var(--color-success)}.project-overview-health>span{gap:2px;display:grid}.project-overview-health strong{font-size:var(--text-body-size);line-height:var(--text-body-line);font-weight:600}.project-overview-health small{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.project-overview-facts{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid}.project-overview-facts>div{align-content:center;gap:var(--space-2);min-width:0;min-height:92px;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);text-align:left;margin:0;display:grid}.project-overview-facts dt{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-overview-facts dd{min-width:0;color:var(--color-text);font-size:var(--text-section-size);line-height:var(--text-section-line);text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:650;overflow:hidden}.project-overview-facts dd button{min-width:var(--control-height-compact);min-height:var(--control-height-compact);margin:calc(var(--space-1) * -1);padding:var(--space-1);border-radius:var(--radius-small);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0}.project-overview-facts dd button:hover{background:var(--color-surface-subtle)}.project-overview-facts [data-status=ready] dd{color:var(--color-success)}.project-overview-facts [data-status=blocked] dd{color:var(--color-danger)}.project-overview-shortcuts{gap:var(--space-3);display:grid}.project-overview-shortcuts h3{color:var(--color-text);font-size:var(--text-section-size);line-height:var(--text-section-line);margin:0;font-weight:600}.project-overview-shortcuts>div{gap:var(--space-2);flex-wrap:wrap;display:flex}@media (width<=900px){.project-overview-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=767px){.topbar{gap:0 var(--space-1);grid-template-columns:36px minmax(88px,1fr) 88px}.topbar .brand{grid-area:1/1;justify-content:center;width:36px;min-width:36px}.topbar .brand-mark{width:30px;height:30px}.topbar .brand>strong,.topbar .brand>small{display:none}.topbar .project-switcher-wrap,.topbar .project-switcher-wrap:not([data-mobile-open]){grid-area:1/2;width:100%;min-width:0;display:block}.topbar .project-switcher{height:var(--touch-target);padding:0}.topbar .project-name-input{height:var(--touch-target);padding-left:var(--space-2);font-size:var(--text-body-size)}.topbar .project-switcher-toggle{width:36px;height:var(--touch-target);flex-basis:36px}.topbar .project-menu{top:calc(52px + env(safe-area-inset-top));left:var(--space-3);right:var(--space-3);width:auto;max-height:calc(100dvh - 76px);position:fixed;overflow-y:auto}.topbar-mobile-target,.topbar-mobile-health{display:none}.topbar .top-actions{grid-area:1/3;gap:0;display:flex}.topbar .top-actions>:not(.topbar-language-wrap):not(.top-export-action){display:none}.topbar .top-actions>.topbar-language-wrap{display:block}.topbar-language-trigger,.topbar .top-export-action{width:var(--touch-target);height:var(--touch-target);min-height:var(--touch-target);background:0 0;border-color:#0000;padding:0}.topbar-language-trigger>span,.topbar-language-trigger>svg:last-child,.topbar .top-export-action span{display:none}.topbar-language-menu{top:calc(52px + env(safe-area-inset-top));right:var(--space-3);position:fixed}.project-overview{gap:var(--space-4)}.project-overview-summary{align-items:flex-start;gap:var(--space-4);padding:var(--space-4);flex-direction:column}.project-overview-health{width:100%}.project-overview-facts{gap:var(--space-2)}.project-overview-facts>div{min-height:82px;padding:var(--space-3)}.project-overview-shortcuts>div{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.project-overview-shortcuts button{width:100%;min-width:0;min-height:var(--touch-target);padding-inline:var(--space-2)}}.topbar-project{align-items:center;gap:var(--space-2);min-width:0;padding-inline:var(--space-2);white-space:nowrap;flex:0 230px;display:flex}.topbar-project small{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);flex:none;font-weight:500}.topbar-project .current-project-separator{color:var(--color-border-strong);flex:none}.topbar-project strong{min-width:0;color:var(--color-text);font-size:var(--text-meta-size);line-height:var(--text-meta-line);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.topbar>.product-view-switcher{width:184px;min-width:184px;position:absolute;left:50%;transform:translate(-50%)}.topbar>.product-view-switcher button{min-height:30px;padding-inline:var(--space-3)}.project-manager{gap:var(--space-3);padding-top:var(--space-2);display:grid}.project-manager>header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.project-manager h3{color:var(--color-text);font-size:var(--text-section-size);line-height:var(--text-section-line);margin:0;font-weight:600}.project-manager-list{border-top:1px solid var(--color-border)}.project-manager-list>article{grid-template-columns:minmax(0, 1fr) var(--touch-target);border-bottom:1px solid var(--color-border);align-items:center;min-width:0;min-height:64px;display:grid}.project-manager-list>article.is-active{background:var(--color-primary-soft)}.project-manager-select{align-items:center;gap:var(--space-2);min-width:0;min-height:64px;padding:var(--space-2) var(--space-3);color:var(--color-text-secondary);text-align:left;background:0 0;grid-template-columns:28px minmax(0,1fr);display:grid}.project-manager-select:disabled{cursor:default;opacity:1}.project-manager-select>span:last-child{gap:3px;min-width:0;display:grid}.project-manager-select strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.project-manager-select small{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-manager-status{border:1px solid var(--color-border);width:24px;height:24px;color:var(--color-primary);background:var(--color-surface);border-radius:999px;place-items:center;display:grid}.project-manager-list>article.is-active .project-manager-status{border-color:color-mix(in srgb, var(--color-primary) 35%, var(--color-border))}.project-manager-menu-wrap{position:relative}.project-manager-menu-trigger{width:var(--touch-target);height:var(--touch-target);border-radius:var(--radius-control);color:var(--color-text-secondary);background:0 0;place-items:center;display:grid}.project-manager-menu-trigger:hover{color:var(--color-text);background:var(--color-surface-subtle)}.project-manager-menu{z-index:var(--z-popover);top:calc(100% - 4px);right:var(--space-2);width:144px;padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);box-shadow:var(--shadow-floating);position:absolute;overflow:hidden}.project-manager-menu button{width:100%;min-height:var(--control-height);padding:0 var(--space-3);border-radius:var(--radius-small);color:var(--color-text-secondary);font-size:var(--text-meta-size);text-align:left;background:0 0}.project-manager-menu button:hover{color:var(--color-text);background:var(--color-surface-subtle)}.project-manager-menu button.danger{color:var(--color-danger)}.project-action-backdrop{z-index:var(--z-dialog);padding:var(--space-4);background:var(--color-backdrop);place-items:center;display:grid;position:fixed;inset:0}.project-action-dialog{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);width:min(420px,100%);box-shadow:var(--shadow-floating);animation:project-action-in .15s var(--ease-standard) both;overflow:hidden}.project-action-dialog>header{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:56px;padding:var(--space-2) var(--space-3) var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border);display:flex}.project-action-dialog h2{color:var(--color-text);font-size:var(--text-section-size);line-height:var(--text-section-line);margin:0;font-weight:600}.project-action-dialog>header button{width:var(--touch-target);height:var(--touch-target);border-radius:var(--radius-control);color:var(--color-text-secondary);background:0 0;place-items:center;display:grid}.project-action-dialog>p{padding:var(--space-5) var(--space-4);color:var(--color-text-secondary);font-size:var(--text-body-size);margin:0;line-height:1.55}.project-action-dialog>footer{justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border);display:flex}.danger-action{min-height:var(--control-height);justify-content:center;align-items:center;gap:var(--space-2);padding:0 var(--space-4);border-radius:var(--radius-control);color:#fff;background:var(--color-danger);font-size:var(--text-meta-size);line-height:var(--text-meta-line);font-weight:600;display:inline-flex}.project-rename-form{gap:var(--space-2);padding:var(--space-4);display:grid}.project-rename-form label{color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);font-weight:600}.project-rename-form input{width:100%;min-height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-surface);font-size:var(--text-body-size)}.project-rename-form input[aria-invalid=true]{border-color:var(--color-danger)}.project-rename-form>div{justify-content:space-between;gap:var(--space-3);color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);display:flex}.project-rename-form>p{color:var(--color-danger);font-size:var(--text-meta-size);line-height:var(--text-meta-line);margin:0}.new-project-target-step{display:grid}.new-project-name-field{gap:var(--space-2);padding:var(--space-4) 22px 0;color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);font-weight:600;display:grid}.new-project-name-field input{width:100%;min-height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-surface);font-size:var(--text-body-size)}.new-project-name-field input[aria-invalid=true]{border-color:var(--color-danger)}.new-project-name-field small{justify-content:space-between;gap:var(--space-3);color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);font-weight:400;display:flex}.workspace-add-sheet-backdrop{display:none}.workspace-mobile-navigation{position:relative}.workspace-mobile-navigation-popup{z-index:calc(var(--z-popover) + 1);width:min(208px,100vw - 24px);padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-floating);animation:mobile-navigation-popup-in .15s var(--ease-standard) both;position:absolute;overflow:hidden}.workspace-mobile-navigation-popup[data-panel=nodes]{left:max(var(--space-2), calc(30% - 104px))}.workspace-mobile-navigation-popup[data-panel=more]{right:var(--space-2)}.workspace-mobile-navigation-popup>button{width:100%;min-height:var(--touch-target);align-items:center;gap:var(--space-2);padding:0 var(--space-3);border-radius:var(--radius-control);color:var(--color-text-secondary);font-size:var(--text-body-size);line-height:var(--text-body-line);text-align:left;touch-action:manipulation;background:0 0;grid-template-columns:24px minmax(0,1fr) auto 18px;display:grid}.workspace-mobile-navigation-popup>button:hover,.workspace-mobile-navigation-popup>button[aria-checked=true]{color:var(--color-primary);background:var(--color-primary-soft)}.workspace-mobile-navigation-popup>button>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.workspace-mobile-navigation-popup>button>small{color:var(--color-text-muted);font-size:var(--text-meta-size);font-variant-numeric:tabular-nums}.workspace-mobile-navigation-popup>button>svg:last-child{color:var(--color-primary)}@media (width>=768px) and (width<=1023px){.app-shell{grid-template-rows:var(--topbar-height) minmax(0, 1fr) var(--statusbar-height)}.topbar{min-height:var(--topbar-height);height:var(--topbar-height);grid-template:none;display:flex}.topbar .brand{min-width:max-content}.topbar-project{flex-basis:150px}.topbar>.product-view-switcher{width:174px;min-width:174px}.topbar .top-actions{margin-left:auto;display:flex}.topbar .top-actions>.save-indicator,.topbar .top-actions>.runtime-service-wrap,.topbar .top-actions>.top-preview-action{display:none}.workspace-navigation{overflow:visible}.workspace-mobile-navigation-popup{top:calc(100% + var(--space-2));bottom:auto}}@media (width<=767px){.app-shell{grid-template-rows:var(--topbar-height) minmax(0, 1fr)}.topbar{min-height:var(--topbar-height);height:var(--topbar-height);grid-template-columns:28px minmax(48px,1fr) minmax(128px,136px) 80px;grid-template-rows:var(--topbar-height);padding:0 max(var(--space-2), env(safe-area-inset-left)) 0 max(var(--space-2), env(safe-area-inset-right));gap:0 2px;display:grid}.topbar .brand{grid-area:1/1;justify-content:center;width:28px;min-width:28px}.topbar .brand-mark{width:26px;height:26px}.topbar .brand>strong,.topbar .brand>small{display:none}.topbar-project{min-width:0;max-width:120px;padding:0 var(--space-1);grid-area:1/2;align-self:center}.topbar-project small{display:none}.topbar-project strong{font-size:12px;line-height:18px}.topbar>.product-view-switcher{grid-area:1/3;align-self:center;width:100%;min-width:0;height:32px;padding:2px;display:grid;position:static;transform:none}.topbar>.product-view-switcher button{min-width:0;min-height:26px;padding:0 3px;font-size:10.5px;line-height:14px}.topbar>.product-view-switcher button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.topbar .top-actions{grid-area:1/4;grid-template-columns:repeat(2,40px);gap:0;width:80px;margin:0;display:grid}.topbar .top-actions>:not(.top-export-action):not(.topbar-language-wrap){display:none}.topbar .top-export-action,.topbar-language-trigger{width:40px;height:var(--touch-target);min-height:var(--touch-target);color:var(--color-text-secondary);background:0 0;border-color:#0000;padding:0}.topbar .top-export-action span,.topbar-language-trigger>span,.topbar-language-trigger>svg:last-child{display:none}.topbar-language-menu{top:calc(var(--topbar-height) + var(--space-1));right:var(--space-2);position:fixed}.topbar-mobile-target,.topbar-mobile-health{display:none}.workspace-navigation{background:var(--color-surface);-webkit-backdrop-filter:none;backdrop-filter:none;overflow:visible}.workspace-mobile-navigation-popup{top:auto;bottom:calc(100% + var(--space-2))}.workspace-add-sheet-backdrop{z-index:calc(var(--z-dialog) - 1);background:var(--color-backdrop);display:block;position:fixed;inset:0}.workspace-add-options{z-index:var(--z-dialog);overscroll-behavior:contain;width:100%;max-height:min(72dvh,620px);padding:var(--space-2) var(--space-3) calc(var(--space-3) + env(safe-area-inset-bottom));border:1px solid var(--color-border);border-radius:var(--radius-panel) var(--radius-panel) 0 0;background:var(--color-surface);box-shadow:var(--shadow-floating);animation:workspace-add-sheet-in .15s var(--ease-standard) both;-webkit-overflow-scrolling:touch;border-bottom:0;position:fixed;inset:auto 0 0;overflow:hidden auto}.workspace-add-options>button{touch-action:manipulation;min-height:56px}.workspace-add-separator{margin:var(--space-1) var(--space-2)}.project-manager>header{flex-direction:column;align-items:stretch}.project-manager>header .secondary-action{width:100%;min-height:var(--touch-target)}.project-manager-list>article,.project-manager-select{min-height:68px}.project-manager-menu{top:auto;left:var(--space-3);right:var(--space-3);bottom:calc(56px + var(--space-3) + env(safe-area-inset-bottom));width:auto;position:fixed}.project-manager-menu button{min-height:var(--touch-target);font-size:var(--text-body-size)}.project-action-backdrop{align-items:end;padding:0}.project-action-dialog{border-radius:var(--radius-panel) var(--radius-panel) 0 0;width:100%;padding-bottom:env(safe-area-inset-bottom);border-bottom:0;animation-name:project-action-sheet-in}.project-action-dialog>footer{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.project-action-dialog>footer button{width:100%;min-height:var(--touch-target)}.new-project-name-field{padding-inline:var(--space-4)}.new-project-name-field input{min-height:var(--touch-target)}.routing-add-popover{z-index:var(--z-dialog)}.routing-add-sheet-backdrop{z-index:calc(var(--z-dialog) - 1)}.routing-kind-choices>button,.routing-matcher-choices>button,.routing-service-choices>div>button{touch-action:manipulation}}@media (width<=389px){.topbar{padding-inline:max(6px, env(safe-area-inset-left)) max(6px, env(safe-area-inset-right));grid-template-columns:26px minmax(40px,1fr) minmax(122px,130px) 76px}.topbar .brand{width:26px;min-width:26px}.topbar .brand-mark{width:24px;height:24px}.topbar .top-actions{grid-template-columns:repeat(2,38px);width:76px}.topbar .top-export-action,.topbar-language-trigger{width:38px}.topbar>.product-view-switcher button{font-size:10px}}@keyframes mobile-navigation-popup-in{0%{opacity:0;transform:translateY(6px)}}@keyframes workspace-add-sheet-in{0%{opacity:.96;transform:translateY(12px)}}@keyframes project-action-in{0%{opacity:0;transform:translateY(4px)}}@keyframes project-action-sheet-in{0%{opacity:.96;transform:translateY(12px)}}@media (prefers-reduced-motion:reduce){.workspace-mobile-navigation-popup,.workspace-add-options,.project-action-dialog{animation:none}.product-view-switcher button{transition:none}}.ui-button{min-height:var(--control-height);justify-content:center;align-items:center;gap:var(--space-2);padding:0 var(--space-3);border-radius:var(--radius-control);font-size:var(--text-meta-size);line-height:var(--text-meta-line);letter-spacing:0;white-space:nowrap;transition:color var(--motion-fast) var(--ease-standard), background var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);border:1px solid #0000;font-weight:600;display:inline-flex}.ui-button:active:not(:disabled){transform:scale(.96)}.ui-button:disabled{opacity:.45}.ui-button--primary{color:#fff;background:var(--color-primary);border-color:var(--color-primary)}.ui-button--primary:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.ui-button--secondary{color:var(--color-text-secondary);background:var(--color-surface);border-color:var(--color-border-strong)}.ui-button--secondary:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-subtle)}.ui-button--quiet{color:var(--color-text-secondary);background:0 0}.ui-button--quiet:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-subtle)}.ui-button--danger{color:#fff;background:var(--color-danger);border-color:var(--color-danger)}.ui-icon-button{width:var(--icon-button-size);height:var(--icon-button-size);flex:0 0 var(--icon-button-size);border-radius:var(--radius-control);color:var(--color-text-secondary);transition:color var(--motion-fast) var(--ease-standard), background var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);background:0 0;place-items:center;display:inline-grid}.ui-icon-button:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-subtle)}.ui-icon-button:active:not(:disabled){transform:scale(.96)}.ui-icon-button:disabled{opacity:.38}.ui-segmented-control{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ui-segmented-control>button{min-height:var(--control-height-compact)}.ui-status-badge{align-items:center;gap:var(--space-1);color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);display:inline-flex}.ui-status-badge.is-info{color:var(--color-info)}.ui-status-badge.is-success{color:var(--color-success)}.ui-status-badge.is-warning{color:var(--color-warning)}.ui-status-badge.is-danger{color:var(--color-danger)}.primary-action,.secondary-action{min-height:var(--control-height);height:var(--control-height);padding:0 var(--space-3);border-radius:var(--radius-control);font-size:var(--text-meta-size);line-height:var(--text-meta-line);letter-spacing:0;box-shadow:none;transition:color var(--motion-fast) var(--ease-standard), background var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);font-weight:600}.primary-action{color:#fff;background:var(--color-primary);border-color:var(--color-primary)}.primary-action:hover:not(:disabled){color:#fff;background:var(--color-primary-hover);border-color:var(--color-primary-hover);box-shadow:none;transform:none}.primary-action:active:not(:disabled),.secondary-action:active:not(:disabled){transform:scale(.96)}.secondary-action{color:var(--color-text-secondary);background:var(--color-surface);border-color:var(--color-border-strong)}.secondary-action:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-subtle);border-color:var(--color-border-strong)}.primary-action:disabled,.secondary-action:disabled{opacity:.45;cursor:not-allowed}.icon-button{width:var(--icon-button-size);height:var(--icon-button-size);min-width:var(--icon-button-size);min-height:var(--icon-button-size);color:var(--color-text-secondary)}.icon-button:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-subtle)}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]),select{min-height:var(--control-height);font-size:var(--text-body-size);line-height:var(--text-body-line)}textarea{font-size:var(--text-body-size);line-height:var(--text-body-line)}code,pre,.ui-code{font-family:var(--font-mono);font-size:var(--text-code-size);line-height:var(--text-code-line);font-variant-ligatures:none;font-weight:400}.ui-card{min-width:0;padding:var(--card-padding);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface)}.ui-card--compact{padding:var(--card-padding-compact)}.ui-page-shell{width:min(100%, var(--content-max-width));margin-inline:auto}.ui-section-stack{gap:var(--space-6);display:grid}.app-shell{grid-template-rows:var(--topbar-height) minmax(0, 1fr) var(--statusbar-height);background:var(--color-app-background)}.topbar-mobile-menu,.topbar-mobile-target,.topbar-mobile-health{display:none}.topbar{height:var(--topbar-height);gap:var(--space-3);min-width:0;padding:0 var(--space-4);color:var(--color-text);background:var(--color-surface);border-color:var(--color-border);box-shadow:none;z-index:var(--z-topbar)}.brand{gap:var(--space-2);min-width:max-content}.brand-mark{width:30px;height:30px}.brand>strong{color:var(--color-text);font-size:var(--text-section-size);line-height:var(--text-section-line);letter-spacing:0;font-weight:650}.version-mark{color:var(--color-text-muted);letter-spacing:0;font-size:10px;font-weight:500;line-height:1}.project-switcher-wrap{flex:0 230px;min-width:0}.project-switcher{width:100%;min-width:0;height:var(--control-height);padding:3px var(--space-1) 3px var(--space-2);border-radius:var(--radius-control)}.project-switcher:hover{background:var(--color-surface-subtle)}.project-switcher small{color:var(--color-text-muted);letter-spacing:0;text-transform:none;font-size:10px;font-weight:500;line-height:14px}.project-name-input{height:20px;color:var(--color-text);font-size:var(--text-meta-size);line-height:var(--text-meta-line);letter-spacing:0;font-weight:600}.project-name-input:hover,.project-name-input:focus{background:var(--color-surface)}.project-name-input:focus{box-shadow:0 0 0 2px var(--color-focus-ring)}.project-switcher-toggle{width:32px;height:32px;color:var(--color-text-muted);flex-basis:32px}.project-switcher-toggle:hover{color:var(--color-text);background:var(--color-border)}.project-menu{top:calc(var(--control-height) + var(--space-2));border-color:var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);width:260px;box-shadow:var(--shadow-floating)}.project-menu>span,.topbar-overflow-menu>span{padding:5px var(--space-2) 7px;color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);letter-spacing:0;font-weight:500;display:block}.project-menu button{min-height:var(--control-height);color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.project-menu button.is-active{color:var(--color-primary);background:var(--color-primary-soft)}.project-menu .project-menu-view-switch{display:none}.product-view-switcher{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-subtle);gap:2px;min-width:208px;padding:2px}.product-view-switcher button{border-radius:var(--radius-small);min-height:34px;color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);letter-spacing:0;gap:6px;padding:0 10px;font-weight:600}.product-view-switcher button:hover{color:var(--color-text)}.product-view-switcher button.is-active{color:var(--color-primary);background:var(--color-surface);box-shadow:0 1px 3px #1720331a}.top-actions{gap:var(--space-2);margin-left:auto}.save-indicator{color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);margin-left:0}.saved-dot,.saving-dot{background:var(--color-success);width:7px;height:7px;box-shadow:0 0 0 3px var(--color-success-soft)}.saving-dot{background:var(--color-warning);box-shadow:0 0 0 3px var(--color-warning-soft)}.top-action-group{padding:0 var(--space-1);border-radius:var(--radius-control);background:var(--color-surface-subtle);border:0;gap:0}.top-action-group .ui-icon-button{width:var(--control-height-compact);height:var(--control-height-compact);flex-basis:var(--control-height-compact)}.runtime-service-trigger{min-height:var(--control-height-compact);height:var(--control-height-compact);padding:0 var(--space-2);border-color:var(--color-border);border-radius:var(--radius-control);color:var(--color-text-secondary);background:var(--color-surface);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.runtime-service-trigger:hover,.runtime-service-trigger.is-connected{border-color:var(--color-border-strong);color:var(--color-text);background:var(--color-surface-subtle)}.runtime-service-popover{top:calc(var(--control-height-compact) + var(--space-2));gap:var(--space-3);width:320px;padding:var(--space-4);border-color:var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-floating)}.runtime-service-heading span{color:var(--color-text-muted);font-size:var(--text-meta-size);letter-spacing:0;text-transform:none}.runtime-service-heading strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line)}.runtime-service-popover p,.runtime-service-popover label,.runtime-service-popover>small{color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.runtime-service-popover input{height:var(--control-height);border-color:var(--color-border-strong);border-radius:var(--radius-control);color:var(--color-text);font-size:var(--text-body-size)}.runtime-service-status{color:var(--color-success);font-size:var(--text-meta-size)}.runtime-service-error{color:var(--color-danger);background:var(--color-danger-soft);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.topbar-overflow-wrap{position:relative}.topbar-overflow-menu{top:calc(var(--control-height) + var(--space-2));width:164px;right:0}.topbar-overflow-menu button{min-height:var(--control-height);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.statusbar{min-width:0;height:var(--statusbar-height);gap:var(--space-3);padding:0 var(--space-3);color:var(--color-text-muted);background:var(--color-surface);border-color:var(--color-border);font-size:var(--text-meta-size);line-height:var(--text-meta-line);z-index:var(--z-panel)}.statusbar .status-ok,.statusbar .status-issues,.status-save{align-items:center;gap:6px;display:inline-flex}.statusbar .status-ok{color:var(--color-success)}.statusbar .status-issues{color:var(--color-warning)}.statusbar button{height:28px;min-height:28px;padding:0 var(--space-2);color:var(--color-text-secondary);border-radius:var(--radius-small);font-size:var(--text-meta-size)}.statusbar button:hover{background:var(--color-surface-subtle)}.status-separator{background:var(--color-border)}.status-hint{color:var(--color-text-muted)}.status-save i{flex:none;display:inline-block}.workspace{grid-template-columns:var(--library-width,var(--palette-width)) 10px minmax(0, 1fr) 10px var(--inspector-width,0px);min-width:0;color:var(--color-text);background:var(--color-app-background)}.workspace.is-library-collapsed{grid-template-columns:var(--palette-rail-width) 0 minmax(0, 1fr) 10px var(--inspector-width,0px)}.workspace:not(.has-inspector){grid-template-columns:var(--library-width,var(--palette-width)) 10px minmax(0, 1fr) 0 0}.workspace.is-library-collapsed:not(.has-inspector){grid-template-columns:var(--palette-rail-width) 0 minmax(0, 1fr) 0 0}.visual-library-panel{min-width:0;min-height:0;z-index:var(--z-panel);border-right:1px solid var(--color-border);background:var(--color-surface-subtle);grid-column:1;position:relative;overflow:hidden}.visual-library-content{width:100%;height:100%;min-height:0}.visual-library-panel.is-collapsed .visual-library-content{display:none}.palette-toggle{z-index:3;top:var(--space-3);right:var(--space-2);background:var(--color-surface);position:absolute;box-shadow:0 1px 3px #1720331a}.visual-library-panel.is-collapsed .palette-toggle{right:8px}.visual-library-panel .block-library{background:var(--color-surface-subtle);width:100%;height:100%;padding-top:0}.visual-library-panel .panel-heading{height:64px;padding:14px 52px 10px 16px}.panel-heading span,.inspector-node-header span{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);letter-spacing:0;font-weight:500}.panel-heading h2{color:var(--color-text);font-size:var(--text-section-size);line-height:var(--text-section-line);letter-spacing:0;font-weight:600}.library-search{height:var(--control-height);flex-basis:var(--control-height);border-color:var(--color-border);border-radius:var(--radius-control);color:var(--color-text-muted)}.library-search:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.library-search input{color:var(--color-text);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.library-search input::placeholder{color:var(--color-text-muted)}.library-group{border-color:var(--color-border)}.library-group-title{height:var(--control-height-compact);color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);font-weight:600}.category-dot{display:none}.library-item{--category:var(--color-text-secondary);gap:var(--space-2);min-height:60px;padding:var(--space-2);border-radius:var(--radius-control);transition:color var(--motion-fast) var(--ease-standard), background var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard);grid-template-columns:36px minmax(0,1fr) 16px}.library-item:hover{border-color:var(--color-border);background:var(--color-surface);box-shadow:none;transform:none}.library-item-icon{width:34px;height:34px;color:var(--color-text-secondary);background:var(--color-surface-subtle);border-color:var(--color-border);border-radius:var(--radius-control)}.library-item strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line);font-weight:600}.library-item small{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.library-grip{color:var(--color-text-muted)}.library-tip{height:40px;color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);flex-basis:40px}.library-tip span{color:var(--color-text-secondary);background:var(--color-border);letter-spacing:0;font-size:10px}.panel-resizer--left{grid-column:2}.canvas-region{grid-column:3}.panel-resizer--right{grid-column:4}.visual-inspector-panel{border-left:1px solid var(--color-border);background:var(--color-surface);min-width:0;min-height:0;z-index:var(--z-panel);grid-column:5;overflow:hidden}.visual-inspector-panel>.inspector{background:var(--color-surface);width:100%;height:100%}.canvas-region,.canvas-shell{background:var(--color-app-background)}.canvas-shell:before{display:none}.canvas-breadcrumb{color:var(--color-text-secondary);background:var(--color-surface);border-color:var(--color-border);border-radius:var(--radius-control);-webkit-backdrop-filter:none;backdrop-filter:none;font-size:var(--text-meta-size);line-height:var(--text-meta-line);box-shadow:0 2px 8px #1720330f}.canvas-breadcrumb span,.canvas-breadcrumb b{color:var(--color-text-muted)}.canvas-breadcrumb i{color:var(--color-success);background:var(--color-success-soft);letter-spacing:0;font-size:10px}.react-flow__selection{background:var(--color-primary-soft);border-color:var(--color-primary)}.flow-node,.flow-node--processing,.flow-node--strategy,.flow-node--chain,.flow-node--routing,.flow-node--dns,.flow-node--output{--category:var(--color-text-secondary)}.flow-node{border-color:var(--color-border-strong);border-radius:var(--radius-card);background:var(--color-surface);width:236px;box-shadow:var(--shadow-node);transition:opacity var(--motion-standard) var(--ease-standard), border-color var(--motion-standard) var(--ease-standard), box-shadow var(--motion-standard) var(--ease-standard)}.flow-node:hover{border-color:var(--color-text-muted);box-shadow:var(--shadow-node);transform:none}.flow-node.is-selected{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring), var(--shadow-node)}.flow-node.is-highlighted:not(.is-selected){border-color:var(--color-primary);box-shadow:var(--shadow-node)}.flow-node.is-dimmed{opacity:.72;filter:none}.flow-node.is-disabled{opacity:.5;filter:none}.flow-node.has-warning:not(.is-selected){border-color:var(--color-warning)}.node-accent{display:none}.node-icon,.node-icon--source,.node-icon--processing,.node-icon--strategy,.node-icon--chain,.node-icon--routing,.node-icon--dns,.node-icon--output{--category:var(--color-text-secondary);color:var(--color-text-secondary);background:var(--color-surface-subtle);border-color:var(--color-border)}.flow-node.is-selected .node-icon{color:var(--color-primary);background:var(--color-primary-soft);border-color:var(--color-primary-soft)}.node-heading strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line);letter-spacing:0;font-weight:600}.node-heading span{color:var(--color-text-muted);letter-spacing:0;font-size:10px;font-weight:600;line-height:14px}.node-more{color:var(--color-text-muted)}.node-warning{color:var(--color-warning)}.node-content{border-color:var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-subtle)}.node-footer{color:var(--color-text-muted)}.node-footer span,.status-dot-label,.node-strategy-row,.node-dns-row,.node-target-row,.node-output-row span,.node-default-copy{font-size:11px;line-height:16px}.node-chip-row span,.node-services button,.node-chip-row em{color:var(--color-text-secondary);background:var(--color-surface);border-color:var(--color-border);font-size:10px;line-height:14px}.node-services button{--category:var(--color-text-secondary)}.node-output-row b,.node-target-row b,.node-dns-row span{color:var(--color-text-secondary);letter-spacing:0}.node-dns-row code,.node-target-row b{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.node-dns-row code{margin-left:auto}.flow-handle{box-shadow:0 0 0 1px var(--color-primary), 0 2px 5px #17203329;background:var(--color-primary)!important}.proxy-minimap,.proxy-controls{border-color:var(--color-border)!important;border-radius:var(--radius-control)!important;background:var(--color-surface)!important;box-shadow:0 4px 12px #17203314!important}.proxy-controls button{color:var(--color-text-secondary);width:var(--control-height-compact)!important;height:var(--control-height-compact)!important;border-color:var(--color-border)!important}.visual-flow-mobile-toolbar{display:none}.inspector-field>span,.section-label>span{color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);font-weight:600}.inspector-field>span small{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);font-weight:400}.inspector-field input,.inspector-field select,.input-with-unit,.source-reference{height:var(--control-height);border-color:var(--color-border-strong);border-radius:var(--radius-control);color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line)}.inspector-field input:focus,.inspector-field select:focus,.input-with-unit:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.toggle-row strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line)}.toggle-row small{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.toggle-row>input:checked{background:var(--color-primary)}.inspector-secondary-button,.inspector-primary-button,.dashed-button,.danger-button{min-height:var(--control-height);border-radius:var(--radius-control);height:auto;font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.inspector-primary-button{background:var(--color-primary);box-shadow:none}.inspector-primary-button:hover{background:var(--color-primary-hover)}.advanced-panel summary{min-height:var(--control-height);height:auto;color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.workspace-editor-backdrop{background:var(--color-backdrop)}.workspace-editor-panel{width:min(var(--inspector-width), 100%);background:var(--color-surface);box-shadow:var(--shadow-floating);animation-duration:var(--motion-standard)}.workspace-editor-toolbar{min-height:64px;padding:var(--space-2) var(--space-3) var(--space-2) var(--space-4);border-color:var(--color-border);background:var(--color-surface)}.workspace-editor-toolbar>div:first-child span{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);font-weight:500}.workspace-editor-toolbar>div:first-child strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line);font-weight:600}.workspace-editor-toolbar button{min-width:var(--control-height);min-height:var(--control-height);border-radius:var(--radius-control);color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.workspace-editor-toolbar button:hover{color:var(--color-primary);background:var(--color-primary-soft)}.workspace-input-editor{gap:var(--space-2);padding:var(--space-3) var(--space-4);border-color:var(--color-border);background:var(--color-surface-subtle)}.workspace-input-editor>div:first-child strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line)}.workspace-input-editor>div:first-child small,.workspace-input-editor>span{color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.workspace-input-editor select{min-height:var(--control-height);border-color:var(--color-border-strong);border-radius:var(--radius-control);color:var(--color-text);font-size:var(--text-body-size)}.workspace-input-options label{min-height:var(--control-height);border-color:var(--color-border);border-radius:var(--radius-control);color:var(--color-text-secondary);background:var(--color-surface);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.structured-workspace{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);background:var(--color-surface)}.workspace-navigation{padding:var(--space-3) var(--space-2);border-color:var(--color-border);background:var(--color-surface-subtle)}.workspace-navigation-items{gap:var(--space-1)}.workspace-navigation-items button,.visual-flow-link{min-height:var(--control-height);border-radius:var(--radius-control);color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.workspace-navigation-items button:hover,.visual-flow-link:hover{color:var(--color-text);background:var(--color-surface)}.workspace-navigation-items button.is-active{color:var(--color-primary);background:var(--color-primary-soft);box-shadow:none}.workspace-navigation-items button small{color:var(--color-text-muted);background:var(--color-surface);font-size:var(--text-meta-size)}.workspace-mobile-navigation,.workspace-mobile-navigation-backdrop{display:none}.workspace-content{background:var(--color-surface);min-width:0}.workspace-content-header{min-height:104px;padding:var(--space-4) var(--space-8);border-color:var(--color-border);background:var(--color-surface)}.workspace-content-header>div:first-child{gap:var(--space-1);min-width:0;display:grid}.workspace-content-header h1{color:var(--color-text);font-size:var(--text-page-size);line-height:var(--text-page-line);letter-spacing:0;font-weight:600}.workspace-content-header p{color:var(--color-text-secondary);font-size:var(--text-body-size);line-height:var(--text-body-line);margin:0}.workspace-target-context{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.workspace-target-context:hover{color:var(--color-primary)}.workspace-content-header>div:last-child:not(:first-child){gap:var(--space-2);display:flex}.workspace-section-body{width:min(1120px,100%);padding:var(--space-6) var(--space-8) 48px}.workspace-source-list{border-top:1px solid var(--color-border)}.workspace-source-item{align-items:start;gap:var(--space-3);min-width:0;padding:var(--space-4) var(--space-2);border-bottom:1px solid var(--color-border);grid-template-columns:40px minmax(0,1fr) auto;display:grid}.workspace-source-icon,.workspace-step-icon,.workspace-strategy-icon{border:1px solid var(--color-border);border-radius:var(--radius-control);width:36px;height:36px;color:var(--color-text-secondary);background:var(--color-surface-subtle);place-items:center;display:grid}.workspace-source-main,.workspace-step-main,.workspace-strategy-main{min-width:0}.workspace-source-title,.workspace-step-main>div,.workspace-strategy-main>div{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.workspace-source-title strong,.workspace-step-main strong,.workspace-strategy-main strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line);font-weight:600}.workspace-source-format{border-radius:var(--radius-small);color:var(--color-text-secondary);background:var(--color-surface-subtle);font-size:var(--text-meta-size);line-height:var(--text-meta-line);padding:2px 6px}.workspace-source-meta{gap:var(--space-2) var(--space-4);margin-top:var(--space-1);color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);flex-wrap:wrap;display:flex}.workspace-source-meta span{align-items:center;gap:var(--space-1);overflow-wrap:anywhere;min-width:0;display:inline-flex}.workspace-status-badge{align-items:center;gap:var(--space-1);color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);font-weight:500;display:inline-flex}.workspace-status-badge[data-status=healthy],.workspace-status-badge[data-status=ready]{color:var(--color-success)}.workspace-status-badge[data-status=refreshing]{color:var(--color-info)}.workspace-status-badge[data-status=warning],.workspace-status-badge[data-status=stale],.workspace-status-badge[data-status=idle]{color:var(--color-warning)}.workspace-status-badge[data-status=error],.workspace-status-badge[data-status=unavailable]{color:var(--color-danger)}.workspace-source-lkg{align-items:flex-start;gap:var(--space-2);margin:var(--space-2) 0 0;padding:var(--space-2);border-radius:var(--radius-control);color:var(--color-warning);background:var(--color-warning-soft);font-size:var(--text-meta-size);line-height:var(--text-meta-line);display:flex}.workspace-source-lkg svg{flex:none;margin-top:2px}.workspace-row-actions,.workspace-step-actions{align-items:center;gap:var(--space-1);display:flex}.workspace-row-actions .icon-button,.workspace-step-actions .icon-button{width:var(--control-height);height:var(--control-height)}.workspace-row-actions .danger{color:var(--color-danger)}.workspace-inline-confirm{align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-control);color:var(--color-danger);background:var(--color-danger-soft);font-size:var(--text-meta-size);line-height:var(--text-meta-line);flex-wrap:wrap;display:flex}.workspace-inline-confirm span{flex:220px}.workspace-inline-confirm button{min-height:var(--control-height-compact);padding:0 var(--space-2);border-radius:var(--radius-small);color:var(--color-text-secondary);background:var(--color-surface)}.workspace-inline-confirm button.danger{color:#fff;background:var(--color-danger)}.workspace-proxies-page{min-width:0}.workspace-proxy-chip-filters{gap:var(--space-2);margin-bottom:var(--space-3);display:grid}.workspace-proxy-chip-filters>section{align-items:center;gap:var(--space-2);grid-template-columns:118px minmax(0,1fr);min-width:0;display:grid}.workspace-proxy-chip-filters>section>span{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);font-weight:600}.workspace-proxy-chip-filters [role=group]{gap:var(--space-1);scrollbar-width:thin;min-width:0;display:flex;overflow-x:auto}.workspace-proxy-chip-filters button{min-height:var(--control-height-compact);align-items:center;gap:var(--space-1);padding:0 var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-text-secondary);background:var(--color-surface);font-size:var(--text-meta-size);line-height:var(--text-meta-line);white-space:nowrap;display:inline-flex}.workspace-proxy-chip-filters button:hover{color:var(--color-text);border-color:var(--color-border-strong)}.workspace-proxy-chip-filters button.is-active{color:var(--color-primary);border-color:color-mix(in srgb, var(--color-primary) 32%, var(--color-border));background:var(--color-primary-soft)}.workspace-proxy-chip-filters button small{color:inherit;font-variant-numeric:tabular-nums;opacity:.72;font-size:10px;line-height:14px}.workspace-proxy-filters{gap:var(--space-2);grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(110px,.7fr)) auto;display:grid}.workspace-search-field{min-width:0;height:var(--control-height);align-items:center;gap:var(--space-2);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);color:var(--color-text-muted);background:var(--color-surface);display:flex}.workspace-search-field:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.workspace-search-field input{min-width:0;color:var(--color-text);font-size:var(--text-body-size);background:0 0;border:0;outline:0;flex:1}.workspace-search-field input::placeholder{color:var(--color-text-muted)}.workspace-search-field button{border-radius:var(--radius-small);width:28px;height:28px;color:var(--color-text-secondary);background:0 0;flex:0 0 28px;place-items:center;display:grid}.workspace-filter-select select{width:100%;height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);color:var(--color-text-secondary);background:var(--color-surface);font-size:var(--text-meta-size)}.workspace-clear-filters{min-height:var(--control-height);padding:0 var(--space-3);border-radius:var(--radius-control);color:var(--color-primary);background:var(--color-primary-soft);font-size:var(--text-meta-size);white-space:nowrap;font-weight:600}.workspace-table-summary{margin:var(--space-3) 0 var(--space-2);color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.workspace-proxy-table{border-color:var(--color-border);min-width:680px}.workspace-proxy-table>div{gap:var(--space-3);min-height:52px;color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);grid-template-columns:minmax(170px,1.2fr) .55fr .4fr minmax(130px,.9fr) minmax(120px,.75fr) .65fr}.workspace-proxy-table>div.is-heading{color:var(--color-text-muted);background:var(--color-surface-subtle);font-size:var(--text-meta-size)}.workspace-proxy-table strong{color:var(--color-text)}.workspace-proxy-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));min-width:0;display:grid}.workspace-proxy-card{gap:var(--space-3);min-width:0;padding:var(--card-padding);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);grid-template-columns:minmax(0,1fr) auto;display:grid}.workspace-proxy-card>header{gap:var(--space-1);min-width:0;display:grid}.workspace-proxy-card>header strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.workspace-proxy-card>header span{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.workspace-proxy-card>div b{border-radius:var(--radius-small);color:var(--color-text-secondary);background:var(--color-surface-subtle);font-size:var(--text-meta-size);line-height:var(--text-meta-line);padding:2px 6px;display:inline-flex}.workspace-proxy-card>div b.is-supported{color:var(--color-success);background:var(--color-success-soft)}.workspace-proxy-card>div b.is-partial,.workspace-proxy-card>div b.is-unknown{color:var(--color-warning);background:var(--color-warning-soft)}.workspace-proxy-card>div b.is-unsupported{color:var(--color-danger);background:var(--color-danger-soft)}.workspace-proxy-card>div b.is-target-native{color:var(--color-info);background:var(--color-primary-soft)}.workspace-proxy-card>footer{align-items:center;gap:var(--space-2) var(--space-3);min-width:0;padding-top:var(--space-2);border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);flex-wrap:wrap;grid-column:1/-1;display:flex}.workspace-proxy-card>footer code{color:var(--color-text-secondary)}.workspace-proxy-card>footer>span:not(.workspace-status-badge){text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.workspace-processing-pipeline{border-top:1px solid var(--color-border);margin:0;padding:0;list-style:none}.workspace-processing-step{align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-3) var(--space-2);border-bottom:1px solid var(--color-border);grid-template-columns:28px 40px minmax(0,1fr) 44px auto;display:grid}.workspace-processing-connector{display:none}.workspace-step-number{width:28px;height:28px;color:var(--color-text-muted);background:var(--color-surface-subtle);font-size:var(--text-meta-size);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;display:grid}.workspace-step-main p,.workspace-strategy-main p{margin:var(--space-1) 0 0;color:var(--color-text-secondary);font-size:var(--text-body-size);line-height:var(--text-body-line)}.workspace-step-main small,.workspace-strategy-main small{margin-top:var(--space-1);color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);display:block}.workspace-compact-toggle{min-width:var(--touch-target);min-height:var(--touch-target);place-items:center;display:grid}.workspace-compact-toggle input{appearance:none;background:var(--color-border-strong);width:36px;height:20px;box-shadow:inset 0 0 0 1px var(--color-border-strong);transition:background var(--motion-fast) var(--ease-standard);border-radius:999px}.workspace-compact-toggle input:before{content:"";background:var(--color-surface);width:16px;height:16px;transition:transform var(--motion-fast) var(--ease-standard);border-radius:50%;margin:2px;display:block;box-shadow:0 1px 3px #1720332e}.workspace-compact-toggle input:checked{background:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary)}.workspace-compact-toggle input:checked:before{transform:translate(16px)}.workspace-strategy-page,.workspace-health-page,.workspace-inspect-page{gap:var(--space-6);display:grid}.workspace-strategy-page h2,.workspace-health-section h2{color:var(--color-text);font-size:var(--text-section-size);line-height:var(--text-section-line);margin:0;font-weight:600}.workspace-strategy-grid{gap:var(--space-3);margin-top:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.workspace-strategy-card{align-items:start;gap:var(--space-3);min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);grid-template-columns:40px minmax(0,1fr) auto;display:grid}.workspace-strategy-meta{align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);flex-wrap:wrap;grid-column:2/-1;display:flex}.workspace-strategy-meta b{border-radius:var(--radius-small);color:var(--color-text-secondary);background:var(--color-surface-subtle);font-size:var(--text-meta-size);padding:2px 6px}.workspace-strategy-card>.row-action{grid-column:2/-1;justify-self:start}.workspace-advanced-section{border-top:1px solid var(--color-border)}.workspace-advanced-section summary{min-height:var(--control-height);color:var(--color-text-secondary);font-size:var(--text-body-size);align-items:center;font-weight:600;display:flex}.workspace-health-ready{justify-content:center;align-items:center;gap:var(--space-4);min-height:220px;color:var(--color-success);background:var(--color-success-soft);display:flex}.workspace-health-ready strong{color:var(--color-text);font-size:var(--text-section-size);line-height:var(--text-section-line)}.workspace-health-ready p{margin:var(--space-1) 0 0;color:var(--color-text-secondary);font-size:var(--text-body-size);line-height:var(--text-body-line)}.workspace-health-section{border-top:1px solid var(--color-border)}.workspace-health-section>header{align-items:center;gap:var(--space-2);min-height:48px;color:var(--color-text-secondary);display:flex}.workspace-health-section>header span{color:var(--color-text-muted);font-size:var(--text-meta-size);font-variant-numeric:tabular-nums;margin-left:auto}.workspace-health-section[data-severity=error]>header{color:var(--color-danger)}.workspace-health-section[data-severity=warning]>header{color:var(--color-warning)}.workspace-health-section[data-severity=info]>header{color:var(--color-info)}.workspace-health-section article{align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-3) var(--space-2);border-top:1px solid var(--color-border);display:flex}.workspace-health-section article>div{flex:1;min-width:0}.workspace-health-section article strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line)}.workspace-health-section article span{gap:var(--space-2);margin-top:var(--space-1);color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);flex-wrap:wrap;display:flex}.workspace-health-section article button{min-height:var(--control-height-compact);align-items:center;gap:var(--space-1);padding:0 var(--space-2);border-radius:var(--radius-control);color:var(--color-primary);background:var(--color-primary-soft);font-size:var(--text-meta-size);font-weight:600;display:inline-flex}.workspace-health-empty{padding:var(--space-3) var(--space-2);border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);margin:0}.route-inspector-panel{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);margin:0}.inspector-scroll>.route-inspector-panel{margin-bottom:var(--space-6)}.route-inspector-heading{gap:var(--space-3)}.route-inspector-heading>div{gap:0}.route-inspector-heading span{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);letter-spacing:0;text-transform:none;font-weight:500}.route-inspector-heading h3{color:var(--color-text);font-size:var(--text-section-size);line-height:var(--text-section-line);font-weight:600}.route-inspector-heading .icon-button{width:var(--control-height-compact);height:var(--control-height-compact);flex:0 0 var(--control-height-compact)}.route-inspector-intro{margin:var(--space-2) 0 var(--space-4);color:var(--color-text-secondary);font-size:var(--text-body-size);line-height:var(--text-body-line)}.route-inspector-query{gap:var(--space-3)}.route-inspector-query .inspector-field{margin-bottom:0}.route-inspector-query .inspector-field input,.route-inspector-query .inspector-field select{height:var(--control-height);min-height:var(--control-height);font-size:var(--text-body-size)}.route-inspector-empty,.route-inspector-blocked{gap:var(--space-2);margin-top:var(--space-4);padding:var(--space-3);border-radius:var(--radius-control);color:var(--color-text-secondary);background:var(--color-surface-subtle);font-size:var(--text-body-size);line-height:var(--text-body-line)}.route-inspector-blocked{color:var(--color-danger);background:var(--color-danger-soft)}.route-inspector-result{gap:var(--space-2);margin-top:var(--space-4)}.route-inspector-result-header{padding:var(--space-3);border-radius:var(--radius-control);color:var(--color-success);background:var(--color-success-soft);gap:0}.route-inspector-result-header span{font-size:var(--text-meta-size);line-height:var(--text-meta-line);letter-spacing:0;text-transform:none;font-weight:600}.route-inspector-result-header strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line)}.route-inspector-detail{gap:var(--space-1) var(--space-3);padding:var(--space-3);border-color:var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);grid-template-columns:112px minmax(0,1fr)}.route-inspector-detail>span,.route-inspector-targets>span{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.route-inspector-detail>strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line)}.route-inspector-detail>small{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.route-inspector-targets{gap:var(--space-2);padding:var(--space-3);border-color:var(--color-border);border-radius:var(--radius-control);background:var(--color-surface)}.route-inspector-targets>div{gap:var(--space-3)}.route-inspector-targets b,.route-inspector-targets em{font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.route-inspector-targets b{color:var(--color-text-secondary)}.route-inspector-targets em.is-supported{color:var(--color-success)}.route-inspector-targets em.is-unsupported{color:var(--color-danger)}.route-inspector-targets em.is-unknown{color:var(--color-warning)}.route-inspector-rules{border-color:var(--color-border)}.route-inspector-rules summary{min-height:var(--control-height);color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);align-items:center;padding:0;font-weight:600;display:flex}.route-inspector-rules>div{gap:var(--space-1) var(--space-2);padding:var(--space-2) 0;border-color:var(--color-border)}.route-inspector-rules>div.is-matched{color:var(--color-success)}.route-inspector-rules strong{font-size:var(--text-body-size);line-height:var(--text-body-line)}.route-inspector-rules span,.route-inspector-rules small{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.structured-workspace:has(>.workspace-editor-backdrop[data-shell-mode=desktop]){grid-template-columns:var(--sidebar-width) minmax(0, 1fr) var(--inspector-width)}.workspace-editor-backdrop[data-shell-mode=desktop]{z-index:auto;background:0 0;grid-column:3;min-width:0;min-height:0;position:relative;inset:auto}.workspace-editor-backdrop[data-shell-mode=desktop] .workspace-editor-panel{border-left:1px solid var(--color-border);width:100%;box-shadow:none;animation:none}@media (width<=1023px){.workspace[data-shell-mode]{grid-template-columns:var(--palette-rail-width) 0 minmax(0, 1fr) 0 0}.workspace[data-shell-mode]>.canvas-region{grid-column:3}.visual-library-panel{width:var(--palette-rail-width)}.visual-library-panel:not(.is-collapsed){width:min(320px,100% - 24px);box-shadow:var(--shadow-floating);position:absolute;inset:0 auto 0 0}.visual-inspector-panel{z-index:30;width:min(var(--inspector-width), calc(100vw - var(--palette-rail-width)));box-shadow:var(--shadow-floating);flex-direction:column;display:flex;position:absolute;inset:0 0 0 auto}.visual-inspector-panel>.inspector{flex:auto;height:auto;min-height:0}.visual-inspector-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:52px;padding:var(--space-1) var(--space-2) var(--space-1) var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-surface);flex:0 0 52px;display:flex}.visual-inspector-toolbar strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line);font-weight:600}.visual-inspector-dismiss{width:var(--touch-target);height:var(--touch-target);flex-basis:var(--touch-target)}.topbar{gap:var(--space-2);padding-inline:var(--space-3)}.brand{min-width:max-content}.project-switcher-wrap{flex-basis:190px}.save-indicator{gap:0;font-size:0}.topbar .runtime-service-trigger{width:var(--control-height-compact);justify-content:center;padding:0;font-size:0}.topbar .top-actions .runtime-service-wrap,.topbar .top-actions .top-action-group{display:block}.topbar .top-actions .top-action-group{display:flex}.top-preview-action span{display:none}.top-preview-action{width:var(--control-height-compact);padding:0}.structured-workspace{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.workspace-navigation{min-height:auto;padding:var(--space-2) var(--space-6);border-right:0;border-bottom:1px solid var(--color-border)}.workspace-target-summary,.workspace-navigation-items,.visual-flow-link{display:none}.workspace-mobile-navigation{gap:var(--space-1);grid-template-columns:repeat(5,minmax(0,1fr));width:100%;display:grid}.workspace-mobile-navigation-trigger{width:100%;min-height:var(--touch-target);align-items:center;gap:var(--space-2);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);color:var(--color-text-secondary);background:var(--color-surface);font-size:var(--text-body-size);line-height:var(--text-body-line);text-align:left;grid-template-columns:22px 20px minmax(0,1fr) auto 18px;display:grid}.workspace-mobile-navigation-trigger:hover{color:var(--color-text);background:var(--color-surface-subtle)}.workspace-mobile-navigation-trigger:focus-visible,.workspace-mobile-navigation-close:focus-visible,.workspace-mobile-navigation-drawer nav button:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:-1px}.workspace-mobile-navigation-trigger>span{min-width:0;color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.workspace-mobile-navigation-trigger>small{border-radius:var(--radius-small);min-width:24px;color:var(--color-text-muted);background:var(--color-surface-subtle);font-size:var(--text-meta-size);line-height:var(--text-meta-line);font-variant-numeric:tabular-nums;text-align:center;padding:2px 6px}.workspace-mobile-navigation-trigger>svg:last-child{color:var(--color-text-muted)}.workspace-mobile-navigation-current-icon{color:var(--color-primary)}.workspace-mobile-navigation-backdrop{z-index:var(--z-dialog);background:var(--color-backdrop);width:100vw;height:100dvh;animation:workspace-navigation-backdrop-in var(--motion-standard) var(--ease-standard) both;justify-content:flex-start;align-items:stretch;display:flex;position:fixed;inset:0;overflow:hidden}.workspace-mobile-navigation-drawer{width:min(84vw,340px);max-width:calc(100vw - var(--space-6));min-width:0;min-height:0;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);border-right:1px solid var(--color-border);color:var(--color-text);background:var(--color-surface);box-shadow:var(--shadow-floating);animation:workspace-navigation-drawer-in var(--motion-standard) var(--ease-standard) both;grid-template-rows:auto minmax(0,1fr);display:grid}.workspace-mobile-navigation-drawer>header{grid-template-columns:minmax(0, 1fr) var(--touch-target);align-items:center;gap:var(--space-2);min-height:60px;padding:var(--space-2) var(--space-3) var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border);display:grid}.workspace-mobile-navigation-drawer>header strong{font-size:var(--text-section-size);line-height:var(--text-section-line);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.workspace-mobile-navigation-close{width:var(--touch-target);height:var(--touch-target);border-radius:var(--radius-control);color:var(--color-text-secondary);background:0 0;place-items:center;display:grid}.workspace-mobile-navigation-close:hover{color:var(--color-text);background:var(--color-surface-subtle)}.workspace-mobile-navigation-drawer>nav{align-content:start;gap:var(--space-1);overscroll-behavior:contain;min-height:0;padding:var(--space-3) var(--space-2) var(--space-6);-webkit-overflow-scrolling:touch;display:grid;overflow:hidden auto}.workspace-mobile-navigation-drawer nav button{width:100%;min-width:0;min-height:var(--touch-target);align-items:center;gap:var(--space-2);padding:0 var(--space-3);border-radius:var(--radius-control);color:var(--color-text-secondary);font-size:var(--text-body-size);line-height:var(--text-body-line);text-align:left;touch-action:manipulation;background:0 0;grid-template-columns:24px minmax(0,1fr) auto;display:grid}.workspace-mobile-navigation-drawer nav button:hover{color:var(--color-text);background:var(--color-surface-subtle)}.workspace-mobile-navigation-drawer nav button.is-active{color:var(--color-primary);background:var(--color-primary-soft)}.workspace-mobile-navigation-drawer nav button>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:500;overflow:hidden}.workspace-mobile-navigation-drawer nav button.is-active>span{font-weight:600}.workspace-mobile-navigation-drawer nav button>small{border-radius:var(--radius-small);min-width:24px;color:var(--color-text-muted);background:var(--color-surface-subtle);font-size:var(--text-meta-size);line-height:var(--text-meta-line);font-variant-numeric:tabular-nums;text-align:center;padding:2px 6px}.workspace-mobile-navigation-drawer nav button.is-active>small{color:var(--color-primary);background:var(--color-surface)}.workspace-mobile-navigation{gap:var(--space-1);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.workspace-mobile-navigation>button{min-width:0;min-height:var(--touch-target);justify-content:center;align-items:center;gap:var(--space-2);padding:0 var(--space-2);border-radius:var(--radius-control);color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);background:0 0;display:flex}.workspace-mobile-navigation>button>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.workspace-mobile-navigation>button.is-active{color:var(--color-primary);background:var(--color-primary-soft)}.workspace-content-header,.workspace-section-body{padding-inline:var(--space-6)}.workspace-proxy-filters{grid-template-columns:minmax(220px,1fr) repeat(2,minmax(140px,.7fr))}}@media (width<=900px){.app-shell{grid-template-rows:108px minmax(0, 1fr) var(--statusbar-height)}.topbar{align-content:stretch;gap:4px var(--space-2);height:108px;min-height:108px;padding:4px var(--space-3);grid-template-rows:48px 52px;grid-template-columns:auto minmax(72px,1fr) auto;display:grid}.brand{grid-area:1/1;min-width:0}.version-mark{display:none}.project-switcher-wrap{grid-area:1/2;width:100%;min-width:0}.project-switcher{height:var(--touch-target);padding-block:0;padding-left:var(--space-2)}.project-switcher small{display:none}.project-name-input{height:var(--touch-target)}.project-switcher-toggle{width:var(--touch-target);height:var(--touch-target);flex-basis:var(--touch-target)}.product-view-switcher{grid-area:2/1/auto/-1;width:100%;min-width:0}.product-view-switcher button{min-height:var(--touch-target)}.top-actions{grid-area:1/3;gap:2px}.topbar .top-actions .top-action-group,.topbar[data-view=workspace] .top-preview-action{display:none}.top-actions .runtime-service-trigger,.top-actions .top-preview-action,.top-actions .top-export-action,.top-actions .topbar-overflow-trigger{width:var(--touch-target);height:var(--touch-target);min-height:var(--touch-target);flex-basis:var(--touch-target);padding:0}.top-preview-action span,.top-export-action span{display:none}.visual-flow-mobile-toolbar{z-index:12;right:var(--space-3);bottom:var(--space-3);gap:var(--space-1);padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-panel);display:flex;position:absolute}.visual-flow-mobile-toolbar .ui-icon-button{width:var(--touch-target);height:var(--touch-target);flex-basis:var(--touch-target)}.proxy-controls{bottom:calc(var(--touch-target) + var(--space-6))!important}.proxy-controls button{width:var(--touch-target)!important;height:var(--touch-target)!important}.structured-workspace{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.workspace-navigation{min-height:auto;padding:var(--space-2) var(--space-3);border-right:0;border-bottom:1px solid var(--color-border)}.workspace-target-summary,.workspace-navigation-items,.visual-flow-link{display:none}.workspace-mobile-navigation{gap:var(--space-1);grid-template-columns:repeat(5,minmax(0,1fr));width:100%;display:grid}.workspace-content-header{padding:var(--space-4) var(--space-6)}.workspace-content-header>div:last-child:not(:first-child){flex-wrap:wrap;justify-content:flex-end}.workspace-section-body{width:100%;padding:var(--space-4) var(--space-6) var(--space-8);overflow-x:hidden}.workspace-proxy-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-search-field{grid-column:1/-1}.workspace-target-context{min-height:var(--touch-target)}}@media (width<=767px){.topbar{gap:4px var(--space-2);height:108px;min-height:108px;padding:4px var(--space-3);grid-template-rows:48px 52px;grid-template-columns:auto minmax(72px,1fr) auto;display:grid}.brand{grid-area:1/1;min-width:0}.brand-mark{width:28px;height:28px}.brand>strong{font-size:15px;line-height:20px}.version-mark{display:none}.project-switcher-wrap{grid-area:1/2;width:100%;min-width:0}.project-switcher{height:var(--touch-target);padding-block:0;padding-left:var(--space-2)}.project-switcher small{display:none}.project-name-input{height:var(--touch-target);font-size:var(--text-meta-size)}.project-switcher-toggle{width:var(--touch-target);height:var(--touch-target);flex-basis:var(--touch-target)}.product-view-switcher{grid-area:2/1/auto/-1;width:100%;min-width:0}.product-view-switcher button{min-height:var(--touch-target)}.top-actions{grid-area:1/3;gap:2px}.top-actions .save-indicator,.topbar .top-actions .top-action-group,.top-actions .top-preview-action{display:none}.top-actions .runtime-service-trigger,.top-actions .top-export-action,.top-actions .topbar-overflow-trigger{width:var(--touch-target);height:var(--touch-target);min-height:var(--touch-target);flex-basis:var(--touch-target);padding:0}.top-export-action span{display:none}.topbar .runtime-service-popover{top:56px;right:var(--space-3);width:min(340px,100vw - 24px);position:fixed}.project-menu{top:52px;left:var(--space-3);right:var(--space-3);width:auto;position:fixed}.topbar-overflow-menu{top:52px;right:var(--space-3);position:fixed}.visual-library-panel:not(.is-collapsed){width:min(320px,100% - 12px)}.visual-inspector-panel{width:100%;inset:0}.visual-flow-mobile-toolbar{z-index:12;right:var(--space-3);bottom:var(--space-3);gap:var(--space-1);padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-panel);display:flex;position:absolute}.visual-flow-mobile-toolbar .ui-icon-button{width:var(--touch-target);height:var(--touch-target);flex-basis:var(--touch-target)}.proxy-minimap{display:none}.proxy-controls button{width:var(--touch-target)!important;height:var(--touch-target)!important}.context-menu button{min-height:var(--touch-target);height:var(--touch-target);font-size:var(--text-meta-size)}.flow-handle:after{content:"";width:var(--touch-target);height:var(--touch-target);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.workspace-editor-backdrop[data-shell-mode=mobile]{background:var(--color-surface);position:absolute;inset:0}.workspace-editor-backdrop[data-shell-mode=mobile] .workspace-editor-panel{width:100%;height:100%;box-shadow:none;animation:none}.workspace-editor-toolbar button,.workspace-input-options label,.workspace-input-editor select,.workspace-editor-panel .icon-button,.workspace-editor-panel .inspector-secondary-button,.workspace-editor-panel .inspector-primary-button,.workspace-editor-panel .dashed-button,.workspace-editor-panel .danger-button{min-height:var(--touch-target)}.statusbar{height:var(--touch-target);gap:var(--space-2);padding-inline:var(--space-3)}.statusbar[data-view=workspace] .status-ok,.statusbar[data-view=workspace] .status-issues,.status-save{display:inline-flex}.statusbar[data-view=workspace]>span:not(.status-spacer):not(.status-ok):not(.status-issues):not(.status-save),.statusbar[data-view=visual-flow] .status-hint,.statusbar[data-view=visual-flow] .status-separator{display:none}.statusbar button{min-height:var(--touch-target);height:var(--touch-target)}.workspace-content-header{align-items:flex-start;gap:var(--space-3);min-height:0;padding:var(--space-4);flex-direction:column}.workspace-content-header>div:last-child:not(:first-child){justify-content:flex-start;width:100%}.workspace-content-header .primary-action,.workspace-content-header .secondary-action,.workspace-add-menu>.primary-action{min-height:var(--touch-target);height:auto;padding:var(--space-2) var(--space-3)}.workspace-section-body{padding:var(--space-4) var(--space-3) var(--space-8)}.workspace-source-item{padding:var(--space-3) var(--space-1);grid-template-columns:40px minmax(0,1fr)}.workspace-row-actions{grid-column:1/-1;justify-content:flex-end}.workspace-row-actions .icon-button,.workspace-step-actions .icon-button,.workspace-step-actions .row-action,.workspace-inline-confirm button{min-width:var(--touch-target);min-height:var(--touch-target);height:var(--touch-target)}.workspace-inline-confirm{align-items:stretch}.workspace-inline-confirm span{flex-basis:100%}.workspace-proxy-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-search-field,.workspace-clear-filters{grid-column:1/-1}.workspace-search-field,.workspace-filter-select select,.workspace-clear-filters{min-height:var(--touch-target);height:var(--touch-target)}.workspace-proxy-chip-filters>section{grid-template-columns:1fr}.workspace-proxy-chip-filters [role=group]{padding-bottom:var(--space-1)}.workspace-proxy-chip-filters button{min-height:var(--touch-target)}.workspace-proxy-grid{grid-template-columns:1fr}.workspace-proxy-table{border-top:0;min-width:0}.workspace-proxy-table>div.is-heading{display:none}.workspace-proxy-table>div:not(.is-heading){gap:var(--space-1) var(--space-3);min-width:0;margin-bottom:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);grid-template-columns:minmax(0,1fr) auto;display:grid}.workspace-proxy-table>div:not(.is-heading) strong{grid-area:1/1}.workspace-proxy-table>div:not(.is-heading) b{grid-area:1/2}.workspace-proxy-table>div:not(.is-heading) code{grid-area:2/1}.workspace-proxy-table>div:not(.is-heading)>span:first-of-type{grid-area:2/2}.workspace-proxy-table>div:not(.is-heading)>span:nth-of-type(2){text-overflow:ellipsis;white-space:nowrap;grid-area:3/1/auto/-1;overflow:hidden}.workspace-proxy-table>div:not(.is-heading)>.workspace-status-badge{grid-area:4/1/auto/-1;justify-self:start}.workspace-processing-step{gap:var(--space-2);padding:var(--space-3) var(--space-1);grid-template-columns:28px 40px minmax(0,1fr)}.workspace-processing-step .workspace-compact-toggle{grid-column:2}.workspace-step-actions{flex-wrap:wrap;grid-column:3;justify-content:flex-end}.workspace-strategy-grid{grid-template-columns:1fr}.workspace-strategy-card{padding:var(--space-3);grid-template-columns:40px minmax(0,1fr)}.workspace-strategy-meta,.workspace-strategy-card>.row-action{grid-column:2}.workspace-strategy-card>.row-action{min-height:var(--touch-target)}.workspace-health-ready{min-height:180px;padding:var(--space-4)}.workspace-health-section article{flex-direction:column;align-items:flex-start}.workspace-health-section article button{min-height:var(--touch-target)}.route-inspector-panel{padding:var(--space-3)}.route-inspector-heading .icon-button{width:var(--touch-target);height:var(--touch-target);flex-basis:var(--touch-target)}.route-inspector-query{grid-template-columns:1fr}.route-inspector-detail{grid-template-columns:96px minmax(0,1fr)}.workspace-mobile-navigation-drawer{width:min(86vw,336px)}.app-shell{grid-template-rows:calc(52px + env(safe-area-inset-top)) minmax(0, 1fr) 0}.topbar{min-height:calc(52px + env(safe-area-inset-top));height:calc(52px + env(safe-area-inset-top));grid-template-columns:var(--touch-target) minmax(88px, 1fr) auto 18px var(--touch-target);align-items:center;gap:0 var(--space-1);padding:env(safe-area-inset-top) var(--space-2) 0;grid-template-rows:52px;display:grid}.topbar-mobile-menu{width:var(--touch-target);height:var(--touch-target);min-width:var(--touch-target);min-height:var(--touch-target);color:var(--color-text-secondary);grid-column:1;display:inline-grid}.topbar .brand{gap:var(--space-1);grid-area:1/2;min-width:0}.topbar .brand-mark{width:24px;height:24px}.topbar .brand>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;line-height:20px;overflow:hidden}.topbar .project-switcher-wrap:not([data-mobile-open]){display:none}.topbar .project-switcher-wrap[data-mobile-open]{z-index:var(--z-popover);top:calc(52px + env(safe-area-inset-top));left:var(--space-3);right:var(--space-3);width:auto;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-floating);display:block;position:fixed}.topbar .project-switcher-wrap[data-mobile-open] .project-switcher{height:var(--touch-target)}.topbar .project-switcher-wrap[data-mobile-open] .project-name-input{height:var(--touch-target);font-size:var(--text-body-size)}.topbar .project-switcher-wrap[data-mobile-open] .project-menu{width:100%;max-height:min(360px,100dvh - 132px);margin-top:var(--space-2);box-shadow:none;position:static;overflow-y:auto}.topbar .project-switcher-wrap[data-mobile-open] .project-menu .project-menu-view-switch{min-height:var(--touch-target);margin-top:var(--space-1);border-top:1px solid var(--color-border);display:flex}.topbar .product-view-switcher{display:none}.topbar-mobile-target{max-width:72px;padding:var(--space-1) var(--space-2);border-radius:var(--radius-small);color:var(--color-text-secondary);background:var(--color-surface-subtle);font-size:var(--text-meta-size);line-height:var(--text-meta-line);text-overflow:ellipsis;white-space:nowrap;grid-column:3;font-weight:600;display:block;overflow:hidden}.topbar-mobile-health{background:var(--color-warning);width:8px;height:8px;box-shadow:0 0 0 3px var(--color-warning-soft);border-radius:50%;grid-column:4;justify-self:center;display:block}.topbar-mobile-health[data-status=ready]{background:var(--color-success);box-shadow:0 0 0 3px var(--color-success-soft)}.topbar-mobile-health[data-status=blocked]{background:var(--color-danger);box-shadow:0 0 0 3px var(--color-danger-soft)}.topbar .top-actions{grid-area:1/5;gap:0;margin:0;display:flex}.topbar .top-actions>:not(.top-export-action){display:none}.topbar .top-export-action{width:var(--touch-target);height:var(--touch-target);min-height:var(--touch-target);padding:0}.topbar .top-export-action svg{width:19px;height:19px}.topbar .top-export-action span{display:none}.structured-workspace{grid-template-rows:minmax(0,1fr)}.workspace-content{padding-bottom:calc(56px + env(safe-area-inset-bottom));grid-row:1}.workspace-navigation{z-index:var(--z-topbar);height:calc(56px + env(safe-area-inset-bottom));padding:0 max(var(--space-2), env(safe-area-inset-right)) env(safe-area-inset-bottom) max(var(--space-2), env(safe-area-inset-left));border-top:1px solid var(--color-border);background:color-mix(in srgb, var(--color-surface) 92%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:0;position:fixed;bottom:0;left:0;right:0}.workspace-mobile-navigation{grid-template-columns:repeat(5,minmax(0,1fr));gap:0;width:100%;height:56px;display:grid}.workspace-mobile-navigation>button{min-height:var(--touch-target);padding:var(--space-1) 2px;border-radius:0;flex-direction:column;gap:2px;font-size:10px;line-height:12px;display:flex}.workspace-mobile-navigation>button>svg{flex:none}.workspace-mobile-navigation>button.is-active{background:0 0}.workspace-mobile-navigation>button.is-active:before{content:"";background:var(--color-primary);border-radius:0 0 2px 2px;width:24px;height:2px;position:absolute;top:0}.workspace-mobile-navigation>button{position:relative}.statusbar{display:none}.workspace-section-body{padding-bottom:calc(var(--space-8) + 56px + env(safe-area-inset-bottom))}}@keyframes workspace-navigation-backdrop-in{0%{opacity:0}}@keyframes workspace-navigation-drawer-in{0%{transform:translate(-16px)}}@media (prefers-reduced-motion:reduce){.workspace-mobile-navigation-backdrop,.workspace-mobile-navigation-drawer{animation:none}}.routing-workspace,.dns-workspace,.workspace-export-page{min-width:0}.routing-workspace-heading,.workspace-section-intro{justify-content:space-between;align-items:center;gap:var(--space-4);min-width:0;margin-bottom:var(--space-4);display:flex}.routing-workspace-heading>p,.workspace-section-intro>p{min-width:0;color:var(--color-text-secondary);font-size:var(--text-body-size);line-height:var(--text-body-line);margin:0}.routing-add,.dns-add-menu{flex:none;position:relative}.routing-add{margin-inline-start:auto}.routing-add-popover,.dns-preset-menu{z-index:var(--z-popover);width:min(360px,100vw - 32px);max-height:min(520px,100vh - 180px);padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);box-shadow:var(--shadow-floating)}.routing-add-popover{grid-template-rows:auto minmax(0,1fr);display:grid;position:fixed;overflow:hidden}.dns-preset-menu{top:calc(100% + var(--space-2));position:absolute;right:0;overflow:auto}.routing-add-popover>header{min-height:var(--control-height);grid-template-columns:var(--control-height) minmax(0, 1fr) var(--control-height);align-items:center;gap:var(--space-2);margin:calc(var(--space-1) * -1) 0 var(--space-1);display:grid}.routing-add-popover>header>strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line);text-align:center;text-overflow:ellipsis;white-space:nowrap;grid-column:2;font-weight:600;overflow:hidden}.routing-add-popover>header>.icon-button:first-child{grid-column:1}.routing-add-popover>header>.icon-button:last-child{grid-column:3}.routing-add-popover>header>strong:first-child{text-align:left;grid-column:1/3}.routing-add-content{overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;min-height:0;overflow:hidden auto}.routing-add-content.is-service{overflow:hidden}.routing-kind-choices,.routing-matcher-choices,.routing-service-choices>div{gap:var(--space-1);display:grid}.routing-kind-choices>button,.routing-matcher-choices>button,.routing-service-choices>div>button,.dns-preset-menu>button{align-items:center;gap:var(--space-3);width:100%;min-width:0;min-height:56px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-small);color:var(--color-text-secondary);text-align:left;background:0 0;grid-template-columns:minmax(0,1fr) auto;display:grid}.routing-kind-choices>button:hover:not(:disabled),.routing-matcher-choices>button:hover:not(:disabled),.routing-service-choices>div>button:hover:not(:disabled),.dns-preset-menu>button:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-subtle)}.routing-kind-choices>button:disabled,.routing-matcher-choices>button:disabled,.routing-service-choices>div>button:disabled,.dns-preset-menu>button:disabled{opacity:.5}.routing-kind-choices>button>span,.routing-matcher-choices>button>span,.routing-service-choices>div>button>span,.dns-preset-menu>button>span{gap:2px;min-width:0;display:grid}.routing-kind-choices strong,.routing-matcher-choices strong,.routing-service-choices strong,.dns-preset-menu strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.routing-kind-choices small,.routing-matcher-choices small,.routing-service-choices small,.dns-preset-menu small{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.routing-kind-choices b,.routing-matcher-choices b,.dns-preset-menu i{border-radius:var(--radius-small);color:var(--color-warning);background:var(--color-warning-soft);white-space:nowrap;padding:3px 6px;font-size:10px;font-style:normal;font-weight:600;line-height:14px}.routing-kind-choices b[data-capability=unsupported],.routing-matcher-choices b[data-capability=unsupported],.dns-preset-menu i{color:var(--color-danger);background:var(--color-danger-soft)}.routing-service-choices{min-height:0}.routing-add-content.is-service>.routing-service-choices{grid-template-rows:auto minmax(0,1fr);height:100%;display:grid}.routing-service-choices>label{min-height:var(--control-height);align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);color:var(--color-text-muted);background:var(--color-surface);display:flex}.routing-service-choices>label:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.routing-service-choices>label input{min-width:0;color:var(--color-text);font-size:var(--text-body-size);background:0 0;border:0;outline:0;flex:1}.routing-service-choices>div{overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;min-height:0;max-height:340px;overflow-y:auto}.routing-add-content.is-service .routing-service-choices>div{max-height:none}.routing-service-choices .service-avatar{border-radius:var(--radius-control);width:34px;height:34px}.routing-service-choices>div>p{padding:var(--space-6) var(--space-3);color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);text-align:center;margin:0}.routing-rule-list,.dns-resolver-list{border-top:1px solid var(--color-border);min-width:0}.routing-rule-row{align-items:center;gap:var(--space-3);min-width:0;min-height:72px;padding:var(--space-3) var(--space-2);border-bottom:1px solid var(--color-border);background:var(--color-surface);grid-template-columns:40px 28px minmax(180px,1fr) minmax(140px,.6fr) auto auto;display:grid}.routing-rule-row[data-status=warning]{box-shadow:inset 3px 0 var(--color-warning)}.routing-rule-row[data-status=error]{box-shadow:inset 3px 0 var(--color-danger)}.routing-rule-row[data-status=disabled]{opacity:.64}.routing-rule-row.is-final{background:var(--color-surface-subtle);grid-template-columns:28px minmax(180px,1fr) minmax(140px,.6fr) auto auto}.routing-drag-handle{width:var(--control-height);height:var(--control-height);border-radius:var(--radius-control);color:var(--color-text-muted);cursor:grab;touch-action:none;background:0 0;place-items:center;display:grid}.routing-drag-handle:hover{color:var(--color-text);background:var(--color-surface-subtle)}.routing-drag-handle:active{cursor:grabbing}.routing-rule-order{width:28px;height:28px;color:var(--color-text-muted);background:var(--color-surface-subtle);font-size:var(--text-meta-size);line-height:var(--text-meta-line);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;display:grid}.routing-rule-row.is-final .routing-rule-order{color:var(--color-success);background:var(--color-success-soft);font-weight:600}.routing-rule-summary,.routing-rule-target{gap:var(--space-1);min-width:0;display:grid}.routing-rule-target{border-radius:var(--radius-small);text-align:left;background:0 0;padding:0}.routing-rule-target:hover{background:var(--color-surface-subtle)}.routing-rule-summary>strong,.routing-rule-target strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.routing-rule-summary>span,.routing-rule-target>small{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.routing-rule-summary>span b{margin-right:var(--space-2);color:var(--color-text-secondary);font-weight:600}.routing-rule-summary>span code{max-width:100%;padding:1px var(--space-1);border-radius:var(--radius-small);color:var(--color-text-secondary);background:var(--color-surface-subtle);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.routing-rule-target>span{align-items:center;gap:var(--space-2);min-width:0;color:var(--color-primary);display:flex}.routing-rule-target>span svg{flex:none}.routing-rule-status{align-items:center;gap:var(--space-1);color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);white-space:nowrap;display:inline-flex}.routing-rule-status[data-status=ready]{color:var(--color-success)}.routing-rule-status[data-status=warning]{color:var(--color-warning)}.routing-rule-status[data-status=error]{color:var(--color-danger)}.routing-rule-actions{justify-content:flex-end;align-items:center;gap:var(--space-1);display:flex}.routing-rule-actions .icon-button{width:var(--control-height);height:var(--control-height);flex:0 0 var(--control-height)}.workspace-empty-state--action>p,.dns-workspace .workspace-empty-state>p{max-width:520px;color:var(--color-text-secondary);font-size:var(--text-body-size);line-height:var(--text-body-line);text-align:center;margin:0}.workspace-empty-state--action>.primary-action{margin-top:var(--space-1)}.dns-preset-menu>button{grid-template-columns:24px minmax(0,1fr) auto}.dns-resolver-list{display:grid}.dns-resolver-list>article{gap:var(--space-3);min-width:0;padding:var(--space-4) var(--space-2);border-bottom:1px solid var(--color-border);background:var(--color-surface);display:grid}.dns-resolver-list>article.is-unsupported{box-shadow:inset 3px 0 var(--color-danger)}.dns-resolver-list>article>header,.dns-resolver-list>article>footer{justify-content:space-between;align-items:center;gap:var(--space-3);min-width:0;display:flex}.dns-resolver-list>article>header>span{align-items:center;gap:var(--space-2);min-width:0;color:var(--color-primary);display:flex}.dns-resolver-list>article>header>span>span{gap:2px;min-width:0;display:grid}.dns-resolver-list>article>header strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.dns-resolver-list>article>header small{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dns-resolver-list>article>header em{border-radius:var(--radius-small);color:var(--color-danger);background:var(--color-danger-soft);flex:none;padding:3px 6px;font-size:10px;font-style:normal;font-weight:600;line-height:14px}.dns-resolver-fields{gap:var(--space-3);grid-template-columns:minmax(150px,1fr) minmax(120px,.55fr) minmax(220px,1.5fr) minmax(120px,.55fr);min-width:0;display:grid}.dns-resolver-fields>label{gap:var(--space-1);min-width:0;color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);display:grid}.dns-resolver-fields input,.dns-resolver-fields select{width:100%;min-width:0;height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-surface);font-size:var(--text-body-size);outline:0}.dns-resolver-fields input:focus,.dns-resolver-fields select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.dns-resolver-fields input:disabled{color:var(--color-text-muted);background:var(--color-surface-subtle)}.dns-enabled-toggle{min-height:var(--control-height);align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);display:inline-flex}.dns-enabled-toggle input{width:18px;height:18px;accent-color:var(--color-primary)}.dns-resolver-list>article>footer .icon-button{width:var(--control-height);height:var(--control-height);color:var(--color-danger)}.workspace-export-page{gap:var(--space-6);display:grid}.workspace-export-layout{gap:var(--space-6);min-width:0;display:grid}.workspace-export-settings{align-content:start;gap:var(--space-6);min-width:0;display:grid}.workspace-export-preview{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);grid-template-rows:auto 34px minmax(0,1fr);min-width:0;height:min(680px,100vh - 190px);min-height:520px;display:grid;overflow:hidden}.workspace-export-preview>header{justify-content:space-between;align-items:center;gap:var(--space-3);min-width:0;min-height:60px;padding:var(--space-2) var(--space-3) var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border);display:flex}.workspace-export-preview>header>div:first-child{gap:2px;min-width:0;display:grid}.workspace-export-preview>header>div:first-child>span{color:var(--color-primary);letter-spacing:.08em;font-size:10px;font-weight:700;line-height:14px}.workspace-export-preview>header h2{color:var(--color-text);font-size:var(--text-section-size);line-height:var(--text-section-line);margin:0;font-weight:600}.workspace-export-preview>header>div:last-child{gap:var(--space-2);display:flex}.workspace-export-code-toolbar{align-items:center;gap:var(--space-3);min-width:0;padding:0 var(--space-3);color:#aeb7c6;font-size:var(--text-meta-size);line-height:var(--text-meta-line);background:#2b3039;display:flex}.workspace-export-code-toolbar code{color:#d9deea;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.workspace-export-code-toolbar span{flex:none}.workspace-export-code{min-width:0;min-height:0;padding:var(--space-4) var(--space-4) var(--space-6) 52px;color:#d9deea;font-family:var(--font-mono);font-size:var(--text-code-size);tab-size:2;background:#22262e;margin:0;line-height:20px;overflow:auto}.workspace-export-code li{min-width:max-content;padding-left:var(--space-2);white-space:pre}.workspace-export-code li::marker{color:#737d8d;font-variant-numeric:tabular-nums}.workspace-export-code .token-key{color:#8fc7ff}.workspace-export-code .token-value{color:#d9c59b}.workspace-export-code .token-section{color:#a9d7b4;font-weight:700}.workspace-export-preview-body{grid-template-rows:minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.workspace-export-preview-body.has-issues{grid-template-rows:auto minmax(0,1fr)}.workspace-export-diagnostics{max-height:190px;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);background:var(--color-surface-subtle);overflow:auto}.workspace-export-diagnostics article{gap:2px var(--space-2);padding:var(--space-2) 0;grid-template-columns:auto minmax(0,1fr);display:grid}.workspace-export-diagnostics article+article{border-top:1px solid var(--color-border)}.workspace-export-diagnostics article>span{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);font-weight:600}.workspace-export-diagnostics article>span em{margin-left:var(--space-1);font-style:normal}.workspace-export-diagnostics article>code{min-width:0;color:var(--color-text-secondary);font-size:var(--text-code-size);line-height:var(--text-code-line);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.workspace-export-diagnostics article>p{color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);grid-column:1/-1;margin:0}.workspace-export-diagnostics article[data-severity=error]>span{color:var(--color-danger)}.workspace-export-diagnostics article[data-severity=warning]>span{color:var(--color-warning)}.workspace-export-section>.surge-projection-summary{margin-bottom:var(--space-4);border-block:1px solid var(--color-border)}.workspace-export-section>.surge-projection-summary dl,.workspace-export-section>.surge-projection-summary summary,.workspace-export-section>.surge-projection-summary details>div{padding-inline:0}.workspace-export-section>.surge-projection-summary dt,.workspace-export-section>.surge-projection-summary dd span,.workspace-export-section>.surge-projection-summary summary,.workspace-export-section>.surge-projection-summary article code,.workspace-export-section>.surge-projection-summary article span,.workspace-export-section>.surge-projection-summary article p{font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.workspace-export-section>.surge-projection-summary dd{font-size:var(--text-body-size);line-height:var(--text-body-line)}.workspace-export-preview-blocked{place-content:center;align-items:center;gap:var(--space-2);min-height:0;padding:var(--space-6);color:var(--color-danger);background:var(--color-danger-soft);text-align:center;flex-wrap:wrap;display:flex}.workspace-export-preview-blocked strong{width:100%;color:var(--color-text);font-size:var(--text-section-size);line-height:var(--text-section-line)}.workspace-export-preview-blocked code{border-radius:var(--radius-small);color:var(--color-danger);background:var(--color-surface);padding:2px 6px}.workspace-export-section{min-width:0}.workspace-export-section>header{min-width:0;margin-bottom:var(--space-3)}.workspace-export-section>header h2,.workspace-export-actions h2{color:var(--color-text);font-size:var(--text-section-size);line-height:var(--text-section-line);margin:0;font-weight:600}.workspace-export-section>header p{margin:var(--space-1) 0 0;color:var(--color-text-secondary);font-size:var(--text-body-size);line-height:var(--text-body-line)}.workspace-export-targets,.workspace-export-compatibility{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;display:grid}.workspace-export-targets>button,.workspace-export-compatibility>article{align-items:start;gap:var(--space-3);min-width:0;min-height:132px;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-text-secondary);background:var(--color-surface);text-align:left;grid-template-columns:48px minmax(0,1fr);display:grid}.workspace-export-targets>button:hover{border-color:var(--color-border-strong);background:var(--color-surface-subtle)}.workspace-export-targets>button.is-primary{border-color:var(--color-primary);background:var(--color-primary-soft);box-shadow:0 0 0 2px var(--color-focus-ring)}.workspace-export-targets>button>span:not(.workspace-target-icon){color:var(--color-primary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);grid-area:2/2;justify-self:start;font-weight:600}.workspace-export-targets .workspace-target-status,.workspace-export-compatibility .workspace-target-status{grid-area:1/2;align-self:stretch}.workspace-export-targets>button>.workspace-target-icon,.workspace-export-compatibility>article>.workspace-target-icon{grid-area:1/1}.workspace-export-compatibility>article{min-height:116px}.export-configuration-grid{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));min-width:0;display:grid}.export-configuration-grid>div,.export-configuration-grid>details,.export-target-default{min-width:0;padding:var(--space-4);border-top:1px solid var(--color-border);background:var(--color-surface)}.export-configuration-grid>div{align-content:start;gap:var(--space-3);display:grid}.export-configuration-grid>div>span:first-child{align-items:center;gap:var(--space-2);color:var(--color-primary);display:flex}.export-configuration-grid>div>span:first-child strong,.export-configuration-grid>div>strong,.export-target-default strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line);font-weight:600}.export-configuration-grid label{gap:var(--space-1);min-width:0;color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);display:grid}.export-configuration-grid input[type=number],.export-configuration-grid select{width:100%;min-width:0;height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-surface);font-size:var(--text-body-size)}.export-configuration-grid>div>small{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.export-configuration-grid .toggle-row.compact{min-height:var(--control-height);justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.export-configuration-grid .toggle-row.compact input{width:18px;height:18px;accent-color:var(--color-primary);flex:none}.export-configuration-grid>details{grid-column:1/-1;padding-block:0}.export-configuration-grid>details>summary{min-height:var(--control-height);color:var(--color-text-secondary);font-size:var(--text-body-size);line-height:var(--text-body-line);cursor:pointer;align-items:center;font-weight:600;display:flex}.export-configuration-grid>details>div{gap:var(--space-4);padding:0 0 var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.export-target-default{align-items:center;gap:var(--space-3);min-height:104px;color:var(--color-success);display:flex}.export-target-default p{margin:var(--space-1) 0 0;color:var(--color-text-secondary);font-size:var(--text-body-size);line-height:var(--text-body-line)}.export-target-default small{margin-top:var(--space-1);color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);display:block}.workspace-export-actions{justify-content:space-between;align-items:center;gap:var(--space-4);min-width:0;padding-top:var(--space-4);border-top:1px solid var(--color-border);display:flex}.workspace-export-actions>div{align-items:center;gap:var(--space-2);min-width:0;display:flex}.workspace-export-actions>div:last-child{justify-content:flex-end}.workspace-export-actions>div:first-child>span{border-radius:var(--radius-small);font-size:var(--text-meta-size);line-height:var(--text-meta-line);white-space:nowrap;padding:3px 6px;font-weight:600}.workspace-export-actions>div:first-child>span.is-ready{color:var(--color-success);background:var(--color-success-soft)}.workspace-export-actions>div:first-child>span.is-blocked{color:var(--color-danger);background:var(--color-danger-soft)}.runtime-source-panel{gap:var(--space-2);padding:var(--space-3);border-color:var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-subtle)}.runtime-source-heading span,.runtime-source-interval,.runtime-source-error,.runtime-history-list strong,.runtime-history-list small{font-size:var(--text-meta-size);line-height:var(--text-meta-line);letter-spacing:0}.runtime-source-heading span{color:var(--color-text-muted);text-transform:none;font-weight:500}.runtime-source-heading strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line)}.runtime-source-actions .inspector-secondary-button,.runtime-source-interval select{min-height:var(--control-height-compact);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.runtime-source-interval{color:var(--color-text-secondary)}.runtime-source-interval select{border-color:var(--color-border-strong);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-surface)}.runtime-source-error{color:var(--color-danger)}.runtime-history-list{border-color:var(--color-border)}.runtime-history-list strong{color:var(--color-text-secondary)}.runtime-history-list small{color:var(--color-text-muted)}.runtime-history-list .icon-button{width:var(--control-height-compact);height:var(--control-height-compact);color:var(--color-primary)}.workspace-target-status>span small,.workspace-target-status>small,.workspace-target-status>b,.workspace-target-status code,.workspace-target-export-actions>span{font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.workspace-target-status>span small,.workspace-target-status>small{color:var(--color-text-muted)}.workspace-target-status code{overflow-wrap:anywhere;max-width:100%}@media (width>=1024px){.topbar{gap:var(--space-2);padding-inline:var(--space-4)}.topbar .brand-mark{width:26px;height:26px}.topbar .project-switcher-wrap{flex-basis:210px}.topbar .project-switcher-toggle{width:var(--control-height-compact);height:var(--control-height-compact);flex-basis:var(--control-height-compact)}.topbar .product-view-switcher{min-width:190px}.topbar .product-view-switcher button{min-height:var(--control-height-compact)}.workspace-navigation{padding:var(--space-3) var(--space-2)}.workspace-navigation-items button{padding-left:var(--space-3);position:relative}.workspace-navigation-items button.is-active:before{content:"";background:var(--color-primary);border-radius:0 3px 3px 0;width:3px;position:absolute;top:7px;bottom:7px;left:0}.workspace-content-header{min-height:88px;padding:var(--space-3) var(--space-6)}.workspace-section-body{width:100%;max-width:calc(var(--content-max-width) + 64px);padding:var(--space-6) var(--space-8) 48px;margin-inline:auto}.workspace-section-body[data-section=routing],.workspace-section-body[data-section=proxies],.workspace-section-body[data-section=export]{max-width:1280px}.workspace-section-body[data-section=export]{padding-inline:var(--space-6)}.workspace-source-list{gap:var(--space-4);border-top:0;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.workspace-source-item{gap:var(--space-3);padding:var(--card-padding);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);grid-template-columns:40px minmax(0,1fr)}.workspace-source-item>.workspace-row-actions{padding-top:var(--space-2);border-top:1px solid var(--color-border);grid-column:1/-1;justify-content:flex-end}.workspace-source-item>.workspace-row-actions .icon-button{width:var(--control-height-compact);height:var(--control-height-compact);opacity:.62}.workspace-source-item:hover>.workspace-row-actions .icon-button,.workspace-source-item:focus-within>.workspace-row-actions .icon-button{opacity:1}.workspace-proxy-filters{grid-template-columns:minmax(220px,1fr) repeat(3,minmax(120px,.62fr))}.workspace-proxy-filters .workspace-clear-filters{grid-column:1/-1;justify-self:end}.workspace-proxy-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-processing-pipeline{gap:var(--space-6);border-top:0;display:grid}.workspace-processing-step{padding:var(--card-padding);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);grid-template-columns:28px 40px minmax(0,1fr) 44px auto;position:relative}.workspace-processing-connector{color:var(--color-text-muted);pointer-events:none;display:block;position:absolute;bottom:-20px;left:28px}.routing-rule-row{gap:var(--space-2);min-height:52px;padding:var(--space-2);grid-template-columns:28px 28px minmax(180px,1fr) minmax(150px,.52fr) auto auto}.routing-rule-row.is-final{grid-template-columns:28px minmax(180px,1fr) minmax(150px,.52fr) auto auto}.routing-drag-handle,.routing-rule-actions .icon-button{width:var(--control-height-compact);height:var(--control-height-compact);flex-basis:var(--control-height-compact)}.routing-rule-actions .icon-button{opacity:.58}.routing-rule-row:hover .routing-rule-actions .icon-button,.routing-rule-row:focus-within .routing-rule-actions .icon-button{opacity:1}.dns-resolver-list{gap:var(--space-4);border-top:0;grid-template-columns:repeat(2,minmax(0,1fr))}.dns-resolver-list>article{padding:var(--card-padding);border:1px solid var(--color-border);border-radius:var(--radius-card);align-content:start}.dns-resolver-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.dns-endpoint-field{grid-column:1/-1}.workspace-export-layout{gap:var(--space-4);grid-template-columns:minmax(340px,.85fr) minmax(400px,1.15fr);align-items:start}.workspace-export-targets,.workspace-export-compatibility,.export-configuration-grid{grid-template-columns:1fr}.export-configuration-grid>details{grid-column:auto}.export-configuration-grid>details>div{gap:var(--space-2);grid-template-columns:1fr}.workspace-export-preview{top:var(--space-6);position:sticky}.workspace-export-actions>div:last-child{display:none}}@media (width<=1023px){.routing-rule-row{grid-template-columns:40px 28px minmax(150px,1fr) minmax(120px,.55fr) auto}.routing-rule-row:not(.is-final) .routing-rule-actions{grid-column:3/-1;justify-content:flex-end}.routing-rule-row.is-final{grid-template-columns:28px minmax(150px,1fr) minmax(120px,.55fr) auto auto}.dns-resolver-fields{grid-template-columns:minmax(150px,1fr) minmax(120px,.6fr) minmax(120px,.6fr)}.dns-endpoint-field{grid-area:2/1/auto/-1}.export-configuration-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.export-configuration-grid>div:nth-child(3){grid-column:1/-1}}@media (width<=767px){.workspace-target-paused{grid-template-columns:auto minmax(0,1fr)}.workspace-target-paused>.primary-action{width:100%;min-height:var(--touch-target);grid-column:1/-1}.routing-workspace-heading,.workspace-section-intro{align-items:stretch;gap:var(--space-3);flex-direction:column}.routing-add,.dns-add-menu{width:100%}.routing-add>.primary-action,.dns-add-menu>.primary-action,.workspace-empty-state--action>.primary-action{width:100%;min-height:var(--touch-target)}.target-switch-dialog>header button{width:var(--touch-target);height:var(--touch-target)}.routing-add-popover{width:min(100%,100vw - 24px);max-height:min(460px,100vh - 260px);left:0;right:auto}.dns-preset-menu{top:auto;left:var(--space-3);right:var(--space-3);bottom:calc(56px + var(--space-3) + env(safe-area-inset-bottom));width:auto;max-height:min(560px,100vh - 176px);max-height:min(560px, calc(100dvh - 176px - env(safe-area-inset-bottom)));overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;position:fixed;overflow:hidden auto}.routing-add-popover .icon-button,.routing-kind-choices>button,.routing-matcher-choices>button,.routing-service-choices>label,.routing-service-choices>div>button,.dns-preset-menu>button{min-height:var(--touch-target)}.routing-rule-row,.routing-rule-row.is-final{align-items:start;gap:var(--space-1) var(--space-2);min-height:0;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:none}.routing-rule-list{gap:var(--space-2);border-top:0;display:grid}.routing-rule-row[data-status=warning]{border-color:color-mix(in srgb, var(--color-warning) 42%, var(--color-border));box-shadow:none}.routing-rule-row[data-status=error]{border-color:color-mix(in srgb, var(--color-danger) 42%, var(--color-border));box-shadow:none}.routing-rule-row{grid-template-columns:var(--touch-target) 28px minmax(0, 1fr) auto}.routing-rule-row.is-final{grid-template-columns:28px minmax(0,1fr) auto}.routing-drag-handle{width:var(--touch-target);height:var(--touch-target);grid-area:1/1/3}.routing-rule-row:not(.is-final) .routing-rule-order{margin-top:var(--space-2);grid-area:1/2}.routing-rule-row:not(.is-final) .routing-rule-summary{grid-area:1/3}.routing-rule-row:not(.is-final) .routing-rule-target{grid-area:2/3;align-self:center}.routing-rule-row:not(.is-final) .routing-rule-status{grid-area:1/4}.routing-rule-row:not(.is-final) .routing-rule-actions{grid-area:2/4}.routing-rule-row.is-final .routing-rule-order{margin-top:var(--space-2);grid-area:1/1}.routing-rule-row.is-final .routing-rule-summary{grid-area:1/2}.routing-rule-row.is-final .routing-rule-target{grid-area:2/2;align-self:center}.routing-rule-row.is-final .routing-rule-status{grid-area:1/3}.routing-rule-row.is-final .routing-rule-actions{grid-area:2/3}.routing-rule-actions .icon-button{width:var(--touch-target);height:var(--touch-target);flex-basis:var(--touch-target)}.routing-rule-summary>span{align-items:center;gap:var(--space-1);display:flex}.routing-rule-summary>span b{flex:none;margin-right:0}.routing-rule-summary>span code{min-width:0}.routing-rule-target{min-height:var(--touch-target);padding-inline:var(--space-2)}.routing-rule-target>small{display:none}.routing-rule-target>span{gap:var(--space-1)}.dns-resolver-list{gap:var(--space-3);border-top:0;display:grid}.dns-resolver-list>article{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface)}.dns-resolver-list>article.is-unsupported{border-color:color-mix(in srgb, var(--color-danger) 42%, var(--color-border));box-shadow:none}.dns-resolver-fields{grid-template-columns:1fr}.dns-endpoint-field{grid-area:auto}.dns-endpoint-field input{font-family:var(--font-mono);font-size:var(--text-code-size);line-height:var(--text-code-line)}.dns-resolver-fields input,.dns-resolver-fields select,.dns-enabled-toggle,.dns-resolver-list>article>footer .icon-button{min-height:var(--touch-target);height:var(--touch-target)}.workspace-export-page{gap:var(--space-6)}.workspace-export-preview{display:none}.workspace-export-targets,.workspace-export-compatibility,.export-configuration-grid{grid-template-columns:1fr}.workspace-export-targets>button,.workspace-export-compatibility>article{min-height:0;padding:var(--space-3)}.workspace-export-targets>button{min-height:var(--touch-target)}.export-configuration-grid>div:nth-child(3),.export-configuration-grid>details{grid-column:auto}.export-configuration-grid>details>div{gap:var(--space-2);grid-template-columns:1fr}.export-configuration-grid input[type=number],.export-configuration-grid select,.export-configuration-grid .toggle-row.compact,.export-configuration-grid>details>summary{min-height:var(--touch-target);height:var(--touch-target)}.workspace-export-actions{flex-direction:column;align-items:stretch}.workspace-export-actions>div{flex-wrap:wrap;justify-content:space-between;width:100%}.workspace-export-actions>div:last-child{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.workspace-export-actions .primary-action,.workspace-export-actions .secondary-action{width:100%;min-height:var(--touch-target);height:var(--touch-target)}.modal-backdrop{z-index:var(--z-dialog);background:var(--color-backdrop);-webkit-backdrop-filter:none;backdrop-filter:none;padding:0;display:block}.preview-modal{width:100%;max-width:none;height:100dvh;max-height:none;box-shadow:none;border:0;border-radius:0;grid-template-rows:60px auto minmax(0,1fr) auto}.preview-modal>header{min-height:60px;padding:0 var(--space-3)}.preview-modal>header>button{width:var(--touch-target);height:var(--touch-target)}.preview-notice{min-height:52px;padding:var(--space-3);font-size:var(--text-meta-size);line-height:var(--text-meta-line);align-items:flex-start}.preview-notice>svg{flex:none;margin-top:1px}.preview-notice span{display:block}.preview-body{grid-template-rows:minmax(128px,30dvh) minmax(0,1fr);grid-template-columns:1fr;overflow:hidden}.preview-body>aside{align-content:start;gap:var(--space-1);min-height:0;padding:var(--space-2) var(--space-3);border-right:0;border-bottom:1px solid var(--color-border);grid-template-columns:1fr;display:grid;overflow-y:auto}.preview-body aside button{min-height:var(--touch-target);height:auto}.preview-body .preview-stats{margin-top:var(--space-2)}.code-panel{min-height:0}.code-toolbar{min-height:var(--touch-target);height:var(--touch-target);padding-inline:var(--space-3);font-size:var(--text-code-size)}.code-toolbar button{min-height:var(--touch-target);padding-inline:var(--space-2)}.code-panel pre{padding:var(--space-4);font-size:var(--text-code-size);line-height:20px}.preview-modal>footer{align-items:stretch;gap:var(--space-2);min-height:68px;padding:var(--space-2) var(--space-3) calc(var(--space-2) + env(safe-area-inset-bottom));background:var(--color-surface);flex-direction:column}.preview-modal>footer>span{display:none}.preview-modal>footer>div{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin:0;display:grid}.preview-modal>footer .primary-action,.preview-modal>footer .secondary-action{width:100%;min-height:var(--touch-target);height:var(--touch-target)}.target-switch-backdrop{z-index:var(--z-dialog);background:var(--color-backdrop);align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.target-switch-dialog{width:100%;max-height:min(78dvh,680px);padding-bottom:env(safe-area-inset-bottom);border-radius:var(--radius-panel) var(--radius-panel) 0 0;box-shadow:var(--shadow-floating)}.target-switch-options{padding-inline:var(--space-3);grid-template-columns:1fr}.target-switch-options>button{min-height:116px}.target-switch-dialog>header,.target-switch-dialog>footer{padding-inline:var(--space-3)}.target-switch-dialog>footer{background:var(--color-surface);position:sticky;bottom:0}.target-switch-dialog>footer .primary-action,.target-switch-dialog>footer .secondary-action{min-height:var(--touch-target);height:var(--touch-target)}.subscription-dialog-backdrop{background:var(--color-backdrop);-webkit-backdrop-filter:none;backdrop-filter:none;align-items:flex-end;padding:0;display:flex}.confirmation-dialog{width:100%;max-width:none;padding:var(--space-4) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom));border-radius:var(--radius-panel) var(--radius-panel) 0 0;box-shadow:var(--shadow-floating);border:0}.confirmation-dialog footer{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.confirmation-dialog footer button{width:100%;min-height:var(--touch-target);height:var(--touch-target)}.new-project-backdrop{background:var(--color-backdrop);-webkit-backdrop-filter:none;backdrop-filter:none;padding:0}.new-project-dialog{width:100%;height:100dvh;max-height:none;box-shadow:none;border-radius:0}.new-project-dialog>header button,.new-project-dialog>footer button,.target-choice-list>button,.source-choice-list>button{min-height:var(--touch-target)}}.visual-inspector-panel{flex-direction:column;display:flex}.visual-inspector-panel>.inspector{flex:auto;height:auto;min-height:0}.visual-inspector-toolbar{min-height:var(--touch-target);flex:0 0 var(--touch-target);justify-content:space-between;align-items:center;gap:var(--space-3);padding:0 var(--space-2) 0 var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-surface);display:flex}.visual-inspector-toolbar strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line);font-weight:600}.visual-inspector-dismiss{width:var(--control-height-compact);height:var(--control-height-compact);flex-basis:var(--control-height-compact)}.canvas-region{position:relative}.visual-flow-floating-controls{z-index:14;left:50%;bottom:var(--space-4);padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-card);background:color-mix(in srgb, var(--color-surface) 94%, transparent);box-shadow:var(--shadow-panel);align-items:center;gap:2px;display:flex;position:absolute;transform:translate(-50%)}.visual-flow-floating-controls .ui-icon-button{width:var(--control-height-compact);height:var(--control-height-compact);flex-basis:var(--control-height-compact)}.visual-flow-control-separator{width:1px;height:16px;margin-inline:var(--space-1);background:var(--color-border)}.visual-flow-zoom{min-width:44px;color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);font-variant-numeric:tabular-nums;text-align:center}.visual-flow-add-node,.visual-flow-sheet-backdrop,.routing-add-sheet-backdrop{display:none}.routing-action-sheet-backdrop{z-index:var(--z-dialog);background:var(--color-backdrop);align-items:flex-end;display:flex;position:fixed;inset:0}.routing-action-sheet{width:100%;max-height:min(72dvh,620px);padding:var(--space-2) var(--space-3) calc(var(--space-3) + env(safe-area-inset-bottom));border-radius:var(--radius-panel) var(--radius-panel) 0 0;background:var(--color-surface-subtle);box-shadow:var(--shadow-floating);overflow-y:auto}.routing-action-sheet>header{justify-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2) var(--space-3);display:grid}.routing-action-sheet>header>span{background:var(--color-border-strong);border-radius:999px;width:40px;height:4px}.routing-action-sheet>header>strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line);font-weight:600}.routing-action-sheet>div{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);overflow:hidden}.routing-action-sheet>div>button{align-items:center;gap:var(--space-3);width:100%;min-height:52px;padding:0 var(--space-4);border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);background:var(--color-surface);font-size:var(--text-body-size);line-height:var(--text-body-line);text-align:left;display:flex}.routing-action-sheet>div>button:last-child{border-bottom:0}.routing-action-sheet>div>button.danger{color:var(--color-danger)}.routing-action-sheet>div>button:disabled{opacity:.42}.routing-action-sheet-cancel{width:100%;min-height:var(--touch-target);margin-top:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-card);color:var(--color-text);background:var(--color-surface);font-size:var(--text-body-size);line-height:var(--text-body-line);font-weight:600}@media (width>=768px) and (width<=1023px){.visual-flow-mobile-toolbar{display:none}}@media (width<=767px){.routing-add-sheet-backdrop{z-index:calc(var(--z-dialog) - 1);background:var(--color-backdrop);display:block;position:fixed;inset:0}.routing-add-popover{z-index:var(--z-dialog);width:100vw;max-height:min(72dvh,620px);padding:var(--space-3) var(--space-3) calc(var(--space-3) + env(safe-area-inset-bottom));border:1px solid var(--color-border);border-radius:var(--radius-panel) var(--radius-panel) 0 0;background:var(--color-surface);box-shadow:var(--shadow-floating);border-bottom:0;position:fixed;inset:auto 0 0}.routing-add-popover>header{min-height:var(--touch-target);grid-template-columns:var(--touch-target) minmax(0, 1fr) var(--touch-target)}.routing-add-popover>header .icon-button{width:var(--touch-target);height:var(--touch-target)}.app-shell .workspace[data-shell-mode=mobile]{grid-template-columns:minmax(0,1fr)}.app-shell .workspace[data-shell-mode=mobile]>.canvas-region{grid-column:1}.workspace[data-shell-mode=mobile] .visual-library-panel.is-collapsed{display:none}.workspace[data-shell-mode=mobile] .visual-library-panel:not(.is-collapsed){z-index:62;width:100%;height:min(68dvh,620px);padding-bottom:env(safe-area-inset-bottom);border:1px solid var(--color-border);border-radius:var(--radius-panel) var(--radius-panel) 0 0;background:var(--color-surface);box-shadow:var(--shadow-floating);border-bottom:0;position:absolute;inset:auto 0 0}.workspace[data-shell-mode=mobile] .visual-library-panel .palette-toggle{top:var(--space-2);right:var(--space-3);width:var(--touch-target);height:var(--touch-target)}.workspace[data-shell-mode=mobile] .visual-library-panel .block-library{background:var(--color-surface)}.visual-flow-sheet-backdrop{z-index:60;background:var(--color-backdrop);display:block;position:absolute;inset:0}.visual-flow-add-node{z-index:40;left:var(--space-3);bottom:var(--space-3);min-height:var(--touch-target);align-items:center;gap:var(--space-2);padding:0 var(--space-4);border:1px solid color-mix(in srgb, var(--color-primary) 32%, var(--color-border));border-radius:var(--radius-control);color:#fff;background:var(--color-primary);box-shadow:var(--shadow-panel);font-size:var(--text-body-size);line-height:var(--text-body-line);font-weight:600;display:inline-flex;position:absolute}.visual-flow-floating-controls{display:none}.visual-flow-mobile-toolbar{right:var(--space-3);bottom:var(--space-3)}.workspace[data-shell-mode=mobile] .visual-inspector-panel{z-index:62;width:100%;height:60dvh;padding-bottom:env(safe-area-inset-bottom);border:1px solid var(--color-border);border-radius:var(--radius-panel) var(--radius-panel) 0 0;background:var(--color-surface);box-shadow:var(--shadow-floating);border-bottom:0;position:absolute;inset:auto 0 0}.workspace[data-shell-mode=mobile] .visual-inspector-toolbar{min-height:52px;padding-left:var(--space-4);flex-basis:52px}.workspace[data-shell-mode=mobile] .visual-inspector-dismiss{width:var(--touch-target);height:var(--touch-target);flex-basis:var(--touch-target)}.workspace[data-shell-mode=mobile] .visual-inspector-panel .inspector-field input,.workspace[data-shell-mode=mobile] .visual-inspector-panel .inspector-field select,.workspace[data-shell-mode=mobile] .visual-inspector-panel button,.workspace[data-shell-mode=mobile] .visual-inspector-panel .toggle-row{min-height:var(--touch-target)}}@media (width<=420px){.routing-add-popover{width:100vw}.routing-rule-status>span{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.workspace-export-targets>button,.workspace-export-compatibility>article{grid-template-columns:40px minmax(0,1fr)}.workspace-target-icon{width:40px;height:40px}.workspace-target-status{grid-template-columns:1fr}.workspace-target-status>b{justify-self:start}.workspace-export-actions>div:last-child{grid-template-columns:1fr}}.topbar,.topbar button,.structured-workspace,.structured-workspace button,.structured-workspace input,.structured-workspace select,.structured-workspace textarea{letter-spacing:normal}.primary-action,.secondary-action,.row-action,.workspace-editor-toolbar button,.workspace-navigation-items button,.workspace-mobile-navigation>button{font-weight:500}.workspace-navigation-items button.is-active,.workspace-mobile-navigation>button.is-active{font-weight:600}.workspace-content-header h1,.project-overview-summary h2,.project-overview-shortcuts h3,.project-manager h3,.workspace-export-summary h2{letter-spacing:normal;font-weight:600}.workspace-content-header p,.workspace-section-body p{font-weight:400}.topbar .brand{min-width:max-content;min-height:var(--control-height-compact);align-items:center;gap:var(--space-2);color:var(--color-text);cursor:pointer;background:0 0;padding:0;display:inline-flex}.topbar .brand:hover .brand-mark{box-shadow:0 0 0 2px var(--color-primary-soft)}.topbar .brand:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:3px;border-radius:var(--radius-control)}.topbar .brand-mark{object-fit:cover;border-radius:7px;flex:none}.topbar .project-switcher{padding-left:var(--space-2);align-items:center}.topbar .project-switcher>span{display:block}.topbar .project-name-input{height:var(--control-height-compact);padding-inline:var(--space-1);margin-left:0}.topbar-language-wrap{position:relative}.topbar-language-trigger{min-height:var(--control-height-compact);justify-content:center;align-items:center;gap:var(--space-2);padding:0 var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-text-secondary);background:var(--color-surface);font-size:var(--text-meta-size);line-height:var(--text-meta-line);white-space:nowrap;font-weight:500;display:inline-flex}.topbar-language-trigger:hover{color:var(--color-text);background:var(--color-surface-subtle)}.topbar-language-menu{top:calc(var(--control-height-compact) + var(--space-2));width:154px;right:0}.topbar{position:relative}.topbar .product-view-switcher{z-index:1;position:absolute;left:50%;transform:translate(-50%)}.topbar .project-switcher-wrap{flex:0 270px;max-width:min(28vw,270px)}.topbar .project-switcher{gap:var(--space-1);padding-inline:var(--space-2) var(--space-1);white-space:nowrap;display:flex}.topbar .current-project-label{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);flex:none;font-weight:500}.topbar .current-project-separator{color:var(--color-border-strong);flex:none}.topbar .project-name-field{flex:auto;min-width:0}.topbar .project-name-input{min-width:0;font-weight:600}.topbar-more-icon{display:none}.topbar-menu-heading{padding:var(--space-1) var(--space-2);color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);font-weight:500;display:block}.project-overview-summary>div:first-child{flex:auto}.project-overview-name-input{width:100%;min-width:0;padding:var(--space-1) var(--space-2);border-radius:var(--radius-control);color:var(--color-text);letter-spacing:normal;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:1px solid #0000;margin:0;font-size:24px;font-weight:600;line-height:1.3;overflow:hidden}.project-overview-name-input:hover{border-color:var(--color-border);background:var(--color-surface-subtle)}.project-overview-name-input:focus{border-color:var(--color-primary);background:var(--color-surface);box-shadow:0 0 0 3px var(--color-focus-ring);outline:0}.project-overview-project-actions{gap:var(--space-2);min-width:0;margin-top:var(--space-2);flex-wrap:wrap;display:flex}.project-overview-project-actions select{min-width:180px;min-height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-text-secondary);background:var(--color-surface);font-size:var(--text-meta-size);line-height:var(--text-meta-line);flex:220px}.project-overview-project-actions button:disabled{opacity:.45}.project-overview-project-actions .project-delete-action:not(:disabled){color:var(--color-danger)}@media (width>=768px) and (width<=1100px){.topbar .save-indicator{display:none}}@media (width>=1024px){.topbar .top-export-action{display:none}.topbar .version-mark{display:inline}}@media (width<=1023px){.app-shell{--topbar-height:calc(80px + env(safe-area-inset-top));grid-template-rows:var(--topbar-height) minmax(0, 1fr) var(--statusbar-height)}.topbar{width:100%;height:var(--topbar-height);min-height:var(--topbar-height);padding:env(safe-area-inset-top) 0 0;grid-template-rows:46px 34px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0;display:grid}.topbar .brand{width:max-content;min-width:0;min-height:36px;margin-left:max(var(--space-3), env(safe-area-inset-left));grid-area:1/1;justify-content:flex-start;gap:7px}.topbar .brand:hover .brand-mark{box-shadow:none}.topbar .brand-mark{width:20px;height:20px;box-shadow:none;object-fit:contain;border-radius:0;display:block}.topbar .brand>strong{letter-spacing:normal;font-size:15px;font-weight:600;line-height:1.2;display:inline}.topbar .version-mark,.topbar .project-switcher-wrap,.topbar .project-switcher-wrap:not([data-mobile-open]),.topbar-project{display:none}.topbar .product-view-switcher{width:100%;min-width:0;min-height:34px;box-shadow:none;background:0 0;border:0;border-radius:0;grid-area:2/1/auto/-1;grid-template-columns:repeat(2,minmax(0,1fr));padding:0;display:grid;position:static;transform:none}.topbar .product-view-switcher button{min-width:0;min-height:34px;padding:0 var(--space-2);color:var(--color-text-secondary);box-shadow:none;letter-spacing:normal;background:0 0;border-radius:0;font-size:14px;font-weight:500;line-height:1.2;position:relative}.topbar .product-view-switcher button:hover{color:var(--color-text);background:var(--color-surface-subtle)}.topbar .product-view-switcher button.is-active{color:var(--color-text);box-shadow:none;background:0 0;font-weight:600}.topbar .product-view-switcher button.is-active:after{content:"";background:var(--color-primary);border-radius:2px 2px 0 0;width:32px;height:2px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.topbar .product-view-switcher svg,.topbar-mobile-target,.topbar-mobile-health{display:none}.topbar .top-actions{justify-content:flex-end;align-items:center;gap:var(--space-1);width:auto;min-width:0;margin:0 max(var(--space-2), env(safe-area-inset-right)) 0 0;grid-area:1/2;display:flex}.topbar .top-actions>:not(.topbar-language-wrap):not(.top-export-action){display:none}.topbar .top-actions>.topbar-language-wrap{display:block}.topbar-language-trigger,.topbar .top-export-action{width:36px;min-width:36px;height:36px;min-height:36px;color:var(--color-text-secondary);box-shadow:none;background:0 0;border-color:#0000;padding:0}.topbar-language-trigger:hover,.topbar .top-export-action:hover{color:var(--color-text);background:var(--color-surface-subtle)}.topbar-language-trigger>span,.topbar-language-trigger>svg:last-child,.topbar .top-export-action span,.topbar-language-icon{display:none}.topbar-more-icon{display:block}.topbar-language-menu{top:var(--topbar-height);right:max(var(--space-2), env(safe-area-inset-right));position:fixed}.project-overview-summary h2,.project-overview-name-input{font-size:21px;line-height:1.3}.project-overview-project-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.project-overview-project-actions select{width:100%;min-width:0;min-height:var(--touch-target);grid-column:1/-1}.project-overview-project-actions button{width:100%;min-width:0;min-height:var(--touch-target);padding-inline:var(--space-2)}}@media (width<=767px){.app-shell{grid-template-rows:var(--topbar-height) minmax(0, 1fr) 0}.workspace-proxy-filters{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr))}.workspace-proxy-filters .workspace-search-field,.workspace-proxy-filters .workspace-clear-filters{grid-column:1/-1}.workspace-filter-select .web-select-trigger{min-height:var(--touch-target);height:var(--touch-target)}.preview-body{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr;overflow:hidden}.preview-body>aside{align-content:start;gap:var(--space-1);min-height:0;padding:var(--space-2) var(--space-3);border-right:0;border-bottom:1px solid var(--color-border);grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:visible}.preview-body>aside>span,.preview-body>aside>.preview-subheading,.preview-body>aside>button:disabled,.preview-body .preview-compatibility-summary,.preview-body .preview-stats{display:none}.preview-body aside button{min-width:0;min-height:var(--touch-target);height:var(--touch-target);grid-template-columns:22px minmax(0,1fr) 12px;gap:5px;padding:5px 7px}.preview-body aside button>b{border-radius:5px;width:22px;height:22px}.preview-body aside button>b img{width:19px;height:19px}.preview-body aside button>div{min-width:0}.preview-body aside button strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;display:block;overflow:hidden}.preview-body aside button small{display:none}.surge-projection-summary dl{padding:var(--space-2) var(--space-3)}.surge-projection-summary dl>div{gap:2px;display:grid}.surge-projection-summary dl>div+div{padding-left:var(--space-2)}.surge-projection-summary dt{overflow-wrap:anywhere;font-size:10px;line-height:1.3}.surge-projection-summary dd{font-size:13px}.surge-projection-summary summary{min-height:38px;padding:var(--space-2) var(--space-3);font-size:10px;line-height:1.4}.surge-projection-summary details>div{max-height:96px;padding:0 var(--space-3) var(--space-2)}.surge-projection-summary article code,.surge-projection-summary article span,.surge-projection-summary article p{font-size:10px}.code-toolbar{min-width:0;height:38px;min-height:38px;font-size:11px}.code-toolbar>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.code-toolbar button{justify-content:flex-end;min-width:64px;min-height:36px;font-size:11px}.code-panel pre{overscroll-behavior:contain;max-width:100%;font-size:12px;line-height:1.55;overflow:auto}}.workspace-proxy-chip-filters [role=group]>button{flex:none}.workspace-section-body{overflow-x:hidden}.workspace-processing-step{grid-template-columns:minmax(0,1fr) 44px auto}.workspace-processing-body{align-items:center;gap:var(--space-3);grid-template-columns:28px 40px minmax(0,1fr);display:grid}.workspace-strategy-card{grid-template-columns:minmax(0,1fr) auto;align-items:center}.workspace-strategy-body{align-items:start;gap:var(--space-3);grid-template-columns:40px minmax(0,1fr) auto;display:grid}.routing-rule-summary{min-width:0;color:inherit;text-align:left;background:0 0;gap:2px;padding:0;display:grid}@media (width>=1024px){.workspace-content-header h1{font-size:var(--text-page-size);line-height:var(--text-page-line)}.workspace-navigation-items button{min-height:40px;font-size:var(--text-body-size)}.primary-action,.secondary-action,.row-action{min-height:var(--control-height);font-size:var(--text-body-size)}.topbar .top-actions>.save-indicator{display:flex}.topbar .top-actions>.runtime-service-wrap{display:block}.topbar .top-export-action{display:none}}@media (width<=767px){.workspace-processing-step{grid-template-columns:minmax(0,1fr) 44px}.workspace-processing-body{grid-column:1/-1}.workspace-compact-toggle{grid-column:1}.workspace-step-actions{grid-column:2}.workspace-strategy-body{grid-template-columns:40px minmax(0,1fr)}.workspace-strategy-meta{grid-column:2}}.service-mark{--service-mark-badge:color-mix(in srgb, var(--color-primary-soft) 42%, var(--color-surface-subtle));width:32px;height:32px;color:var(--color-text-secondary);background:var(--service-mark-badge);transition:background-color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard);border:1px solid #0000;border-radius:8px;flex:none;place-items:center;display:grid;position:relative;overflow:hidden}.service-mark--small{border-radius:7px;width:28px;height:28px}.service-mark__image{width:var(--service-mark-optical-width);height:var(--service-mark-optical-height);object-fit:contain;display:block}.service-mark__image--monochrome{-webkit-mask-image:var(--service-mark-image);mask-image:var(--service-mark-image);-webkit-mask-image:var(--service-mark-image);background-color:currentColor;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.service-mark[data-selected=true]{border-color:var(--color-primary);background:var(--color-primary-soft)}.routing-service-choices>div>button:hover:not(:disabled) .service-mark,.routing-service-choices>div>button:focus-visible .service-mark,.service-picker-options button:hover:not(:disabled) .service-mark,.service-picker-options button:focus-visible .service-mark,.service-list>div:hover .service-mark,.node-services button:hover .service-mark,.node-services button:focus-visible .service-mark{background:color-mix(in srgb, var(--color-primary-soft) 78%, var(--color-surface))}.service-mark-slot{place-items:center;width:32px;height:32px;display:grid}.rule-source-avatar{--asset-icon-background:var(--color-surface-subtle);border-radius:8px;width:32px;height:32px}.routing-service-choices>div>button{grid-template-columns:32px minmax(0,1fr) auto}.routing-rule-title{align-items:center;gap:var(--space-2);min-width:0;display:flex}.routing-rule-title>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.routing-rule-service-marks{flex:none;align-items:center;display:flex}.routing-rule-service-marks .service-mark+.service-mark{margin-inline-start:-8px}.routing-rule-service-marks .service-mark:first-child{z-index:3}.routing-rule-service-marks .service-mark:nth-child(2){z-index:2}.routing-rule-service-marks .service-mark:nth-child(3){z-index:1}.node-services{gap:var(--space-1)}.node-services button{border:1px solid var(--color-border);min-height:32px;color:var(--color-text-secondary);background:var(--color-surface);border-radius:8px;align-items:center;gap:6px;padding:1px 7px 1px 1px;font-size:9px;font-weight:600;line-height:14px;display:inline-flex}.node-services button:hover{background:var(--color-primary-soft);transform:none}.workspace-target-status>b.is-available{color:var(--color-text-secondary);background:var(--color-surface-subtle)}.workspace-health-section article .workspace-health-description{margin:var(--space-1) 0 0;color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.workspace-health-section article .workspace-health-impact,.workspace-health-section article .workspace-health-action{margin-top:var(--space-1);color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line);display:block}.workspace-health-section article .workspace-health-impact{color:var(--color-text);font-weight:650}.workspace-health-section article .workspace-health-reasons{margin:var(--space-2) 0 0;color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);gap:2px;padding-inline-start:18px;display:grid}.diagnostic-presentations{min-width:0;display:grid}.diagnostic-presentations>article{align-items:start;gap:var(--space-2);min-width:0;padding:var(--space-3) 0;border-top:1px solid var(--color-border);grid-template-columns:22px minmax(0,1fr);display:grid}.diagnostic-presentations>article:first-child{border-top:0}.diagnostic-presentation-icon{color:var(--color-info);margin-top:1px}.diagnostic-presentations>article[data-severity=warning]>.diagnostic-presentation-icon{color:var(--color-warning)}.diagnostic-presentations>article[data-severity=error]>.diagnostic-presentation-icon{color:var(--color-danger)}.diagnostic-presentations>article>div{min-width:0}.diagnostic-presentation-severity{align-items:center;gap:var(--space-1);color:var(--color-info);font-size:var(--text-meta-size);line-height:var(--text-meta-line);font-weight:700;display:flex}.diagnostic-presentations>article[data-severity=warning] .diagnostic-presentation-severity{color:var(--color-warning)}.diagnostic-presentations>article[data-severity=error] .diagnostic-presentation-severity{color:var(--color-danger)}.diagnostic-presentation-severity em{color:inherit;font-variant-numeric:tabular-nums;font-style:normal}.diagnostic-presentations h3{margin:2px 0 var(--space-1);color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line);font-weight:650}.diagnostic-presentations p{color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);overflow-wrap:anywhere;margin:0}.diagnostic-presentations ul{margin:var(--space-2) 0 0;gap:2px;padding-inline-start:18px;display:grid}.diagnostic-presentations li{color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.diagnostic-presentations .diagnostic-presentation-impact{margin-top:var(--space-2);color:var(--color-text);font-weight:650}.diagnostic-presentations .diagnostic-presentation-action{color:var(--color-text-muted);margin-top:2px}.diagnostic-technical{margin-top:var(--space-2)}.diagnostic-technical summary{width:max-content;max-width:100%;color:var(--color-text-muted);cursor:pointer;font-size:var(--text-meta-size);line-height:var(--text-meta-line);overflow-wrap:anywhere}.diagnostic-technical>div{gap:var(--space-2);margin-top:var(--space-2);display:grid}.diagnostic-technical>div>div{min-width:0;padding-top:var(--space-2);border-top:1px solid var(--color-border)}.diagnostic-technical>div>div>span{align-items:baseline;gap:var(--space-2);min-width:0;display:flex}.diagnostic-technical code{min-width:0;color:var(--color-text-secondary);font-size:var(--text-code-size);line-height:var(--text-code-line);overflow-wrap:anywhere}.diagnostic-technical em{color:var(--color-text-muted);font-size:var(--text-meta-size);font-style:normal}.diagnostic-technical>div>div>p{margin-top:var(--space-1);color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-code-size);line-height:var(--text-code-line)}.diagnostic-locate{min-height:var(--control-height-compact);align-items:center;gap:var(--space-1);margin-top:var(--space-2);color:var(--color-primary);font-size:var(--text-meta-size);background:0 0;padding:0;font-weight:650;display:inline-flex}.diagnostic-locate:hover{text-underline-offset:3px;text-decoration:underline}.diagnostic-locate:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;border-radius:var(--radius-small)}.workspace-export-diagnostics{max-height:240px}.workspace-export-diagnostics .diagnostic-presentations>article{gap:var(--space-2);padding:var(--space-2) 0;background:0 0;grid-template-columns:20px minmax(0,1fr)}.preview-diagnostics{border-bottom:1px solid var(--color-border);background:var(--color-surface-subtle);max-height:190px;padding:0 18px;overflow:auto}.surge-projection-summary>.diagnostic-presentations{padding:0 18px var(--space-2);border-top:1px solid var(--color-border)}.workspace-export-section>.surge-projection-summary>.diagnostic-presentations{padding-inline:0}.surge-projection-summary .diagnostic-presentations>article{padding:var(--space-2) 0 0;border:0;grid-template-columns:20px minmax(0,1fr)}.surge-projection-summary .diagnostic-technical{border:0}.surge-projection-summary .diagnostic-technical summary{min-height:30px;padding:var(--space-1) 0;font-size:var(--text-meta-size)}.surge-projection-summary .diagnostic-technical>div{max-height:112px;padding:0;overflow:auto}.ir-error-panel .diagnostic-presentations{margin-top:var(--space-3)}.ir-error-panel .diagnostic-presentations>article{gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-card);background:#2d3038;border:1px solid #3c4049;grid-template-columns:22px minmax(0,1fr)}.ir-error-panel .diagnostic-presentations>article+article{margin-top:var(--space-2)}.ir-error-panel .diagnostic-presentations>article>div{display:block}.ir-error-panel .diagnostic-presentations span{font-size:var(--text-meta-size);line-height:var(--text-meta-line);text-transform:none}.ir-error-panel .diagnostic-presentations h3{margin:2px 0 var(--space-1);color:#eef1f6;font-size:var(--text-body-size);line-height:var(--text-body-line)}.ir-error-panel .diagnostic-presentations p{color:#b8bec9;font-size:var(--text-meta-size);line-height:var(--text-meta-line);grid-column:auto;margin:0}.ir-error-panel .diagnostic-presentations .diagnostic-presentation-impact{margin-top:var(--space-2);color:#e0e4eb}.ir-error-panel .diagnostic-presentations .diagnostic-presentation-action{color:#a9afba;margin-top:2px}.ir-error-panel .diagnostic-presentations li{color:#b8bec9;font-size:var(--text-meta-size)}.ir-error-panel .diagnostic-technical{border:0}.ir-error-panel .diagnostic-technical summary{color:#a9afba;font-size:var(--text-meta-size)}.ir-error-panel .diagnostic-technical>div{display:grid}.ir-error-panel .diagnostic-technical>div>div{padding-top:var(--space-2);background:0 0;border-top-color:#424751}.ir-error-panel .diagnostic-technical code{color:#b9dbfa;font-size:var(--text-code-size)}.ir-error-panel .diagnostic-technical>div>div>p{margin-top:var(--space-1);color:#a9afba;font-size:var(--text-code-size)}.ir-error-panel .diagnostic-locate{color:#94c6f4;font-size:var(--text-meta-size);text-decoration:none}@media (width<=767px){.preview-diagnostics{max-height:156px;padding-inline:var(--space-3)}.surge-projection-summary>.diagnostic-presentations{padding-inline:var(--space-3)}.diagnostic-presentations>article{grid-template-columns:20px minmax(0,1fr)}.diagnostic-technical summary{align-items:center;min-height:36px;display:flex}.diagnostic-locate{min-height:var(--touch-target)}}}.custom-rule-source{gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-subtle);display:grid}.custom-rule-source .inspector-field{margin-bottom:0}.custom-rule-source-heading,.custom-rule-source-heading>span,.custom-rule-source-status,.custom-rule-source-status>span{align-items:center;gap:var(--space-2);min-width:0;display:flex}.custom-rule-source-heading>span,.custom-rule-source-status>span{flex-direction:column;align-items:flex-start;gap:1px}.custom-rule-source-heading strong,.custom-rule-source-status strong{color:var(--color-text);font-size:var(--text-body-size);line-height:var(--text-body-line)}.custom-rule-source-heading small,.custom-rule-source-status small{color:var(--color-text-muted);font-size:var(--text-meta-size);line-height:var(--text-meta-line)}.custom-rule-source-upload{justify-content:center;align-items:center;gap:var(--space-2);min-height:40px;padding:var(--space-2);border:1px dashed var(--color-border-strong);border-radius:var(--radius-control);color:var(--color-text-secondary);background:var(--color-surface);cursor:pointer;font-size:var(--text-meta-size);text-align:center;font-weight:600;display:flex}.custom-rule-source-upload:hover{border-color:var(--color-primary);color:var(--color-primary)}.custom-rule-source-upload input,.custom-rule-source-icon input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.custom-rule-source-url,.custom-rule-source-icon-field{gap:var(--space-2);display:grid}.custom-rule-source-icon-field>span{color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);font-weight:600}.custom-rule-source-icon{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.custom-rule-source-icon-preview{flex:0 0 32px;width:32px;height:32px}.custom-rule-source-icon .inspector-secondary-button{width:auto;min-height:40px;padding-inline:var(--space-3);cursor:pointer;margin:0}.custom-rule-source-status{padding:var(--space-2);border-radius:var(--radius-control);color:var(--color-success);background:var(--color-success-soft)}.custom-rule-source-issues{gap:var(--space-2);display:grid}.custom-rule-source-issues>div{align-items:flex-start;gap:var(--space-2);min-width:0;padding:var(--space-2);border-radius:var(--radius-control);color:var(--color-warning);background:var(--color-warning-soft);display:flex}.custom-rule-source-issues>div[data-severity=error]{color:var(--color-danger);background:var(--color-danger-soft)}.custom-rule-source-issues span{gap:2px;min-width:0;display:grid}.custom-rule-source-issues strong{font-size:var(--text-meta-size);line-height:var(--text-meta-line);overflow-wrap:anywhere}.custom-rule-source-issues small{color:var(--color-text-secondary);font-size:var(--text-meta-size);line-height:var(--text-meta-line);overflow-wrap:anywhere}.workspace-editor-scroll-content{flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex;overflow:hidden}.workspace-editor-scroll-content>.inspector{z-index:auto;flex:auto;min-height:0}.node-input-picker-trigger{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;min-width:0;min-height:42px;padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-surface);text-align:left;cursor:pointer;display:flex}.node-input-picker-trigger>span{min-width:0;font-size:var(--text-body-size);text-overflow:ellipsis;white-space:nowrap;font-weight:550;overflow:hidden}.node-input-picker-trigger>svg{color:var(--color-text-muted);flex:none}.node-input-picker-trigger:hover{border-color:var(--color-text-muted);background:var(--color-surface-subtle)}.node-input-picker-trigger:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.node-input-picker-backdrop{z-index:1199;background:var(--color-backdrop);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);position:fixed;left:0;right:0}.node-input-picker-panel{z-index:1200;border:1px solid var(--color-border);min-width:0;min-height:0;color:var(--color-text);background:var(--color-surface);box-shadow:var(--shadow-floating);flex-direction:column;display:flex;position:fixed;overflow:hidden}.node-input-picker-panel.is-popover{border-radius:var(--radius-card)}.node-input-picker-panel.is-sheet{border-width:1px 0 0;border-radius:16px 16px 0 0;width:100%;height:100%;left:0;right:0}.node-input-picker-header{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:52px;padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-surface);flex:none;display:flex}.node-input-picker-header strong{font-size:var(--text-body-size)}.node-input-picker-header button{width:var(--touch-target);height:var(--touch-target);border-radius:var(--radius-control);color:var(--color-text-secondary);background:0 0;place-items:center;display:grid}.node-input-picker-header button:hover{color:var(--color-text);background:var(--color-surface-subtle)}.node-input-picker-search{padding:var(--space-3) var(--space-3) 0;flex:none}.node-input-picker-search input{width:100%;min-height:var(--touch-target);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-surface)}.node-input-picker-search input:focus{border-color:var(--color-primary);outline:3px solid var(--color-focus-ring)}.node-input-picker-options{overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;min-height:0;padding:var(--space-2);flex:auto;align-content:start;gap:2px;display:grid;overflow:hidden auto}.node-input-picker-options>button{width:100%;min-width:0;min-height:var(--touch-target);align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-control);color:var(--color-text-secondary);text-align:left;background:0 0;grid-template-columns:24px minmax(0,1fr);display:grid}.node-input-picker-options>button:hover:not(:disabled),.node-input-picker-options>button:focus-visible{background:var(--color-surface-subtle)}.node-input-picker-options>button:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.node-input-picker-options>button.is-selected{color:var(--color-primary);background:var(--color-primary-soft)}.node-input-picker-options>button:disabled{opacity:.46;cursor:not-allowed}.node-input-picker-options>button.is-unavailable{color:var(--color-warning)}.node-input-picker-mark{place-items:center;width:24px;display:grid}.node-input-picker-copy{gap:2px;min-width:0;display:grid}.node-input-picker-copy strong{color:inherit;font-size:var(--text-body-size);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.node-input-picker-copy small{color:var(--color-text-muted);font-size:var(--text-meta-size);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.node-input-picker-empty{padding:var(--space-5) var(--space-3);color:var(--color-text-muted);font-size:var(--text-meta-size);text-align:center}.node-input-picker-footer{justify-content:flex-end;align-items:center;gap:var(--space-2);min-height:60px;padding:var(--space-2) var(--space-3);border-top:1px solid var(--color-border);background:var(--color-surface);flex:none;display:flex}.node-input-picker-footer button{min-height:var(--touch-target);padding:0 var(--space-4);border-radius:var(--radius-control);color:var(--color-text-secondary);background:var(--color-surface-subtle);font-weight:650}.node-input-picker-footer button.is-primary{color:#fff;background:var(--color-primary)}.region-picker-trigger{align-items:center;gap:var(--space-2);width:100%;min-width:0;min-height:42px;padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-surface);text-align:left;cursor:pointer;display:flex}.region-picker-trigger>span{min-width:0;font-size:var(--text-body-size);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-weight:550;overflow:hidden}.region-picker-trigger>svg{color:var(--color-text-muted);flex:none}.region-picker-trigger:hover{border-color:var(--color-text-muted);background:var(--color-surface-subtle)}.region-picker-trigger:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.region-picker-backdrop{z-index:1299;background:var(--color-backdrop);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);position:fixed;left:0;right:0}.region-picker-panel{z-index:1300;border:1px solid var(--color-border);min-width:0;min-height:0;color:var(--color-text);background:var(--color-surface);box-shadow:var(--shadow-floating);flex-direction:column;display:flex;position:fixed;overflow:hidden}.region-picker-panel.is-popover{border-radius:var(--radius-card)}.region-picker-panel.is-sheet{border-width:1px 0 0;border-radius:16px 16px 0 0;width:100%;left:0;right:0}.region-picker-header{z-index:3;justify-content:space-between;align-items:center;gap:var(--space-3);min-height:56px;padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-surface);flex:0 0 56px;display:flex;position:sticky;top:0}.region-picker-header strong{font-size:var(--text-body-size)}.region-picker-header button{width:var(--touch-target);height:var(--touch-target);border-radius:var(--radius-control);color:var(--color-text-secondary);background:0 0;place-items:center;display:grid}.region-picker-header button:hover{color:var(--color-text);background:var(--color-surface-subtle)}.region-picker-search{align-items:center;gap:var(--space-2);min-height:68px;padding:var(--space-3);border-bottom:1px solid var(--color-border);color:var(--color-text-muted);background:var(--color-surface);flex:0 0 68px;display:flex}.region-picker-search input{min-width:0;min-height:var(--touch-target);padding:0 var(--space-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-surface);flex:auto;font-size:16px}.region-picker-search input:focus{border-color:var(--color-primary);outline:3px solid var(--color-focus-ring)}.region-picker-selection-summary{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:44px;padding:0 var(--space-3);border-bottom:1px solid var(--color-border);background:var(--color-surface-subtle);flex:0 0 44px;display:flex}.region-picker-selection-summary span{color:var(--color-text-muted);font-size:var(--text-meta-size);font-variant-numeric:tabular-nums}.region-picker-selection-summary button{min-height:32px;padding:0 var(--space-2);border-radius:var(--radius-small);color:var(--color-primary);font-size:var(--text-meta-size);background:0 0;font-weight:650}.region-picker-selection-summary button:hover:not(:disabled){background:var(--color-primary-soft)}.region-picker-selection-summary button:disabled{opacity:.42}.region-picker-options{overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;min-height:0;padding:0 var(--space-2);background:var(--color-surface);flex:0 auto;align-content:start;display:grid;overflow:hidden auto}.region-picker-options>button{align-items:center;gap:var(--space-2);width:100%;min-width:0;height:48px;min-height:48px;padding:0 var(--space-2);border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);text-align:left;background:0 0;border-radius:0;grid-template-columns:24px minmax(0,1fr) auto 20px;display:grid}.region-picker-options>button:last-of-type{border-bottom-color:#0000}.region-picker-options>button:hover,.region-picker-options>button:focus-visible{background:var(--color-surface-subtle)}.region-picker-options>button:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.region-picker-options>button.is-selected{color:var(--color-primary);background:var(--color-primary-soft)}.region-picker-options>button strong{min-width:0;color:inherit;font-size:var(--text-body-size);text-overflow:ellipsis;white-space:nowrap;font-weight:550;overflow:hidden}.region-picker-options>button code{color:var(--color-text-muted);font-size:var(--text-meta-size)}.region-picker-options>button>svg{color:var(--color-primary)}.region-picker-empty{padding:var(--space-5) var(--space-3);color:var(--color-text-muted);font-size:var(--text-meta-size);text-align:center}.region-picker-footer{z-index:3;justify-content:flex-end;align-items:center;gap:var(--space-2);min-height:60px;padding:var(--space-2) var(--space-3);border-top:1px solid var(--color-border);background:var(--color-surface);flex:0 0 60px;display:flex;position:sticky;bottom:0}.region-picker-footer button{min-height:var(--touch-target);padding:0 var(--space-4);border-radius:var(--radius-control);color:var(--color-text-secondary);background:var(--color-surface-subtle);font-weight:650}.region-picker-footer button.is-primary{color:#fff;background:var(--color-primary)}.region-options{overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;max-height:264px;position:static;top:auto;left:auto;right:auto;overflow:hidden auto}@media (width<=1023px){.workspace-editor-backdrop[data-shell-mode=tablet],.workspace-editor-backdrop[data-shell-mode=mobile]{inset:auto 0;top:var(--workspace-visual-viewport-offset-top,0px);height:var(--workspace-visual-viewport-height,100dvh);position:fixed}.workspace-editor-backdrop[data-shell-mode=tablet] .workspace-editor-panel,.workspace-editor-backdrop[data-shell-mode=mobile] .workspace-editor-panel{height:100%;max-height:100%;overflow:hidden}.workspace-editor-backdrop[data-shell-mode=mobile] .workspace-editor-panel{width:100%}.workspace-editor-backdrop[data-shell-mode=tablet] .workspace-editor-toolbar,.workspace-editor-backdrop[data-shell-mode=mobile] .workspace-editor-toolbar{z-index:20;background:var(--color-surface);min-height:60px;position:sticky;top:0}.workspace-editor-backdrop[data-shell-mode=tablet] .workspace-editor-toolbar button,.workspace-editor-backdrop[data-shell-mode=mobile] .workspace-editor-toolbar button{min-width:var(--touch-target);min-height:var(--touch-target)}.workspace-editor-backdrop[data-shell-mode=tablet] .workspace-editor-scroll-content,.workspace-editor-backdrop[data-shell-mode=mobile] .workspace-editor-scroll-content{overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;display:block;overflow:hidden auto}.workspace-editor-backdrop[data-shell-mode=tablet] .workspace-editor-scroll-content>.inspector,.workspace-editor-backdrop[data-shell-mode=mobile] .workspace-editor-scroll-content>.inspector{height:auto;min-height:auto;overflow:visible}.workspace-editor-backdrop[data-shell-mode=tablet] .workspace-editor-scroll-content>.inspector>.inspector-scroll,.workspace-editor-backdrop[data-shell-mode=mobile] .workspace-editor-scroll-content>.inspector>.inspector-scroll{flex:none;min-height:0;overflow:visible}.workspace-editor-panel .region-options{max-height:min(292px,38dvh)}.workspace-editor-panel .region-combobox-input input{font-size:16px!important}.node-input-picker-trigger,.region-picker-trigger{min-height:var(--touch-target)}}@media (width<=767px){.workspace-processing-step{align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-3) var(--space-1);grid-template:"body body""toggle actions"/minmax(0,1fr) auto}.workspace-processing-body{grid-area:body/auto}.workspace-processing-step .workspace-compact-toggle{grid-area:toggle/auto;justify-self:start}.workspace-processing-step .workspace-step-actions{flex-wrap:nowrap;grid-area:actions/auto;justify-self:end;min-width:max-content}}@media (prefers-reduced-motion:reduce){.node-input-picker-panel,.region-picker-panel{animation:none}}
