.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #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: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__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{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}:root{--brand: #4f46e5;--brand-strong: #4338ca;--brand-weak: #eef2ff;--brand-soft: #f5f3ff;--text: #0f172a;--text-2: #334155;--muted: #64748b;--faint: #94a3b8;--bg: #f6f7fb;--panel: #ffffff;--line: #e5e9f0;--line-strong: #d5dbe6;--ok: #059669;--ok-weak: #ecfdf5;--warn: #b45309;--warn-weak: #fffbeb;--danger: #dc2626;--danger-weak: #fef2f2;--radius-s: 8px;--radius: 12px;--radius-l: 16px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .05);--shadow: 0 6px 18px rgba(15, 23, 42, .06);--shadow-lg: 0 24px 48px rgba(15, 23, 42, .16);--font: "Inter", "PingFang SC", "Microsoft YaHei", system-ui, -apple-system, sans-serif;--mono: "JetBrains Mono", Consolas, "Courier New", monospace;--surface-2: #f8fafc;--surface-3: #f1f5f9;--surface-alt: #fbfdff;--input-bg: #ffffff;--hover-bg: #f8fafc;--line-soft: #eef2f7;--line-soft-2: #f1f5f9;--code-bg: #0f172a;--code-text: #e2e8f0;--mask: rgba(15, 23, 42, .45);--brand-line: #c7d2fe;--brand-ring: rgba(79, 70, 229, .14);--ok-line: #d1fae5;--ok-text: #065f46;--warn-line: #fde68a;--warn-text: #92400e;--danger-line: #fecaca;--danger-text: #991b1b;--info: #2563eb;--info-weak: #eff6ff;--info-line: #bfdbfe;--info-text: #1e40af;--skeleton-a: #eef1f6;--skeleton-b: #f7f9fc;--ui-zoom: 1;color-scheme:light}[data-theme=dark]{color-scheme:dark;--text: #e6edf7;--text-2: #c3cede;--muted: #94a3b8;--faint: #64748b;--bg: #0b1220;--panel: #111a2b;--surface-2: #162136;--surface-3: #1c2942;--surface-alt: #0f192b;--input-bg: #0f192b;--hover-bg: #182640;--line: #22304a;--line-strong: #31415f;--line-soft: #1b2840;--line-soft-2: #1a263c;--code-bg: #020617;--code-text: #cbd5e1;--mask: rgba(2, 6, 15, .66);--brand-weak: #1e1b4b;--brand-soft: #171533;--brand-line: #3730a3;--brand-ring: rgba(99, 102, 241, .3);--ok: #34d399;--ok-weak: #0d2a22;--ok-line: #155e46;--ok-text: #6ee7b7;--warn: #fbbf24;--warn-weak: #2b210c;--warn-line: #78530f;--warn-text: #fcd34d;--danger: #f87171;--danger-weak: #2c1218;--danger-line: #7f1d1d;--danger-text: #fca5a5;--info: #60a5fa;--info-weak: #10243d;--info-line: #1e40af;--info-text: #93c5fd;--skeleton-a: #1b2840;--skeleton-b: #233150;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .45);--shadow: 0 6px 18px rgba(0, 0, 0, .35);--shadow-lg: 0 24px 48px rgba(0, 0, 0, .5)}[data-theme=dark] .auth-hero{background:linear-gradient(150deg,#0b1020,#151a3a 45%,#241f5c)}[data-vision=weak]{--text: #0b1220;--text-2: #1f2937;--muted: #475569;--faint: #64748b;--line: #b8c4d6;--line-strong: #8fa1b8;--line-soft: #cbd5e1;--line-soft-2: #d3dce8;--bg: #f4f6fa;--surface-2: #eef2f7;--surface-3: #e2e8f0;--surface-alt: #f8fafc;--ok: #0072b2;--ok-weak: #e3f1f9;--ok-line: #7fb6d9;--ok-text: #00527f;--warn: #9a5b00;--warn-weak: #fff4dc;--warn-line: #e8c07a;--warn-text: #7a4500;--danger: #a12a5e;--danger-weak: #fbeaf2;--danger-line: #e0a8c2;--danger-text: #82204b;--info: #0f6f8a;--info-weak: #e3f4f8;--info-line: #8ecadb;--info-text: #0b586e}[data-theme=dark][data-vision=weak]{--text: #f1f5f9;--text-2: #dbe3ee;--muted: #a8b5c8;--faint: #8494ab;--line: #3b4c66;--line-strong: #5a6e8c;--line-soft: #33445f;--line-soft-2: #2f3f58;--bg: #080f1c;--surface-2: #111c2f;--surface-3: #17253d;--surface-alt: #0b1526;--ok: #56b4e9;--ok-weak: #0b2a3d;--ok-line: #1f6f9a;--ok-text: #a5d8f3;--warn: #f0b24a;--warn-weak: #2d2109;--warn-line: #8a6416;--warn-text: #f6d27a;--danger: #e58bb4;--danger-weak: #2b1220;--danger-line: #8a3359;--danger-text: #f3b8d3;--info: #5bc7dd;--info-weak: #0a2a33;--info-line: #1c6474;--info-text: #a8e3ee}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px;-webkit-font-smoothing:antialiased;zoom:var(--ui-zoom)}a{color:inherit;text-decoration:none}code,.mono{font-family:var(--mono)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line-strong);background:var(--panel);color:var(--text-2);border-radius:var(--radius-s);padding:8px 14px;font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;transition:all .15s ease;white-space:nowrap}.btn:hover{border-color:var(--brand);color:var(--brand);background:var(--brand-soft)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:var(--shadow-sm)}.btn.primary:hover{background:var(--brand-strong);border-color:var(--brand-strong);color:#fff}.btn.small{padding:6px 10px;font-size:12px}.btn.block{width:100%;padding:10px 14px}.icon-btn{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:var(--radius-s);border:1px solid transparent;background:transparent;color:var(--muted);cursor:pointer;transition:all .15s ease}.icon-btn:hover{background:var(--surface-3);color:var(--text)}.icon-btn.ghost:hover{background:var(--danger-weak);color:var(--danger)}.input{display:flex;flex-direction:column;gap:6px}.input>span{font-size:12px;font-weight:600;color:var(--text-2)}.input input,.input select,.input textarea{border:1px solid var(--line-strong);border-radius:var(--radius-s);padding:9px 12px;font-size:13px;font-family:inherit;color:var(--text);background:var(--panel);outline:none;transition:border-color .15s,box-shadow .15s}.input input:focus,.input select:focus,.input textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px #4f46e51f}.form-error{background:var(--danger-weak);border:1px solid var(--danger-line);color:var(--danger-text);border-radius:var(--radius-s);padding:9px 12px;font-size:12px;line-height:1.5}.alert{border-radius:var(--radius-s);padding:10px 14px;font-size:13px;margin-bottom:16px}.alert.error{background:var(--danger-weak);border:1px solid var(--danger-line);color:var(--danger-text)}.shell{display:flex;flex-direction:column;height:calc(100vh / var(--ui-zoom))}.topbar{flex:none;height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;background:var(--panel);border-bottom:1px solid var(--line);z-index:10}.topbar-left,.topbar-right{display:flex;align-items:center;gap:14px}.brand{display:flex;align-items:center;gap:9px}.brand-mark{width:28px;height:28px;border-radius:9px;background:linear-gradient(135deg,var(--brand),var(--brand-strong));color:#fff;display:grid;place-items:center;font-weight:800;font-size:15px;box-shadow:0 4px 12px #4f46e559}.brand-name{font-weight:800;font-size:16px;letter-spacing:.3px}.topbar-divider{width:1px;height:22px;background:var(--line)}.workspace-chip{display:inline-flex;align-items:center;gap:8px;background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:12.5px;color:var(--text-2)}.workspace-chip code{font-size:11px;color:var(--muted);background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:1px 6px}.ws-dot{width:7px;height:7px;border-radius:50%;background:var(--ok)}.health-pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);background:var(--ok-weak);border:1px solid var(--ok-line);border-radius:999px;padding:4px 10px}.health-pill.off{background:var(--danger-weak);border-color:var(--danger-line);color:var(--danger-text)}.health-dot{width:6px;height:6px;border-radius:50%;background:var(--ok)}.health-pill.off .health-dot{background:var(--danger)}.user-chip{display:flex;align-items:center;gap:8px}.avatar{width:30px;height:30px;border-radius:50%;background:var(--brand-weak);color:var(--brand);display:grid;place-items:center;font-weight:700;font-size:13px}.user-name{font-size:13px;font-weight:600}.role-badge{font-size:10px;color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:1px 5px}.body{flex:1;display:flex;min-height:0}.sidenav{flex:none;width:216px;background:var(--panel);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:14px 10px}.nav{display:flex;flex-direction:column;gap:2px}.nav-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--radius-s);color:var(--text-2);font-size:13.5px;font-weight:500;border:1px solid transparent;transition:all .15s}.nav-item:hover{background:var(--surface-2)}.nav-item.active{background:var(--brand-weak);color:var(--brand-strong);border-color:var(--brand-line);font-weight:600}.nav-item.disabled{color:var(--faint);cursor:default;background:transparent}.nav-item.disabled:hover{background:transparent}.nav-item em{margin-left:auto;font-style:normal;font-size:10px;border:1px solid var(--line);border-radius:4px;padding:0 4px}.sidenav-foot{margin-top:auto;padding:10px 8px 2px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:6px}.sprint-chip{font-size:11px;color:var(--brand-strong);background:var(--brand-weak);border-radius:6px;padding:4px 8px;width:fit-content}.version-line{font-size:11px;color:var(--faint)}.main{flex:1;min-width:0;overflow-y:auto}.page-wrap{max-width:none;margin:0 auto;padding:28px 32px 48px}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px}.page-header h1{margin:0;font-size:24px;letter-spacing:-.2px}.page-sub{margin:6px 0 0;color:var(--muted);font-size:13px}.header-actions{display:flex;gap:10px;align-items:center}.ai-helper{display:flex;flex-direction:column;gap:6px}.link-btn{align-self:flex-start;border:0;background:transparent;padding:0;color:var(--brand);font-size:12.5px;cursor:pointer}.link-btn:hover{text-decoration:underline}.ai-questions{margin:2px 0 0;padding-left:18px;color:var(--muted);font-size:12.5px;line-height:1.7}.ai-note{margin-right:auto;font-size:12px;color:var(--faint)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.app-card{display:flex;flex-direction:column;gap:8px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px 14px;min-height:148px;box-shadow:var(--shadow-sm);transition:all .18s ease}.app-card:hover{border-color:var(--brand-line);box-shadow:var(--shadow);transform:translateY(-2px)}.app-card-top{display:flex;align-items:center;justify-content:space-between;min-height:22px}.app-card h3{margin:2px 0 0;font-size:15.5px}.app-desc{margin:0;color:var(--muted);font-size:12.5px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:38px}.app-meta{margin-top:auto;display:flex;align-items:center;gap:10px;font-size:11.5px;color:var(--faint);border-top:1px solid var(--line-soft-2);padding-top:9px}.app-meta code{color:var(--muted);background:var(--bg);border-radius:4px;padding:1px 6px;font-size:11px}.status-badge{font-size:11px;font-weight:600;border-radius:999px;padding:3px 9px;width:fit-content;background:var(--surface-3);color:var(--muted);border:1px solid transparent}.status-badge.published{background:var(--ok-weak);color:var(--ok);border-color:var(--ok-line)}.status-badge.draft{background:var(--surface-2);color:var(--muted);border-color:var(--line)}.status-badge.warn{background:var(--warn-weak);color:var(--warn);border-color:var(--warn-line)}.skeleton{background:linear-gradient(90deg,var(--skeleton-a) 25%,var(--skeleton-b) 37%,var(--skeleton-a) 63%);background-size:400% 100%;animation:shimmer 1.3s ease infinite;border-radius:var(--radius);border:1px solid var(--line)}.skeleton.block{border-radius:var(--radius)}@keyframes shimmer{0%{background-position:100% 0}to{background-position:0 0}}.empty-state{border:1px dashed var(--line-strong);border-radius:var(--radius-l);background:var(--panel);padding:48px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}.empty-state.small{padding:32px 20px}.empty-state h3{margin:6px 0 0;font-size:15px}.empty-state p{margin:0 0 8px;color:var(--muted);font-size:13px}.empty-icon{width:52px;height:52px;border-radius:16px;background:var(--brand-weak);color:var(--brand);display:grid;place-items:center}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--mask);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:50;padding:20px}.modal{width:480px;max-width:100%;max-height:calc(100vh - 40px);overflow-y:auto;overscroll-behavior:contain;background:var(--panel);border-radius:var(--radius-l);box-shadow:var(--shadow-lg);padding:22px 24px;display:flex;flex-direction:column;gap:14px}.modal-head{display:flex;align-items:center;justify-content:space-between}.modal-head h2{margin:0;font-size:17px}.modal-foot{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.template-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:10px}.template-card{text-align:left;border:1px solid var(--line-strong);background:var(--panel);border-radius:var(--radius-s);padding:11px 13px;display:flex;flex-direction:column;gap:4px;cursor:pointer;font-family:inherit;transition:all .15s}.template-card b{font-size:13px}.template-card span{font-size:11.5px;color:var(--muted);line-height:1.5}.template-card.active{border-color:var(--brand);background:var(--brand-soft);box-shadow:0 0 0 2px #4f46e51f}.workspace{max-width:none;margin:0 auto;padding:22px 32px 40px}.ws-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin-bottom:14px}.back-link{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:13px;padding:6px 10px 6px 6px;border-radius:var(--radius-s)}.back-link:hover{background:var(--panel);color:var(--text)}.ws-title{display:flex;align-items:center;gap:10px;min-width:0}.ws-title h1{margin:0;font-size:21px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-key{font-size:11px;color:var(--muted);background:var(--panel);border:1px solid var(--line);border-radius:5px;padding:2px 7px}.ws-actions{display:flex;gap:10px}.ws-tabs{display:flex;align-items:center;gap:4px;border-bottom:1px solid var(--line);margin-bottom:18px}.ws-tab{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--muted);font-size:13px;font-weight:500;font-family:inherit;padding:10px 14px;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.ws-tab:hover{color:var(--text)}.ws-tab.active{color:var(--brand-strong);border-bottom-color:var(--brand);font-weight:600}.dirty-hint{margin-left:auto;font-size:11.5px;color:var(--warn);background:var(--warn-weak);border-radius:999px;padding:3px 10px}.preview-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.page-pills{display:flex;gap:6px;flex-wrap:wrap}.pill{border:1px solid var(--line);background:var(--panel);border-radius:999px;padding:5px 12px;font-size:12px;color:var(--muted);cursor:pointer;font-family:inherit}.pill.active{background:var(--brand);border-color:var(--brand);color:#fff}.preview-note{font-size:11.5px;color:var(--faint)}.preview-canvas{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;box-shadow:var(--shadow-sm);min-height:320px}.dsl-editor{display:flex;flex-direction:column;gap:10px}.dsl-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.dsl-hint{font-size:12px;color:var(--muted)}.dsl-actions{display:flex;gap:8px}.dsl-textarea{width:100%;min-height:460px;resize:vertical;border:1px solid var(--line-strong);border-radius:var(--radius);padding:14px 16px;font-family:var(--mono);font-size:12.5px;line-height:1.6;background:var(--code-bg);color:var(--code-text);outline:none;-moz-tab-size:2;tab-size:2}.dsl-textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px #4f46e526}.inline-message{border-radius:var(--radius-s);padding:9px 12px;font-size:12.5px;line-height:1.5}.inline-message.ok{background:var(--ok-weak);border:1px solid var(--ok-line);color:var(--ok-text)}.inline-message.err{background:var(--danger-weak);border:1px solid var(--danger-line);color:var(--danger-text)}.versions{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{text-align:left;font-weight:600;font-size:12px;color:var(--muted);background:var(--surface-2);padding:10px 16px;border-bottom:1px solid var(--line)}.table td{padding:12px 16px;border-bottom:1px solid var(--line-soft-2)}.table tr:last-child td{border-bottom:0}.table tr.current td{background:var(--surface-alt)}.table .right{text-align:right}.table .muted{color:var(--muted);font-size:12px}.page{color:var(--text)}.page-head{display:flex;align-items:center;gap:10px;margin-bottom:16px}.page-head h2{margin:0;font-size:17px}.badge{font-size:11px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:2px 8px}.toolbar{display:flex;align-items:center;gap:8px;margin-bottom:12px}.hint{font-size:12px;color:var(--muted);margin-left:auto}.data-table-container{width:100%;min-width:0}.data-table-scroll{width:100%;overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table th,.data-table td{border-bottom:1px solid var(--line-soft);padding:11px 14px;text-align:left;vertical-align:middle}.data-table th{background:var(--surface-2);font-weight:600;font-size:12px;color:var(--text-2);white-space:nowrap}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover td{background:var(--surface-2)}.data-table tbody tr.current td{background:var(--surface-alt)}.data-table tr.row-clickable{cursor:pointer}.data-table th.align-center,.data-table td.align-center{text-align:center}.data-table th.align-right,.data-table td.align-right{text-align:right}.data-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.data-table th.sortable:hover{color:var(--brand)}.sort-caret{display:inline-flex;flex-direction:column;gap:2px;margin-left:6px;vertical-align:middle}.sort-caret i{width:0;height:0;border-left:3.5px solid transparent;border-right:3.5px solid transparent;opacity:.35;transition:opacity .15s ease}.sort-caret .caret-up{border-bottom:5px solid currentColor}.sort-caret .caret-down{border-top:5px solid currentColor}.sort-caret.active i{color:var(--brand)}.sort-caret i.on{opacity:1}.data-table.compact th,.data-table.compact td{padding:8px 12px;font-size:12.5px}.table-empty{display:flex;flex-direction:column;align-items:center;gap:4px;padding:30px 12px;color:var(--muted)}.table-empty-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--surface-3);color:var(--faint)}.table-empty p{margin:6px 0 0;font-size:13px}.table-empty-hint{font-size:12px;color:var(--faint)}.table-loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:30px 12px;color:var(--muted);font-size:13px}.table-spinner{width:16px;height:16px;border-radius:50%;border:2px solid var(--line-strong);border-top-color:var(--brand);animation:data-table-spin .8s linear infinite}@keyframes data-table-spin{to{transform:rotate(360deg)}}.empty-cell{text-align:center!important;color:var(--faint);padding:20px 0!important}.row-actions{text-align:right;white-space:nowrap}.data-table td.row-actions>*+*{margin-left:6px}.row-actions .icon-btn{width:26px;height:26px;color:var(--faint)}.row-actions .icon-btn:hover{color:var(--danger);background:var(--danger-weak)}.data-pager{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px;font-size:12.5px;color:var(--muted)}.data-pager-total{margin-right:auto}.data-pager-sizes{border:1px solid var(--line-strong);border-radius:var(--radius-s);padding:5px 8px;font-size:12px;font-family:inherit;color:var(--text-2);background:var(--panel);outline:none}.data-pager-sizes:focus{border-color:var(--brand)}.data-pager-nav{display:flex;align-items:center;gap:6px}.data-pager-btn{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--line-strong);border-radius:6px;background:var(--panel);color:var(--text-2);cursor:pointer;transition:all .15s ease}.data-pager-btn:hover:not(:disabled){border-color:var(--brand);color:var(--brand)}.data-pager-btn:disabled{opacity:.45;cursor:not-allowed}.data-pager-pages{display:flex;align-items:center;gap:4px}.data-pager-page{min-width:28px;height:28px;padding:0 6px;border:1px solid transparent;border-radius:6px;background:var(--panel);color:var(--text-2);font-size:12.5px;font-family:inherit;cursor:pointer;transition:all .15s ease}.data-pager-page:hover{color:var(--brand);background:var(--brand-soft)}.data-pager-page.active{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:600}.data-pager-ellipsis{min-width:20px;text-align:center;color:var(--faint)}.data-pager-compact{display:none}.filter-select{border:1px solid var(--line-strong);border-radius:var(--radius-s);padding:6px 10px;font-size:12.5px;font-family:inherit;background:var(--panel);outline:none;min-width:150px}.filter-select:focus{border-color:var(--brand);box-shadow:0 0 0 3px #4f46e51a}.detail-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:14px}.detail-card{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px 24px;margin:0;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px}.detail-item dt{font-size:12px;color:var(--muted);margin-bottom:4px}.detail-item dd{margin:0;font-size:14px;color:var(--text);word-break:break-word}.approval-banner{border:1px solid var(--warn-line);background:var(--warn-weak);border-radius:var(--radius);padding:14px 16px;margin-bottom:14px}.approval-banner.approved{border-color:var(--ok-line);background:var(--ok-weak)}.approval-banner.rejected{border-color:var(--danger-line);background:var(--danger-weak)}.approval-banner.withdrawn{border-color:var(--line);background:var(--surface-2)}.approval-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;font-size:13px;color:var(--text-2)}.approval-head b{font-size:14px;color:var(--text)}.approval-steps{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:12.5px}.approval-steps li{display:flex;align-items:center;gap:8px;color:var(--muted)}.step-dot{width:7px;height:7px;border-radius:50%;background:var(--line-strong);flex:none}.approval-steps li.approved .step-dot{background:var(--ok)}.approval-steps li.rejected .step-dot{background:var(--danger)}.approval-steps li.pending .step-dot{background:var(--warn)}.approval-steps li.pending .step-name{color:var(--text);font-weight:600}.step-status{margin-left:auto;color:var(--faint)}.table .right .btn+.btn{margin-left:6px}.bell-wrap,.bell{position:relative}.bell-dot{position:absolute;top:-3px;right:-3px;min-width:15px;height:15px;padding:0 3px;border-radius:8px;background:var(--danger);color:#fff;font-size:10px;line-height:15px;text-align:center}.panel-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40}.notification-panel{position:absolute;top:calc(100% + 8px);right:0;width:340px;max-height:420px;overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 16px 40px #0f172a24;z-index:41}.np-head{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--line);font-size:13px}.np-item{display:flex;flex-direction:column;gap:2px;width:100%;padding:10px 14px;border:0;border-bottom:1px solid var(--line);background:var(--panel);text-align:left;cursor:pointer;font-family:inherit}.np-item:hover{background:var(--surface-2)}.np-item b{font-size:12.5px;color:var(--text);font-weight:600}.np-item span{font-size:12px;color:var(--muted)}.np-item em{font-style:normal;font-size:11px;color:var(--faint)}.np-item.unread b:before{content:"";display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:50%;background:var(--brand);vertical-align:middle}.np-empty{padding:24px 14px;text-align:center;color:var(--faint);font-size:12.5px}.secret-banner{display:flex;align-items:center;gap:10px;padding:12px 14px;margin-bottom:14px;border:1px solid var(--warn-line);background:var(--warn-weak);border-radius:var(--radius);font-size:12.5px}.secret-banner>div{flex:1;display:flex;flex-direction:column;gap:4px}.secret-banner code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;word-break:break-all;color:var(--warn-text)}.url-cell{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-chip{display:inline-block;margin:1px 4px 1px 0;padding:1px 7px;border-radius:999px;background:var(--brand-weak);color:var(--brand-strong);font-size:11px}.event-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;margin-top:6px}.checkbox{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--text-2);cursor:pointer}.modal.wide{width:520px}.section-title{margin:28px 0 12px;font-size:15px;font-weight:600}.switch{width:34px;height:20px;padding:2px;border:0;border-radius:999px;background:var(--line-strong);cursor:pointer}.switch span{display:block;width:16px;height:16px;border-radius:50%;background:var(--panel);transition:transform .15s ease}.switch.on{background:var(--brand)}.switch.on span{transform:translate(14px)}.category-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.category-chip{border:1px solid var(--line-strong);background:var(--panel);border-radius:999px;padding:4px 12px;font-size:12.5px;cursor:pointer;color:var(--text-2);font-family:inherit}.category-chip.active{background:var(--brand-weak);border-color:var(--brand-line);color:var(--brand-strong)}.template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}.template-card{display:flex;gap:12px;align-items:flex-start;padding:16px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.template-icon{width:36px;height:36px;border-radius:10px;background:var(--brand-weak);color:var(--brand);display:flex;align-items:center;justify-content:center;flex:none}.template-body{flex:1;min-width:0}.template-title-row{display:flex;align-items:center;gap:8px}.template-body p{margin:6px 0;font-size:12.5px;color:var(--muted);line-height:1.5}.template-category{font-size:11px;color:var(--faint)}.template-actions{display:flex;flex-direction:column;gap:6px}.form{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}.field{display:flex;flex-direction:column;gap:6px;font-size:13px}.field.full{grid-column:span 2}.field input,.field select,.field textarea{border:1px solid var(--line-strong);border-radius:var(--radius-s);padding:9px 11px;font-size:13px;font-family:inherit;background:var(--input-bg);color:var(--text);outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px #4f46e51a}.req{color:var(--danger);font-style:normal;margin-left:2px}.err{color:var(--danger);font-size:12px;font-weight:400}.actions{grid-column:span 2;display:flex;justify-content:flex-end;align-items:center;gap:10px}.detail{display:grid;grid-template-columns:170px 1fr;gap:10px 12px;font-size:13px}.detail-row{display:contents}.detail dt{color:var(--muted)}.detail dd{margin:0}.empty{color:var(--faint);padding:24px;text-align:center}.auth{display:grid;grid-template-columns:1.05fr 1fr;min-height:calc(100vh / var(--ui-zoom))}.auth-hero{background:linear-gradient(150deg,#1e1b4b,#312e81 45%,#4338ca);color:#e0e7ff;padding:56px 64px;display:flex;flex-direction:column;position:relative;overflow:hidden}.auth-hero:after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(99,102,241,.55),transparent 65%);right:-180px;bottom:-220px}.auth-hero .brand{margin-bottom:56px}.auth-hero .brand-mark{background:var(--panel);color:var(--brand)}.auth-hero .brand-name{color:#fff;font-size:18px}.auth-hero h1{font-size:34px;line-height:1.35;margin:0 0 14px;color:#fff;letter-spacing:-.5px}.auth-lead{margin:0 0 34px;color:#c7d2fe;font-size:14px;line-height:1.7;max-width:420px}.auth-features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:18px;position:relative;z-index:1}.auth-features li{display:flex;gap:12px;align-items:flex-start}.feature-check{flex:none;width:22px;height:22px;border-radius:50%;background:#ffffff24;color:#a5b4fc;display:grid;place-items:center;margin-top:1px}.auth-features b{display:block;color:#fff;font-size:13.5px;margin-bottom:3px}.auth-features span{color:#c7d2fe;font-size:12.5px;line-height:1.6}.auth-hero-foot{margin-top:auto;padding-top:40px;font-size:11.5px;color:#818cf8;position:relative;z-index:1}.auth-panel{display:grid;place-items:center;padding:32px;background:var(--panel)}.auth-card{width:360px;display:flex;flex-direction:column;gap:14px}.auth-card h2{margin:0;font-size:22px;letter-spacing:-.3px}.auth-sub{margin:-6px 0 4px;color:var(--muted);font-size:13px}.segmented{display:grid;grid-template-columns:1fr 1fr;background:var(--bg);border-radius:10px;padding:3px;gap:3px;margin-bottom:4px}.segmented button{border:0;background:transparent;padding:8px 0;font-size:13px;font-family:inherit;color:var(--muted);border-radius:8px;cursor:pointer}.segmented button.active{background:var(--panel);color:var(--brand-strong);font-weight:600;box-shadow:var(--shadow-sm)}.auth-note{margin:2px 0 0;font-size:12px;color:var(--faint);line-height:1.6}.auth-platform-link{margin-left:6px;color:var(--brand, #5b6cf0);text-decoration:none;border-bottom:1px dashed color-mix(in srgb,var(--brand, #5b6cf0) 50%,transparent)}.auth-platform-link:hover{border-bottom-style:solid}.toasts{position:fixed;right:20px;bottom:20px;display:flex;flex-direction:column;gap:8px;z-index:100}.toast{min-width:220px;max-width:360px;background:var(--code-bg);color:var(--code-text);font-size:13px;padding:10px 14px;border-radius:10px;box-shadow:var(--shadow-lg);animation:toast-in .2s ease}.toast.success{background:#064e3b;color:#d1fae5}.toast.error{background:#7f1d1d;color:#fee2e2}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.boot{height:calc(100vh / var(--ui-zoom));display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted);font-size:13.5px}.spinner{width:16px;height:16px;border:2px solid var(--line-strong);border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 980px){.auth{grid-template-columns:1fr}.auth-hero{padding:36px 32px}.auth-hero h1{font-size:26px}.auth-features{display:none}.auth-panel{padding:28px 20px 48px}.sidenav{width:64px;padding:12px 8px}.nav-item{justify-content:center}.nav-item:not(.active) span,.nav-item em,.nav-text,.sidenav-foot{display:none}.page-wrap,.workspace{padding:20px 18px 40px}.ws-head,.form{grid-template-columns:1fr}.field.full,.actions{grid-column:span 1}}.import-summary{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:12px;font-size:13px}.import-summary .ok{color:var(--ok-text);font-weight:600}.import-summary .err{color:var(--danger-text);font-weight:600}.subtable{display:flex;flex-direction:column;gap:8px}.subtable-scroll{overflow-x:auto}.subtable-input input,.subtable-input select{width:100%;min-width:90px;border:1px solid var(--line-strong);border-radius:var(--radius-s);padding:5px 8px;font-size:12.5px;font-family:inherit;background:var(--panel)}.subtable-input textarea{width:100%;min-width:140px;border:1px solid var(--line-strong);border-radius:var(--radius-s);padding:5px 8px;font-size:12.5px;font-family:inherit}.subtable-view{margin-top:18px}.subtable-view h3{margin:0 0 10px;font-size:14px;font-weight:600}.runtime-page{max-width:none;margin:0 auto;padding:20px 24px 48px}.runtime-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.runtime-head h1{margin:4px 0 0;font-size:20px}.runtime-canvas{background:var(--bg, #f8fafc)}.runtime-canvas .page{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px}.nav-group{display:block;padding:10px 18px 4px;font-size:11.5px;color:var(--faint);letter-spacing:.04em}.nav-item.child{padding-left:34px;font-size:12.5px}.preview-mode-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding:8px 12px;border:1px dashed var(--warn-line);background:var(--warn-weak);border-radius:var(--radius-s);font-size:12.5px;color:var(--warn-text)}.landing-card{text-decoration:none;color:inherit}.small{font-size:12px}.menu-table td{vertical-align:top}.drag-handle{color:var(--faint);cursor:grab;-webkit-user-select:none;user-select:none}.menu-table tr.dragging{opacity:.45}.scope-line{margin-top:2px;font-size:11.5px;color:var(--faint)}.dept-picker{display:flex;flex-direction:column;gap:2px;max-height:180px;overflow-y:auto;padding:6px 8px;border:1px solid var(--line);border-radius:var(--radius-s);margin-top:6px}.check-row{display:flex;align-items:center;gap:8px;font-size:12.5px;padding:2px 0;cursor:pointer}.check-row input{width:auto;margin:0}.input .check-row{margin-top:6px}.role-chips{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.audit-table td{vertical-align:top}.audit-detail{max-width:420px;word-break:break-all;font-size:12px}.automation-panel{padding:16px 4px 4px}.automation-runs-title{margin:22px 0 10px;font-size:14px;font-weight:600}.automation-sample{margin:10px 0;padding:12px 14px;background:var(--code-bg);color:var(--code-text);border-radius:var(--radius-s);font-size:12px;line-height:1.55;overflow-x:auto}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px}.dashboard-card{border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;background:var(--panel)}.dashboard-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.dashboard-card-head h3{margin:0;font-size:15px}.dashboard-count{text-align:right}.dashboard-count b{display:block;font-size:24px;line-height:1.1;color:var(--primary, #4f46e5)}.dashboard-count span{font-size:11.5px;color:var(--faint)}.dashboard-sums{display:flex;gap:20px;padding:8px 0 12px;border-top:1px dashed var(--line);border-bottom:1px dashed var(--line);margin-bottom:12px}.dashboard-sum span{display:block;font-size:11.5px;color:var(--faint)}.dashboard-sum b{font-size:16px}.dashboard-group{margin-bottom:12px}.dashboard-group h4{margin:0 0 6px;font-size:12px;font-weight:600;color:var(--muted)}.dashboard-bar-row{display:flex;align-items:center;gap:8px;margin-bottom:4px;font-size:12px}.dashboard-bar-label{width:74px;flex-shrink:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-bar-track{flex:1;height:8px;background:var(--line);border-radius:4px;overflow:hidden}.dashboard-bar{height:100%;background:var(--primary, #4f46e5);border-radius:4px}.dashboard-bar-value{width:34px;text-align:right;color:var(--muted)}.dashboard-trend{display:flex;align-items:flex-end;gap:10px;padding-top:4px}.dashboard-trend-col{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1;font-size:10.5px;color:var(--faint)}.dashboard-trend-bar{width:100%;max-width:26px;background:var(--brand-line);border-radius:3px 3px 0 0}.automation-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0}.rule-rows{display:flex;flex-direction:column;gap:6px;margin-top:6px}.rule-row{display:flex;align-items:center;gap:6px}.rule-row select,.rule-row input{flex:1;min-width:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-wide{width:min(680px,92vw)}.ai-examples{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.ai-examples .pill{font-size:12px}.schema-editor{padding:16px 4px 8px}.schema-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.schema-layout{display:grid;grid-template-columns:220px 1fr;gap:16px;align-items:start}.entity-panel{border:1px solid var(--line);border-radius:var(--radius);padding:10px;background:var(--panel)}.entity-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.entity-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:8px 10px;margin-bottom:4px;border:1px solid transparent;border-radius:var(--radius-s);background:transparent;cursor:pointer;text-align:left;font:inherit}.entity-item:hover{background:var(--bg)}.entity-item.active{border-color:var(--primary);background:var(--brand-weak)}.entity-item code{font-size:11px;color:var(--faint)}.entity-create{display:flex;flex-direction:column;gap:6px;margin-top:8px}.entity-create-actions{display:flex;justify-content:flex-end;gap:6px}.schema-main{min-width:0}.schema-entity-head{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end;margin-bottom:16px}.schema-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0 10px}.schema-section-head h3{margin:0;font-size:14px}.schema-page-actions{display:flex;gap:6px}.field-cards{display:flex;flex-direction:column;gap:10px}.field-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);padding:10px 12px}.field-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.field-card-grid{display:grid;grid-template-columns:1fr 1fr .9fr auto;gap:8px;align-items:end}.field-card-grid label,.field-extra,.field-extra-grid label{display:flex;flex-direction:column;gap:4px;font-size:11.5px;color:var(--muted)}.field-card-grid input,.field-card-grid select,.field-extra input,.field-extra textarea,.field-extra-grid input,.field-extra-grid select,.page-row input,.entity-create input{border:1px solid var(--line-strong);border-radius:var(--radius-s);padding:6px 8px;font:inherit;font-size:12.5px;background:var(--panel)}.field-check{flex-direction:row!important;align-items:center;gap:6px!important;padding-bottom:7px}.field-check input{width:auto}.field-extra{margin-top:8px}.field-extra-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}.page-list{display:flex;flex-direction:column;gap:6px}.page-row{display:grid;grid-template-columns:80px 1fr 1fr 80px auto;gap:8px;align-items:center;border:1px solid var(--line);border-radius:var(--radius-s);padding:6px 10px;background:var(--panel);font-size:12.5px}.relations{border:1px dashed var(--line-strong);border-radius:var(--radius-s);padding:10px 12px;font-size:12.5px;display:flex;flex-direction:column;gap:6px;background:var(--panel)}.schema-hint{display:flex;align-items:center;gap:6px;margin-top:16px;font-size:12px;color:var(--faint)}.btn.danger{color:var(--danger-text);border-color:var(--danger-line)}.policy-editor,.flow-editor{padding:16px 4px 8px}.action-picker{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:6px}.flow-steps{display:flex;flex-direction:column;gap:10px}.flow-step-card{border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;background:var(--panel)}.flow-step-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.flow-step-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.flow-step-grid label{display:flex;flex-direction:column;gap:4px;font-size:11.5px;color:var(--muted)}.flow-step-grid input,.flow-step-grid select{border:1px solid var(--line-strong);border-radius:var(--radius-s);padding:6px 8px;font:inherit;font-size:12.5px;background:var(--panel)}.flow-step-line{font-size:12.5px;line-height:1.6}.sim-result{margin-top:14px;border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;background:var(--panel)}.sim-result.allow{border-color:var(--ok-line);background:var(--ok-weak)}.sim-result.deny{border-color:var(--danger-line);background:var(--danger-weak)}.sim-head{display:flex;align-items:center;gap:10px;margin-bottom:10px;font-size:13px}.sim-head b{font-size:16px}.sim-result.allow .sim-head b{color:var(--ok-text)}.sim-result.deny .sim-head b{color:var(--danger-text)}.sim-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px 14px;font-size:12.5px}.sim-grid span{display:block;font-size:11px;color:var(--faint);margin-bottom:2px}.flow-step-condition{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--line)}.flow-step-condition label{display:flex;flex-direction:column;gap:4px;font-size:11.5px;color:var(--muted)}.flow-step-condition input,.flow-step-condition select{border:1px solid var(--line-strong);border-radius:var(--radius-s);padding:6px 8px;font:inherit;font-size:12.5px;background:var(--panel)}.flow-designer-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:var(--mask);display:flex;align-items:center;justify-content:center;padding:24px}.flow-designer{width:min(1180px,96vw);height:min(760px,92vh);background:var(--panel);border-radius:14px;box-shadow:0 24px 80px #0f172a47;display:flex;flex-direction:column;overflow:hidden}.flow-designer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line)}.flow-designer-head b{display:block;font-size:15px}.flow-designer-meta{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:10px;align-items:end;padding:12px 18px;border-bottom:1px solid var(--line)}.flow-designer-meta label{display:flex;flex-direction:column;gap:4px;font-size:11.5px;color:var(--muted)}.flow-designer-meta input,.flow-designer-meta select{border:1px solid var(--line-strong);border-radius:var(--radius-s);padding:7px 9px;font:inherit;font-size:12.5px}.flow-designer-body{flex:1;display:grid;grid-template-columns:1fr 320px;min-height:0}.flow-canvas{min-height:0;background:var(--surface-2)}.flow-inspector{border-left:1px solid var(--line);padding:14px 16px;overflow-y:auto}.flow-inspector-body{display:flex;flex-direction:column;gap:10px}.flow-inspector-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.approval-node{width:216px;min-width:216px;max-width:216px;box-sizing:border-box;padding:10px 14px;border-radius:10px;border:1.5px solid var(--brand-line);background:var(--panel);box-shadow:0 4px 14px #4f46e51a;display:flex;flex-direction:column;gap:2px}.approval-node.start,.approval-node.end{background:var(--brand-weak);border-color:var(--brand-line);align-items:center}.approval-node.selected{border-color:var(--brand);box-shadow:0 0 0 3px #4f46e52e}.approval-node-kind{font-size:10.5px;color:var(--brand);text-transform:uppercase;letter-spacing:.04em}.approval-node b{font-size:13px}.approval-node span{font-size:11.5px;color:var(--muted)}.approval-node em{font-size:11px;color:var(--warn-text);font-style:normal;background:var(--warn-line);border-radius:4px;padding:1px 5px;align-self:flex-start}.react-flow__attribution{display:none}.approval-progress-graph{height:300px;margin:10px 0 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);overflow:hidden}.approval-graph-fallback{height:60px;display:flex;align-items:center;justify-content:center;color:var(--faint);font-size:12px}.approval-progress-node{min-width:180px;max-width:240px;padding:9px 12px;border-radius:10px;border:1.5px solid var(--line-strong);background:var(--panel);display:flex;flex-direction:column;gap:2px;box-shadow:0 3px 10px #0f172a0f}.approval-progress-node.start,.approval-progress-node.end{align-items:center;background:var(--brand-weak);border-color:var(--brand-line)}.approval-progress-node.status-approved{border-color:var(--ok-line);background:var(--ok-weak)}.approval-progress-node.status-rejected{border-color:var(--danger-line);background:var(--danger-weak)}.approval-progress-node.status-current{border-color:var(--brand);box-shadow:0 0 0 3px #6366f129}.approval-progress-node.status-skipped{opacity:.55;border-style:dashed}.approval-progress-kind{font-size:10.5px;color:var(--brand)}.approval-progress-node b{font-size:12.5px}.approval-progress-node span{font-size:11px;color:var(--muted)}.flow-assignee-list{display:flex;flex-direction:column;gap:6px;margin-top:8px;padding:8px 10px;border:1px dashed var(--line-strong);border-radius:var(--radius-s)}.flow-assignee-row,.flow-route-row{display:flex;align-items:center;gap:6px}.flow-assignee-row select,.flow-route-row select,.flow-route-row input{border:1px solid var(--line-strong);border-radius:var(--radius-s);padding:6px 8px;font:inherit;font-size:12.5px;background:var(--panel);min-width:0;flex:1}.flow-branch-editor{margin-top:8px;padding-top:8px;border-top:1px dashed var(--line);display:flex;flex-direction:column;gap:6px}.flow-branch-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.flow-branch-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.flow-branch-actions select{border:1px solid var(--line-strong);border-radius:var(--radius-s);padding:5px 7px;font:inherit;font-size:12px;background:var(--panel)}.flow-check{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--muted);white-space:nowrap}.ui-modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:var(--mask);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:20px;animation:ui-mask-in .16s ease-out}.ui-modal{width:500px;max-width:100%;max-height:calc(100vh - 40px);background:var(--panel);border-radius:var(--radius-l);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;outline:none;animation:ui-modal-in .18s ease-out}.ui-modal-sm{width:420px}.ui-modal-md{width:500px}.ui-modal-lg{width:600px}.ui-modal-xl{width:680px}.ui-modal-wide{width:860px}.ui-modal-full{width:min(1100px,94vw)}.ui-modal-head{flex:0 0 auto;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 22px;border-bottom:1px solid var(--line);background:var(--panel)}.ui-modal-head-text{min-width:0}.ui-modal-head h2{margin:0;font-size:17px;line-height:1.45}.ui-modal-subtitle{margin:4px 0 0;font-size:12px;color:var(--muted);line-height:1.5}.ui-modal-head-actions{flex:0 0 auto;display:flex;align-items:center;gap:2px}.ui-modal-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:18px 22px;display:flex;flex-direction:column;gap:14px}.ui-modal-foot{flex:0 0 auto;display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:14px 22px;border-top:1px solid var(--line);background:var(--panel)}.ui-modal.is-maximized{width:calc(100vw - 20px);max-width:none;height:calc(100vh - 20px);max-height:none}.ui-modal-mask.is-maximized{padding:10px}@keyframes ui-mask-in{0%{opacity:0}to{opacity:1}}@keyframes ui-modal-in{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 720px){.ui-modal-mask{padding:8px}.ui-modal{width:100%;max-height:calc(100vh - 16px)}.ui-modal-head,.ui-modal-body{padding:14px 16px}.ui-modal-foot{padding:12px 16px}}.ui-modal-form{display:flex;flex-direction:column;gap:14px}.dialog-message{display:flex;align-items:flex-start;gap:12px}.dialog-icon{flex:0 0 auto;width:38px;height:38px;border-radius:50%;display:grid;place-items:center}.dialog-icon.tone-info{background:var(--info-weak);color:var(--info)}.dialog-icon.tone-success{background:var(--ok-weak);color:var(--ok)}.dialog-icon.tone-warning{background:var(--warn-weak);color:var(--warn)}.dialog-icon.tone-danger{background:var(--danger-weak);color:var(--danger)}.dialog-text{flex:1;min-width:0;font-size:13px;line-height:1.7;color:var(--text-2);white-space:pre-line;padding-top:2px}.dialog-fields{display:flex;flex-direction:column;gap:12px;margin-top:4px}.layout-wrap{position:relative}.layout-pop{position:absolute;top:calc(100% + 8px);right:0;z-index:50;width:186px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-lg);padding:8px;display:flex;flex-direction:column;gap:2px}.layout-pop b{font-size:11.5px;color:var(--faint);padding:4px 8px 6px;font-weight:600}.layout-pop button{text-align:left;border:0;background:transparent;padding:8px 9px;border-radius:6px;font:inherit;font-size:12.5px;color:var(--text-2);cursor:pointer}.layout-pop button:hover{background:var(--surface-2)}.layout-pop button.active{background:var(--brand-weak);color:var(--brand-strong);font-weight:600}.layout-pop-hint{font-size:10.5px;color:var(--faint);line-height:1.5;padding:6px 8px 2px;border-top:1px solid var(--line);margin-top:4px}.body.layout-right .sidenav{order:2;border-right:0;border-left:1px solid var(--line)}.body.layout-right .main{order:1}.body.nav-collapsed .sidenav{width:64px;padding:14px 8px}.nav-rail{gap:6px}.rail-item-wrap{position:relative;display:flex;justify-content:center;width:100%}.rail-item{display:flex;align-items:center;justify-content:center;width:42px;height:40px;border:0;border-radius:8px;background:transparent;color:var(--text-2);cursor:pointer;text-decoration:none}.rail-item:hover,.rail-item.active{background:var(--brand-weak);color:var(--brand-strong)}.nav-flyout{position:absolute;top:-6px;left:100%;width:250px;max-height:72vh;overflow-y:auto;z-index:30;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-lg);padding:8px}.layout-right .nav-flyout{left:auto;right:100%}.nav-flyout-head{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--text);padding:6px 8px 8px;border-bottom:1px solid var(--line);margin-bottom:5px}.flyout-tree{display:flex;flex-direction:column;gap:1px}.flyout-item{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:6px;font-size:12.5px;color:var(--text-2);text-decoration:none}.flyout-item:hover{background:var(--surface-2)}.flyout-item.active{background:var(--brand-weak);color:var(--brand-strong);font-weight:600}.flyout-group{display:flex;align-items:center;gap:8px;padding:7px 8px 3px;font-size:11.5px;color:var(--faint)}.flyout-children{margin-left:15px;padding-left:5px;border-left:1px dashed var(--line)}.topnav{flex:none;display:flex;align-items:stretch;gap:2px;height:47px;padding:0 20px;background:var(--panel);border-bottom:1px solid var(--line);position:relative;z-index:24}.topnav-item{position:relative;display:flex}.topnav-link{display:flex;align-items:center;gap:7px;padding:0 12px;font-size:13px;color:var(--text-2);text-decoration:none;border-bottom:2px solid transparent;cursor:pointer}.topnav-link:hover{color:var(--brand-strong)}.topnav-link.active{color:var(--brand-strong);border-bottom-color:var(--brand);font-weight:600}.topnav-flyout{position:absolute;top:100%;left:0;z-index:30;width:250px;max-height:72vh;overflow-y:auto;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-lg);padding:8px}.body:not(.nav-collapsed) .sidenav .nav{flex:1;min-height:0;overflow-y:auto}.page-fixed{height:100%;display:flex;flex-direction:column;padding-bottom:0}.page-fixed .page-header{flex:0 0 auto;margin-bottom:0;padding-bottom:18px;position:relative;z-index:2}.page-fixed .page-scroll{flex:1;min-height:0;overflow-y:auto;padding-bottom:40px;overscroll-behavior:contain}.ui-card{display:flex;flex-direction:column;gap:9px;min-height:148px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px 14px;box-shadow:var(--shadow-sm);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;text-align:left;font:inherit;color:inherit;text-decoration:none;position:relative}.ui-card.is-clickable{cursor:pointer}.ui-card.is-clickable:hover{border-color:var(--brand-line);box-shadow:var(--shadow);transform:translateY(-2px)}.ui-card.is-selected,.ui-card.is-selected:hover{border-color:var(--brand);background:var(--brand-soft);box-shadow:0 0 0 2px #4f46e51f}.ui-card.is-disabled{opacity:.6;cursor:not-allowed}.ui-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;min-height:22px}.ui-card-top-left{display:flex;align-items:center;gap:8px;min-width:0}.ui-card-icon{width:34px;height:34px;border-radius:9px;background:var(--brand-weak);color:var(--brand-strong);display:inline-flex;align-items:center;justify-content:center;flex:none}.ui-card-actions{display:flex;align-items:center;gap:4px;flex:none}.ui-card-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.ui-card-title-row h3{margin:0;font-size:15px;line-height:1.4;min-width:0;overflow-wrap:anywhere}.ui-card-title-extra{flex:none}.ui-card-desc{margin:0;font-size:12.5px;line-height:1.55;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ui-card-body{min-width:0}.ui-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:auto;padding-top:10px;border-top:1px dashed var(--line);font-size:11px;color:var(--faint)}.ui-card-meta code{font-size:10.5px;background:var(--surface-3);border-radius:4px;padding:1px 5px;color:var(--muted)}.ui-card-footer{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-top:auto;padding-top:10px;border-top:1px solid var(--line)}.card-grid .ui-card{min-height:152px}.card-grid .ui-card .ui-card-desc{-webkit-line-clamp:2}.dashboard-card.ui-card{padding:16px 18px}.dashboard-card.ui-card .ui-card-title-row{margin-bottom:2px}.template-list .ui-card{min-height:92px;padding:11px 13px;gap:4px;border-radius:var(--radius-s);box-shadow:none}.template-list .ui-card .ui-card-title-row h3{font-size:13px}.template-list .ui-card .ui-card-desc{font-size:11.5px;-webkit-line-clamp:2}.template-grid .ui-card{min-height:150px}.template-grid .ui-card .ui-card-title-row h3{font-size:14.5px}.template-grid .ui-card .ui-card-icon{width:32px;height:32px;border-radius:8px}.card-grid,.template-grid{grid-auto-rows:1fr}.sidenav{padding:0 10px}.sidenav-head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:6px;padding:10px 2px 9px;border-bottom:1px solid var(--line);margin-bottom:8px}.sidenav-tools{display:flex;align-items:center;gap:2px}.nav-tool{width:28px;height:28px;border-radius:6px}.nav-tool.active{background:var(--brand-weak);color:var(--brand-strong)}.nav-parent{width:100%;border:0;background:transparent;cursor:pointer;font:inherit;text-align:left;color:var(--text-2)}.nav-parent:hover{background:var(--surface-2)}.nav-parent.active{background:var(--brand-weak);color:var(--brand-strong);font-weight:600}.nav-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-caret{margin-left:auto;display:inline-flex;align-items:center;color:var(--faint);transition:transform .15s ease}.nav-caret.open{transform:rotate(90deg)}.nav-children{display:flex;flex-direction:column;gap:2px;margin-top:2px}.topnav-tools{margin-left:auto;display:flex;align-items:center;padding:0 4px;gap:2px}button.topnav-link{border:0;background:transparent;font:inherit;cursor:pointer;height:100%}.mobile-menu-btn{display:none}.ui-drawer-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:var(--mask);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:ui-mask-in .18s ease-out}.ui-drawer{position:fixed;top:0;bottom:0;z-index:71;max-width:92vw;background:var(--panel);display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow-lg);outline:none}.ui-drawer-left{left:0;transform-origin:left center;animation:ui-drawer-in-left .26s cubic-bezier(.22,.8,.26,1) both}.ui-drawer-right{right:0;transform-origin:right center;animation:ui-drawer-in-right .26s cubic-bezier(.22,.8,.26,1) both}.ui-drawer.is-closing.ui-drawer-left{animation:ui-drawer-out-left .2s ease-in both}.ui-drawer.is-closing.ui-drawer-right{animation:ui-drawer-out-right .2s ease-in both}.ui-drawer-head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line)}.ui-drawer-head h2{margin:0;font-size:15px}.ui-drawer-body{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;padding:4px 10px 12px}.ui-drawer-foot{flex:none;display:flex;justify-content:flex-end;gap:10px;padding:12px 16px;border-top:1px solid var(--line)}.mobile-menu-drawer .nav{flex:1;min-height:0;overflow-y:auto;padding-top:4px}@keyframes ui-drawer-in-left{0%{transform:translate(-100%) scale(.98);opacity:.4}to{transform:translate(0) scale(1);opacity:1}}@keyframes ui-drawer-in-right{0%{transform:translate(100%) scale(.98);opacity:.4}to{transform:translate(0) scale(1);opacity:1}}@keyframes ui-drawer-out-left{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(-100%) scale(.98);opacity:.4}}@keyframes ui-drawer-out-right{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(100%) scale(.98);opacity:.4}}.nav-collapsed .sidenav{padding:0 8px}.nav-collapsed .sidenav-head{flex-direction:column;padding:10px 0 8px;gap:4px}.nav-collapsed .sidenav-tools{flex-direction:column;gap:2px}.nav-collapsed .nav-tool{width:36px;height:31px}@media (max-width: 760px){.mobile-menu-btn{display:inline-flex}.sidenav,.topnav{display:none!important}.topbar{padding-left:10px;padding-right:12px}.brand-name,.user-name,.role-badge,.health-pill{display:none}.topbar-left,.topbar-right{gap:8px}.body{display:block}.main{height:100%}}@media (max-width: 760px){.workspace-chip{display:none}}.mobile-menu-drawer .nav-item{justify-content:flex-start}.mobile-menu-drawer .nav-item span,.mobile-menu-drawer .nav-item:not(.active) span,.mobile-menu-drawer .nav-label{display:inline}.mobile-menu-drawer .nav-parent .nav-caret{display:inline-flex}.mobile-menu-drawer .nav-item.child{font-size:12.5px}*{scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.28) transparent}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track,*::-webkit-scrollbar-track-piece,*::-webkit-scrollbar-corner{background:transparent}*::-webkit-scrollbar-thumb{min-height:36px;background-color:#94a3b847;border:2px solid transparent;border-radius:999px;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background-color:#64748b6b}*::-webkit-scrollbar-thumb:active{background-color:#4755698c}.mobile-menu-drawer .nav>div{animation:mobile-item-pop .22s cubic-bezier(.22,.8,.26,1) both}.mobile-menu-drawer .nav>div:nth-child(1){animation-delay:.03s}.mobile-menu-drawer .nav>div:nth-child(2){animation-delay:.05s}.mobile-menu-drawer .nav>div:nth-child(3){animation-delay:.07s}.mobile-menu-drawer .nav>div:nth-child(4){animation-delay:.09s}.mobile-menu-drawer .nav>div:nth-child(5){animation-delay:.11s}.mobile-menu-drawer .nav>div:nth-child(6){animation-delay:.13s}.mobile-menu-drawer .nav>div:nth-child(7){animation-delay:.15s}.mobile-menu-drawer .nav>div:nth-child(8){animation-delay:.17s}.mobile-menu-drawer .nav>div:nth-child(n+9){animation-delay:.19s}.nav-children{transform-origin:top;animation:nav-children-pop .16s ease-out}@keyframes mobile-item-pop{0%{transform:translateY(-4px) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes nav-children-pop{0%{transform:translateY(-4px) scaleY(.96);opacity:0}to{transform:translateY(0) scaleY(1);opacity:1}}@media (prefers-reduced-motion: reduce){.ui-drawer,.ui-drawer-mask,.mobile-menu-drawer .nav>div,.nav-children{animation:none!important}}.sidenav-head{position:relative;padding-right:32px}.body.layout-right .sidenav-head{padding-left:32px;padding-right:2px}.sidenav-collapse-btn{position:absolute;top:50%;right:0;transform:translateY(-50%);width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--muted);cursor:pointer;box-shadow:var(--shadow-sm);transition:color .15s ease,border-color .15s ease,box-shadow .15s ease;z-index:2}.sidenav-collapse-btn:hover{color:var(--brand-strong);border-color:var(--brand-line);box-shadow:var(--shadow)}.body.layout-right .sidenav-collapse-btn{right:auto;left:0}.nav-collapsed .sidenav-head{padding:34px 0 8px}.nav-collapsed .sidenav-collapse-btn{top:6px;right:12px;transform:none}.body.nav-collapsed.layout-right .sidenav-collapse-btn{right:auto;left:12px}.nav-collapsed .sidenav-head{min-height:40px;padding:8px 0}.nav-collapsed .sidenav-tools{display:none}.sidenav-head.is-search{padding:8px 2px}.menu-search{display:flex;align-items:center;gap:6px;width:100%;min-width:0;padding:4px 4px 4px 8px;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:8px;color:var(--muted)}.menu-search input{flex:1;min-width:0;border:0;outline:none;background:transparent;font:inherit;font-size:12.5px;color:var(--text)}.menu-search input::placeholder{color:var(--faint)}.menu-search .icon-btn{width:22px;height:22px;flex:none}.menu-search-results{display:flex;flex-direction:column;gap:2px;padding-top:4px}.menu-search-item{display:flex;align-items:flex-start;gap:8px;padding:8px 9px;border-radius:7px;text-decoration:none;color:var(--text-2);font-size:12.5px}.menu-search-item:hover{background:var(--surface-2)}.menu-search-item.active{background:var(--brand-weak);color:var(--brand-strong)}.menu-search-text{display:flex;flex-direction:column;gap:1px;min-width:0}.menu-search-text b{font-weight:500;font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-search-text small{font-size:10.5px;color:var(--faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-search-hint{padding:18px 10px;text-align:center;font-size:12px;color:var(--faint);line-height:1.6}.page-search{display:flex;align-items:center;gap:8px;min-width:240px;max-width:320px;padding:8px 10px 8px 13px;background:var(--panel);border:1px solid var(--line-strong);border-radius:999px;color:var(--muted);box-shadow:var(--shadow-sm)}.page-search input{flex:1;min-width:0;border:0;outline:none;background:transparent;font:inherit;font-size:12.5px;color:var(--text)}.page-search input::placeholder{color:var(--faint)}.page-search .icon-btn{width:22px;height:22px;flex:none}.list-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}.tool-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tool-toggles{display:none}.tool-toggle{display:inline-grid;place-items:center;width:34px;height:34px;flex:none;border:1px solid var(--line-strong);border-radius:var(--radius-s);background:var(--panel);color:var(--text-2);cursor:pointer;transition:all .15s ease}.tool-toggle:hover{border-color:var(--brand);color:var(--brand)}.tool-toggle.active{border-color:var(--brand);background:var(--brand-soft);color:var(--brand)}.tool-actions{margin-left:auto}.tool-panel{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tool-panel-sort{display:none}.search-field{display:flex;align-items:center;gap:8px;min-width:190px;padding:6px 10px;border:1px solid var(--line-strong);border-radius:var(--radius-s);background:var(--panel);color:var(--muted);transition:border-color .15s ease,box-shadow .15s ease}.search-field:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px #4f46e51a}.search-field input{flex:1;min-width:0;border:0;outline:none;background:transparent;font:inherit;font-size:12.5px;color:var(--text)}.search-field input::placeholder{color:var(--faint)}.search-field .icon-btn{width:20px;height:20px;flex:none}.tool-btn .tool-label{white-space:nowrap}@media (max-width: 760px){.page-wrap{padding:18px 14px 40px}.runtime-page{padding:12px 10px 40px}.runtime-canvas .page{padding:14px 12px}.list-toolbar{gap:6px}.tool-toggles{display:flex;gap:6px;order:1}.tool-actions{order:2;margin-left:auto;gap:6px}.list-toolbar .tool-group:not(.tool-toggles):not(.tool-actions){order:2}.list-toolbar .hint{order:3}.tool-panel{display:none;order:4;flex-basis:100%;gap:8px}.tool-panel.open,.tool-panel-sort.open{display:flex}.tool-panel .search-field,.tool-panel select,.tool-panel .filter-select{flex:1;min-width:0}.btn.tool-btn{width:34px;height:34px;padding:0;flex:none}.btn.tool-btn .tool-label{display:none}.data-pager{justify-content:center;margin-top:12px}.data-pager-total,.data-pager-sizes,.data-pager-pages{display:none}.data-pager-compact{display:inline;font-size:12px}.mobile-cards{display:block;width:100%}.mobile-cards thead{display:none}.mobile-cards tbody{display:flex;flex-direction:column;gap:10px}.mobile-cards tr{display:block;padding:12px 14px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.mobile-cards tr.row-clickable{cursor:pointer}.mobile-cards tr.row-clickable:active{background:var(--surface-2)}.mobile-cards td{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:5px 0;border:0;text-align:right;font-size:13px;word-break:break-word}.mobile-cards td:before{content:attr(data-label);flex:0 0 auto;max-width:45%;color:var(--muted);font-size:12px;font-weight:600;text-align:left}.mobile-cards td:not([data-label]):before{content:none}.mobile-cards td:first-child{padding-top:0;font-size:14px;font-weight:600;color:var(--text)}.mobile-cards td.row-actions{justify-content:flex-end;gap:8px;margin-top:8px;padding-top:10px;border-top:1px dashed var(--line)}.mobile-cards td.empty-cell{display:block;padding:26px 0;text-align:center}.mobile-cards td.empty-cell:before{content:none}.mobile-cards td.mobile-hidden{display:none}.mobile-cards td .btn.small{flex:none}.mobile-cards .tool-btn .tool-label{display:none}}.settings-drawer .ui-drawer-body{padding:18px 20px 8px}.settings-section{margin-bottom:22px}.settings-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.settings-section h3{margin:0;font-size:13px;font-weight:600;color:var(--text)}.settings-value{font-size:12px;color:var(--muted);font-family:var(--mono)}.settings-hint{margin:8px 0 0;font-size:11.5px;line-height:1.65;color:var(--muted)}.settings-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.settings-seg-btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;border:1px solid var(--line-strong);border-radius:var(--radius-s);background:var(--panel);color:var(--text-2);font-family:inherit;cursor:pointer;transition:all .15s ease}.settings-seg-btn b{font-size:14px}.settings-seg-btn span{font-size:11px;color:var(--muted)}.settings-seg-btn:hover{border-color:var(--brand);color:var(--brand)}.settings-seg-btn.active{border-color:var(--brand);background:var(--brand-soft);color:var(--brand)}.settings-seg-btn.active span{color:var(--brand)}.settings-appearance{display:flex;flex-direction:column;gap:8px}.settings-appearance-item{display:flex;align-items:center;gap:11px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:var(--radius-s);background:var(--panel);color:var(--text-2);font-family:inherit;text-align:left;cursor:pointer;transition:all .15s ease}.settings-appearance-item:hover{border-color:var(--brand)}.settings-appearance-item.active{border-color:var(--brand);background:var(--brand-soft)}.settings-appearance-icon{display:grid;place-items:center;width:34px;height:34px;flex:none;border-radius:9px;background:var(--surface-3);color:var(--text-2)}.settings-appearance-item.active .settings-appearance-icon{background:var(--brand-weak);color:var(--brand)}.settings-appearance-text{display:flex;flex-direction:column;gap:1px;min-width:0}.settings-appearance-text b{font-size:13px;font-weight:600;color:var(--text)}.settings-appearance-text small{font-size:11.5px;color:var(--muted)}.settings-appearance-check{display:grid;place-items:center;width:20px;height:20px;margin-left:auto;flex:none;border-radius:50%;background:var(--brand);color:#fff}.settings-foot{display:flex;align-items:center;gap:8px;width:100%}.settings-foot-hint{margin-right:auto;font-size:11px;color:var(--faint)}.color-presets{display:flex;flex-wrap:wrap;gap:8px}.color-swatch{position:relative;display:grid;place-items:center;width:28px;height:28px;padding:0;border:2px solid transparent;border-radius:50%;color:#fff;cursor:pointer;outline:1px solid var(--line);outline-offset:1px;transition:transform .12s ease}.color-swatch:hover{transform:scale(1.08)}.color-swatch.active{outline:2px solid var(--brand);outline-offset:2px}.color-custom{display:flex;align-items:center;gap:8px;margin-top:12px;flex-wrap:wrap}.color-native{position:relative;display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border:1px solid var(--line-strong);border-radius:var(--radius-s);background:var(--panel);font-size:12px;color:var(--text-2);cursor:pointer}.color-native input[type=color]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:0;border:0;opacity:0;cursor:pointer}.color-native-swatch{width:18px;height:18px;border-radius:50%;border:1px solid var(--line)}.color-hex-input{width:92px;padding:6px 8px;border:1px solid var(--line-strong);border-radius:var(--radius-s);background:var(--input-bg);color:var(--text);font-family:var(--mono);font-size:11.5px;outline:none}.color-hex-input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}.date-picker{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:1px solid var(--line-strong);border-radius:var(--radius-s);background:var(--input-bg);color:var(--text);font-family:inherit;font-size:13px;text-align:left;cursor:pointer;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.date-picker:hover:not(:disabled){border-color:var(--brand)}.date-picker:focus-visible{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}.date-picker:disabled{opacity:.55;cursor:not-allowed}.date-picker>svg{flex:none;color:var(--muted)}.date-picker-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date-picker-placeholder{color:var(--faint)}.datepicker-panel{position:fixed;z-index:1200;width:286px;padding:10px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg);color:var(--text);font-size:13px;animation:ui-modal-in .14s ease-out}.datepicker-head{display:flex;align-items:center;gap:6px;margin-bottom:8px}.datepicker-nav{display:grid;place-items:center;width:26px;height:26px;flex:none;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer}.datepicker-nav:hover{background:var(--surface-2);color:var(--text)}.datepicker-nav:disabled{opacity:.35;cursor:not-allowed}.datepicker-title{flex:1;display:flex;justify-content:center;gap:6px;font-weight:600;font-size:13px;color:var(--text)}.datepicker-title select{border:1px solid var(--line-strong);border-radius:6px;background:var(--input-bg);color:var(--text);font-family:inherit;font-size:12.5px;padding:3px 6px;outline:none}.datepicker-week{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px;color:var(--muted);font-size:11.5px;text-align:center}.datepicker-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.datepicker-day{height:32px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-2);font-family:inherit;font-size:12.5px;cursor:pointer;transition:all .12s ease}.datepicker-day:hover:not(.is-selected){background:var(--surface-2);color:var(--brand)}.datepicker-day.is-outside{color:var(--faint);opacity:.6}.datepicker-day.is-today{border-color:var(--brand);color:var(--brand)}.datepicker-day.is-selected{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:600}.datepicker-day.is-disabled{color:var(--faint);opacity:.4;cursor:not-allowed}.datepicker-time{display:flex;align-items:center;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line-soft);font-size:12px;color:var(--muted)}.datepicker-time select{border:1px solid var(--line-strong);border-radius:6px;background:var(--input-bg);color:var(--text);font-family:inherit;font-size:12.5px;padding:4px 6px;outline:none}.datepicker-foot{display:flex;align-items:center;gap:6px;margin-top:10px}.datepicker-action{padding:4px 9px;border:1px solid var(--line-strong);border-radius:6px;background:var(--panel);color:var(--text-2);font-family:inherit;font-size:12px;cursor:pointer}.datepicker-action:hover{border-color:var(--brand);color:var(--brand)}.datepicker-action.primary{margin-left:auto;border-color:var(--brand);background:var(--brand);color:#fff}.datepicker-action.primary:hover{background:var(--brand-strong);border-color:var(--brand-strong);color:#fff}@media (max-width: 760px){.datepicker-panel{width:min(300px,calc(100vw - 24px))}.settings-drawer .ui-drawer-body{padding:16px 16px 6px}}[data-theme=dark] .toast.success{background:#064e3b;color:#d1fae5}[data-theme=dark] .toast.error{background:#7f1d1d;color:#fee2e2}[data-theme=dark] .flow-designer,[data-theme=dark] .react-flow,[data-theme=dark] .react-flow__background{background:var(--bg)}[data-theme=dark] .react-flow__controls button{background:var(--panel);color:var(--text-2);border-color:var(--line)}.settings-style-grid{display:flex;flex-direction:column;gap:8px}.settings-style-card{position:relative;display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:var(--radius-s);background:var(--panel);color:var(--text-2);font-family:inherit;text-align:left;cursor:pointer;transition:all .15s ease}.settings-style-card:hover{border-color:var(--brand)}.settings-style-card.active{border-color:var(--brand);background:var(--brand-soft)}.settings-style-preview{position:relative;width:76px;height:50px;flex:none;overflow:hidden;border:1px solid var(--line);border-radius:4px;background:var(--surface-2)}.settings-style-preview .sp-header{position:absolute;left:0;right:0;top:0;height:10px;background:var(--brand)}.settings-style-preview .sp-side{position:absolute;left:0;top:10px;bottom:0;width:17px;background:var(--panel);border-right:1px solid var(--line)}.settings-style-preview .sp-panel{position:absolute;left:21px;right:6px;top:15px;bottom:6px;border:1px solid var(--line);border-radius:4px;background:var(--panel)}.settings-style-preview.modern .sp-header{background:var(--surface-2);border-bottom:1px solid var(--line)}.settings-style-preview.modern .sp-panel{background:var(--brand-weak);border-color:var(--brand-line);box-shadow:0 1px 2px #0000000f}.settings-style-preview.classic .sp-header{height:9px}.settings-style-preview.classic:after{content:"";position:absolute;left:17px;right:0;top:9px;height:6px;background:var(--brand-weak);border-bottom:1px solid var(--line)}.settings-style-preview.classic .sp-side{top:9px;width:16px}.settings-style-preview.classic .sp-panel{left:20px;top:19px;border-radius:1px;background:linear-gradient(var(--surface-2) 0 5px,var(--panel) 5px)}.settings-style-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.settings-style-meta b{font-size:13px;font-weight:600;color:var(--text)}.settings-style-meta small{font-size:11.5px;color:var(--muted)}.settings-style-card .settings-appearance-check{margin-left:auto}[data-style=classic]{--radius-s: 2px;--radius: 3px;--radius-l: 4px}[data-style=classic] body{background:var(--surface-2)}[data-style=classic] .topbar{height:52px;padding:0 16px;background:var(--brand);border-bottom:0;color:#fff}[data-style=classic] .topbar .brand-name{color:#fff}[data-style=classic] .topbar .brand-mark{background:#fff;color:var(--brand);border-radius:4px;box-shadow:none}[data-style=classic] .topbar .topbar-divider{background:#ffffff47}[data-style=classic] .topbar .workspace-chip{background:#ffffff24;border-color:#ffffff38;color:#fff}[data-style=classic] .topbar .workspace-chip code{background:#ffffff1f;color:#ffffffd9}[data-style=classic] .topbar .ws-dot,[data-style=classic] .topbar .health-dot{background:#4ade80}[data-style=classic] .topbar .health-pill{background:#ffffff24;border-color:transparent;color:#fff}[data-style=classic] .topbar .icon-btn{color:#ffffffeb;border-radius:2px}[data-style=classic] .topbar .icon-btn:hover{background:#ffffff2e;color:#fff}[data-style=classic] .topbar .avatar{background:#fff;color:var(--brand)}[data-style=classic] .topbar .user-name{color:#fff}[data-style=classic] .topbar .role-badge{background:#ffffff2e;border-color:transparent;color:#fff}[data-style=classic] .classic-breadcrumb{display:flex;align-items:center;gap:6px;margin-left:14px;font-size:12.5px;color:#ffffffdb}[data-style=classic] .classic-breadcrumb-item{display:inline-flex;align-items:center;gap:6px}[data-style=classic] .classic-breadcrumb-item i{font-style:normal;opacity:.6}[data-style=classic] .classic-tabbar{flex:none;display:flex;align-items:center;justify-content:space-between;height:34px;padding:0 10px;background:linear-gradient(90deg,var(--brand-weak),var(--surface-2));border-bottom:1px solid var(--line)}[data-style=classic] .classic-tabs{display:flex;align-items:center;gap:4px;height:100%}[data-style=classic] .classic-tab{display:inline-flex;align-items:center;height:26px;padding:0 12px;border:1px solid var(--line);border-radius:2px;background:var(--panel);color:var(--text-2);font-size:12.5px;text-decoration:none}[data-style=classic] .classic-tab.active{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:600}[data-style=classic] .classic-tabbar-tools{display:flex;align-items:center;gap:2px}[data-style=classic] .classic-tabbar-tools .icon-btn{width:26px;height:26px;color:var(--muted)}[data-style=classic] .classic-tabbar-tools .icon-btn:hover{background:var(--panel);color:var(--brand)}[data-style=classic] .sidenav{width:212px;padding:6px}[data-style=classic] .sidenav-head{padding:6px 32px 6px 8px}[data-style=classic] .body.layout-right .sidenav-head{padding:6px 8px 6px 32px}[data-style=classic] .nav-collapsed .sidenav-head,[data-style=classic] .body.nav-collapsed.layout-right .sidenav-head{padding:8px 0}[data-style=classic] .nav-item{padding:7px 10px;border:0;border-radius:2px;font-size:13px}[data-style=classic] .nav-item:hover{background:var(--surface-2)}[data-style=classic] .nav-item.active{background:var(--brand-weak);color:var(--brand);font-weight:600;box-shadow:inset 2px 0 0 var(--brand)}[data-style=classic] .main{background:var(--surface-2)}[data-style=classic] .page-wrap{max-width:none;padding:12px}[data-style=classic] .page-header{align-items:center;margin-bottom:10px}[data-style=classic] .page-header h1{font-size:18px}[data-style=classic] .page-sub{margin-top:2px;font-size:12px}[data-style=classic] .runtime-page{max-width:none;padding:12px}[data-style=classic] .runtime-head{align-items:center;margin-bottom:8px}[data-style=classic] .runtime-head h1{font-size:18px}[data-style=classic] .runtime-canvas{background:transparent}[data-style=classic] .runtime-canvas .page{padding:0;background:transparent;border:0;border-radius:0}[data-style=classic] .page-head{padding:7px 12px;margin-bottom:10px;background:var(--panel);border:1px solid var(--line);border-radius:3px}[data-style=classic] .page-head h2{font-size:15px}[data-style=classic] .page-head .badge{display:none}[data-style=classic] .list-toolbar{gap:8px;padding:10px 12px;margin-bottom:10px;background:var(--panel);border:1px solid var(--line);border-radius:3px}[data-style=classic] .search-field,[data-style=classic] .filter-select{min-height:30px;padding-top:0;padding-bottom:0;font-size:12.5px;border-radius:2px}[data-style=classic] .search-field{padding:0 8px}[data-style=classic] .btn.tool-btn{padding:5px 10px;font-size:12.5px;border-radius:2px}[data-style=classic] .data-table-container{background:var(--panel);border:1px solid var(--line);border-radius:3px}[data-style=classic] .data-table{font-size:12.5px}[data-style=classic] .data-table th,[data-style=classic] .data-table td{padding:7px 10px;border:1px solid var(--line)}[data-style=classic] .data-table th{font-size:12.5px;font-weight:600;color:var(--text-2);text-align:center;background:var(--surface-3)}[data-style=classic] .data-table tbody tr:hover td{background:var(--brand-weak)}[data-style=classic] .data-table td.row-actions{text-align:center}[data-style=classic] .data-table td.row-actions .btn{padding:2px 6px;border:0;background:transparent;color:var(--brand);font-size:12.5px;box-shadow:none}[data-style=classic] .data-table td.row-actions .btn:hover{color:var(--brand-strong);text-decoration:underline}[data-style=classic] .data-table .icon-btn{color:var(--muted)}[data-style=classic] .data-pager{gap:8px;margin-top:0;padding:8px 10px;background:var(--panel);border-top:1px solid var(--line);border-radius:0 0 3px 3px;font-size:12.5px}[data-style=classic] .data-pager-nav{order:1;margin-right:auto}[data-style=classic] .data-pager-sizes{order:2}[data-style=classic] .data-pager-total{order:3;margin-right:0;margin-left:8px}[data-style=classic] .data-pager-btn,[data-style=classic] .data-pager-page{min-width:26px;height:26px;border-radius:2px;font-size:12px}[data-style=classic] .data-pager-btn,[data-style=classic] .data-pager-page{border:1px solid var(--line)}[data-style=classic] .data-pager-page.active{border-color:var(--brand)}[data-style=classic] .btn{padding:6px 12px;border-radius:2px;font-size:13px}[data-style=classic] .btn.primary{box-shadow:none}[data-style=classic] .ui-card{border-radius:3px;box-shadow:none}[data-style=classic] .ui-card.is-clickable:hover{transform:none;box-shadow:0 2px 8px #0f172a14}[data-style=classic] .ui-modal,[data-style=classic] .ui-drawer{border-radius:3px}[data-style=classic] .ui-modal-head,[data-style=classic] .ui-drawer-head{background:var(--surface-2)}[data-style=classic] .ui-modal-foot,[data-style=classic] .ui-drawer-foot{background:var(--surface-2);border-top:1px solid var(--line)}[data-style=classic] .detail-card{border-radius:3px}[data-style=classic] .form{padding:14px 16px;background:var(--panel);border:1px solid var(--line);border-radius:3px}[data-style=classic] .topnav{padding:0 12px;background:var(--panel);border-bottom:1px solid var(--line)}[data-style=classic] .topnav-link{padding:10px 12px;border-radius:0;font-size:13px}[data-style=classic] .topnav-link.active{background:transparent;color:var(--brand);border-bottom:2px solid var(--brand)}@media (max-width: 760px){[data-style=classic] .classic-breadcrumb,[data-style=classic] .classic-tabbar{display:none}[data-style=classic] .topbar{padding:0 10px}[data-style=classic] .page-wrap,[data-style=classic] .runtime-page{padding:10px}}[data-vision=weak] .topbar-left .brand:after{content:"色弱";margin-left:8px;padding:1px 7px;border:1px solid currentColor;border-radius:999px;font-size:10.5px;font-weight:600;letter-spacing:.5px;opacity:.9}[data-vision=weak] .status-badge.published{padding-left:6px;border-style:solid;border-width:1px;background-image:repeating-linear-gradient(135deg,transparent 0 5px,color-mix(in srgb,var(--ok) 14%,transparent) 5px 7px)}[data-vision=weak] .status-badge.published:before{content:"✓";margin-right:3px;font-weight:700}[data-vision=weak] .status-badge.warn{border-style:dashed;border-width:1px;background-image:repeating-linear-gradient(45deg,transparent 0 4px,color-mix(in srgb,var(--warn) 16%,transparent) 4px 6px)}[data-vision=weak] .status-badge.warn:before{content:"!";margin-right:3px;font-weight:700}[data-vision=weak] .status-badge.draft{border-style:dotted;border-width:1px}[data-vision=weak] .status-badge.draft:before{content:"○";margin-right:3px}[data-vision=weak] .inline-message.ok,[data-vision=weak] .inline-message.err{border-width:2px}[data-vision=weak] .inline-message.ok:before{content:"✓";margin-right:6px;font-weight:700}[data-vision=weak] .inline-message.err:before{content:"✕";margin-right:6px;font-weight:700}[data-vision=weak] .toast.success:before{content:"✓";margin-right:8px;font-weight:700}[data-vision=weak] .toast.error:before{content:"✕";margin-right:8px;font-weight:700}[data-vision=weak] .link-btn,[data-vision=weak] .data-table td.row-actions .btn,[data-vision=weak] .table .right .btn,[data-vision=weak] .data-table td a{text-decoration:underline;text-underline-offset:2px}[data-vision=weak] .data-table th{font-weight:700;background:var(--surface-3)}[data-vision=weak] .data-table tbody tr:nth-child(2n) td{background:var(--surface-2)}[data-vision=weak] .data-table tbody tr:hover td{background:var(--brand-weak)}[data-vision=weak] .dashboard-bar,[data-vision=weak] .dashboard-trend-bar{outline:1px solid var(--line-strong);background-image:repeating-linear-gradient(45deg,transparent 0 4px,rgba(0,0,0,.08) 4px 6px)}[data-vision=weak] .approval-steps li .step-dot{box-shadow:0 0 0 2px var(--panel)}[data-vision=weak] .approval-steps li.approved .step-dot{border-radius:2px}[data-vision=weak] .approval-steps li.rejected .step-dot{border-radius:0;transform:rotate(45deg)}[data-vision=weak] .approval-steps li.pending .step-dot{background:transparent;border:2px dashed var(--warn)}[data-vision=weak] .req{font-size:0}[data-vision=weak] .req:after{content:"必填";font-size:10px;font-weight:600;margin-left:3px;color:var(--danger-text)}[data-vision=weak] :focus-visible{outline:3px solid var(--brand);outline-offset:2px}[data-style=classic] .workspace{max-width:none;padding:12px}:root{--table-viewport-offset: 380px}[data-style=classic]{--table-viewport-offset: 360px}.data-table-container{display:flex;flex-direction:column;min-height:0}.data-table-scroll{flex:1;min-height:220px;max-height:calc(100vh / var(--ui-zoom) - var(--table-viewport-offset));overflow-x:auto;overflow-y:auto;overscroll-behavior:contain}.data-table-container:has(.data-table.compact) .data-table-scroll{flex:none;min-height:0;max-height:none;overscroll-behavior:auto}.data-table thead th{position:sticky;top:0;z-index:3;box-shadow:0 1px 0 var(--line)}@media (max-width: 760px){:root{--table-viewport-offset: 300px}}@media (max-width: 760px){:root{--table-viewport-offset: 340px}}.main:has(.page-wrap>.data-table-container),.main:has(.runtime-page .data-table:not(.compact)){display:flex;flex-direction:column}.main:has(.page-wrap>.data-table-container)>.page-wrap,.main:has(.runtime-page .data-table:not(.compact))>.runtime-page{flex:1;min-height:0;height:auto}.page-wrap:has(>.data-table-container){display:flex;flex-direction:column;min-height:0;padding-bottom:14px}.page-wrap:has(>.data-table-container)>.page-header,.page-wrap:has(>.data-table-container)>.list-toolbar,.page-wrap:has(>.data-table-container)>.alert,.page-wrap:has(>.data-table-container)>.inline-message{flex:none}.page-wrap:has(>.data-table-container)>.data-table-container{flex:1;min-height:0}.page-wrap:has(>.data-table-container) .data-table-scroll{flex:1;min-height:180px;max-height:none}.runtime-page:has(.data-table:not(.compact)){display:flex;flex-direction:column;min-height:0;padding-bottom:14px}.runtime-page:has(.data-table:not(.compact)) .runtime-head{flex:none}.runtime-page:has(.data-table:not(.compact)) .runtime-canvas{flex:1;min-height:0;display:flex;flex-direction:column}.runtime-page:has(.data-table:not(.compact)) .runtime-canvas .page{flex:1;min-height:0;display:flex;flex-direction:column}.runtime-page:has(.data-table:not(.compact)) .page-head,.runtime-page:has(.data-table:not(.compact)) .preview-mode-bar,.runtime-page:has(.data-table:not(.compact)) .list-toolbar,.runtime-page:has(.data-table:not(.compact)) .inline-message{flex:none}.runtime-page:has(.data-table:not(.compact)) .data-table-container{flex:1;min-height:0}.runtime-page:has(.data-table:not(.compact)) .data-table-scroll{flex:1;min-height:180px;max-height:none}[data-style=classic] .page-wrap:has(>.data-table-container),[data-style=classic] .runtime-page:has(.data-table:not(.compact)){padding-bottom:12px}.main:has(.page-wrap>.data-table-container)>.page-wrap,.main:has(.runtime-page .data-table:not(.compact))>.runtime-page{margin:0;width:100%}.runtime-page:has(.data-table:not(.compact)) .runtime-canvas .page div:has(>.data-table-container):not(.page-layout){flex:1;min-height:0;display:flex;flex-direction:column}.page-wrap:has(>.data-table-container~.data-table-container)>.data-table-container{flex:none}.page-wrap:has(>.data-table-container~.data-table-container)>.data-table-container:last-child{flex:1;min-height:0}.classic-tabs{flex:1;min-width:0;display:flex;align-items:center;gap:4px;height:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.classic-tabs::-webkit-scrollbar{display:none}.classic-tab{flex:none;max-width:190px;gap:6px;cursor:pointer;-webkit-user-select:none;user-select:none}.classic-tab-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classic-tab-close{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:2px;font-size:12px;line-height:1;color:inherit;opacity:.55}.classic-tab-close:hover{background:#0f172a24;opacity:1}.classic-tab.active .classic-tab-close:hover{background:#ffffff47}[data-style=classic] .classic-tabbar-tools{flex:none}.main:has(>.tab-panes){display:flex;flex-direction:column;overflow:hidden}.tab-panes{flex:1;min-height:0;display:flex;flex-direction:column;position:relative}.tab-pane{flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto}.tab-pane[hidden]{display:none}.tab-pane>.page-wrap,.tab-pane>.runtime-page,.tab-pane>.workspace{flex:1;min-height:0;margin:0;width:100%}.tab-pane:has(.data-table-container){overflow:hidden}.workspace{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.workspace .ws-head,.workspace .ws-tabs{flex:none}.workspace>.inline-message,.workspace>.alert{flex:none}.workspace>.preview,.workspace>.dsl-editor,.workspace>.schema-editor,.workspace>.policy-editor,.workspace>.flow-editor,.workspace>.automation-panel,.workspace>.versions{flex:1;min-height:0}.workspace>.policy-editor,.workspace>.flow-editor,.workspace>.automation-panel,.workspace>.versions{overflow-y:auto}.preview{display:flex;flex-direction:column;min-height:0}.preview .preview-mode-bar,.preview .preview-bar{flex:none}.preview-canvas{flex:1;min-height:0;overflow-y:auto}.preview-canvas .data-table-scroll{max-height:none}.dsl-editor{min-height:0}.dsl-textarea{flex:1;min-height:0;resize:none;overflow:auto}.schema-editor{display:flex;flex-direction:column;min-height:0}.schema-toolbar{flex:none}.schema-sub-tabs{flex:none;margin-bottom:12px}.schema-layout{flex:1;min-height:0;align-items:start;overflow-y:auto;overflow-x:hidden}.schema-layout .entity-panel,.schema-layout .schema-main{min-height:0;overflow:visible}.schema-layout .entity-panel{position:sticky;top:0}.classic-tab-menu{position:fixed;z-index:1500;min-width:148px;display:flex;flex-direction:column;gap:1px;padding:4px;background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:var(--shadow-lg)}.classic-tab-menu-item{display:block;width:100%;padding:6px 10px;border:0;border-radius:4px;background:transparent;color:var(--text);font-family:inherit;font-size:12.5px;line-height:1.4;text-align:left;cursor:pointer}.classic-tab-menu-item:hover:not(:disabled){background:var(--brand-weak);color:var(--brand)}.classic-tab-menu-item:disabled{color:var(--faint);cursor:default}.nav-label.cached{font-weight:600}.nav-cache-pin{margin-left:auto;flex:none;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;color:var(--brand);opacity:.7;cursor:pointer}.nav-cache-pin:hover,.nav-cache-pin:focus-visible{background:var(--brand-weak);opacity:1;outline:none}.nav-item.active .nav-cache-pin{color:var(--brand-strong);opacity:.85}.apps-header-actions{flex-wrap:wrap;justify-content:flex-end}.apps-header-actions .page-search{min-width:240px}@media (max-width: 900px){.page-header-searchable{flex-wrap:wrap;align-items:flex-start}.page-header-searchable .page-search,.page-header-searchable .apps-header-actions{flex:1 1 100%;width:100%;max-width:none}.page-header-searchable .apps-header-actions{justify-content:flex-start}.page-header-searchable .apps-header-actions .page-search{order:-1;flex:1 1 100%;max-width:none}}.page-header-searchable{flex-wrap:wrap}.cache-limit-banner{flex:none;display:flex;align-items:center;gap:8px;padding:7px 14px;background:var(--warn-weak);border-bottom:1px solid var(--warn-line);color:var(--warn-text);font-size:12.5px;line-height:1.5}.cache-limit-banner>span{flex:1;min-width:0}.cache-limit-banner .link-btn{color:var(--brand-strong);white-space:nowrap}.cache-limit-banner .icon-btn{width:22px;height:22px;flex:none}.settings-cache-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-s);background:var(--panel)}.settings-cache-label{font-size:12.5px;color:var(--text-2)}.settings-cache-input{width:96px;height:32px;padding:0 10px;border:1px solid var(--line-strong);border-radius:var(--radius-s);background:var(--input-bg, var(--panel));color:var(--text);font:inherit;font-size:13px;text-align:right}.settings-cache-input:focus{border-color:var(--brand);outline:none;box-shadow:0 0 0 3px var(--brand-ring)}.cache-clear-btn{position:relative}.cache-count-badge{position:absolute;top:-3px;right:-3px;min-width:15px;height:15px;padding:0 3px;border-radius:8px;background:var(--danger);color:#fff;font-size:9.5px;font-weight:700;line-height:15px;text-align:center;pointer-events:none}.cache-count-badge.low{background:#dcfce7;color:#166534}.cache-count-badge.medium{background:#fef9c3;color:#854d0e}.cache-count-badge.high{background:var(--danger);color:#fff}.cache-clear-options{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.cache-clear-option{width:100%;justify-content:flex-start;text-align:left}.runtime-page:has(.detail-page){display:flex;flex-direction:column;height:100%;min-height:0;padding-bottom:12px}.runtime-page:has(.detail-page) .runtime-head{flex:none}.runtime-page:has(.detail-page) .runtime-canvas{flex:1;min-height:0;display:flex;flex-direction:column}.runtime-page:has(.detail-page) .runtime-canvas .page{flex:1;min-height:0;display:flex;flex-direction:column}.detail-page{flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto}.detail-page>.detail-toolbar,.detail-page>.detail-card,.detail-page>.subtable-view,.detail-page>.preview-mode-bar{flex:none}.detail-page>.approval-banner{flex:1;min-height:0;display:flex;flex-direction:column;margin-bottom:0}.approval-max-btn{margin-left:auto;align-self:center;flex:none}.approval-graph-shell{flex:1;min-height:0;display:flex;flex-direction:column;margin-top:10px}.approval-graph-shell .approval-progress-graph{flex:1;height:auto;min-height:260px;margin:0}.approval-graph-max-head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 0 10px}.approval-graph-shell.is-maximized{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1500;margin:0;padding:18px 20px 20px;background:var(--bg);display:flex;flex-direction:column}.approval-graph-shell.is-maximized .approval-progress-graph{min-height:0}.market-publish-warning{display:flex;flex-direction:column;gap:8px;font-size:12.5px;line-height:1.6}.market-publish-warning p{margin:0}.market-publish-warning .warn{padding:8px 10px;border-radius:var(--radius-s);border:1px solid var(--warn-line);background:var(--warn-weak);color:var(--warn-text)}.input-affix{position:relative;display:flex;align-items:center}.input-affix>input{flex:1;min-width:0;width:100%;padding-right:42px}.tenant-remember{position:absolute;right:6px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;transition:background .15s,color .15s}.tenant-remember:hover{background:var(--brand-weak);color:var(--brand-strong)}.tenant-remember.active{background:transparent;color:var(--brand-strong)}.settings-button-style{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.settings-button-style>span{font-size:12px;font-weight:600;color:var(--text-2)}.settings-seg.compact .settings-seg-btn{flex-direction:row;justify-content:center;padding:7px 4px;font-size:12px}.row-actions{display:flex;justify-content:flex-end;gap:6px}.detail-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}[data-btn-toolbar=label] .list-toolbar .tool-actions .tool-btn>svg{display:none}[data-btn-toolbar=icon] .list-toolbar .tool-actions .tool-btn .tool-label{display:none}[data-btn-toolbar=icon] .list-toolbar .tool-actions .tool-btn{padding-left:8px;padding-right:8px}.classic-tabs-wrap{flex:1;min-width:0;display:flex;align-items:center;gap:2px;height:100%}.classic-tabs{cursor:grab;overscroll-behavior-x:contain}.classic-tabs.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.classic-tabs.is-dragging .classic-tab{cursor:grabbing}.classic-tabs-scroll{flex:none;width:22px;height:22px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:2px;background:var(--panel);color:var(--text-2);font-size:16px;line-height:1;cursor:pointer}.classic-tabs-scroll:hover{border-color:var(--brand);color:var(--brand)}.data-table th.row-actions{display:table-cell;text-align:center;padding-right:14px;padding-left:14px}[data-style=classic] .data-table td.row-actions .btn.danger,[data-style=classic] .data-table td.row-actions .btn.danger:hover{color:var(--danger-text)}.data-table th.row-actions,.data-table td.row-actions{position:sticky;right:0;z-index:2;background:var(--panel);box-shadow:-10px 0 12px -10px #0f172a47}.data-table th.row-actions{z-index:3;background:var(--surface-2)}.data-table tbody tr:hover td.row-actions{background:var(--surface-2)}.data-table tbody tr.current td.row-actions{background:var(--surface-alt)}.mobile-cards .data-table th.row-actions,.mobile-cards .data-table td.row-actions{position:static;box-shadow:none}.data-table thead{position:sticky;top:0;z-index:4}.data-table th.row-actions{top:auto}[data-style=classic] .data-table th.row-actions{background:var(--surface-3)}@media (max-width: 760px){.ui-drawer{width:100vw!important;max-width:100vw}.ui-drawer-body,.ui-modal-body{padding:14px 16px}.ui-modal-foot,.ui-drawer-foot{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}.subtable-scroll{overflow:visible}.subtable-input{display:block;width:100%}.subtable-input thead{display:none}.subtable-input tbody{display:flex;flex-direction:column;gap:10px;width:100%}.subtable-input tr{display:block;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-alt);padding:10px 12px 8px}.subtable-input td{display:grid;grid-template-columns:84px minmax(0,1fr);align-items:center;gap:8px;width:100%;border:0;padding:4px 0;text-align:left}.subtable-input td:before{content:attr(data-label);font-size:12px;color:var(--muted);min-width:0;overflow-wrap:anywhere}.subtable-input td[data-required=true]:before{content:attr(data-label) " *";color:var(--danger-text)}.subtable-input td>*{min-width:0;width:100%}.subtable-input td.subtable-remove{display:flex;justify-content:flex-end;padding-top:8px;margin-top:4px;border-top:1px dashed var(--line)}.subtable-input td.subtable-remove:before{display:none}.subtable-input td.empty-cell{display:block;text-align:center;color:var(--muted);font-size:12px;padding:8px 0}.subtable-input td.empty-cell:before{display:none}}[data-style=future]{color-scheme:light;--future-accent: var(--brand);--future-accent-2: var(--brand-strong);--future-glass-bg: rgba(255, 255, 255, .42);--future-glass-border: rgba(255, 255, 255, .78);--future-glass-sheen: rgba(255, 255, 255, .32);--future-panel-surface: rgba(255, 255, 255, .86);--future-chat-surface: rgba(255, 255, 255, .8);--future-float-surface: rgba(255, 255, 255, .58);--future-glass-shadow: rgba(15, 23, 42, .1);--future-noise: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='0.12'/%3E%3C/svg%3E");--bg: #eef2fa;--future-topbar-bg: rgba(255, 255, 255, .72);--future-panel-bg: rgba(255, 255, 255, .8);--future-bubble-bg: rgba(255, 255, 255, .88);--future-composer-bg: rgba(255, 255, 255, .85);--future-scope-bg: var(--panel);--future-snapshot-bg: rgba(248, 250, 255, .9);--future-panel-soft: rgba(255, 255, 255, .66);--future-body-glow-1: color-mix(in srgb, var(--future-accent) 10%, transparent);--future-body-glow-2: color-mix(in srgb, var(--future-accent-2) 8%, transparent);--future-grid: rgba(71, 85, 130, .05);--future-preview-panel-grad: linear-gradient(180deg, color-mix(in srgb, var(--future-accent) 10%, transparent), color-mix(in srgb, var(--future-accent-2) 8%, transparent));--future-input-bg: rgba(255, 255, 255, .85);--future-hover-bg: color-mix(in srgb, var(--future-accent) 8%, transparent);--future-line: rgba(71, 85, 130, .18);--future-line-strong: color-mix(in srgb, var(--future-accent-2) 45%, transparent)}[data-style=future][data-theme=dark]{color-scheme:dark;--text: #e8f0ff;--text-2: #b9c8e6;--muted: #8295b8;--faint: #5d6e92;--bg: #0b1220;--future-glass-bg: rgba(18, 29, 50, .45);--future-glass-border: rgba(145, 175, 225, .2);--future-glass-sheen: rgba(255, 255, 255, .07);--future-panel-surface: rgba(16, 26, 44, .86);--future-chat-surface: rgba(12, 20, 34, .76);--future-float-surface: rgba(24, 38, 62, .55);--future-glass-shadow: rgba(2, 6, 15, .45);--panel: rgba(13, 19, 34, .86);--surface-2: #0b1220;--surface-3: #101a2c;--surface-alt: #0a101b;--input-bg: rgba(10, 15, 26, .9);--hover-bg: color-mix(in srgb, var(--future-accent) 7%, transparent);--line: rgba(103, 134, 184, .26);--line-strong: color-mix(in srgb, var(--future-accent-2) 40%, transparent);--line-soft: rgba(103, 134, 184, .15);--line-soft-2: rgba(103, 134, 184, .12);--code-bg: #020409;--code-text: #b5f2ff;--mask: rgba(2, 6, 15, .74);--ok: #34d399;--ok-weak: rgba(52, 211, 153, .14);--ok-line: rgba(52, 211, 153, .4);--ok-text: #6ee7b7;--warn: #fbbf24;--warn-weak: rgba(251, 191, 36, .14);--warn-line: rgba(251, 191, 36, .4);--warn-text: #fcd34d;--danger: #fb7185;--danger-weak: rgba(251, 113, 133, .14);--danger-line: rgba(251, 113, 133, .4);--danger-text: #fda4af;--info: var(--future-accent-2);--info-weak: color-mix(in srgb, var(--future-accent-2) 14%, transparent);--info-line: color-mix(in srgb, var(--future-accent-2) 42%, transparent);--info-text: #c4b5fd;--skeleton-a: #101730;--skeleton-b: #141d3a;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .5);--shadow: 0 10px 28px rgba(0, 0, 0, .42);--shadow-lg: 0 24px 60px rgba(0, 0, 0, .6);--future-topbar-bg: rgba(12, 20, 35, .62);--future-panel-bg: rgba(18, 29, 50, .55);--future-bubble-bg: rgba(24, 36, 58, .74);--future-composer-bg: rgba(14, 23, 40, .7);--future-scope-bg: #0b1220;--future-snapshot-bg: rgba(18, 29, 50, .62);--future-panel-soft: rgba(18, 29, 50, .45);--future-body-glow-1: color-mix(in srgb, var(--future-accent) 14%, transparent);--future-body-glow-2: color-mix(in srgb, var(--future-accent-2) 12%, transparent);--future-grid: rgba(103, 134, 184, .04);--future-preview-panel-grad: linear-gradient(180deg, color-mix(in srgb, var(--future-accent) 8%, transparent), rgba(13, 19, 34, .6));--future-input-bg: rgba(10, 15, 26, .9);--future-hover-bg: color-mix(in srgb, var(--future-accent) 7%, transparent);--future-line: rgba(103, 134, 184, .26);--future-line-strong: color-mix(in srgb, var(--future-accent-2) 40%, transparent)}[data-style=future][data-vision=weak]{--future-glass-bg: rgba(255, 255, 255, .72);--future-glass-border: rgba(148, 163, 184, .55);--future-panel-surface: rgba(255, 255, 255, .94);--future-chat-surface: rgba(255, 255, 255, .9);--future-float-surface: rgba(255, 255, 255, .8)}[data-style=future][data-theme=dark][data-vision=weak]{--future-glass-bg: rgba(18, 29, 50, .72);--future-glass-border: rgba(148, 163, 184, .3);--future-panel-surface: rgba(16, 26, 44, .94);--future-chat-surface: rgba(12, 20, 34, .92);--future-float-surface: rgba(24, 38, 62, .86)}[data-style=future] body{background:var(--future-noise),radial-gradient(900px 420px at 50% -180px,var(--future-body-glow-1),transparent 70%),radial-gradient(760px 360px at 88% -120px,var(--future-body-glow-2),transparent 70%),linear-gradient(var(--future-grid) 1px,transparent 1px),linear-gradient(90deg,var(--future-grid) 1px,transparent 1px),var(--bg);background-size:120px 120px,auto,auto,34px 34px,34px 34px,auto}[data-style=future] .topbar,[data-style=future] .sidenav,[data-style=future] .main,[data-style=future] .ui-modal,[data-style=future] .ui-drawer,[data-style=future] .data-table-container{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}[data-style=future] .btn.primary:hover,[data-style=future] .btn.primary:focus-visible{box-shadow:0 0 18px color-mix(in srgb,var(--future-accent) 35%,transparent)}[data-style=future] .icon-btn:focus-visible,[data-style=future] .btn:focus-visible{box-shadow:0 0 0 2px var(--brand-ring),0 0 14px color-mix(in srgb,var(--future-accent) 25%,transparent)}.settings-style-preview.future{background:var(--future-composer-bg);border-color:color-mix(in srgb,var(--future-accent) 35%,transparent)}.settings-style-preview.future .sp-header{display:none}.settings-style-preview.future .sp-side{top:0;bottom:6px;width:15px;background:var(--future-panel-bg);border-right:1px solid color-mix(in srgb,var(--future-accent) 30%,transparent)}.settings-style-preview.future .sp-panel{left:19px;right:6px;top:8px;bottom:14px;border-color:color-mix(in srgb,var(--future-accent-2) 35%,transparent);background:var(--future-preview-panel-grad);box-shadow:0 0 10px color-mix(in srgb,var(--future-accent) 18%,transparent)}.settings-style-preview.future:after{content:"";position:absolute;left:19px;right:6px;bottom:5px;height:5px;border-radius:2px;background:color-mix(in srgb,var(--future-accent) 50%,transparent);box-shadow:0 0 8px color-mix(in srgb,var(--future-accent) 50%,transparent)}.future-shell{display:flex;flex-direction:column;height:100vh;min-height:0}.future-topbar{height:52px;flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 16px;border-bottom:1px solid var(--line);background:var(--future-topbar-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);z-index:5}.future-brand{display:flex;align-items:center;gap:9px;min-width:0}.future-brand-mark{flex:none;width:26px;height:26px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--future-accent),var(--future-accent-2));color:#fff;box-shadow:0 0 14px color-mix(in srgb,var(--future-accent) 45%,transparent)}.future-brand-name{font-size:14px;font-weight:700;color:var(--text);white-space:nowrap}.future-brand-sub{font-size:11px;color:var(--faint);white-space:nowrap}.future-topbar-right{display:flex;align-items:center;gap:10px;margin-left:auto}.future-body{flex:1;min-height:0;display:flex;background:radial-gradient(560px 420px at 4% 16%,color-mix(in srgb,var(--future-accent) 30%,transparent),transparent 68%),radial-gradient(620px 460px at 98% 8%,color-mix(in srgb,var(--future-accent-2) 22%,transparent),transparent 70%),radial-gradient(720px 520px at 56% 112%,color-mix(in srgb,var(--future-accent) 18%,transparent),transparent 70%)}.future-sidebar{width:252px;flex:none;display:flex;flex-direction:column;border-right:1px solid var(--future-glass-border);background:linear-gradient(180deg,var(--future-glass-sheen),transparent 22%),var(--future-noise),var(--future-panel-surface);background-size:auto,120px 120px,auto;background-blend-mode:normal,soft-light,normal;backdrop-filter:blur(18px) saturate(130%);-webkit-backdrop-filter:blur(18px) saturate(130%);box-shadow:inset 0 1px 0 var(--future-glass-sheen),10px 0 32px var(--future-glass-shadow);min-height:0}.future-sidebar-head{height:44px;flex:none;display:flex;align-items:center;justify-content:space-between;padding:0 12px;font-size:11.5px;font-weight:600;letter-spacing:2px;color:var(--muted)}.future-session-list{flex:1;min-height:0;overflow-y:auto;padding:4px 8px 10px;display:flex;flex-direction:column;gap:4px}.future-session-empty{padding:20px 8px;font-size:12px;color:var(--faint);text-align:center}.future-session-item{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:10px;border:1px solid transparent;cursor:pointer;transition:background .15s,border-color .15s}.future-session-item:hover{background:var(--hover-bg)}.future-session-item.active{background:color-mix(in srgb,var(--future-accent) 10%,transparent);border-color:color-mix(in srgb,var(--future-accent) 35%,transparent)}.future-session-icon{flex:none;color:var(--muted);display:inline-flex}.future-session-item.active .future-session-icon{color:var(--future-accent)}.future-session-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.future-session-meta b{font-size:12.5px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.future-session-meta small{font-size:10.5px;color:var(--faint)}.future-session-del{flex:none;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:6px;background:transparent;color:var(--faint);opacity:0;cursor:pointer;transition:opacity .15s,color .15s,background .15s}.future-session-item:hover .future-session-del{opacity:1}.future-session-del:hover{color:var(--danger-text);background:var(--danger-weak)}.future-sidebar-foot{flex:none;padding:10px 12px;border-top:1px solid var(--line)}.future-sidebar-tenant{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--muted);min-width:0}.future-sidebar-tenant code{font-size:10.5px;color:var(--faint);overflow:hidden;text-overflow:ellipsis}.future-chat{flex:1;min-width:0;display:flex;flex-direction:column;background:linear-gradient(180deg,var(--future-glass-sheen),transparent 16%),var(--future-noise),var(--future-chat-surface);background-size:auto,120px 120px,auto;background-blend-mode:normal,soft-light,normal;backdrop-filter:blur(16px) saturate(125%);-webkit-backdrop-filter:blur(16px) saturate(125%);box-shadow:inset 0 1px 0 var(--future-glass-sheen)}.future-scroll{flex:1;min-height:0;overflow-y:auto;padding:28px 24px 12px}.future-jump-bottom{position:absolute;left:50%;bottom:calc(100% + 10px);transform:translate(-50%);z-index:6;width:38px;height:38px;border-radius:50%;border:1px solid var(--future-line-strong);background:var(--future-composer-bg);color:var(--text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 16px #0000002e;opacity:1;visibility:visible;transition:opacity .2s,visibility .2s,transform .2s}.future-jump-bottom:hover{border-color:color-mix(in srgb,var(--future-accent) 60%,transparent);color:var(--future-accent)}.future-jump-bottom.hidden{opacity:0;visibility:hidden;transform:translate(-50%) translateY(8px);pointer-events:none}.future-msg{max-width:760px;margin:0 auto 18px;display:flex;gap:10px}.future-msg.user{flex-direction:row-reverse}.future-msg-avatar{flex:none;width:28px;height:28px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.future-msg.user .future-msg-avatar{background:linear-gradient(135deg,var(--future-accent),var(--future-accent-2));color:#fff}.future-msg.assistant .future-msg-avatar{background:color-mix(in srgb,var(--future-accent) 12%,transparent);color:var(--future-accent);border:1px solid color-mix(in srgb,var(--future-accent) 35%,transparent);box-shadow:0 0 10px color-mix(in srgb,var(--future-accent) 25%,transparent)}.future-msg-main{flex:1;min-width:0;display:flex;flex-direction:column}.future-msg.user .future-msg-main{align-items:flex-end}.future-msg-bubble{padding:10px 14px;border-radius:14px;font-size:13.5px;line-height:1.7;word-break:break-word;white-space:pre-wrap}.future-msg.assistant .future-msg-bubble{background:var(--future-bubble-bg);border:1px solid var(--line);border-top-left-radius:4px}.future-msg.user .future-msg-bubble{background:linear-gradient(135deg,color-mix(in srgb,var(--future-accent) 22%,transparent),color-mix(in srgb,var(--future-accent-2) 16%,transparent));border:1px solid color-mix(in srgb,var(--future-accent) 40%,transparent);border-top-right-radius:4px;color:var(--text)}.future-msg-time{margin-top:4px;font-size:10.5px;color:var(--faint)}.future-msg.user .future-msg-time{text-align:right}.future-welcome{max-width:640px;margin:42px auto 30px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}.future-welcome-mark{width:54px;height:54px;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,color-mix(in srgb,var(--future-accent) 20%,transparent),color-mix(in srgb,var(--future-accent-2) 20%,transparent));border:1px solid color-mix(in srgb,var(--future-accent) 45%,transparent);color:var(--future-accent);box-shadow:0 0 24px color-mix(in srgb,var(--future-accent) 30%,transparent)}.future-welcome h2{font-size:20px;color:var(--text);margin:0}.future-welcome p{font-size:13px;color:var(--muted);line-height:1.7;margin:0;max-width:480px}.future-welcome-hint{display:inline-flex;align-items:center;gap:5px;margin-top:6px!important;font-size:12px!important;color:var(--faint)!important}.future-welcome-hint svg{color:var(--future-accent)}.future-composer-wrap{position:relative;flex:none;padding:10px 24px calc(16px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;align-items:center;gap:6px}.future-composer{position:relative;width:min(760px,100%);display:flex;align-items:flex-end;gap:8px;padding:8px 8px 8px 12px;border-radius:18px;border:1px solid var(--future-glass-border);background:linear-gradient(180deg,var(--future-glass-sheen),transparent 40%),var(--future-float-surface);backdrop-filter:blur(26px) saturate(180%);-webkit-backdrop-filter:blur(26px) saturate(180%);box-shadow:inset 0 1px 0 var(--future-glass-sheen),0 12px 34px var(--future-glass-shadow);transition:border-color .2s,box-shadow .2s}.future-composer:focus-within{border-color:color-mix(in srgb,var(--future-accent) 60%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--future-accent) 14%,transparent),0 0 24px color-mix(in srgb,var(--future-accent) 18%,transparent)}.future-composer-input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font-size:14px;line-height:1.6;font-family:inherit;resize:none;max-height:160px;padding:4px 0}.future-composer-input::placeholder{color:var(--faint)}.future-composer-send{flex:none;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:12px;background:linear-gradient(135deg,var(--future-accent),var(--future-accent-2));color:#fff;cursor:pointer;transition:box-shadow .2s,transform .1s,opacity .2s}.future-composer-send:hover:not(:disabled){box-shadow:0 0 16px color-mix(in srgb,var(--future-accent) 50%,transparent)}.future-composer-send:active:not(:disabled){transform:scale(.94)}.future-composer-send:disabled{opacity:.4;cursor:not-allowed}.future-composer-hint{font-size:10.5px;color:var(--faint)}.future-quick{position:relative;flex:none;align-self:flex-end}.future-command-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:10px;background:color-mix(in srgb,var(--future-float-surface) 62%,transparent);backdrop-filter:blur(12px) saturate(160%);-webkit-backdrop-filter:blur(12px) saturate(160%);color:var(--muted);cursor:pointer;transition:color .15s,background .15s,box-shadow .15s,border-color .15s}.future-command-btn:hover,.future-command-btn.open{color:var(--future-accent);background:color-mix(in srgb,var(--future-accent) 12%,transparent);border-color:var(--future-glass-border);box-shadow:inset 0 1px 0 var(--future-glass-sheen),0 0 10px color-mix(in srgb,var(--future-accent) 20%,transparent)}.future-command-panel{position:absolute;left:0;bottom:calc(100% + 10px);width:320px;max-height:340px;overflow-y:auto;border-radius:14px;border:1px solid var(--future-line-strong, var(--line));background:var(--future-scope-bg, var(--panel));box-shadow:inset 0 1px 0 var(--future-glass-sheen, transparent),0 16px 40px var(--future-glass-shadow, rgba(15, 23, 42, .16));padding:8px;z-index:30}.future-command-loading,.future-command-empty{padding:16px 12px;font-size:12.5px;color:var(--faint)}.future-command-group{display:flex;flex-direction:column;gap:2px;padding-bottom:6px}.future-command-section{padding:8px 10px 4px;font-size:11px;font-weight:600;letter-spacing:1.5px;color:var(--faint)}.future-command-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:0;border-radius:9px;background:transparent;color:var(--text-2);font-size:12.5px;text-align:left;cursor:pointer;transition:background .13s,color .13s}.future-command-item:hover{background:var(--future-hover-bg, var(--surface-2));color:var(--text)}.future-command-item-icon{flex:none;display:inline-flex;color:var(--future-accent, var(--brand, #2563eb));opacity:.7}.future-command-item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.future-scope-panel{position:absolute;left:0;bottom:calc(100% + 10px);width:336px;max-height:420px;display:flex;flex-direction:column;border-radius:14px;border:1px solid var(--future-line-strong, var(--line));background:var(--future-scope-bg, var(--panel));box-shadow:inset 0 1px 0 var(--future-glass-sheen, transparent),0 16px 40px var(--future-glass-shadow, rgba(15, 23, 42, .16));z-index:30;overflow:hidden}.future-scope-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px 8px;font-size:12.5px;color:var(--text-2);border-bottom:1px solid var(--future-line, var(--line))}.future-scope-close{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:7px;background:transparent;color:var(--faint);cursor:pointer}.future-scope-close:hover{color:var(--text);background:var(--future-hover-bg, var(--surface-2))}.future-scope-entities,.future-scope-confirm,.future-scope-admin{display:flex;flex-direction:column;gap:8px;padding:10px 12px 12px;overflow-y:auto}.future-scope-groups{display:flex;flex-direction:column;gap:10px;padding:6px 12px 12px;overflow-y:auto}.future-scope-group{display:flex;flex-direction:column;gap:3px}.future-scope-group-label{display:flex;align-items:center;gap:6px;padding:2px 4px 4px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--faint)}.future-scope-group-label:after{content:"";flex:1;height:1px;background:var(--future-line)}.future-scope-search{width:100%;height:30px;padding:0 10px;border:1px solid var(--future-line);border-radius:9px;background:var(--future-input-bg);color:var(--text);font-size:12.5px;outline:none}.future-scope-search:focus{border-color:var(--future-line-strong)}.future-scope-list{display:flex;flex-direction:column;gap:2px;max-height:216px;overflow-y:auto}.future-scope-item{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:8px 10px;border:0;border-radius:9px;background:transparent;color:var(--text-2);cursor:pointer;transition:background .13s,color .13s}.future-scope-item:hover{background:var(--future-hover-bg, var(--surface-2));color:var(--text)}.future-scope-item-name{font-size:12.5px;font-weight:500}.future-scope-item-app{font-size:11px;color:var(--faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:50%}.future-scope-loading,.future-scope-empty{padding:14px 10px;font-size:12px;color:var(--faint);text-align:center}.future-scope-entities-pager{display:flex;align-items:center;justify-content:center;gap:10px;padding-top:4px}.future-scope-entities-pager button{padding:4px 10px;border:1px solid var(--future-line);border-radius:8px;background:var(--future-panel-soft);color:var(--text-2);font-size:11.5px;cursor:pointer}.future-scope-entities-pager button:disabled{opacity:.35;cursor:default}.future-scope-entities-pager span{font-size:11.5px;color:var(--faint);min-width:44px;text-align:center}.future-scope-confirm-line{display:flex;align-items:center;gap:8px;padding:6px 2px 2px;font-size:13px;color:var(--text)}.future-scope-confirm-kind{padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;color:var(--future-accent-2);background:color-mix(in srgb,var(--future-accent) 16%,transparent)}.future-scope-query-modes{display:grid;grid-template-columns:1fr 1fr;gap:8px}.future-scope-action{width:100%;padding:10px;border:1px solid var(--future-line-strong);border-radius:10px;background:var(--future-hover-bg);color:var(--text);font-size:12.5px;font-weight:500;cursor:pointer;transition:background .13s,border-color .13s}.future-scope-action:hover{background:color-mix(in srgb,var(--future-accent) 16%,transparent);border-color:var(--future-accent)}.future-scope-back{display:inline-flex;align-items:center;gap:4px;padding:6px 4px;border:0;background:transparent;color:var(--faint);font-size:11.5px;cursor:pointer}.future-scope-back:hover{color:var(--future-accent)}.future-list-pager{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 0 2px}.future-list-pager button{padding:5px 14px;border:1px solid var(--future-line-strong);border-radius:9px;background:var(--future-hover-bg);color:var(--text-2);font-size:12px;cursor:pointer;transition:background .13s,border-color .13s,color .13s}.future-list-pager button:hover:not(:disabled){background:color-mix(in srgb,var(--future-accent) 16%,transparent);color:var(--text)}.future-list-pager button:disabled{opacity:.35;cursor:default}.future-list-pager-info{min-width:46px;text-align:center;font-size:12px;color:var(--faint)}.future-list-actions{display:inline-flex;gap:6px;white-space:nowrap}.future-list-action{padding:3px 9px;border:1px solid var(--future-line);border-radius:8px;font-size:11.5px;white-space:nowrap;cursor:pointer;transition:background .13s,border-color .13s,color .13s}.future-list-action.edit{color:var(--future-accent-2);background:transparent}.future-list-action.edit:hover{background:color-mix(in srgb,var(--future-accent-2) 14%,transparent);border-color:color-mix(in srgb,var(--future-accent-2) 55%,transparent)}.future-list-action.del{color:#fb7185;background:transparent}.future-list-action.del:hover{background:#fb718524;border-color:#fb718580}.future-list-historical{padding:8px 10px 2px;text-align:center;font-size:11px;color:var(--faint)}.future-form{display:flex;flex-direction:column;gap:10px}.future-form-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.future-form-field{display:flex;flex-direction:column;gap:5px}.future-form-label{font-size:11.5px;color:var(--muted);display:inline-flex;align-items:center;gap:3px}.future-form-required{color:#f87171;font-style:normal}.future-form-field input,.future-form-field textarea,.future-form-field select{width:100%;box-sizing:border-box;padding:8px 10px;border-radius:9px;border:1px solid var(--future-line);background:var(--future-input-bg);color:var(--text);font-size:12.5px;font-family:inherit;outline:none;transition:border-color .15s,box-shadow .15s}.future-form-field input:focus,.future-form-field textarea:focus,.future-form-field select:focus{border-color:var(--future-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--future-accent) 18%,transparent)}.future-form-ref-loading,.future-form-ref-error{font-size:12px;color:var(--faint);padding:6px 2px}.future-form-ref-error{color:#f87171}.future-form-error{font-size:12px;color:#f87171;background:#f871711a;border:1px solid rgba(248,113,113,.25);border-radius:8px;padding:7px 10px}.future-form-actions{display:flex;justify-content:flex-end;gap:8px}.future-form-cancel{padding:8px 16px;border:1px solid var(--future-line);border-radius:10px;background:transparent;color:var(--muted);font-size:13px;cursor:pointer;transition:background .13s,color .13s,border-color .13s}.future-form-cancel:hover:not(:disabled){color:var(--text);background:var(--future-hover-bg);border-color:var(--future-line-strong)}.future-form-cancel:disabled{opacity:.5;cursor:default}.future-form-submit{padding:8px 20px;border:0;border-radius:10px;background:linear-gradient(135deg,var(--future-accent-2),var(--future-accent));color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:opacity .15s,box-shadow .15s}.future-form-submit:hover:not(:disabled){box-shadow:0 0 14px color-mix(in srgb,var(--future-accent) 45%,transparent)}.future-form-submit:disabled{opacity:.55;cursor:not-allowed}.future-form-done{display:flex;align-items:center;gap:8px;font-size:13px;color:#34d399}.future-form-done-icon{display:inline-flex;width:26px;height:26px;align-items:center;justify-content:center;border-radius:50%;background:#34d39926;color:#34d399}.future-detail-rows{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px 18px;margin:0}.future-detail-row{display:flex;flex-direction:column;gap:3px;padding:8px 10px;border-radius:9px;background:var(--future-hover-bg)}.future-detail-row dt{font-size:11px;color:var(--faint)}.future-detail-row dd{margin:0;font-size:13px;color:var(--text);word-break:break-all}.future-approval-list{display:flex;flex-direction:column;gap:8px}.future-approval-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:11px;background:var(--future-hover-bg);border:1px solid var(--future-line)}.future-approval-main{display:flex;flex-direction:column;gap:3px;min-width:0}.future-approval-main b{font-size:13px;color:var(--text)}.future-approval-main span{font-size:12px;color:var(--muted)}.future-approval-main small{font-size:11px;color:var(--faint)}.future-approval-actions{display:flex;gap:6px;flex:none}.future-approval-actions button{padding:6px 14px;border:0;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:opacity .15s,box-shadow .15s}.future-approval-actions button:disabled{opacity:.5;cursor:not-allowed}.future-approval-ok{background:color-mix(in srgb,var(--future-accent) 16%,transparent);color:var(--future-accent)}.future-approval-ok:hover:not(:disabled){box-shadow:0 0 10px color-mix(in srgb,var(--future-accent) 35%,transparent)}.future-approval-no{background:#f871711f;color:#f87171}.future-approval-no:hover:not(:disabled){box-shadow:0 0 10px #f871714d}.future-app-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}.future-app-card{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border-radius:12px;border:1px solid var(--future-line);background:var(--future-hover-bg)}.future-app-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.future-app-card-head b{font-size:13.5px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.future-app-card p{margin:0;font-size:12px;color:var(--muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.future-app-card-meta{display:flex;justify-content:space-between;font-size:11px;color:var(--faint)}.future-app-status{flex:none;padding:2px 8px;border-radius:999px;font-size:10.5px;font-weight:600}.future-app-status.status-published{background:#34d39924;color:#34d399}.future-app-status.status-draft{background:#fbbf2424;color:#fbbf24}.future-app-status.status-archived{background:#94a3b824;color:#94a3b8}.future-snapshot-hint{margin-top:8px;font-size:11.5px;color:var(--faint)}.future-version-list{display:flex;flex-direction:column;gap:6px}.future-version-item{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:9px;background:var(--future-hover-bg);font-size:12.5px}.future-version-item.current{border:1px solid color-mix(in srgb,var(--future-accent) 40%,transparent)}.future-version-no{font-weight:700;color:var(--future-accent);flex:none}.future-version-note{flex:1;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.future-version-time{font-size:11px;color:var(--faint);flex:none}.future-version-current{flex:none;padding:1px 8px;border-radius:999px;background:color-mix(in srgb,var(--future-accent) 15%,transparent);color:var(--future-accent);font-size:10.5px;font-weight:600}.future-admin-list,.future-tree{display:flex;flex-direction:column;gap:6px}.future-tree-children{position:relative;display:flex;flex-direction:column;gap:6px;margin-top:6px;padding-left:10px;border-left:1px solid var(--future-line)}.future-tree-node{display:flex;flex-direction:column}.future-tree-card{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:10px;border:1px solid var(--future-line);background:var(--future-panel-soft);transition:background .13s,border-color .13s}.future-tree-card:hover{background:var(--future-hover-bg);border-color:var(--future-line-strong)}.future-tree-toggle{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--faint);cursor:pointer;transition:background .13s,color .13s}.future-tree-toggle:hover{background:var(--future-hover-bg);color:var(--text)}.future-tree-bullet{flex:0 0 auto;width:7px;height:7px;margin:0 7px;border-radius:50%;background:var(--future-line-strong)}.future-admin-row{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:10px;border:1px solid var(--future-line);background:#ffffff80}[data-theme=dark] .future-admin-row{background:#0d132280}.future-admin-row.disabled{opacity:.55}.future-admin-row.unread{border-color:color-mix(in srgb,var(--future-accent) 50%,transparent)}.future-admin-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.future-admin-main b{font-size:12.5px;font-weight:600;color:var(--text)}.future-admin-main span{font-size:11.5px;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.future-admin-main small{font-size:10.5px;color:var(--faint)}.future-admin-actions{flex:none;display:inline-flex;gap:6px}.future-badge{flex:none;padding:1px 8px;border-radius:999px;font-size:10.5px;font-weight:600;background:#4755821f;color:var(--text-2)}.future-badge.badge-active{background:#10b98124;color:#10b981}.future-badge.badge-disabled{background:#f43f5e24;color:#f43f5e}.future-badge.badge-unread{background:color-mix(in srgb,var(--future-accent) 16%,transparent);color:var(--future-accent)}.future-role-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.future-role-card{padding:10px 12px;border-radius:10px;border:1px solid var(--future-line);background:#ffffff80}[data-theme=dark] .future-role-card{background:#0d132280}.future-role-card-head{display:flex;align-items:center;justify-content:space-between;gap:6px}.future-role-card-head b{font-size:12.5px;color:var(--text)}.future-role-card p{margin:4px 0 0;font-size:11px;color:var(--text-2);min-height:16px}.future-role-meta{margin-top:6px;font-size:10.5px;color:var(--faint)}.future-auto-app+.future-auto-app{margin-top:10px}.future-auto-app-head{padding:2px 2px 6px;font-size:12px;color:var(--text-2)}.future-auto-app-head b{color:var(--text)}.future-notify-actions{padding:10px 12px 12px}.future-msg-snapshot{margin-top:8px;border-radius:14px;border:1px solid var(--line);background:var(--future-snapshot-bg);overflow:hidden}.future-snapshot{padding:12px 12px 4px}.future-snapshot-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:2px 2px 10px}.future-snapshot-head b{font-size:13.5px;color:var(--text)}.future-snapshot-meta{font-size:11px;color:var(--faint);white-space:nowrap}.future-snapshot-empty{display:flex;align-items:center;gap:8px;padding:22px 4px;font-size:12.5px;color:var(--muted)}.future-snapshot-empty svg{color:var(--faint)}.future-dash-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px;padding-bottom:8px}.future-dash-card{border:1px solid var(--line);border-radius:12px;background:var(--future-panel-soft);padding:12px 14px;display:flex;flex-direction:column;gap:8px}.future-dash-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.future-dash-card-head b{font-size:13px;color:var(--text)}.future-dash-count{font-size:18px;font-weight:700;color:var(--future-accent);font-variant-numeric:tabular-nums}.future-dash-sums{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:11.5px;color:var(--muted)}.future-dash-group small{display:block;font-size:11px;color:var(--faint);margin-bottom:5px}.future-dash-bars{display:flex;flex-direction:column;gap:3px}.future-dash-bar-row{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text-2)}.future-dash-bar-row span{flex:none;width:84px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.future-dash-bar-row i{display:block;height:5px;border-radius:3px;background:linear-gradient(90deg,color-mix(in srgb,var(--future-accent) 75%,transparent),color-mix(in srgb,var(--future-accent-2) 45%,transparent))}.future-dash-bar-row em{font-style:normal;font-size:10.5px;color:var(--faint);font-variant-numeric:tabular-nums}.future-trend{display:block;margin-top:2px}.future-snapshot-result{padding-bottom:12px}.future-snapshot-check{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:#34d399}.future-result-rows{margin:0;display:flex;flex-direction:column;gap:6px}.future-result-row{display:flex;align-items:baseline;gap:14px;font-size:12.5px}.future-result-row dt{flex:none;width:56px;color:var(--faint)}.future-result-row dd{margin:0;color:var(--text);word-break:break-all}.future-snapshot-collapsed{display:flex;align-items:center;gap:9px;margin-top:8px;padding:8px 12px;border-radius:12px;border:1px dashed color-mix(in srgb,var(--future-accent) 45%,transparent);background:color-mix(in srgb,var(--future-accent) 6%,transparent);color:var(--text-2);font-size:12px;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s;max-width:420px}.future-snapshot-collapsed:hover{border-color:var(--future-accent);background:color-mix(in srgb,var(--future-accent) 12%,transparent);box-shadow:0 0 14px color-mix(in srgb,var(--future-accent) 25%,transparent)}.future-snapshot-collapsed-icon{flex:none;width:26px;height:26px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,color-mix(in srgb,var(--future-accent) 25%,transparent),color-mix(in srgb,var(--future-accent-2) 20%,transparent));color:var(--future-accent);border:1px solid color-mix(in srgb,var(--future-accent) 40%,transparent)}.future-snapshot-collapsed-title{font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.future-snapshot-collapsed-hint{margin-left:auto;flex:none;font-size:10.5px;color:var(--faint);white-space:nowrap}.process-panel{padding:16px 4px 4px;display:flex;flex-direction:column;gap:16px;flex:1;min-height:0;overflow:auto}.process-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(135deg,var(--panel) 0%,var(--bg) 100%)}.process-kicker{margin-bottom:4px;font-size:10px;font-weight:700;letter-spacing:.14em;color:var(--muted)}.process-hero h3{margin:0;font-size:20px;color:var(--text)}.process-hero p{max-width:640px;margin:7px 0 0;font-size:12.5px;line-height:1.7;color:var(--muted)}.process-hero-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.process-mode-legend{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--muted)}.process-mode-legend i{width:7px;height:7px;border-radius:50%;background:var(--brand)}.process-mode-legend i.async{background:var(--warn, #f59e0b)}.process-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.process-card{display:flex;flex-direction:column;gap:12px;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--panel);transition:border-color .15s,box-shadow .15s}.process-card:hover{border-color:var(--line-strong);box-shadow:0 6px 18px #0f172a0d}.process-card-head{display:flex;align-items:center;gap:10px}.process-orb{display:grid;place-items:center;width:34px;height:34px;flex:none;border-radius:10px;color:var(--brand);background:var(--bg);border:1px solid var(--line)}.process-orb.async{color:var(--warn, #d97706)}.process-card-title{display:flex;flex-direction:column;min-width:0;gap:2px}.process-card-title b{color:var(--text);font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.process-card-title code{color:var(--faint);font-size:10.5px}.process-mode-badge{margin-left:auto;padding:3px 7px;border-radius:999px;font-size:10px;font-weight:700;color:var(--brand);background:var(--bg);border:1px solid var(--line)}.process-mode-badge.async{color:var(--warn, #d97706)}.process-card-meta{display:flex;flex-wrap:wrap;gap:6px 12px;color:var(--muted);font-size:11px}.process-card-flow{display:flex;flex-wrap:wrap;align-items:center;gap:5px;min-height:22px}.process-mini-step,.process-mini-more{padding:3px 7px;border-radius:6px;font-size:10px;color:var(--text-2);background:var(--bg);border:1px solid var(--line-soft)}.process-mini-more{color:var(--faint)}.process-card-actions{display:flex;flex-wrap:wrap;gap:6px;padding-top:10px;border-top:1px solid var(--line-soft)}.process-card-actions .btn{padding:5px 8px;font-size:11px}.process-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;min-height:190px;padding:24px;border:1px dashed var(--line-strong);border-radius:14px;color:var(--muted);font-size:12px;text-align:center;background:var(--panel)}.process-empty b{color:var(--text);font-size:14px}.process-empty-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;color:var(--brand);background:var(--bg);border:1px solid var(--line)}.process-muted{color:var(--muted);font-size:11.5px}.process-editor-body{max-height:min(72vh,760px)}.process-editor{display:flex;flex-direction:column;gap:14px}.process-editor-error{padding:9px 11px;border:1px solid rgba(220,38,38,.25);border-radius:8px;color:#b91c1c;background:#fee2e273;font-size:12px}.process-form-section{display:flex;flex-direction:column;gap:11px;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.process-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.process-section-head h4{margin:0;font-size:13px;color:var(--text)}.process-section-head p{margin:4px 0 0;color:var(--muted);font-size:11px;line-height:1.5}.process-form-grid,.process-step-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.process-form-row{display:flex;align-items:flex-end;flex-wrap:wrap;gap:10px}.process-form-row .field{min-width:150px}.process-trigger-select{min-width:160px}.process-switch{display:inline-flex;align-items:center;gap:6px;min-height:34px;color:var(--text-2);font-size:12px}.process-async-hint{padding:9px 11px;border-radius:8px;color:var(--muted);background:var(--bg);border:1px dashed var(--line);font-size:11px;line-height:1.6}.process-field-error{display:block;margin-top:4px;color:#b91c1c;font-size:10.5px}.process-json-input,.process-mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11.5px}.process-json-input{resize:vertical;min-height:62px}.process-input-list{display:flex;flex-direction:column;gap:7px}.process-input-row{display:flex;align-items:center;gap:7px}.process-input-row .input{min-width:0}.process-input-row .input:first-child{flex:1}.process-required{display:inline-flex;align-items:center;gap:4px;flex:none;color:var(--muted);font-size:11px}.process-step-count{padding:3px 7px;border-radius:999px;color:var(--muted);background:var(--bg);font-size:10.5px;white-space:nowrap}.process-step-list{display:flex;flex-direction:column;gap:8px}.process-step-list.nested{margin-top:7px}.process-step{border:1px solid var(--line);border-radius:10px;background:var(--bg);overflow:hidden}.process-step.if,.process-step.foreach{border-color:color-mix(in srgb,var(--brand) 25%,var(--line))}.process-step-head{display:flex;align-items:center;gap:8px;padding:8px 9px;background:var(--panel)}.process-step-toggle{display:flex;align-items:center;gap:7px;min-width:0;flex:1;border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer;font-size:12px}.process-step-toggle b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.process-step-toggle code{color:var(--faint);font-size:10px}.process-step-index{display:grid;place-items:center;width:21px;height:21px;flex:none;border-radius:6px;color:var(--muted);background:var(--bg);font-size:10px}.process-step-type{padding:2px 6px;border-radius:5px;color:var(--brand);background:color-mix(in srgb,var(--brand) 9%,transparent);font-size:9.5px;font-weight:700;white-space:nowrap}.process-step-type.if,.process-step-type.foreach{color:#7c3aed;background:#7c3aed17}.process-step-type.assign{color:#0891b2;background:#0891b217}.process-step-type.process{color:#db2777;background:#db277717}.process-step-tools{display:flex;align-items:center;gap:2px;flex:none}.process-step-body{display:flex;flex-direction:column;gap:10px;padding:11px;border-top:1px solid var(--line-soft)}.process-step-line{display:flex;align-items:flex-end;gap:9px;flex-wrap:wrap}.process-step-line .field{flex:1;min-width:150px}.process-id-field{max-width:150px}.process-grow{flex:2!important}.process-nested{padding:9px;border:1px dashed var(--line-strong);border-radius:8px;background:var(--panel)}.process-nested-label{margin-bottom:6px;color:var(--muted);font-size:10.5px;font-weight:700;letter-spacing:.06em}.process-branch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.process-branch-title{margin-bottom:5px;color:var(--faint);font-size:10px;font-weight:700;text-transform:uppercase}.process-step-add{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:8px;border:1px dashed var(--line);border-radius:8px;background:var(--panel)}.process-step-add>span{margin-right:2px;color:var(--faint);font-size:10.5px}.process-add-chip{display:inline-flex;align-items:center;gap:3px;padding:4px 7px;border:1px solid var(--line);border-radius:6px;color:var(--text-2);background:var(--bg);cursor:pointer;font-size:10.5px}.process-add-chip:hover{border-color:var(--brand);color:var(--brand)}.process-status{display:inline-flex;align-items:center;padding:2px 6px;border-radius:999px;font-size:9.5px;font-weight:700;letter-spacing:.02em}.process-status.success{color:#047857;background:#10b9811c}.process-status.failed{color:#b91c1c;background:#ef44441c}.process-status.scheduled,.process-status.running{color:#a16207;background:#f59e0b21}.process-run-form,.process-result{display:flex;flex-direction:column;gap:10px}.process-result-status{display:flex;align-items:center;gap:9px}.process-result-error{color:#b91c1c;font-size:11.5px}.process-result pre,.process-run-step pre{max-height:260px;margin:0;padding:10px;overflow:auto;border:1px solid var(--line);border-radius:8px;color:var(--text-2);background:var(--bg);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10.5px;white-space:pre-wrap}.process-history{display:flex;flex-direction:column;gap:12px}.process-run-list{display:flex;flex-direction:column;gap:4px}.process-run-row{display:grid;grid-template-columns:auto 1fr 1.4fr auto;align-items:center;gap:9px;padding:8px 9px;border:1px solid var(--line);border-radius:7px;color:var(--muted);background:var(--panel);text-align:left;font-size:11px;cursor:pointer}.process-run-row:hover,.process-run-row.active{border-color:var(--brand)}.process-run-row code{color:var(--faint);font-size:10px}.process-run-detail{display:flex;flex-direction:column;gap:7px;padding-top:5px;border-top:1px solid var(--line)}.process-run-detail-head{display:flex;justify-content:space-between;gap:10px;color:var(--text-2);font-size:12px}.process-run-detail-head span{color:#b91c1c;font-size:10.5px}.process-run-step{padding:8px;border:1px solid var(--line);border-radius:7px;background:var(--panel)}.process-run-step.failed{border-color:#ef444459}.process-run-step-head{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:10.5px}.process-run-step-head code{color:var(--text-2);font-size:10.5px}.process-run-step-error{margin-top:5px;color:#b91c1c;font-size:11px}.process-run-step details{margin-top:5px}.process-run-step summary{color:var(--faint);cursor:pointer;font-size:10.5px}.process-run-step pre+pre{margin-top:5px}@media (max-width: 760px){.process-hero{flex-direction:column;padding:14px}.process-hero-actions{justify-content:flex-start}.process-list,.process-form-grid,.process-step-grid,.process-branch-grid{grid-template-columns:1fr}.process-input-row{flex-wrap:wrap}.process-run-row{grid-template-columns:auto 1fr}.process-run-row span:nth-of-type(2),.process-run-row code{display:none}}.future-department-card{padding:9px 12px}.future-admin-empty{padding:18px 12px;text-align:center;color:var(--faint);font-size:11.5px;border:1px dashed var(--future-line);border-radius:10px}.data-tree-cell{display:flex;align-items:center;gap:3px;min-width:0}.data-tree-toggle{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:none;padding:0;border:0;border-radius:5px;color:var(--muted);background:transparent;cursor:pointer}.data-tree-toggle:hover{color:var(--text);background:var(--line-soft)}.data-tree-spacer{width:20px;flex:none}.department-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 760px){.data-table.mobile-cards th,.data-table.mobile-cards td{width:auto!important;min-width:0!important}.data-table.mobile-cards .data-tree-cell{width:100%;min-width:0}}@media (max-width: 760px){.data-table.mobile-cards td{width:100%!important;min-width:0!important;display:flex!important;align-items:flex-start!important;justify-content:flex-start!important;gap:12px;padding:6px 0!important;border:0!important;text-align:left!important;white-space:normal}.data-table.mobile-cards td:before{flex:0 0 88px;width:88px;max-width:none;text-align:left;white-space:normal}.data-table.mobile-cards td.row-actions{position:static!important;justify-content:flex-end!important;align-items:center!important;gap:8px;margin-top:2px;padding-top:8px!important;border:0!important;text-align:right!important}.data-table.mobile-cards td.row-actions:before{content:none!important;display:none!important}.data-table.mobile-cards .data-tree-cell{width:100%;min-width:0}}@media (max-width: 760px){.data-table.mobile-cards td.row-actions{box-shadow:none!important;position:static!important;right:auto!important}}@media (max-width: 760px){.data-table.mobile-cards tr{border-radius:16px!important;overflow:hidden;border-left:0!important;border-right:0!important}.data-table.mobile-cards td,.data-table.mobile-cards .data-tree-cell{border-left:0!important;border-right:0!important}.data-table.mobile-cards td:before,.data-table.mobile-cards td:after,.data-table.mobile-cards tr:before,.data-table.mobile-cards tr:after{border-left:0!important;border-right:0!important}}@media (max-width: 760px){.data-table-container{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}}.data-table .select-col{width:44px!important;min-width:44px;text-align:center}.data-table .select-col input{width:15px;height:15px;accent-color:var(--brand);cursor:pointer}@media (max-width: 760px){.data-table.mobile-cards td.select-col{width:100%!important;justify-content:space-between!important;align-items:center!important}.data-table.mobile-cards td.select-col input{margin-left:auto}}.page-list{gap:8px}.page-card{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--panel)}.page-card-head{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.page-card-head b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:12.5px}.page-card-head code{color:var(--faint);font-size:10.5px;white-space:nowrap}.page-card-meta{display:flex;flex-direction:column;gap:2px;flex:none;color:var(--muted);font-size:10.5px;min-width:130px}.page-card-actions{display:flex;align-items:center;gap:6px;flex:none}.page-card-actions .btn{padding:5px 8px;font-size:11px}.page-editor-body{max-height:min(74vh,720px)}.page-editor{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:start}.page-editor-config{display:flex;flex-direction:column;gap:13px;min-width:0}.page-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.page-editor-hint{padding:8px 10px;border:1px dashed var(--line);border-radius:7px;color:var(--muted);background:var(--bg);font-size:11px;line-height:1.55}.page-toolbar-toggles{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-height:34px}.page-toolbar-toggles label{display:inline-flex;align-items:center;gap:4px;color:var(--text-2);font-size:11px}.page-field-picker{display:flex;flex-direction:column;gap:8px}.page-field-picker-head{display:flex;justify-content:space-between;gap:10px;color:var(--text-2);font-size:11.5px;font-weight:600}.page-field-picker-head small{color:var(--faint);font-weight:500}.page-selected-fields{display:flex;flex-wrap:wrap;gap:6px;min-height:30px;padding:7px;border:1px solid var(--line);border-radius:7px;background:var(--bg)}.page-field-chip{display:inline-flex;align-items:center;gap:2px;padding:3px 4px 3px 7px;border:1px solid var(--line-strong);border-radius:6px;background:var(--panel);font-size:10.5px;color:var(--text-2)}.page-field-chip b{margin-right:2px;font-weight:600}.page-field-chip button{padding:0 3px;border:0;color:var(--faint);background:transparent;cursor:pointer;font-size:11px}.page-field-chip button:hover:not(:disabled){color:var(--brand)}.page-field-chip button:disabled{opacity:.3;cursor:default}.page-unselected-fields{display:flex;flex-wrap:wrap;gap:6px 12px;padding:2px 4px}.page-unselected-fields label{display:inline-flex;align-items:center;gap:4px;color:var(--text-2);font-size:11px}.page-preview{display:flex;flex-direction:column;gap:9px;padding:12px;border:1px solid var(--line);border-radius:9px;background:var(--bg);min-width:0}.page-preview-bar{display:flex;justify-content:space-between;color:var(--faint);font-size:10px}.page-preview-table{overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--panel)}.page-preview-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) 48px;gap:6px;padding:8px 9px;border-top:1px solid var(--line-soft);color:var(--muted);font-size:10px}.page-preview-row:first-child{border-top:0}.page-preview-row.head{color:var(--text-2);background:var(--surface-2);font-weight:600}.page-preview-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-preview-foot{padding:6px 9px;border-top:1px solid var(--line-soft);color:var(--faint);font-size:9.5px;text-align:right}.page-preview-form,.page-preview-detail{display:grid;gap:8px}.page-preview-field{display:flex;flex-direction:column;gap:4px;color:var(--muted);font-size:9.5px}.page-preview-field i{display:block;height:25px;border:1px solid var(--line);border-radius:5px;background:var(--panel)}.page-preview-detail>div{display:flex;flex-direction:column;gap:3px;padding:7px;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--faint);font-size:9.5px}.page-preview-detail b{color:var(--text-2);font-size:10.5px;font-weight:500}.page-preview-dashboard{padding:35px 12px;border:1px dashed var(--line);border-radius:7px;color:var(--faint);text-align:center;font-size:11px}@media (max-width: 760px){.page-card{align-items:flex-start;flex-wrap:wrap}.page-card-meta{display:none}.page-card-actions{margin-left:auto}.page-editor{grid-template-columns:1fr}.page-preview{order:-1}.page-editor-grid{grid-template-columns:1fr}}.menu-title-cell{display:inline-flex;align-items:center;gap:2px;min-width:0}.menu-title-cell .drag-handle{flex:none}.unique-index-list{display:flex;flex-direction:column;gap:8px}.unique-index-card{display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.unique-index-head{display:flex;align-items:center;gap:8px}.unique-index-head .input{flex:1}.unique-field-options{display:flex;flex-wrap:wrap;gap:6px}.unique-field-options label{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border:1px solid var(--line);border-radius:6px;color:var(--text-2);background:var(--bg);font-size:11px;cursor:pointer}.unique-field-options label.active{border-color:var(--brand);color:var(--brand);background:color-mix(in srgb,var(--brand) 8%,var(--bg))}.unique-field-options label code{color:var(--faint);font-size:9.5px}.unique-index-summary{color:var(--muted);font-size:10.5px}.process-retry-row{display:flex;align-items:flex-end;flex-wrap:wrap;gap:10px;padding-top:2px}.process-retry-row .field{min-width:160px}.process-parallel-branches{display:flex;flex-direction:column;gap:9px}.process-parallel-branch{padding:8px;border:1px solid var(--line);border-radius:7px;background:var(--bg)}.process-branch-remove{float:right;padding:0;border:0;color:var(--faint);background:transparent;cursor:pointer;font-size:10px}.process-branch-remove:hover:not(:disabled){color:var(--danger)}.process-branch-remove:disabled{opacity:.35;cursor:default}.process-view-toggle{display:inline-flex;gap:2px;padding:2px;border:1px solid var(--line);border-radius:7px;background:var(--bg)}.process-view-toggle button{padding:4px 9px;border:0;border-radius:5px;color:var(--muted);background:transparent;cursor:pointer;font-size:11px}.process-view-toggle button.active{color:var(--text);background:var(--panel);box-shadow:0 1px 2px #0f172a14}.process-flow-editor{display:flex;flex-direction:column;gap:9px}.process-flow-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.process-flow-toolbar>span{margin-right:2px;color:var(--faint);font-size:10.5px}.process-flow-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:10px;min-height:460px}.process-flow-canvas{height:500px;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:9px;background:var(--bg)}.process-flow-canvas .react-flow__attribution{display:none}.process-flow-node{min-width:190px;max-width:250px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:9px;background:var(--panel);box-shadow:0 2px 7px #0f172a0f;color:var(--text);font-size:11px}.process-flow-node.selected{border-color:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 18%,transparent)}.process-flow-node.parallel{border-color:#c084fc}.process-flow-node.if{border-color:#a78bfa}.process-flow-node-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:5px}.process-flow-node-head code{color:var(--faint);font-size:9px}.process-flow-node b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.process-flow-node small{display:block;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:9.5px}.process-flow-edge .react-flow__edge-text{font-size:9px}.process-flow-inspector{display:flex;flex-direction:column;gap:10px;min-width:0;padding:11px;border:1px solid var(--line);border-radius:9px;background:var(--panel)}.process-flow-inspector-head{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--text);font-size:12px}.process-flow-inspector-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.process-flow-inspector-grid .field{min-width:0}.process-flow-inspector-hint{padding:8px;border:1px dashed var(--line);border-radius:6px;color:var(--faint);font-size:10.5px;line-height:1.55}@media (max-width: 900px){.process-flow-layout{grid-template-columns:1fr;min-height:0}.process-flow-canvas{height:380px}}.process-modebar{display:flex;align-items:center;gap:10px;padding:1px 0 2px}.process-modebar>span{color:var(--faint);font-size:10.5px}.process-flow-boundary{width:220px;padding:10px 12px;border-radius:10px;border:1px solid var(--line-strong);background:var(--panel);box-shadow:0 2px 7px #0f172a0f;font-size:10.5px}.process-flow-boundary.start{border-color:color-mix(in srgb,var(--brand) 55%,var(--line));background:color-mix(in srgb,var(--brand) 7%,var(--panel))}.process-flow-boundary.end{border-color:color-mix(in srgb,#10b981 35%,var(--line));background:color-mix(in srgb,#10b981 5%,var(--panel))}.process-flow-boundary.selected{box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 18%,transparent),0 2px 7px #0f172a14}.process-flow-boundary-kicker{display:block;margin-bottom:4px;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.08em}.process-flow-boundary b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:12px}.process-flow-boundary code{display:block;margin-top:2px;color:var(--faint);font-size:9px}.process-flow-boundary small{display:block;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:9px}.process-status.waiting{color:#a16207;background:#f59e0b21}.process-flow-toolbar-hint{margin-left:auto;color:var(--faint);font-size:10px}.process-graph-canvas .react-flow__node{cursor:grab}.process-graph-node{min-width:160px;max-width:220px;padding:9px 11px;border:1px solid var(--line-strong);border-radius:9px;background:var(--panel);box-shadow:0 2px 7px #0f172a0f;color:var(--text);font-size:11px}.process-graph-node.selected{border-color:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 18%,transparent)}.process-graph-node.start{border-color:color-mix(in srgb,var(--brand) 55%,var(--line));background:color-mix(in srgb,var(--brand) 7%,var(--panel))}.process-graph-node.end{border-color:color-mix(in srgb,#10b981 40%,var(--line));background:color-mix(in srgb,#10b981 5%,var(--panel))}.process-graph-node-kind{margin-bottom:4px;color:var(--faint);font-size:9px;font-weight:700;letter-spacing:.08em}.process-graph-node b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.process-graph-node small{display:block;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:9.5px}.process-graph-edge.selected .react-flow__edge-path{stroke:var(--brand);stroke-width:2}.flow-deadline-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.schema-editor{padding-top:6px}.schema-toolbar{margin-bottom:4px;padding:0}.process-compensate-editor{display:flex;flex-direction:column;gap:8px;padding:9px;border:1px dashed var(--line-strong);border-radius:8px;background:var(--bg)}.process-compensate-editor .schema-section-head{margin:0}.process-compensate-card{display:flex;flex-direction:column;gap:7px;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.process-compensate-head{display:flex;align-items:center;gap:6px}.process-compensate-head select.input{flex:0 0 84px}.process-compensate-head input.input{flex:1;min-width:0}.page-button-editor{display:flex;flex-direction:column;gap:10px;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--bg)}.page-button-group{display:flex;flex-direction:column;gap:6px}.page-button-group-label{color:var(--muted);font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.page-button-row{display:flex;align-items:center;gap:6px}.page-button-row input.input{flex:1;min-width:0}.page-button-row code{flex:0 0 96px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--faint);font-size:10px}.page-button-add select.input{max-width:200px}.page-layout{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;align-items:stretch;width:100%;flex:1;min-height:0}.page-region{min-width:0;min-height:0;display:flex;flex-direction:column}.page-component-title{margin:0 0 8px;font-size:15px;font-weight:600;color:var(--text)}.page-component-text{margin:0 0 8px;color:var(--muted);font-size:13px;line-height:1.7}.page-component-divider{margin:10px 0;border:0;border-top:1px solid var(--line)}.page-component-stat{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.page-component-stat span{color:var(--faint);font-size:11px}.page-component-stat b{color:var(--text);font-size:18px}.page-component-card{border:1px solid var(--line);border-radius:12px;background:var(--panel);overflow:hidden}.page-component-card-title{padding:9px 12px;border-bottom:1px solid var(--line);color:var(--text);font-size:12.5px;font-weight:600}.page-component-card-body{padding:12px}.page-component-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.page-component-query{display:flex;align-items:flex-end;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.page-component-query-fields{display:flex;flex-wrap:wrap;gap:8px;flex:1;min-width:0}.page-component-query-fields .field{min-width:140px}.page-component-query-actions{display:flex;align-items:center;gap:8px;flex:none}@media (max-width: 900px){.page-component-query{flex-direction:column;align-items:stretch}}.layout-editor{width:100%}.layout-editor-layout{display:grid;grid-template-columns:208px minmax(0,1fr) 286px;gap:10px;align-items:start;min-height:420px}.layout-editor-library,.layout-editor-canvas,.layout-editor-props{border:1px solid var(--line);border-radius:10px;background:var(--panel);padding:9px;min-width:0}.layout-editor-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px;color:var(--muted);font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.layout-template-list,.layout-component-library{display:flex;flex-direction:column;gap:5px;margin-bottom:12px}.layout-template,.layout-library-item{display:flex;flex-direction:column;gap:2px;padding:7px 8px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--text-2);text-align:left;cursor:pointer;transition:border-color .13s,background .13s}.layout-template:hover,.layout-library-item:hover{border-color:var(--line-strong);background:var(--hover-bg)}.layout-template.active{border-color:var(--brand);background:var(--brand-weak)}.layout-template b,.layout-library-item b{font-size:12px;font-weight:600}.layout-template small,.layout-library-item small{color:var(--faint);font-size:10px;line-height:1.5}.layout-regions{display:flex;flex-direction:column;gap:9px}.layout-region{border:1px dashed var(--line-strong);border-radius:9px;padding:8px;background:var(--bg);cursor:pointer}.layout-region.active{border-style:solid;border-color:var(--brand);background:var(--brand-weak)}.layout-region-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;color:var(--text-2);font-size:11.5px}.layout-region-body{display:flex;flex-direction:column;gap:5px}.layout-component{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:var(--panel);cursor:pointer}.layout-component.active{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-ring)}.layout-component b{font-size:12px}.layout-component code{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--faint);font-size:10px}.layout-component-tools{display:flex;gap:2px}.layout-props{display:flex;flex-direction:column;gap:8px}.layout-props-empty{color:var(--faint);font-size:11.5px;line-height:1.6}.layout-field-chips{display:flex;flex-wrap:wrap;gap:5px}.layout-field-chips label{display:inline-flex;align-items:center;gap:4px;padding:3px 7px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--text-2);font-size:10.5px;cursor:pointer}.layout-field-chips label.active{border-color:var(--brand);background:var(--brand-weak);color:var(--brand-strong)}.layout-slot{display:flex;flex-direction:column;gap:5px}.layout-slot-row{display:flex;align-items:center;gap:5px}.layout-slot-row input.input{flex:1;min-width:0}.layout-slot-row select.input{flex:0 0 116px}.layout-slot-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 4px 2px 8px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--text-2);font-size:10.5px}@media (max-width: 1100px){.layout-editor-layout{grid-template-columns:1fr}}.layout-query-list{display:flex;flex-direction:column;gap:7px;margin-bottom:12px}.layout-query{display:flex;flex-direction:column;gap:4px;padding:7px;border:1px solid var(--line);border-radius:8px;background:var(--bg)}.layout-query-row{display:flex;align-items:center;gap:4px}.layout-query-row .input{flex:1;min-width:0}.layout-query-filters{display:flex;flex-direction:column;gap:4px}.page-component-pagination{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--line);border-radius:9px;background:var(--panel)}.page-component-pagination select.input{width:74px}.layout-editor{display:flex;flex-direction:column;width:100%;min-height:0;border:1px solid var(--line);border-radius:12px;background:var(--panel);overflow:hidden}.layout-editor-bar{display:flex;align-items:center;gap:12px;padding:8px 12px;border-bottom:1px solid var(--line);background:var(--bg)}.layout-bar-field{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:11px}.layout-bar-field select.input{width:130px}.layout-bar-hint{flex:1;min-width:0;color:var(--faint);font-size:11px}.layout-bar-selected{color:var(--brand-strong);font-size:11px;white-space:nowrap}.layout-editor-body{display:grid;grid-template-columns:214px minmax(0,1fr) 300px;min-height:560px;height:62vh}.layout-editor-library,.layout-editor-props{display:flex;flex-direction:column;gap:6px;padding:10px;background:var(--bg);overflow-y:auto}.layout-editor-library{border-right:1px solid var(--line)}.layout-editor-props{border-left:1px solid var(--line)}.layout-editor-canvas{display:flex;flex-direction:column;min-width:0;min-height:0;background:repeating-linear-gradient(45deg,rgba(127,127,127,.04) 0 8px,transparent 8px 16px)}.layout-canvas-stage{flex:1;min-height:0;overflow:auto;padding:14px}.layout-canvas-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px;align-items:start;min-height:100%}.layout-canvas-region{display:flex;flex-direction:column;min-width:0;min-height:90px;border:1px dashed var(--line-strong);border-radius:10px;background:var(--panel);transition:border-color .13s,box-shadow .13s}.layout-canvas-region.active{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-ring)}.layout-canvas-region.dragover{border-color:var(--brand);border-style:solid;background:var(--brand-weak)}.layout-canvas-region-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 9px;border-bottom:1px dashed var(--line);color:var(--muted);font-size:10.5px}.layout-canvas-region-head b{font-size:11px}.layout-canvas-region-body{flex:1;min-height:0;padding:8px}.layout-canvas-region-body .page-layout-single{display:block}.layout-canvas-empty{padding:14px 8px;border:1px dashed var(--line);border-radius:8px;color:var(--faint);font-size:11px;text-align:center}.page-component-slot{position:relative;border-radius:6px;outline:1px dashed transparent;outline-offset:2px;transition:outline-color .12s}.page-component-slot:hover{outline-color:var(--line-strong)}.page-component-slot.selected{outline:2px solid var(--brand);outline-offset:2px}.layout-canvas-outline{flex:none;max-height:168px;overflow-y:auto;padding:8px 12px 10px;border-top:1px solid var(--line);background:var(--bg)}.layout-outline-list{display:flex;flex-direction:column;gap:5px}.layout-outline-group{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.layout-outline-region{color:var(--faint);font-size:10.5px;min-width:52px}.layout-outline-item{display:inline-flex;align-items:center;gap:6px;padding:3px 6px;border:1px solid var(--line);border-radius:7px;background:var(--panel);cursor:pointer}.layout-outline-item.active{border-color:var(--brand);background:var(--brand-weak)}.layout-outline-item b{font-size:11px}.layout-outline-item code{color:var(--faint);font-size:9.5px}.layout-region-config{display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid var(--line);border-radius:9px;background:var(--panel)}@media (max-width: 1180px){.layout-editor-body{grid-template-columns:180px minmax(0,1fr) 250px}}.ui-modal-layout{width:min(1760px,96vw);height:94vh;max-height:94vh}.ui-modal-layout .ui-modal-body,.page-editor-body-layout{padding:0;overflow:hidden;display:flex;min-height:0}.page-editor-custom{display:flex;flex-direction:column;flex:1;min-height:0;padding:0}.ui-modal-layout .layout-editor{flex:1;min-height:0;border:0;border-radius:0}.ui-modal-layout .layout-editor-body{flex:1;min-height:0;height:auto}.layout-bar-title{width:180px}.layout-editor-body.left-collapsed{grid-template-columns:40px minmax(0,1fr) 300px}.layout-editor-body.right-collapsed{grid-template-columns:214px minmax(0,1fr) 40px}.layout-editor-body.left-collapsed.right-collapsed{grid-template-columns:40px minmax(0,1fr) 40px}.layout-editor-body.canvas-full,.layout-editor-body.canvas-full.left-collapsed,.layout-editor-body.canvas-full.right-collapsed,.layout-editor-body.canvas-full.left-collapsed.right-collapsed{grid-template-columns:minmax(0,1fr)}.layout-editor-body.canvas-full .layout-editor-library,.layout-editor-body.canvas-full .layout-editor-props{display:none}.layout-panel-rail{writing-mode:vertical-rl;align-self:stretch;justify-content:center;padding:10px 4px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--muted);font-size:11px;letter-spacing:.2em;cursor:pointer}.layout-panel-rail:hover{border-color:var(--brand);color:var(--brand-strong)}.layout-zoom{display:inline-flex;align-items:center;gap:3px;padding:2px 6px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.layout-zoom-value{min-width:42px;color:var(--muted);font-size:11px;text-align:center}.layout-bar-actions{display:inline-flex;align-items:center;gap:4px}.icon-btn.active{border-color:var(--brand);background:var(--brand-weak);color:var(--brand-strong)}.layout-canvas-zoom{transform-origin:top left;transition:transform .12s ease-out}.layout-region-resize{position:absolute;top:0;right:-6px;width:12px;height:100%;cursor:col-resize;z-index:2}.layout-region-resize:after{content:"";position:absolute;top:0;bottom:0;left:5px;width:2px;background:transparent;transition:background .12s}.layout-canvas-region:hover .layout-region-resize:after{background:var(--brand)}.layout-canvas-region{position:relative}.page-component-slot[draggable=true]{cursor:grab}.page-component-slot[draggable=true]:active{cursor:grabbing}.layout-editor.is-expanded{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3000;border:0;border-radius:0;background:var(--panel)}.layout-editor.is-expanded .layout-editor-body{flex:1;min-height:0;height:auto}.layout-expand-btn{width:30px;height:30px;font-size:14px}.page-component-slot.flash{animation:layout-slot-flash 1.3s ease-out}@keyframes layout-slot-flash{0%{outline-color:var(--brand);box-shadow:0 0 0 4px var(--brand-ring)}to{outline-color:transparent;box-shadow:none}}.layout-library-hint{margin:0 0 6px;color:var(--faint);font-size:10.5px;line-height:1.6}.layout-editor-library,.layout-editor-props,.layout-editor-body{position:relative}.layout-editor-library{grid-column:1;grid-row:1}.layout-editor-canvas{grid-column:2;grid-row:1}.layout-editor-props{grid-column:3;grid-row:1}.layout-panel-content{display:flex;flex-direction:column;gap:6px;min-height:0;flex:1}.layout-editor-library.collapsed .layout-panel-content,.layout-editor-props.collapsed .layout-panel-content{display:none}.layout-editor-library.is-peek,.layout-editor-props.is-peek{position:absolute;top:0;bottom:0;z-index:30;width:214px;border-color:var(--line-strong);box-shadow:0 16px 44px #0f172a38}.layout-editor-library.is-peek{left:0}.layout-editor-props.is-peek{right:0;width:300px}.layout-editor-library.is-peek .layout-panel-content,.layout-editor-props.is-peek .layout-panel-content{display:flex}.layout-editor-library.is-peek .layout-panel-rail,.layout-editor-props.is-peek .layout-panel-rail{display:none}.layout-pin-btn{width:24px;height:22px;padding:0;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--faint);cursor:pointer}.layout-pin-btn:hover{border-color:var(--line);background:var(--hover-bg);color:var(--text)}.layout-pin-btn.active{border-color:var(--brand);background:var(--brand-weak);color:var(--brand-strong)}.layout-editor-head>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layout-editor-head.pinned{justify-content:flex-start;gap:6px}.page-component-toolbar.is-empty{min-height:34px;padding:5px 10px;border:1px dashed var(--line-strong);border-radius:9px;background:var(--bg);align-items:center}.page-component-placeholder{display:inline-flex;align-items:center;min-height:22px;padding:2px 8px;border:1px dashed var(--line-strong);border-radius:7px;color:var(--faint);font-size:11px;line-height:1.5}.page-component-card-body>.page-component-placeholder{display:flex;width:100%;min-height:46px;justify-content:center}.layout-event{display:flex;flex-direction:column;gap:4px;padding:6px;border:1px solid var(--line);border-radius:8px;background:var(--bg)}.layout-event-row{display:flex;align-items:center;gap:4px}.layout-event-row select.input{flex:1;min-width:0}.layout-region-responsive{display:grid;grid-template-columns:1fr 1fr;gap:6px}.layout-json-input{width:100%;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;line-height:1.5}.layout-slot-extra{display:flex;gap:4px;width:100%;padding-top:4px}.layout-slot-extra select.input{flex:0 0 130px}.layout-slot-extra input.input{flex:1;min-width:0}.page-component-tabs{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:10px;background:var(--panel);overflow:hidden}.page-component-tabbar{display:flex;align-items:center;gap:2px;padding:4px 6px;border-bottom:1px solid var(--line);background:var(--bg);overflow-x:auto}.page-component-tab{padding:5px 11px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:12px;cursor:pointer;white-space:nowrap}.page-component-tab:hover{background:var(--hover-bg);color:var(--text)}.page-component-tab.active{background:var(--brand-weak);color:var(--brand-strong);font-weight:600}.page-component-tabbody{padding:10px;display:flex;flex-direction:column;gap:8px;min-height:0}.page-component-timeline{display:flex;flex-direction:column;gap:2px;padding:4px 2px}.page-component-timeline-item{display:flex;gap:10px;padding:6px 0}.page-component-timeline-dot{flex:none;width:8px;height:8px;margin-top:5px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}.page-component-timeline-body{display:flex;flex-direction:column;gap:2px;min-width:0;border-left:1px solid var(--line);padding-left:12px}.page-component-timeline-body b{font-size:12.5px;font-weight:600}.page-component-timeline-body small{color:var(--faint);font-size:10.5px}.page-component-chart{display:flex;flex-direction:column;gap:7px}.page-component-chart-row{display:flex;align-items:center;gap:8px}.page-component-chart-label{flex:0 0 76px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:11.5px}.page-component-chart-track{flex:1;min-width:0;height:10px;border-radius:999px;background:var(--hover-bg);overflow:hidden}.page-component-chart-bar{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--brand),var(--brand-strong))}.page-component-chart-value{flex:0 0 auto;min-width:26px;color:var(--text-2);font-size:11.5px;text-align:right}.approval-steps{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.approval-steps-head{display:flex;align-items:center;gap:8px}.approval-steps-head b{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px}.approval-steps-status{padding:2px 8px;border-radius:999px;background:var(--hover-bg);color:var(--muted);font-size:11px}.approval-steps-status.status-approved{background:color-mix(in srgb,#16a34a 14%,transparent);color:#15803d}.approval-steps-status.status-rejected{background:color-mix(in srgb,#dc2626 14%,transparent);color:#b91c1c}.approval-steps-status.status-pending{background:color-mix(in srgb,#f59e0b 16%,transparent);color:#b45309}.approval-steps-list{display:flex;flex-direction:column}.approval-steps-item{position:relative;display:flex;gap:9px;padding:4px 0}.approval-steps-dot{flex:none;width:9px;height:9px;margin-top:4px;border-radius:50%;background:var(--line-strong)}.approval-steps-item.status-approved .approval-steps-dot{background:#16a34a}.approval-steps-item.status-rejected .approval-steps-dot{background:#dc2626}.approval-steps-item.status-current .approval-steps-dot{background:#f59e0b;box-shadow:0 0 0 3px color-mix(in srgb,#f59e0b 22%,transparent)}.approval-steps-text{display:flex;flex-direction:column;gap:1px;min-width:0;padding-left:10px;border-left:1px solid var(--line)}.approval-steps-text b{font-size:12px;font-weight:600}.approval-steps-text small{color:var(--faint);font-size:10.5px;line-height:1.5}.list-compact{display:flex;flex-direction:column;gap:8px;padding:8px 0 2px}.list-compact-card{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.list-compact-title{color:var(--text);font-size:13.5px;font-weight:600;line-height:1.4;word-break:break-all}.list-compact-fields{display:flex;flex-direction:column;gap:3px}.list-compact-field{display:flex;align-items:baseline;gap:8px;font-size:12px}.list-compact-field span{flex:0 0 68px;color:var(--faint);font-size:11px}.list-compact-field b{flex:1;min-width:0;color:var(--text-2);font-weight:500;word-break:break-all}.list-compact-actions{display:flex;align-items:center;gap:6px;padding-top:2px;border-top:1px dashed var(--line);margin-top:2px}.list-compact-actions .row-actions{flex-wrap:wrap}.list-compact-pager{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 2px}.compensation-flow{display:flex;align-items:center;flex-wrap:wrap;gap:4px;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--bg);margin-bottom:10px}.compensation-flow-item{display:inline-flex;align-items:center;gap:4px}.compensation-arrow{color:var(--faint);font-size:12px}.compensation-node{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--text-2);font-size:11.5px;cursor:pointer;transition:border-color .12s,background .12s}.compensation-node b{font-weight:600;font-size:11.5px}.compensation-node small{color:var(--faint);font-size:10px}.compensation-node:hover{border-color:var(--line-strong)}.compensation-node.active{border-color:var(--brand);background:var(--brand-weak);box-shadow:0 0 0 2px var(--brand-ring)}.compensation-node.start{border-style:dashed;color:var(--muted);cursor:default}.compensation-node.add{border-style:dashed;color:var(--muted);cursor:pointer}.compensation-node.add:hover{border-color:var(--brand);color:var(--brand-strong)}.compensation-node-tools{display:inline-flex;gap:1px}.compensation-node-tools .icon-btn{width:18px;height:18px;font-size:10px}.process-compensate-card.active{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-ring)}.page-component-child-table{display:flex;flex-direction:column;gap:8px;min-width:0}.page-component-child-table-head{display:flex;align-items:center;gap:8px}.page-component-child-table-head b{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px}.page-component-child-table .data-table-container{max-height:320px;overflow:auto}.process-group{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}.process-group-head{display:flex;align-items:baseline;gap:8px;padding-bottom:6px;border-bottom:1px solid var(--line)}.process-group-head b{font-size:13px}.process-group-head span{color:var(--faint);font-size:11.5px}.process-scope-badge{padding:2px 8px;border-radius:999px;font-size:11px;background:var(--hover-bg);color:var(--muted)}.process-scope-badge.crossApp{background:color-mix(in srgb,#0ea5e9 14%,transparent);color:#0369a1}.process-scope-badge.crossClient{background:color-mix(in srgb,#16a34a 14%,transparent);color:#15803d}.fn-editor{display:flex;flex-direction:column;gap:14px}.fn-filter-rows{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.fn-filter-row{display:grid;grid-template-columns:200px 1fr 32px;gap:6px;align-items:center}.process-form-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.process-form-head b{font-size:12.5px}.process-form-head .muted{margin-left:auto}.process-editor-body-canvas{height:min(78vh,880px);max-height:none}.process-editor-canvas{height:100%;gap:8px}.process-editor-canvas .process-graph-editor{display:flex;flex-direction:column;flex:1;min-height:0}.process-editor-canvas .process-flow-layout{flex:1;min-height:0}.process-editor-canvas .process-flow-canvas{height:100%}.process-editor-canvas .process-flow-inspector{overflow-y:auto}.flow-assignees{display:flex;flex-wrap:wrap;gap:4px 10px;padding:8px 10px;border:1px dashed var(--line);border-radius:8px}.flow-assignees>span{flex:0 0 100%}.flow-routes{display:flex;flex-direction:column;gap:6px;margin-top:6px;padding-top:8px;border-top:1px dashed var(--line)}.flow-routes-head{display:flex;align-items:center;gap:8px}.flow-routes-head>span{flex:1;font-size:11.5px;color:var(--muted)}.flow-route-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.flow-route-row select,.flow-route-row input{min-width:0;flex:1 1 90px;padding:4px 6px;border:1px solid var(--line);border-radius:6px;background:var(--panel);font-size:11.5px}.flow-designer-mask.is-full{padding:0}.flow-designer.is-expanded{width:100vw;height:100vh;max-width:none;max-height:none;border-radius:0}.flow-designer.is-expanded .flow-designer-body{grid-template-columns:1fr 360px}.flow-gateway{display:flex;flex-direction:column;align-items:center;gap:1px;width:68px;box-sizing:border-box;padding:5px 6px;border:1.5px dashed #a5b4fc;border-radius:10px;background:#eef2ff;color:#4f46e5;font-size:10px;white-space:nowrap}.flow-gateway.parallel{border-color:#0f766e;border-style:solid;background:#ecfdf5;color:#0f766e}.flow-gateway-glyph{font-size:13px;line-height:1}.flow-gateway em{font-style:normal;font-weight:600}.flow-routes-hint{font-size:11px;line-height:1.5;color:var(--muted);padding:6px 8px;border-radius:7px;background:var(--bg)}.flow-edge.deletable{cursor:pointer}.flow-edge.deletable:hover .react-flow__edge-path{stroke-width:3px}.flow-edge.structural{pointer-events:none}.flow-edge-actions{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:6;display:flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--line);border-radius:9px;background:var(--panel);box-shadow:0 8px 24px #0f172a24;font-size:12px}.flow-canvas{position:relative}.flow-context-menu{position:absolute;z-index:20;min-width:148px;padding:5px;border:1px solid var(--line);border-radius:9px;background:var(--panel);box-shadow:0 12px 32px #0f172a2e;display:flex;flex-direction:column;gap:2px}.flow-context-menu button{display:flex;align-items:center;gap:6px;padding:7px 10px;border:none;border-radius:6px;background:transparent;color:var(--text);font-size:12.5px;text-align:left;cursor:pointer}.flow-context-menu button:hover:not(:disabled){background:var(--brand-weak);color:var(--brand)}.flow-context-menu button:disabled{opacity:.4;cursor:not-allowed}.flow-context-menu button.danger{color:#dc2626}.flow-context-menu button.danger:hover:not(:disabled){background:#dc26261a;color:#dc2626}.flow-inspector-head-actions{display:flex;align-items:center;gap:4px}.flow-node-delete{padding:3px 9px;border:1px solid rgba(220,38,38,.35);border-radius:6px;background:#dc26260f;color:#dc2626;font-size:12px;font-weight:600;cursor:pointer}.flow-node-delete:hover{background:#dc262624;border-color:#dc2626}.flow-edge.deletable .react-flow__edge-interaction{stroke-width:18px}.flow-edge-label{position:absolute;padding:1px 5px;border-radius:4px;background:#ffffffeb;color:#64748b;font-size:10px;pointer-events:none;white-space:nowrap}.flow-edge-handle{position:absolute;width:10px;height:10px;border-radius:50%;border:1.5px solid #818cf8;background:#fff;pointer-events:all;cursor:ns-resize;opacity:.55;transition:opacity .15s ease,transform .15s ease}.flow-edge-handle:hover{opacity:1;box-shadow:0 0 0 4px #818cf82e}.process-graph-canvas-wrap{position:relative;height:100%}.flow-context-menu-title{padding:4px 10px 2px;font-size:11px;color:var(--muted)}.process-graph-canvas .react-flow__minimap{width:150px;height:110px;opacity:.9;border-radius:8px;border:1px solid var(--line);background:var(--panel)}.query-editor{display:flex;flex-direction:column;min-height:0}.query-editor .process-flow-layout{min-height:480px}.query-graph-node{min-width:190px;max-width:230px;padding:9px 12px;border-radius:10px;border:1.5px solid var(--brand-line);background:var(--panel);box-shadow:0 4px 14px #4f46e51a;display:flex;flex-direction:column;gap:2px;cursor:pointer}.query-graph-node.selected{border-color:var(--brand);box-shadow:0 0 0 3px #4f46e52e}.query-graph-node.source{background:#eef2ff;border-color:#a5b4fc}.query-graph-node.aggregate{background:#ecfdf5;border-color:#6ee7b7}.query-graph-node.start,.query-graph-node.end{background:var(--brand-weak);align-items:center}.query-graph-node-kind{font-size:10.5px;color:var(--muted)}.query-graph-node b{font-size:13px}.query-graph-node small{font-size:10.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.query-field-picker{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 8px}.query-field-item{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border:1px solid var(--brand-line);border-radius:999px;font-size:12px;cursor:pointer;background:var(--panel)}.query-field-item.checked{border-color:var(--brand);background:var(--brand-weak)}.query-field-item small{color:var(--muted);font-size:10.5px}.inline-message-panel{display:flex;align-items:flex-start;gap:8px;max-height:260px;overflow:auto}.inline-message-body{flex:1;min-width:0;white-space:pre-wrap;word-break:break-word;line-height:1.55}.inline-message-body ul{margin:0;padding-left:18px}.inline-message-body li+li{margin-top:4px}.query-graph-node.joined{border-color:#f59e0b;background:#fffbeb;box-shadow:0 4px 14px #f59e0b2e}.query-graph-node-badge{margin-left:6px;padding:1px 6px;border-radius:999px;background:#fde68a;color:#92400e;font-size:10px;font-weight:600}.detail-item input,.detail-item select,.detail-item textarea{width:100%;box-sizing:border-box}.detail-toolbar{flex-wrap:wrap;gap:8px}.publish-dialog-body{display:flex;flex-direction:column;gap:8px}.publish-diff-head{font-weight:600;font-size:13px;margin-top:4px}.dsl-diff{display:flex;flex-direction:column;min-height:0;border:1px solid var(--brand-line);border-radius:10px;overflow:hidden}.dsl-diff-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 10px;background:var(--panel-soft, #f8fafc);border-bottom:1px solid var(--brand-line)}.dsl-diff-stat{display:inline-flex;align-items:center;gap:10px}.dsl-diff-stat .add{color:#15803d}.dsl-diff-stat .del{color:#b91c1c}.dsl-diff-nav{display:inline-flex;align-items:center;gap:6px}.dsl-diff-body{max-height:46vh;overflow:auto;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.55;background:#fff}.dsl-diff-line{display:flex;align-items:flex-start;gap:8px;padding:0 10px;white-space:pre-wrap;word-break:break-word}.dsl-diff-line.same{color:#64748b}.dsl-diff-line.add{background:#ecfdf3;color:#14532d}.dsl-diff-line.del{background:#fef2f2;color:#7f1d1d}.dsl-diff-line.active{box-shadow:inset 3px 0 0 var(--brand)}.dsl-diff-no{width:34px;flex:none;text-align:right;color:#94a3b8;-webkit-user-select:none;user-select:none}.dsl-diff-sign{width:12px;flex:none;text-align:center;-webkit-user-select:none;user-select:none}.dsl-diff-text{flex:1;min-width:0}.dsl-diff-empty{display:flex;align-items:center;gap:6px;padding:14px;color:#15803d;background:#f0fdf4;font-size:13px}.dsl-diff-gap{display:block;width:100%;text-align:center;padding:4px 8px;margin:2px 0;border:0;border-top:1px dashed var(--brand-line);border-bottom:1px dashed var(--brand-line);background:var(--panel-soft, #f8fafc);color:#64748b;font-size:11.5px;font-family:inherit;cursor:pointer}.dsl-diff-gap:hover{background:var(--brand-weak, #eef2ff);color:var(--brand)}.btn.ghost{background:transparent;border-color:var(--brand-line)}.version-diff-picker{display:grid;grid-template-columns:1fr 1fr;gap:10px}.connector-section{margin-bottom:22px}.connector-table,.ai-route-table{width:100%;border-collapse:collapse;font-size:13px}.connector-table th,.connector-table td,.ai-route-table th,.ai-route-table td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--brand-line);vertical-align:middle}.connector-table th,.ai-route-table th{font-weight:600;color:var(--muted);font-size:12px}.connector-actions{display:flex;gap:6px;flex-wrap:wrap}.connector-table code,.connector-section code{background:var(--panel-soft, #f1f5f9);padding:1px 5px;border-radius:4px;font-size:12px}.connector-openapi{margin-top:16px;padding-top:14px;border-top:1px dashed var(--brand-line)}.connector-openapi-head{display:flex;flex-direction:column;gap:3px;margin-bottom:8px}.connector-openapi-doc{width:100%;resize:vertical;min-height:96px;font-size:12px;line-height:1.5}.connector-openapi-actions{margin-top:8px}.connector-endpoints{margin-top:10px}.connector-endpoint-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:6px;margin-top:6px}.connector-endpoint{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:7px 9px;border:1px solid var(--line);border-radius:var(--radius-s);background:var(--panel);cursor:pointer;text-align:left;font:inherit}.connector-endpoint.active{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.connector-mapping{margin-top:14px}.connector-mapping-list{display:flex;flex-direction:column;gap:6px;margin-top:6px}.connector-mapping-row{display:grid;grid-template-columns:1.2fr 1.4fr 92px 1fr 64px;gap:6px;align-items:center}.connector-mapping-head{font-size:12px;color:var(--muted)}.connector-preview{margin-top:12px}.connector-preview-scroll{max-height:260px;overflow:auto;margin-top:8px;border:1px solid var(--line);border-radius:var(--radius-s)}.ai-provider-section{margin-bottom:22px}.ai-provider-current{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-s);background:var(--surface-alt)}.ai-provider-current b{font-family:var(--mono);font-size:13px}.connector-pagination{margin-top:12px;padding-top:10px;border-top:1px dashed var(--brand-line)}.integration-tabs{margin-bottom:14px}.ai-provider-model-select{max-width:280px}.ai-assistant-fab{position:fixed;right:20px;bottom:20px;z-index:60;display:flex;flex-direction:column;align-items:center;gap:2px;background:transparent;border:none;padding:0;font:inherit}.ai-assistant-fab-main{display:flex;flex-direction:column;align-items:center;gap:2px;padding:0;border:none;background:transparent;cursor:grab;font:inherit;transition:transform .15s ease;touch-action:none;-webkit-user-select:none;user-select:none}.ai-assistant-fab-main:active{cursor:grabbing}.ai-assistant-fab:hover .ai-assistant-fab-main{transform:translateY(-2px)}.ai-assistant-fab:active .ai-assistant-fab-main{transform:translateY(0)}.ai-assistant-fab-image{width:80px;height:88px;object-fit:contain;display:block;filter:drop-shadow(0 3px 8px rgba(15,23,42,.28));-webkit-user-drag:none;-webkit-user-select:none;user-select:none;pointer-events:none}.ai-assistant-fab-label{font-size:13px;font-weight:600;color:var(--text);white-space:nowrap;text-align:center;text-shadow:0 1px 4px rgba(255,255,255,.9)}.ai-assistant-fab-close{position:absolute;top:-6px;right:-6px;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--panel);color:var(--muted);cursor:pointer;opacity:.55;transition:opacity .15s ease}.ai-assistant-fab:hover .ai-assistant-fab-close{opacity:1}[data-style=classic] .ai-assistant-fab-label{color:#f8fafc;text-shadow:0 1px 4px rgba(2,6,23,.85)}.ai-assistant-fab.is-collapsed{right:8px;bottom:12px}.ai-assistant-fab.is-collapsed .ai-assistant-fab-image{width:56px;height:62px;opacity:.92;filter:drop-shadow(0 2px 6px rgba(15,23,42,.32)) drop-shadow(0 0 0 1px rgba(99,102,241,.35))}.ai-assistant-fab.is-collapsed:hover .ai-assistant-fab-image{opacity:1}@media (max-width: 640px){.ai-assistant-fab{right:12px;bottom:12px}.ai-assistant-fab-label{display:none}}.future-agent-progress{display:flex;align-items:center;gap:8px;margin:0 auto 8px;padding:6px 12px;max-width:fit-content;border-radius:999px;background:color-mix(in srgb,var(--brand, #5b6cf0) 10%,transparent);color:var(--brand, #5b6cf0);font-size:12.5px}.future-agent-progress-dot{width:7px;height:7px;border-radius:50%;background:var(--brand, #5b6cf0);animation:future-agent-pulse 1s ease-in-out infinite}@keyframes future-agent-pulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}.main>.future-shell.is-embedded{height:100%;min-height:0;flex:1}.future-shell.is-embedded .future-body{flex:1;min-height:0}.future-embedded-bar{flex:none;display:flex;align-items:center;gap:10px;height:44px;padding:0 14px;border-bottom:1px solid var(--line);background:var(--future-topbar-bg, var(--surface-alt))}.future-embedded-title{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--text)}.future-embedded-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.future-composer-input-wrap{flex:1;min-width:0;display:flex;align-items:flex-start;gap:8px}.future-composer-tag{flex:none;display:inline-flex;align-items:center;gap:5px;max-width:240px;padding:5px 6px 5px 9px;border:1px solid color-mix(in srgb,var(--future-accent) 45%,transparent);border-radius:999px;background:color-mix(in srgb,var(--future-accent) 14%,transparent);color:var(--text);font-size:12px;line-height:1.2;white-space:nowrap}.future-composer-tag-text{overflow:hidden;text-overflow:ellipsis}.future-composer-tag-close{flex:none;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;border-radius:50%;background:transparent;color:inherit;cursor:pointer;opacity:.7}.future-composer-tag-close:hover{opacity:1;background:color-mix(in srgb,var(--future-accent) 28%,transparent)}.publish-check{margin-bottom:12px;padding:10px 12px;border-radius:var(--radius-s);border:1px solid var(--line);font-size:13px}.publish-check b{display:block;margin-bottom:6px}.publish-check ul{margin:0;padding-left:20px}.publish-check li{margin-bottom:4px;word-break:break-word}.publish-check-error{border-color:var(--danger-line);background:var(--danger-weak);color:var(--danger-text)}.publish-check-warn{border-color:var(--warn-line);background:var(--warn-weak);color:var(--warn-text)}.license-pill{display:inline-flex;align-items:center;height:24px;padding:0 8px;border-radius:999px;font-size:12px;line-height:1;border:1px solid var(--line);background:var(--surface-2, #f4f6fa);color:var(--text-2, #5b6472);white-space:nowrap}.license-pill.warn{border-color:var(--warn-line, #e5b567);background:var(--warn-weak, #fff8e8);color:var(--warn-text, #8a5a00)}.license-pill.danger{border-color:var(--danger-line, #e08b8b);background:var(--danger-weak, #fdeeee);color:var(--danger-text, #a83232)}.future-ai-preview{border:1px solid var(--line);background:var(--panel)}.future-ai-preview.is-create{border-left:3px solid var(--brand, #5b6cf0)}.future-ai-preview.is-edit{border-left:3px solid var(--warn-line, #e5b567)}.future-ai-preview-title{display:flex;flex-direction:column;gap:2px;padding:8px 12px 4px}.future-ai-preview-title strong{font-size:14px;color:var(--text)}.future-ai-preview-title span{font-size:12px;color:var(--text-2)}.future-ai-preview-stats{display:flex;flex-wrap:wrap;gap:6px;padding:4px 12px 8px}.future-ai-preview-stats span{padding:2px 8px;border-radius:999px;border:1px solid var(--line);background:var(--surface-2);font-size:11.5px;color:var(--text-2)}.future-ai-preview-toggle{margin:0 12px 6px;padding:0;border:0;background:none;color:var(--brand, #5b6cf0);font-size:12px;cursor:pointer;text-align:left}.future-ai-preview-detail{margin:0 12px 8px;padding:8px 10px;border-radius:8px;background:var(--surface-2);max-height:260px;overflow-y:auto}.future-ai-preview-entity+.future-ai-preview-entity{margin-top:8px}.future-ai-preview-entity b{font-size:12.5px;color:var(--text)}.future-ai-preview-entity ul{margin:4px 0 0;padding-left:18px;font-size:12px;color:var(--text-2)}.future-ai-preview-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:8px 12px 12px;border-top:1px solid var(--line)}.future-ai-preview-actions .future-snapshot-hint{font-size:11.5px;color:var(--faint)}.future-clarify{border:1px solid var(--line);background:var(--panel)}.future-clarify-templates{padding:8px 12px 4px}.future-clarify-templates-label{font-size:12px;color:var(--text-2);margin-bottom:6px}.future-clarify-template{display:block;width:100%;text-align:left;padding:8px 10px;margin-bottom:6px;border:1px solid var(--line);border-radius:9px;background:var(--surface-2);cursor:pointer;transition:border-color .13s,background .13s}.future-clarify-template:hover{border-color:var(--brand, #5b6cf0);background:var(--surface-3)}.future-clarify-template-head{display:flex;align-items:baseline;gap:8px}.future-clarify-template-head b{font-size:13px;color:var(--text)}.future-clarify-template p{margin:3px 0 0;font-size:12px;color:var(--text-2)}.future-clarify-template-action{display:inline-block;margin-top:4px;font-size:12px;color:var(--brand, #5b6cf0)}.future-clarify-divider{display:flex;align-items:center;gap:8px;margin:6px 0 2px;font-size:11.5px;color:var(--faint)}.future-clarify-divider:before,.future-clarify-divider:after{content:"";flex:1;height:1px;background:var(--line)}.future-clarify-questions{display:flex;flex-direction:column;gap:10px;padding:8px 12px}.future-clarify-question{display:flex;flex-direction:column;gap:4px}.future-clarify-question-label{font-size:12.5px;color:var(--text);font-weight:500}.future-clarify-question-hint{font-size:11.5px;color:var(--faint)}.future-clarify-options{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.future-clarify-option{padding:4px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);color:var(--text-2);font-size:12px;cursor:pointer;transition:all .13s}.future-clarify-option:hover{border-color:var(--brand, #5b6cf0);color:var(--text)}.future-clarify-option.is-active{border-color:var(--brand, #5b6cf0);background:color-mix(in srgb,var(--brand, #5b6cf0) 12%,transparent);color:var(--text)}.future-clarify-input{flex:1;min-width:140px;padding:5px 9px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);font-size:12.5px}.future-clarify-actions{display:flex;gap:8px;padding:8px 12px 12px;border-top:1px solid var(--line)}.future-app-choice{border:1px solid var(--line);background:var(--panel)}.future-app-choice-list{display:flex;flex-direction:column;gap:6px;padding:8px 12px;max-height:300px;overflow-y:auto}.future-app-choice-item{display:block;width:100%;text-align:left;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:var(--surface-2);cursor:pointer;transition:border-color .13s,background .13s}.future-app-choice-item:hover{border-color:var(--brand, #5b6cf0);background:var(--surface-3)}.future-app-choice-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.future-app-choice-head b{font-size:13px;color:var(--text)}.future-app-choice-item p{margin:3px 0 0;font-size:12px;color:var(--text-2)}.future-app-choice-key{display:inline-block;margin-top:4px;font-size:11px;color:var(--faint);font-family:var(--mono, monospace)}.future-app-continue{margin-top:8px;width:100%}.future-plan{border:1px solid var(--line);background:var(--panel)}.future-plan-summary{padding:6px 12px 2px;font-size:12.5px;color:var(--text-2)}.future-plan-steps{list-style:none;margin:0;padding:6px 12px 8px;display:flex;flex-direction:column;gap:8px}.future-plan-step{padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:var(--surface-2)}.future-plan-step.status-running{border-color:var(--brand, #5b6cf0)}.future-plan-step.status-done{border-left:3px solid var(--ok, #2f9e6a)}.future-plan-step.status-failed{border-left:3px solid var(--danger, #d9534f)}.future-plan-step-head{display:flex;align-items:baseline;gap:8px}.future-plan-step-index{font-size:13px;color:var(--brand, #5b6cf0)}.future-plan-step-head b{font-size:13px;color:var(--text);flex:1}.future-plan-step-status{font-size:11.5px;color:var(--faint)}.future-plan-step-detail{margin-top:3px;font-size:12px;color:var(--text-2)}.future-plan-step-message{margin-top:4px;font-size:12px;color:var(--text);padding:4px 8px;border-radius:6px;background:var(--panel)}.future-plan-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:8px 12px 12px;border-top:1px solid var(--line)}.future-plan-actions .future-snapshot-hint{font-size:11.5px;color:var(--faint)}.future-runs{border:1px solid var(--line);background:var(--panel)}.future-runs-refresh{margin-left:auto;border:0;background:none;color:var(--brand, #5b6cf0);font-size:12px;cursor:pointer}.future-runs-list{display:flex;flex-direction:column;gap:8px;padding:8px 12px 12px;max-height:380px;overflow-y:auto}.future-run{padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:var(--surface-2)}.future-run.status-undone{opacity:.72}.future-run-head{display:flex;align-items:baseline;gap:8px}.future-run-head b{font-size:13px;color:var(--text);flex:1}.future-run-status{font-size:11.5px;padding:1px 7px;border-radius:999px;border:1px solid var(--line);color:var(--text-2)}.future-run-status.status-done{color:var(--ok, #2f9e6a);border-color:var(--ok, #2f9e6a)}.future-run-status.status-partial{color:var(--warn, #b8860b);border-color:var(--warn, #b8860b)}.future-run-steps{margin-top:5px;display:flex;flex-direction:column;gap:3px}.future-run-step{font-size:12px;color:var(--text-2);display:flex;flex-wrap:wrap;gap:6px;align-items:baseline}.future-run-step-kind{font-size:11px;padding:0 6px;border-radius:4px;background:var(--panel);border:1px solid var(--line);color:var(--text-2)}.future-run-step-undo{color:var(--faint)}.future-run-actions{margin-top:6px;display:flex;align-items:center;gap:8px}.future-clarify-template-reason{margin-top:5px;padding:4px 8px;border-radius:6px;background:var(--panel);border:1px solid var(--line);font-size:11.5px;color:var(--text-2)}.quota-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin:12px 0 20px}.quota-card{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.quota-card.status-blocked{border-color:var(--danger, #d9534f)}.quota-card.status-warn{border-color:var(--warn, #b8860b)}.quota-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.quota-card-head b{font-size:13px;color:var(--text)}.quota-card-status{font-size:11.5px;color:var(--text-2)}.quota-card-status.status-blocked{color:var(--danger, #d9534f)}.quota-card-status.status-warn{color:var(--warn, #b8860b)}.quota-card-value{margin:8px 0 6px;font-size:13px;color:var(--text-2)}.quota-card-value strong{font-size:20px;color:var(--text)}.quota-bar{height:6px;border-radius:999px;background:var(--surface-2);overflow:hidden}.quota-bar-fill{height:100%;background:var(--brand, #5b6cf0)}.quota-bar-fill.status-warn{background:var(--warn, #b8860b)}.quota-bar-fill.status-blocked{background:var(--danger, #d9534f)}.quota-card-message{margin-top:6px;font-size:12px;color:var(--text-2)}.quota-plan-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:10px}.quota-plan{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.quota-plan.is-current{border-color:var(--brand, #5b6cf0)}.quota-plan-head{display:flex;align-items:center;gap:8px}.quota-plan-head b{font-size:13px;color:var(--text)}.quota-plan-current{font-size:11px;padding:1px 7px;border-radius:999px;background:var(--brand, #5b6cf0);color:#fff}.quota-plan ul{margin:8px 0 10px;padding-left:18px;font-size:12px;color:var(--text-2)}.onboarding-card{margin:12px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.onboarding-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.onboarding-head b{font-size:13px;color:var(--text)}.onboarding-progress{font-size:12px;color:var(--text-2)}.onboarding-close{margin-left:auto;border:0;background:none;cursor:pointer;color:var(--faint)}.onboarding-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.onboarding-steps li{display:flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px dashed var(--line)}.onboarding-steps li:last-child{border-bottom:0}.onboarding-step-box{width:18px;height:18px;flex:none;border-radius:5px;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;font-size:11px;color:var(--ok, #2f9e6a)}.onboarding-steps li.is-done .onboarding-step-box{border-color:var(--ok, #2f9e6a)}.onboarding-step-body{flex:1;display:flex;flex-direction:column;gap:2px}.onboarding-step-body b{font-size:13px;color:var(--text)}.onboarding-step-body span{font-size:12px;color:var(--text-2)}.onboarding-step-actions{display:flex;align-items:center;gap:6px}.onboarding-step-go{border:0;background:none;color:var(--brand, #5b6cf0);font-size:12px;cursor:pointer}.onboarding-step-done{font-size:12px;color:var(--ok, #2f9e6a)}.onboarding-collapsed{position:fixed;right:16px;bottom:96px;z-index:40;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:var(--panel);color:var(--text-2);font-size:12px;cursor:pointer;box-shadow:0 6px 18px #0000001f}.support-form{display:flex;flex-direction:column;gap:10px}.support-form textarea{resize:vertical}.support-actions{display:flex;gap:8px;justify-content:flex-end}.support-result{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.support-hint{font-size:12px;color:var(--text-2)}.help-drawer{display:flex;flex-direction:column;gap:14px}.help-entry h4{margin:0 0 4px;font-size:13px;color:var(--text)}.help-entry p{margin:0;font-size:12.5px;color:var(--text-2);line-height:1.6}.help-doc{display:inline-block;margin-top:6px;font-size:11.5px;color:var(--faint)}.platform-section{margin:18px 0}.platform-section h3{margin:0 0 4px;font-size:14px;color:var(--text)}.platform-tenant-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;margin-top:10px}.platform-tenant{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel);border-left-width:3px}.platform-tenant.band-healthy{border-left-color:var(--ok, #2f9e6a)}.platform-tenant.band-watch{border-left-color:var(--warn, #b8860b)}.platform-tenant.band-risk{border-left-color:var(--danger, #d9534f)}.platform-tenant-head{display:flex;align-items:baseline;gap:8px}.platform-tenant-head b{font-size:13.5px;color:var(--text);flex:1}.platform-band{font-size:11.5px;padding:1px 8px;border-radius:999px;border:1px solid var(--line);color:var(--text-2)}.platform-score{font-size:18px;font-weight:600;color:var(--text)}.platform-tenant-meta{display:flex;flex-wrap:wrap;gap:10px;margin:6px 0 8px;font-size:11.5px;color:var(--text-2)}.platform-tenant-bars{display:flex;flex-direction:column;gap:4px}.platform-bar{display:flex;align-items:center;gap:8px}.platform-bar-label{width:82px;flex:none;font-size:11.5px;color:var(--text-2)}.platform-bar-track{flex:1;height:6px;border-radius:999px;background:var(--surface-2);overflow:hidden}.platform-bar-fill{height:100%;background:var(--brand, #5b6cf0)}.platform-bar-value{width:26px;text-align:right;font-size:11.5px;color:var(--text-2)}.platform-tenant-actions{display:flex;gap:8px;margin-top:10px}.platform-case-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}.platform-case{padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel);cursor:pointer}.platform-case:hover{border-color:var(--brand, #5b6cf0)}.platform-case.status-resolved{opacity:.7}.platform-case-head{display:flex;align-items:baseline;gap:8px}.platform-case-head b{flex:1;font-size:13px;color:var(--text)}.platform-case-status{font-size:11.5px;color:var(--text-2)}.platform-case-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px;font-size:11.5px;color:var(--faint)}.platform-empty{padding:14px;font-size:12.5px;color:var(--faint)}.platform-quality h4{margin:14px 0 6px;font-size:12.5px;color:var(--text)}.platform-quality-stats{display:flex;flex-wrap:wrap;gap:12px;font-size:12.5px;color:var(--text-2)}.platform-table{width:100%;border-collapse:collapse;font-size:12px}.platform-table th,.platform-table td{padding:5px 8px;border-bottom:1px solid var(--line);text-align:left;color:var(--text-2)}.platform-table th{color:var(--faint);font-weight:500}.platform-failures{list-style:none;margin:0;padding:0;font-size:12px;color:var(--text-2)}.platform-failures li{display:flex;justify-content:space-between;gap:10px;padding:4px 0;border-bottom:1px dashed var(--line)}.platform-failure-count{color:var(--faint)}.platform-case-detail b{font-size:13.5px;color:var(--text)}.platform-case-actions{margin:10px 0}.platform-notes{list-style:none;margin:6px 0 12px;padding:0;font-size:12px;color:var(--text-2)}.platform-notes li{display:flex;flex-direction:column;gap:2px;padding:6px 0;border-bottom:1px dashed var(--line)}.platform-note-time{font-size:11px;color:var(--faint)}.platform-resolution{margin-top:10px;font-size:12.5px;color:var(--text)}.platform-filters{display:flex;gap:8px;margin:10px 0 4px}.platform-filter{padding:4px 12px;border-radius:999px;border:1px solid var(--line);background:var(--panel);color:var(--text-2);font-size:12px;cursor:pointer}.platform-filter.is-active{border-color:var(--brand, #5b6cf0);color:var(--text);background:color-mix(in srgb,var(--brand, #5b6cf0) 10%,transparent)}.tenant-lifecycle{margin:16px 0;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.tenant-lifecycle-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.tenant-lifecycle-head b{font-size:13px;color:var(--text)}.tenant-lifecycle-actions{display:flex;gap:8px;margin-top:10px}.auth-recover{margin:10px 0;padding:10px 12px;border:1px solid var(--warn-line, #e5b567);border-radius:10px;background:var(--surface-2)}.auth-recover p{margin:0 0 8px;font-size:12.5px;color:var(--text-2);line-height:1.6}.ai-assistant-entry-btn{color:var(--brand, #5b6cf0);border-color:color-mix(in srgb,var(--brand, #5b6cf0) 40%,transparent)}.platform-console{min-height:100vh;background:var(--bg, #f6f7fb)}.platform-console-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 20px;background:var(--panel, #fff);border-bottom:1px solid var(--line, #e6e8ef);position:sticky;top:0;z-index:20}.platform-console-bar .brand{display:flex;align-items:center;gap:8px}.platform-console-user{display:flex;align-items:center;gap:10px}.platform-console .platform-page{max-width:1180px;margin:0 auto}.platform-operator-form{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 16px;align-items:center}.platform-operator-input{height:34px;padding:0 10px;border:1px solid var(--line, #e6e8ef);border-radius:8px;background:var(--panel, #fff);color:var(--text, #1f2430);font-size:13px;min-width:150px}.platform-operator-role{height:30px;border:1px solid var(--line, #e6e8ef);border-radius:8px;background:var(--panel, #fff);color:var(--text, #1f2430);font-size:12.5px;padding:0 6px}.platform-operator-status{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px}.platform-operator-status.is-active{background:color-mix(in srgb,var(--ok, #16a34a) 14%,transparent);color:var(--ok, #16a34a)}.platform-operator-status.is-off{background:color-mix(in srgb,var(--text-3, #98a0b3) 16%,transparent);color:var(--text-3, #98a0b3)}.platform-operator-actions{display:flex;gap:6px;flex-wrap:wrap}.platform-audit-detail{max-width:380px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-2)}.platform-filter-gap{width:1px;height:18px;background:var(--line, #e6e8ef);margin:0 6px}.platform-outreach-generate{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:4px 0 14px}.platform-outreach-suggestions{margin-bottom:14px}.platform-outreach-suggestions h4{margin:0 0 8px;font-size:13px;color:var(--text-2)}.platform-outreach-suggestion{display:flex;align-items:center;gap:12px;padding:8px 10px;border:1px solid var(--line, #e6e8ef);border-radius:10px;margin-bottom:6px;background:var(--surface-2, #f8fafc)}.platform-outreach-suggestion-head{display:flex;align-items:baseline;gap:8px;min-width:220px}.platform-outreach-suggestion-head b{font-size:13px;color:var(--text)}.platform-outreach-suggestion-reason{flex:1;font-size:12px;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.success-outreach-card{margin-top:12px}.custom-component-host{display:block;width:100%}.custom-component-frame{width:100%;min-height:120px}.custom-component-placeholder{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px dashed var(--line, #e6e8ef);border-radius:10px;background:var(--surface-2, #f8fafc);color:var(--text-2);font-size:12.5px}.custom-component-placeholder b{color:var(--text);font-size:13px}.custom-component-placeholder.is-incompatible{border-color:var(--warn-line, #e5b567);background:var(--warn-weak, #fff8ec)}.custom-component-error{display:block;margin-top:6px;font-size:12px;color:var(--danger, #dc2626)}.custom-component-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;align-items:start}.custom-component-form-actions{display:flex;gap:8px;grid-column:1 / -1}.custom-props-errors{grid-column:1 / -1;margin:4px 0 0;padding-left:18px;font-size:12px;color:var(--danger, #dc2626)}.custom-component-incompatible{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:999px;font-size:11px;color:var(--warn, #b45309);background:var(--warn-weak, #fff8ec)}.platform-tabs{margin-bottom:14px}.platform-query{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0 12px}.platform-query-input{height:32px;min-width:240px;padding:0 10px;border:1px solid var(--line, #e6e8ef);border-radius:8px;background:var(--panel, #fff);color:var(--text, #1f2430);font-size:13px;font-family:inherit}.platform-query-input:focus{outline:none;border-color:var(--brand, #5b6cf0)}.platform-query-count{font-size:12px;color:var(--text-3, #98a0b3);margin-left:auto}.platform-scroll{max-height:min(64vh,760px);overflow-y:auto;overflow-x:hidden;padding-right:6px}.platform-table-scroll{max-height:min(64vh,760px);overflow:auto;border:1px solid var(--line, #e6e8ef);border-radius:10px}.platform-table-scroll .platform-table th{position:sticky;top:0;z-index:1;background:var(--panel, #fff)}.sso-login-btn{border-color:color-mix(in srgb,var(--brand, #5b6cf0) 40%,transparent);color:var(--brand, #5b6cf0)}.sso-section{display:flex;flex-direction:column;gap:12px}.sso-banner{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border:1px solid var(--line, #e6e8ef);border-radius:10px;background:var(--surface-2, #f8fafc);font-size:12.5px;color:var(--text-2)}.sso-banner.is-on{border-color:color-mix(in srgb,var(--ok, #16a34a) 35%,transparent);background:color-mix(in srgb,var(--ok, #16a34a) 8%,transparent)}.sso-banner b{color:var(--text);font-size:13px}.sso-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;align-items:start}.sso-form .check-row,.sso-form .form-error,.sso-form .sso-actions,.sso-form .sso-test{grid-column:1 / -1}.sso-actions{display:flex;gap:8px;flex-wrap:wrap}.sso-test{font-size:12.5px;padding:8px 10px;border-radius:8px}.sso-test.ok{color:var(--ok, #16a34a);background:color-mix(in srgb,var(--ok, #16a34a) 10%,transparent)}.sso-test.fail{color:var(--danger, #dc2626);background:color-mix(in srgb,var(--danger, #dc2626) 10%,transparent)}.sso-endpoints{border:1px solid var(--line, #e6e8ef);border-radius:10px;padding:10px 12px}.sso-endpoints h4{margin:0 0 6px;font-size:13px}.sso-endpoints ul{margin:0;padding-left:18px;font-size:12.5px;color:var(--text-2);word-break:break-all}.sso-callback-error{display:flex;flex-direction:column;align-items:center;gap:8px;max-width:420px;text-align:center;font-size:13px}.sso-callback-error b{font-size:15px;color:var(--danger, #dc2626)}.sso-protocol-tabs{margin-bottom:8px}.sso-cert-field,.sso-cert-field textarea{grid-column:1 / -1;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.formula-field{display:flex;flex-direction:column;gap:4px}.formula-field>span{display:inline-flex;align-items:center;gap:6px}.formula-tag{font-size:11px;font-style:normal;font-weight:500;color:var(--brand, #5b6cf0);border:1px solid color-mix(in srgb,var(--brand, #5b6cf0) 35%,transparent);border-radius:4px;padding:0 4px;line-height:16px}.formula-value{display:block;padding:8px 10px;border:1px dashed var(--line);border-radius:8px;background:var(--panel);font-weight:600;min-height:18px}.schema-template-panel{margin-bottom:18px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.schema-template-panel .schema-section-head{margin-bottom:8px}.schema-template-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}.schema-template-card{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:8px}.plugin-status{display:inline-block;padding:1px 8px;border-radius:999px;font-size:12px;border:1px solid var(--line);color:var(--muted)}.plugin-status-draft{color:var(--muted)}.plugin-status-pending{color:#b45309;border-color:#f59e0b55;background:#f59e0b0f}.plugin-status-active{color:#047857;border-color:#10b98155;background:#10b9810f}.plugin-status-rejected{color:#b91c1c;border-color:#ef444455;background:#ef44440f}.plugin-sign-warn{margin-top:2px;font-size:11px;color:#b91c1c}.plugin-perm-hint{margin-top:2px;font-size:11px;color:#b45309}.quota-ai-usage{margin-top:24px}.quota-ai-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:12px}.quota-ai-card{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.quota-ai-card span{font-size:12px;color:var(--muted)}.quota-ai-card b{font-size:20px;line-height:1.2}.quota-ai-table{max-width:720px}.plugin-section{margin-bottom:18px}.plugin-section h3{margin:0 0 8px;font-size:14px}.plugin-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;align-items:start}.plugin-permissions,.plugin-source,.plugin-actions-row{grid-column:1 / -1}.plugin-permissions .check-row{display:inline-flex;margin-right:16px}.plugin-source textarea{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;line-height:1.6}.plugin-actions-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.plugin-sample{min-width:320px;margin-left:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.layout-history{display:inline-flex;align-items:center;gap:2px;padding:0 4px;border-left:1px solid var(--line);border-right:1px solid var(--line)}.layout-history .icon-btn:disabled{opacity:.35;cursor:not-allowed}.layout-library-filters{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.layout-library-search{width:100%;font-size:12px}.layout-library-categories{display:flex;flex-wrap:wrap;gap:4px}.layout-library-category{border:1px solid var(--line);border-radius:999px;background:var(--bg);color:var(--muted);font-size:11px;padding:2px 9px;cursor:pointer}.layout-library-category:hover{color:var(--brand-strong);border-color:var(--brand)}.layout-library-category.active{background:var(--brand);border-color:var(--brand);color:#fff}.layout-props-actions{display:flex;gap:8px;flex-wrap:wrap}.page-editor-dirty{margin-right:auto;color:var(--warn, #b45309);font-size:11.5px}.page-region.is-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:12px;row-gap:10px;align-content:start}.page-component-cell{min-width:0}.page-component-row{display:flex;flex-direction:column;gap:6px}.page-component-row.is-design{padding:6px;border:1px dashed var(--line-strong);border-radius:8px}.page-component-row-label{font-size:11px;color:var(--faint)}.page-component-row-body{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:12px;row-gap:10px;align-items:start}.layout-device{display:inline-flex;align-items:center;gap:2px;padding:2px;border:1px solid var(--line);border-radius:8px;background:var(--bg)}.layout-device-btn{border:0;border-radius:6px;background:transparent;color:var(--muted);font-size:11.5px;padding:3px 9px;cursor:pointer}.layout-device-btn.active{background:var(--brand);color:#fff}.layout-span-presets{display:flex;align-items:center;flex-wrap:wrap;gap:4px}.layout-span-input{width:64px}.layout-region-config-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:2px}.layout-region-config-head b{font-size:12px;color:var(--text)}.layout-region-order{display:inline-flex;gap:2px}.layout-region-add{display:flex;gap:8px;align-items:center}.layout-region-add .input{flex:1;min-width:0}.page-component-styled{box-sizing:border-box;min-width:0}.page-style-padding-none{padding:0}.page-style-padding-sm{padding:8px}.page-style-padding-md{padding:16px}.page-style-padding-lg{padding:24px}.page-style-margin-none{margin:0}.page-style-margin-sm{margin:8px 0}.page-style-margin-md{margin:16px 0}.page-style-margin-lg{margin:24px 0}.page-style-background-none{background:transparent}.page-style-background-panel{background:var(--panel)}.page-style-background-muted{background:var(--bg)}.page-style-background-brand{background:var(--brand-weak)}.page-style-background-danger{background:var(--danger-weak)}.page-style-border-none{border:0}.page-style-border-solid{border:1px solid var(--line)}.page-style-border-dashed{border:1px dashed var(--line-strong)}.page-style-radius-none{border-radius:0}.page-style-radius-sm{border-radius:6px}.page-style-radius-md{border-radius:10px}.page-style-radius-lg{border-radius:16px}.page-style-radius-full{border-radius:999px}.page-style-align-left{text-align:left}.page-style-align-center{text-align:center}.page-style-align-right{text-align:right}.page-style-height-auto{min-height:0}.page-style-height-sm{min-height:64px}.page-style-height-md{min-height:160px}.page-style-height-lg{min-height:320px}.page-list-title{margin:0 0 10px;font-size:15px;font-weight:600;color:var(--text)}.layout-props-group{border-top:1px solid var(--line);margin-top:12px;padding-top:10px}.layout-props-group:first-child{border-top:0;margin-top:0;padding-top:0}.layout-props-group-head{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0 0 8px;background:none;border:0;color:var(--text);font-size:12px;font-weight:600;cursor:pointer}.layout-props-group-head small{color:var(--faint);font-weight:400}.layout-props-group-body{display:grid;gap:8px}.layout-props-group-body .field{margin:0}.layout-props-checks{display:flex;flex-wrap:wrap;gap:10px}.layout-props-checks label{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--text)}.layout-props-warn{margin:0;color:var(--danger);font-size:11px;line-height:1.5}.layout-field-config{border:1px solid var(--line);border-radius:8px;padding:8px;display:grid;gap:8px;background:var(--surface-alt, transparent)}.layout-field-config-head{display:flex;align-items:center;gap:6px}.layout-field-config-head .input{flex:1;min-width:0}.layout-style-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.layout-style-grid .field{margin:0}.layout-props-group-head{list-style:none}.layout-props-group-head::-webkit-details-marker{display:none}.layout-props.has-issues{border-left:2px solid var(--danger);padding-left:8px}.layout-props-alert{border:1px solid var(--danger);border-radius:8px;background:var(--danger-weak);padding:8px 10px;margin-bottom:10px}.layout-props-alert b{display:block;font-size:12px;color:var(--danger-text, var(--danger));margin-bottom:2px}.publish-check-panel{border:1px solid var(--line);border-radius:10px;background:var(--panel);padding:10px 12px;margin:0 0 12px}.publish-check-panel.has-errors{border-color:var(--danger);background:var(--danger-weak)}.publish-check-panel>b{display:block;font-size:12px;margin-bottom:6px;color:var(--text)}.publish-check-list{margin:6px 0 0;padding-left:18px;font-size:12px;line-height:1.6}.publish-check-list.is-error{color:var(--danger-text, var(--danger))}.publish-check-list.is-warn{color:var(--muted)}.page-card.has-issue{border-color:var(--danger)}.page-card-issue{margin-left:auto;padding:1px 7px;border-radius:999px;background:var(--danger-weak);color:var(--danger-text, var(--danger));border:1px solid var(--danger-line, var(--danger));font-size:11px;white-space:nowrap}.schema-page-group-select{width:auto;min-width:112px}.page-group{margin-bottom:12px}.page-group-head{margin:8px 0 6px;font-size:12px;font-weight:600;color:var(--muted)}.page-card.is-dragging{opacity:.5;border-style:dashed}.page-card-title-input{flex:1;min-width:0;padding:2px 4px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--text);font-size:13px;font-weight:600}.page-card-title-input:hover{border-color:var(--line)}.page-card-title-input:focus{outline:none;border-color:var(--brand-line, var(--brand));background:var(--panel)}.page-card-actions .icon-btn:disabled{opacity:.35;cursor:not-allowed}.page-settings{margin:0 0 10px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-alt, transparent);display:grid;gap:8px}.page-settings .field{margin:0}.page-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.page-pad-none{padding:0}.page-pad-sm{padding:8px}.page-pad-md{padding:16px}.page-pad-lg{padding:24px}.page-bg-none{background:transparent}.page-bg-panel{background:var(--panel)}.page-bg-muted{background:var(--bg)}.page-bg-brand{background:var(--brand-weak)}.schema-template-info{min-width:0}.schema-template-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.schema-template-preview-panel{margin-top:10px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-alt, transparent)}.schema-template-preview-panel .schema-section-head h4{margin:0;font-size:13px}.schema-template-apply{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.schema-template-apply .field{margin:0;min-width:220px}.template-preview{margin:8px 0 10px}.template-preview-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:8px}.template-preview-region{min-width:0;padding:8px;border:1px dashed var(--line);border-radius:8px;background:var(--panel)}.template-preview-region-head{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:6px;font-size:12px;color:var(--muted)}.template-preview-region-head code{font-size:11px;opacity:.8}.template-preview-component{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px;padding:6px 8px;border:1px solid var(--line);border-radius:6px;background:var(--surface-alt, transparent);font-size:12px}.template-preview-component em{font-style:normal;color:var(--muted);font-size:11px;white-space:nowrap}.template-preview-empty{font-size:12px;color:var(--muted)}@media (max-width: 720px){.template-preview-region{grid-column:span 12!important}}.role-preview{margin:0 0 10px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-alt, transparent)}.role-preview-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.role-preview-bar .input{width:auto;min-width:140px}.role-preview-bar .hint{margin-left:auto}.role-preview-result{margin-top:8px;padding-top:8px;border-top:1px dashed var(--line);display:grid;gap:4px}.role-preview-summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px}.role-preview-verdict{padding:1px 8px;border-radius:999px;font-size:12px;border:1px solid var(--line)}.role-preview-verdict.is-allow{color:var(--ok);border-color:currentColor}.role-preview-verdict.is-deny{color:var(--danger);border-color:currentColor}.storage-stats{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:8px 12px;margin-bottom:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-alt, transparent);font-size:12px;color:var(--muted)}.storage-stats b{color:var(--text);font-size:14px}.storage-config{padding:10px 12px;margin-bottom:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.storage-config .field{margin:0 0 8px}.storage-file-name{display:inline-block;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.storage-path-style{margin-top:4px}.file-upload-field{display:block}.file-upload-current,.file-upload-empty{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.file-upload-name{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-value{display:inline-flex;align-items:center;gap:6px;min-width:0}.file-value-link{border:0;background:none;padding:0;color:var(--brand);cursor:pointer;text-align:left;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-value-link:hover{text-decoration:underline}.file-value-thumb{width:40px;height:40px;object-fit:cover;border-radius:6px;border:1px solid var(--line)}.file-value-list{display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}.file-upload-list{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-bottom:8px}.file-upload-list .file-value{flex-wrap:wrap}.file-value-deleted,.file-value-legacy{gap:6px}
