@charset "UTF-8";:root{--prx-brand-accent-light: #e33caf;--prx-brand-accent-dark: #f0005f;--prx-color-blue-50: #eff6ff;--prx-color-blue-100: #dbeafe;--prx-color-blue-200: #bfdbfe;--prx-color-blue-300: #93c5fd;--prx-color-blue-400: #60a5fa;--prx-color-blue-500: #3b82f6;--prx-color-blue-600: #2563eb;--prx-color-blue-700: #1d4ed8;--prx-color-blue-800: #1e40af;--prx-color-blue-900: #1e3a8a;--prx-color-grey-50: #f9fafb;--prx-color-grey-100: #f3f4f6;--prx-color-grey-200: #e5e7eb;--prx-color-grey-300: #d1d5db;--prx-color-grey-400: #9ca3af;--prx-color-grey-500: #6b7280;--prx-color-grey-600: #4b5563;--prx-color-grey-700: #374151;--prx-color-grey-800: #1f2937;--prx-color-grey-900: #111827;--prx-color-red-50: #fef2f2;--prx-color-red-100: #fee2e2;--prx-color-red-400: #f87171;--prx-color-red-500: #ef4444;--prx-color-red-600: #dc2626;--prx-color-red-700: #b91c1c;--prx-color-red-800: #991b1b;--prx-color-green-50: #f0fdf4;--prx-color-green-100: #dcfce7;--prx-color-green-500: #22c55e;--prx-color-green-600: #16a34a;--prx-color-green-700: #15803d;--prx-color-green-800: #166534;--prx-color-amber-50: #fffbeb;--prx-color-amber-100: #fef3c7;--prx-color-amber-500: #f59e0b;--prx-color-amber-600: #d97706;--prx-color-amber-700: #b45309;--prx-color-amber-800: #92400e;--prx-color-white: #ffffff;--prx-color-black: #000000}:root{--prx-space-0: 0;--prx-space-px: 1px;--prx-space-0-5: .125rem;--prx-space-1: .25rem;--prx-space-1-5: .375rem;--prx-space-2: .5rem;--prx-space-2-5: .625rem;--prx-space-3: .75rem;--prx-space-3-5: .875rem;--prx-space-4: 1rem;--prx-space-5: 1.25rem;--prx-space-6: 1.5rem;--prx-space-7: 1.75rem;--prx-space-8: 2rem;--prx-space-10: 2.5rem;--prx-space-12: 3rem;--prx-space-16: 4rem;--prx-space-20: 5rem;--prx-space-24: 6rem;--prx-radius-none: 0;--prx-radius-sm: .25rem;--prx-radius-md: .375rem;--prx-radius-lg: .5rem;--prx-radius-xl: .75rem;--prx-radius-2xl: 1rem;--prx-radius-full: 9999px;--prx-radius-control: 10px / 20px;--prx-form-element-height: 32px;--issue-number-min-width: 7ch}:root{--prx-font-family-sans: "Inter", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--prx-font-family-mono: "JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--prx-font-size-xs: .75rem;--prx-font-size-sm: .875rem;--prx-font-size-base: 1rem;--prx-font-size-md: 1.125rem;--prx-font-size-lg: 1.25rem;--prx-font-size-xl: 1.5rem;--prx-font-size-2xl: 1.875rem;--prx-font-size-3xl: 2.25rem;--prx-font-weight-normal: 400;--prx-font-weight-medium: 500;--prx-font-weight-semibold: 600;--prx-font-weight-bold: 700;--prx-line-height-none: 1;--prx-line-height-tight: 1.25;--prx-line-height-snug: 1.375;--prx-line-height-normal: 1.5;--prx-line-height-relaxed: 1.625;--prx-tracking-tight: -.025em;--prx-tracking-normal: 0em;--prx-tracking-wide: .025em;--prx-tracking-wider: .05em}:root{--prx-shadow-none: 0 0 #0000;--prx-shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .05);--prx-shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--prx-shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--prx-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--prx-shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--prx-shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25);--prx-z-base: 0;--prx-z-raised: 10;--prx-z-dropdown: 1000;--prx-z-sticky: 1100;--prx-z-overlay: 1200;--prx-z-modal: 1300;--prx-z-toast: 1400}:root{--prx-color-action: var(--prx-color-blue-600);--prx-color-action-hover: var(--prx-color-blue-700);--prx-color-action-active: var(--prx-color-blue-800);--prx-color-action-subtle: var(--prx-color-blue-50);--prx-color-action-muted: var(--prx-color-blue-100);--prx-color-danger: var(--prx-color-red-600);--prx-color-danger-hover: var(--prx-color-red-700);--prx-color-danger-subtle: var(--prx-color-red-50);--prx-color-danger-muted: var(--prx-color-red-100);--prx-color-success: var(--prx-color-green-600);--prx-color-success-subtle: var(--prx-color-green-50);--prx-color-success-muted: var(--prx-color-green-100);--prx-color-warning: var(--prx-color-amber-600);--prx-color-warning-subtle: var(--prx-color-amber-50);--prx-color-warning-muted: var(--prx-color-amber-100);--prx-color-text-primary: var(--prx-color-grey-900);--prx-color-text-secondary: var(--prx-color-grey-500);--prx-color-text-disabled: var(--prx-color-grey-400);--prx-color-text-inverse: var(--prx-color-white);--prx-color-text-action: var(--prx-color-blue-700);--prx-color-text-danger: var(--prx-color-red-800);--prx-color-text-success: var(--prx-color-green-800);--prx-color-text-warning: var(--prx-color-amber-800);--prx-color-surface: var(--prx-color-white);--prx-color-surface-raised: var(--prx-color-grey-50);--prx-color-surface-overlay: var(--prx-color-grey-100);--prx-color-border: var(--prx-color-grey-200);--prx-color-border-strong: var(--prx-color-grey-300);--prx-color-focus-ring: var(--prx-color-blue-500);--prx-font-family: var(--prx-font-family-sans);--prx-font-mono: var(--prx-font-family-mono)}@media(prefers-color-scheme:dark){:root:not(.prx-light){--prx-color-action: var(--prx-color-blue-400);--prx-color-action-hover: var(--prx-color-blue-300);--prx-color-action-active: var(--prx-color-blue-200);--prx-color-action-subtle: var(--prx-color-blue-900);--prx-color-action-muted: var(--prx-color-blue-800);--prx-color-danger: var(--prx-color-red-500);--prx-color-danger-hover: var(--prx-color-red-400);--prx-color-danger-subtle: var(--prx-color-red-800);--prx-color-danger-muted: var(--prx-color-red-700);--prx-color-success: var(--prx-color-green-500);--prx-color-success-subtle: var(--prx-color-green-800);--prx-color-success-muted: var(--prx-color-green-700);--prx-color-warning: var(--prx-color-amber-500);--prx-color-warning-subtle: var(--prx-color-amber-800);--prx-color-warning-muted: var(--prx-color-amber-700);--prx-color-text-primary: var(--prx-color-grey-50);--prx-color-text-secondary: var(--prx-color-grey-400);--prx-color-text-disabled: var(--prx-color-grey-600);--prx-color-text-inverse: var(--prx-color-grey-900);--prx-color-text-action: var(--prx-color-blue-400);--prx-color-text-danger: var(--prx-color-red-400);--prx-color-text-success: var(--prx-color-green-500);--prx-color-text-warning: var(--prx-color-amber-500);--prx-color-surface: var(--prx-color-grey-900);--prx-color-surface-raised: var(--prx-color-grey-800);--prx-color-surface-overlay: var(--prx-color-grey-700);--prx-color-border: var(--prx-color-grey-700);--prx-color-border-strong: var(--prx-color-grey-600);--prx-color-focus-ring: var(--prx-color-blue-400)}}:root.prx-dark{--prx-color-action: var(--prx-color-blue-400);--prx-color-action-hover: var(--prx-color-blue-300);--prx-color-action-active: var(--prx-color-blue-200);--prx-color-action-subtle: var(--prx-color-blue-900);--prx-color-action-muted: var(--prx-color-blue-800);--prx-color-danger: var(--prx-color-red-500);--prx-color-danger-hover: var(--prx-color-red-400);--prx-color-danger-subtle: var(--prx-color-red-800);--prx-color-danger-muted: var(--prx-color-red-700);--prx-color-success: var(--prx-color-green-500);--prx-color-success-subtle: var(--prx-color-green-800);--prx-color-success-muted: var(--prx-color-green-700);--prx-color-warning: var(--prx-color-amber-500);--prx-color-warning-subtle: var(--prx-color-amber-800);--prx-color-warning-muted: var(--prx-color-amber-700);--prx-color-text-primary: var(--prx-color-grey-50);--prx-color-text-secondary: var(--prx-color-grey-400);--prx-color-text-disabled: var(--prx-color-grey-600);--prx-color-text-inverse: var(--prx-color-grey-900);--prx-color-text-action: var(--prx-color-blue-400);--prx-color-text-danger: var(--prx-color-red-400);--prx-color-text-success: var(--prx-color-green-500);--prx-color-text-warning: var(--prx-color-amber-500);--prx-color-surface: var(--prx-color-grey-900);--prx-color-surface-raised: var(--prx-color-grey-800);--prx-color-surface-overlay: var(--prx-color-grey-700);--prx-color-border: var(--prx-color-grey-700);--prx-color-border-strong: var(--prx-color-grey-600);--prx-color-focus-ring: var(--prx-color-blue-400)}:root{--prx-input-padding-x: var(--prx-space-3);--prx-input-font-size: var(--prx-font-size-sm);--prx-input-color: var(--prx-color-text-primary);--prx-input-placeholder: var(--prx-color-text-disabled)}.prx-input{display:block;flex:1;min-width:0;width:100%;height:var(--prx-form-field-height);padding:0 var(--prx-input-padding-x);border:none;border-radius:inherit;background:transparent;color:var(--prx-input-color);font-family:var(--prx-font-family);font-size:var(--prx-input-font-size);line-height:var(--prx-line-height-none);outline:none;appearance:none}.prx-input::placeholder{color:var(--prx-input-placeholder)}.prx-input:disabled{cursor:not-allowed;opacity:.6}:root{--prx-textarea-padding-x: var(--prx-space-3);--prx-textarea-padding-y: var(--prx-space-2);--prx-textarea-font-size: var(--prx-font-size-sm);--prx-textarea-color: var(--prx-color-text-primary);--prx-textarea-placeholder: var(--prx-color-text-disabled);--prx-textarea-min-height: var(--prx-form-field-height)}.prx-textarea{display:block;flex:1;min-width:0;width:100%;min-height:var(--prx-textarea-min-height);padding:var(--prx-textarea-padding-y) var(--prx-textarea-padding-x);border:none;border-radius:inherit;background:transparent;color:var(--prx-textarea-color);font-family:var(--prx-font-family);font-size:var(--prx-textarea-font-size);line-height:var(--prx-line-height-normal);outline:none;resize:vertical;appearance:none}.prx-textarea::placeholder{color:var(--prx-textarea-placeholder)}.prx-textarea:disabled{cursor:not-allowed;opacity:.6;resize:none}:root{--prx-select-padding-x: var(--prx-space-3);--prx-select-font-size: var(--prx-font-size-sm);--prx-select-color: var(--prx-color-text-primary);--prx-select-arrow-color: var(--prx-color-text-secondary);--prx-select-arrow-size: 1rem}.prx-select-host{display:block;flex:1;min-width:0}.prx-select__trigger{display:flex;align-items:center;width:100%;height:var(--prx-form-field-height);padding:0 var(--prx-select-padding-x);border:none;border-radius:inherit;background:transparent;color:var(--prx-select-color);font-family:var(--prx-font-family);font-size:var(--prx-select-font-size);line-height:var(--prx-line-height-none);text-align:left;cursor:pointer;outline:none;gap:var(--prx-space-2)}.prx-select__trigger:disabled{cursor:not-allowed;opacity:.6}.prx-select__value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.prx-select__value--placeholder{color:var(--prx-color-text-disabled)}.prx-select__chevron{flex-shrink:0;width:var(--prx-select-arrow-size);height:var(--prx-select-arrow-size);background-color:var(--prx-select-arrow-color);mask-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill-rule='evenodd' d='M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z' clip-rule='evenodd'/%3e%3c/svg%3e");-webkit-mask-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill-rule='evenodd' d='M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z' clip-rule='evenodd'/%3e%3c/svg%3e");mask-repeat:no-repeat;mask-position:center;mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain;transition:transform .15s ease}.prx-select__trigger[aria-expanded=true] .prx-select__chevron{transform:rotate(180deg)}.prx-select__panel{display:flex;flex-direction:column;width:100%;padding:var(--prx-space-1) 0;background:var(--prx-color-surface);border:1px solid var(--prx-color-border);border-radius:var(--prx-radius-md);box-shadow:var(--prx-shadow-lg);max-height:16rem;overflow-y:auto;animation:prx-select-in .12s ease}@keyframes prx-select-in{0%{opacity:0;transform:scaleY(.96) translateY(-4px)}to{opacity:1;transform:scaleY(1) translateY(0)}}.prx-select__option{display:flex;align-items:center;width:100%;min-height:2.25rem;padding:0 var(--prx-select-padding-x);background:transparent;border:none;font-family:var(--prx-font-family);font-size:var(--prx-select-font-size);color:var(--prx-color-text-primary);text-align:left;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background 80ms ease}.prx-select__option:hover:not(:disabled),.prx-select__option.prx-select__option--active{background:var(--prx-color-surface-overlay);outline:none}.prx-select__option.prx-select__option--selected{color:var(--prx-color-action);font-weight:var(--prx-font-weight-medium)}.prx-select__option:disabled{opacity:.45;cursor:not-allowed}:root{--prx-badge-font-size: var(--prx-font-size-xs);--prx-badge-font-weight: var(--prx-font-weight-semibold);--prx-badge-size-sm: 1rem;--prx-badge-size-md: 1.25rem;--prx-badge-size-lg: 1.5rem;--prx-badge-min-width-sm: 1rem;--prx-badge-min-width-md: 1.25rem;--prx-badge-min-width-lg: 1.5rem;--prx-badge-offset: -.375rem}.prx-badge-host{position:relative}.prx-badge{position:absolute;top:var(--prx-badge-offset);right:var(--prx-badge-offset);display:inline-flex;align-items:center;justify-content:center;min-width:var(--prx-badge-min-width-md);height:var(--prx-badge-size-md);padding:0 var(--prx-space-1);border-radius:var(--prx-radius-full);font-family:var(--prx-font-family);font-size:var(--prx-badge-font-size);font-weight:var(--prx-badge-font-weight);line-height:1;white-space:nowrap;pointer-events:none;z-index:var(--prx-z-raised)}.prx-badge--sm{min-width:var(--prx-badge-min-width-sm);height:var(--prx-badge-size-sm);font-size:.625rem}.prx-badge--lg{min-width:var(--prx-badge-min-width-lg);height:var(--prx-badge-size-lg)}.prx-badge--primary{background:var(--prx-color-action);color:var(--prx-color-text-inverse)}.prx-badge--danger{background:var(--prx-color-danger);color:var(--prx-color-text-inverse)}.prx-badge--success{background:var(--prx-color-success);color:var(--prx-color-text-inverse)}.prx-badge--warning{background:var(--prx-color-warning);color:var(--prx-color-text-inverse)}.prx-badge--hidden{display:none}:root{--ff-white: #ffffff;--ff-black: #000000;--ff-gray-0: #ffffff;--ff-gray-25: #fcfcfc;--ff-gray-50: #f8f8f7;--ff-gray-75: #f2f2f0;--ff-gray-100: #e9e9e6;--ff-gray-150: #dcdcd7;--ff-gray-200: #c9c9c1;--ff-gray-300: #afafa5;--ff-gray-400: #8d8d81;--ff-gray-500: #69695f;--ff-gray-600: #505048;--ff-gray-700: #3c3c36;--ff-gray-800: #272722;--ff-gray-900: #1b1b18;--ff-gray-950: #141412;--ff-gray-1000: #0f0f0d;--ff-alpha-black-04: rgba(15, 15, 13, .04);--ff-alpha-black-06: rgba(15, 15, 13, .06);--ff-alpha-black-08: rgba(15, 15, 13, .08);--ff-alpha-black-10: rgba(15, 15, 13, .1);--ff-alpha-black-12: rgba(15, 15, 13, .12);--ff-alpha-black-15: rgba(15, 15, 13, .15);--ff-alpha-black-20: rgba(15, 15, 13, .2);--ff-alpha-black-30: rgba(15, 15, 13, .3);--ff-alpha-black-40: rgba(15, 15, 13, .4);--ff-alpha-black-60: rgba(15, 15, 13, .6);--ff-alpha-white-04: rgba(255, 255, 255, .04);--ff-alpha-white-06: rgba(255, 255, 255, .06);--ff-alpha-white-08: rgba(255, 255, 255, .08);--ff-alpha-white-10: rgba(255, 255, 255, .1);--ff-alpha-white-12: rgba(255, 255, 255, .12);--ff-alpha-white-15: rgba(255, 255, 255, .15);--ff-alpha-white-20: rgba(255, 255, 255, .2);--ff-alpha-white-30: rgba(255, 255, 255, .3);--ff-alpha-white-40: rgba(255, 255, 255, .4);--ff-alpha-white-60: rgba(255, 255, 255, .6);--ff-blue-100: #e8f2ff;--ff-blue-200: #bad8ff;--ff-blue-300: #7db7ff;--ff-blue-400: #4176ff;--ff-blue-500: #2759db;--ff-blue-600: #1b3f9e;--ff-green-100: #e7f7ef;--ff-green-300: #71c795;--ff-green-400: #2b9b5f;--ff-green-500: #1e7748;--ff-yellow-100: #fff5de;--ff-yellow-300: #e1b354;--ff-yellow-400: #bb8121;--ff-yellow-500: #916112;--ff-red-100: #feeceb;--ff-red-300: #e48d85;--ff-red-400: #c55245;--ff-red-500: #9e3a2f;--ff-radius-4: 4px;--ff-radius-6: 6px;--ff-radius-pill: 999px;--ff-font-family-sans: "Inter", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--ff-font-family-mono: ui-monospace, "SFMono-Regular", "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New", monospace;--ff-font-size-xs: 12px;--ff-font-size-sm: 14px;--ff-font-size-md: 16px;--ff-font-size-lg: 18px;--ff-shadow-1: 0 1px 2px rgba(15, 15, 13, .05), 0 8px 20px rgba(15, 15, 13, .04);--ff-shadow-2: 0 10px 28px rgba(15, 15, 13, .08), 0 3px 10px rgba(15, 15, 13, .05);--ff-shadow-3: 0 18px 48px rgba(15, 15, 13, .12), 0 6px 16px rgba(15, 15, 13, .08)}:root{--ff-color-surface-page: var(--ff-gray-25);--ff-color-surface-canvas: var(--ff-gray-25);--ff-color-surface-card: var(--ff-white);--ff-color-surface-group: rgba(65, 118, 255, .14);--ff-color-surface-group-active: rgba(65, 118, 255, .2);--ff-color-surface-muted: var(--ff-gray-50);--ff-color-surface-soft: var(--ff-gray-75);--ff-color-surface-accent-soft: rgba(65, 118, 255, .1);--ff-color-border-default: var(--ff-alpha-black-12);--ff-color-border-subtle: var(--ff-alpha-black-08);--ff-color-border-strong: var(--ff-alpha-black-20);--ff-color-border-accent: var(--ff-blue-500);--ff-color-text-primary: var(--ff-gray-800);--ff-color-text-secondary: var(--ff-gray-500);--ff-color-text-tertiary: var(--ff-gray-400);--ff-color-text-inverse: var(--ff-white);--ff-color-accent: var(--ff-blue-500);--ff-color-accent-strong: var(--ff-blue-600);--ff-color-success: var(--ff-green-400);--ff-color-warning: var(--ff-yellow-400);--ff-color-danger: var(--ff-red-400);--ff-color-disabled-surface: var(--ff-gray-100);--ff-color-disabled-border: var(--ff-alpha-black-10);--ff-color-disabled-text: var(--ff-gray-300);--ff-color-selection-fill: rgba(65, 118, 255, .12);--ff-color-selection-stroke: rgba(65, 118, 255, .28);--ff-color-grid: var(--ff-alpha-black-08);--ff-color-grid-strong: var(--ff-alpha-black-15);--ff-color-connector-connected: var(--ff-blue-500);--ff-color-connection: var(--ff-gray-600);--ff-color-connection-muted: var(--ff-gray-300);--ff-color-connection-hover: var(--ff-alpha-black-12);--ff-color-grouping-drop-target-border: var(--ff-gray-800);--ff-color-grouping-drop-target-border-active: var(--ff-gray-800);--ff-color-waypoint-fill: var(--ff-white);--ff-color-waypoint-stroke: var(--ff-blue-500);--ff-color-waypoint-candidate-fill: var(--ff-white);--ff-color-waypoint-candidate-stroke: var(--ff-green-400);--ff-color-minimap-surface: var(--ff-white);--ff-color-minimap-node: var(--ff-gray-700);--ff-color-minimap-view: rgba(65, 118, 255, .14);--ff-color-magnetic-line: var(--ff-blue-500);--ff-color-magnetic-rect-fill: rgba(65, 118, 255, .08);--ff-color-magnetic-rect-border: rgba(65, 118, 255, .24);--ff-radius-node: var(--ff-radius-4);--ff-radius-group: var(--ff-radius-4);--ff-radius-control: var(--ff-radius-4);--ff-radius-socket-square: var(--ff-radius-6);--ff-radius-pill: var(--ff-radius-pill);--ff-font-sans: var(--ff-font-family-sans);--ff-font-mono: var(--ff-font-family-mono);--ff-font-size-body: var(--ff-font-size-sm);--ff-font-size-label: var(--ff-font-size-xs);--ff-shadow-surface: var(--ff-shadow-1);--ff-shadow-floating: var(--ff-shadow-2)}.dark,[data-theme=dark]{--ff-color-surface-page: var(--ff-gray-1000);--ff-color-surface-canvas: var(--ff-gray-1000);--ff-color-surface-card: var(--ff-gray-950);--ff-color-surface-group: rgba(125, 183, 255, .18);--ff-color-surface-group-active: rgba(125, 183, 255, .24);--ff-color-surface-muted: var(--ff-gray-900);--ff-color-surface-soft: var(--ff-gray-900);--ff-color-surface-accent-soft: rgba(125, 183, 255, .14);--ff-color-border-default: var(--ff-alpha-white-12);--ff-color-border-subtle: var(--ff-alpha-white-08);--ff-color-border-strong: var(--ff-alpha-white-20);--ff-color-border-accent: var(--ff-blue-300);--ff-color-text-primary: var(--ff-gray-100);--ff-color-text-secondary: var(--ff-gray-300);--ff-color-text-tertiary: var(--ff-gray-400);--ff-color-text-inverse: var(--ff-gray-1000);--ff-color-accent: var(--ff-blue-300);--ff-color-accent-strong: var(--ff-blue-200);--ff-color-success: var(--ff-green-300);--ff-color-warning: var(--ff-yellow-300);--ff-color-danger: var(--ff-red-300);--ff-color-disabled-surface: var(--ff-gray-800);--ff-color-disabled-border: var(--ff-alpha-white-10);--ff-color-disabled-text: var(--ff-gray-500);--ff-color-selection-fill: rgba(125, 183, 255, .16);--ff-color-selection-stroke: rgba(125, 183, 255, .34);--ff-color-grid: var(--ff-alpha-white-08);--ff-color-grid-strong: var(--ff-alpha-white-15);--ff-color-connector-connected: var(--ff-blue-300);--ff-color-connection: var(--ff-gray-200);--ff-color-connection-muted: var(--ff-gray-500);--ff-color-connection-hover: var(--ff-alpha-white-12);--ff-color-grouping-drop-target-border: var(--ff-gray-100);--ff-color-grouping-drop-target-border-active: var(--ff-gray-100);--ff-color-waypoint-fill: var(--ff-gray-950);--ff-color-waypoint-stroke: var(--ff-blue-300);--ff-color-waypoint-candidate-fill: var(--ff-white);--ff-color-waypoint-candidate-stroke: var(--ff-green-300);--ff-color-minimap-surface: var(--ff-gray-950);--ff-color-minimap-node: var(--ff-gray-200);--ff-color-minimap-view: rgba(125, 183, 255, .18);--ff-color-magnetic-line: var(--ff-blue-300);--ff-color-magnetic-rect-fill: rgba(125, 183, 255, .1);--ff-color-magnetic-rect-border: rgba(125, 183, 255, .24);--ff-shadow-surface: 0 1px 2px rgba(0, 0, 0, .28), 0 8px 20px rgba(0, 0, 0, .14);--ff-shadow-floating: 0 14px 36px rgba(0, 0, 0, .26), 0 4px 12px rgba(0, 0, 0, .16)}:root{--ff-flow-background-color: var(--ff-color-surface-page);--ff-flow-text-color: var(--ff-color-text-primary);--ff-flow-font-family: var(--ff-font-sans);--ff-flow-font-size: var(--ff-font-size-body);--ff-canvas-background-color: var(--ff-color-surface-canvas);--ff-node-background-color: var(--ff-color-surface-card);--ff-node-background-color-inverse: var(--ff-color-text-primary);--ff-node-border-color: var(--ff-color-border-default);--ff-node-border-color-selected: var(--ff-color-border-accent);--ff-node-color: var(--ff-color-text-primary);--ff-node-border-radius: var(--ff-radius-node);--ff-node-shadow: var(--ff-shadow-surface);--ff-node-shadow-selected: var(--ff-shadow-floating);--ff-node-width: 120px;--ff-node-min-height: 56px;--ff-node-padding: 24px;--ff-group-background-color: var(--ff-color-surface-group);--ff-group-background-color-active: var(--ff-color-surface-group-active);--ff-group-border-color: var(--ff-color-border-subtle);--ff-group-border-color-selected: var(--ff-color-border-accent);--ff-group-border-color-active: var(--ff-color-border-accent);--ff-group-color: var(--ff-color-text-secondary);--ff-group-border-radius: var(--ff-radius-group);--ff-group-min-width: 180px;--ff-group-min-height: 120px;--ff-group-padding: 24px;--ff-grouping-drop-target-border-color: var(--ff-color-grouping-drop-target-border);--ff-grouping-drop-target-border-style: dashed;--ff-grouping-drop-target-border-width: 1px;--ff-grouping-drop-target-border-color-active: var( --ff-color-grouping-drop-target-border-active );--ff-grouping-drop-target-border-style-active: dashed;--ff-grouping-drop-target-border-width-active: 2px;--ff-resize-handle-size: 8px;--ff-resize-handle-fill: var(--ff-color-accent);--ff-resize-handle-stroke: var(--ff-color-surface-card);--ff-resize-handle-ring: var(--ff-color-accent);--ff-resize-handle-radius: 1px;--ff-resize-handle-fill-active: var(--ff-color-surface-card);--ff-rotate-handle-size: 16px;--ff-rotate-handle-offset: 40px;--ff-rotate-handle-background-color: var(--ff-color-surface-card);--ff-rotate-handle-border-color: var(--ff-color-border-strong);--ff-rotate-handle-guide-color: var(--ff-color-border-strong);--ff-connector-background-color: var(--ff-color-surface-card);--ff-connector-border-color: var(--ff-color-text-secondary);--ff-connector-connected-color: var(--ff-color-connector-connected);--ff-connector-accent-color: var(--ff-color-accent);--ff-connector-disabled-color: var(--ff-color-disabled-surface);--ff-connector-disabled-border-color: var(--ff-color-disabled-border);--ff-connector-size: 14px;--ff-connector-border-width: 2px;--ff-connector-input-radius: var(--ff-radius-4);--ff-connector-node-ring-color: var(--ff-canvas-background-color);--ff-outlet-background-color: var(--ff-color-surface-muted);--ff-outlet-border-color: var(--ff-color-border-default);--ff-outlet-color: var(--ff-color-accent);--ff-outlet-disabled-background-color: var(--ff-color-disabled-surface);--ff-outlet-disabled-border-color: var(--ff-color-disabled-border);--ff-outlet-disabled-color: var(--ff-color-disabled-text);--ff-outlet-border-radius: var(--ff-radius-pill);--ff-outlet-padding-y: 6px;--ff-outlet-padding-x: 12px;--ff-connection-color: var(--ff-color-connection);--ff-snap-connection-color: var(--ff-color-connection-muted);--ff-connection-hover-color: var(--ff-color-connection-hover);--ff-connection-selected-color: var(--ff-color-accent);--ff-connection-label-color: var(--ff-color-text-secondary);--ff-connection-content-color: var(--ff-node-color);--ff-connection-content-background-color: var(--ff-node-background-color);--ff-connection-content-border-color: var(--ff-node-border-color);--ff-connection-content-border-color-selected: var(--ff-connection-selected-color);--ff-connection-content-border-radius: var(--ff-node-border-radius);--ff-connection-content-font-size: 13px;--ff-connection-content-padding-y: 2px;--ff-connection-content-padding-x: 8px;--ff-connection-width: 2px;--ff-connection-hit-width: 14px;--ff-connection-drag-handle-fill: var(--ff-color-surface-card);--ff-connection-drag-handle-stroke: var(--ff-color-accent);--ff-marker-color: var(--ff-connection-color);--ff-waypoint-fill: var(--ff-color-waypoint-fill);--ff-waypoint-stroke: var(--ff-color-waypoint-stroke);--ff-waypoint-candidate-fill: var(--ff-color-waypoint-candidate-fill);--ff-waypoint-candidate-stroke: var(--ff-color-waypoint-candidate-stroke);--ff-background-line-color: var(--ff-color-grid);--ff-background-dot-color: var(--ff-color-grid-strong);--ff-selection-area-color: var(--ff-color-selection-fill);--ff-selection-area-border-color: var(--ff-color-selection-stroke);--ff-minimap-background-color: var(--ff-color-minimap-surface);--ff-minimap-border-color: var(--ff-color-border-default);--ff-minimap-node-color: var(--ff-color-minimap-node);--ff-minimap-node-selected-color: var(--ff-color-accent);--ff-minimap-view-color: var(--ff-color-minimap-view);--ff-minimap-view-border-color: var(--ff-color-selection-stroke);--ff-minimap-border-radius: var(--ff-radius-node);--ff-minimap-shadow: var(--ff-shadow-floating);--ff-magnetic-line-color: var(--ff-color-magnetic-line);--ff-magnetic-rect-fill: var(--ff-color-magnetic-rect-fill);--ff-magnetic-rect-border-color: var(--ff-color-magnetic-rect-border);--ff-external-item-background-color: var(--ff-color-surface-card);--ff-external-item-border-color: var(--ff-color-border-default);--ff-external-item-color: var(--ff-color-text-primary);--ff-external-item-disabled-color: var(--ff-color-disabled-text);--ff-external-item-disabled-background-color: var(--ff-color-disabled-surface);--ff-external-item-border-radius: var(--ff-radius-node);--ff-external-item-shadow: var(--ff-shadow-surface);--ff-external-item-preview-shadow: var(--ff-shadow-floating);--ff-external-item-placeholder-background-color: var(--ff-color-surface-soft);--ff-external-item-placeholder-border-color: var(--ff-color-border-subtle)}f-flow,.f-flow{display:block;position:relative;width:100%;height:100%;overflow:hidden;pointer-events:all;-webkit-user-select:none;user-select:none;touch-action:none;color:var(--ff-flow-text-color);background:var(--ff-flow-background-color);font-family:var(--ff-flow-font-family);font-size:var(--ff-flow-font-size);line-height:1.4}f-flow .f-canvas,.f-flow .f-canvas{background:var(--ff-canvas-background-color)}f-flow .f-node,.f-flow .f-node{width:var(--ff-node-width);min-height:var(--ff-node-min-height);padding:var(--ff-node-padding);box-sizing:border-box;color:var(--ff-node-color);text-align:center;background:var(--ff-node-background-color);border:1px solid var(--ff-node-border-color);border-radius:var(--ff-node-border-radius);box-shadow:var(--ff-node-shadow)}f-flow .f-node .node-content,.f-flow .f-node .node-content{width:100%;height:100%;overflow:hidden}f-flow .f-node.f-selected,.f-flow .f-node.f-selected{border-color:var(--ff-node-border-color-selected);box-shadow:var(--ff-node-shadow-selected)}f-flow .f-node.f-dragging,.f-flow .f-node.f-dragging{box-shadow:var(--ff-node-shadow-selected)}f-flow .f-group,.f-flow .f-group{min-width:var(--ff-group-min-width);min-height:var(--ff-group-min-height);padding:var(--ff-group-padding);box-sizing:border-box;color:var(--ff-group-color);background:var(--ff-group-background-color);border:1px solid var(--ff-group-border-color);border-radius:var(--ff-group-border-radius)}f-flow .f-group.f-selected,.f-flow .f-group.f-selected{border-color:var(--ff-group-border-color-selected)}f-flow .f-drag-handle,.f-flow .f-drag-handle{cursor:move}f-flow .f-drag-handle img,.f-flow .f-drag-handle img{pointer-events:none}f-flow .f-resize-handle,.f-flow .f-resize-handle{position:absolute;width:var(--ff-resize-handle-size);height:var(--ff-resize-handle-size);box-sizing:border-box;border:1.5px solid var(--ff-resize-handle-stroke);border-radius:var(--ff-resize-handle-radius);background:var(--ff-resize-handle-fill);box-shadow:0 0 0 1px var(--ff-resize-handle-ring),0 1px 2px #0f0f0d2e;transition:background-color .15s cubic-bezier(.4,0,.2,1),box-shadow .15s cubic-bezier(.4,0,.2,1)}f-flow .f-resize-handle:hover,.f-flow .f-resize-handle:hover{box-shadow:0 0 0 1px var(--ff-resize-handle-ring),0 0 0 5px color-mix(in oklch,var(--ff-resize-handle-ring) 25%,transparent)}f-flow .f-resize-handle:active,.f-flow .f-resize-handle:active{background:var(--ff-resize-handle-fill-active);box-shadow:0 0 0 2px var(--ff-resize-handle-ring),0 0 0 6px color-mix(in oklch,var(--ff-resize-handle-ring) 28%,transparent)}f-flow .f-resize-handle.f-resize-handle-left,.f-flow .f-resize-handle.f-resize-handle-left{left:0;top:50%;transform:translate(-50%,-50%);cursor:col-resize}f-flow .f-resize-handle.f-resize-handle-left-top,.f-flow .f-resize-handle.f-resize-handle-left-top{left:0;top:0;transform:translate(-50%,-50%);cursor:nwse-resize}f-flow .f-resize-handle.f-resize-handle-top,.f-flow .f-resize-handle.f-resize-handle-top{left:50%;top:0;transform:translate(-50%,-50%);cursor:row-resize}f-flow .f-resize-handle.f-resize-handle-right-top,.f-flow .f-resize-handle.f-resize-handle-right-top{right:0;top:0;transform:translate(50%,-50%);cursor:nesw-resize}f-flow .f-resize-handle.f-resize-handle-right,.f-flow .f-resize-handle.f-resize-handle-right{right:0;top:50%;transform:translate(50%,-50%);cursor:col-resize}f-flow .f-resize-handle.f-resize-handle-right-bottom,.f-flow .f-resize-handle.f-resize-handle-right-bottom{right:0;bottom:0;transform:translate(50%,50%);cursor:nwse-resize}f-flow .f-resize-handle.f-resize-handle-bottom,.f-flow .f-resize-handle.f-resize-handle-bottom{left:50%;bottom:0;transform:translate(-50%,50%);cursor:row-resize}f-flow .f-resize-handle.f-resize-handle-left-bottom,.f-flow .f-resize-handle.f-resize-handle-left-bottom{left:0;bottom:0;transform:translate(-50%,50%);cursor:nesw-resize}f-flow .f-rotate-handle,.f-flow .f-rotate-handle{position:absolute;left:50%;top:calc(var(--ff-rotate-handle-offset) * -1);display:inline-flex;align-items:center;justify-content:center;width:var(--ff-rotate-handle-size);height:var(--ff-rotate-handle-size);box-sizing:border-box;border:1px solid var(--ff-rotate-handle-border-color);border-radius:50%;background:var(--ff-rotate-handle-background-color);transform:translate(-50%);cursor:grab;transition:background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1),box-shadow .15s cubic-bezier(.4,0,.2,1)}f-flow .f-rotate-handle:after,.f-flow .f-rotate-handle:after{content:"";position:absolute;left:50%;top:100%;width:1px;height:calc(var(--ff-rotate-handle-offset) - var(--ff-rotate-handle-size));background:var(--ff-rotate-handle-guide-color);transform:translate(-50%);pointer-events:none}f-flow .f-rotate-handle:hover,.f-flow .f-rotate-handle:hover{border-color:var(--ff-color-accent);box-shadow:0 0 0 4px color-mix(in oklch,var(--ff-color-accent) 22%,transparent)}f-flow .f-rotate-handle:active,.f-flow .f-rotate-handle:active{background:var(--ff-color-accent);border-color:var(--ff-color-accent);cursor:grabbing;box-shadow:0 0 0 4px color-mix(in oklch,var(--ff-color-accent) 22%,transparent)}f-flow .f-node-input:not(.f-node),f-flow .f-node-output:not(.f-node),.f-flow .f-node-input:not(.f-node),.f-flow .f-node-output:not(.f-node){position:absolute;width:var(--ff-connector-size);height:var(--ff-connector-size);box-sizing:border-box;border:var(--ff-connector-border-width) solid var(--ff-connector-border-color);border-radius:50%;background:var(--ff-connector-background-color);pointer-events:all;transition:background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1),box-shadow .15s cubic-bezier(.4,0,.2,1)}f-flow .f-node-input:not(.f-node).left,f-flow .f-node-output:not(.f-node).left,.f-flow .f-node-input:not(.f-node).left,.f-flow .f-node-output:not(.f-node).left{left:calc(var(--ff-connector-size) / -2);top:50%;transform:translateY(-50%)}f-flow .f-node-input:not(.f-node).right,f-flow .f-node-output:not(.f-node).right,.f-flow .f-node-input:not(.f-node).right,.f-flow .f-node-output:not(.f-node).right{right:calc(var(--ff-connector-size) / -2);top:50%;transform:translateY(-50%)}f-flow .f-node-input:not(.f-node).top,f-flow .f-node-output:not(.f-node).top,.f-flow .f-node-input:not(.f-node).top,.f-flow .f-node-output:not(.f-node).top{top:calc(var(--ff-connector-size) / -2);left:50%;transform:translate(-50%)}f-flow .f-node-input:not(.f-node).top-left,f-flow .f-node-output:not(.f-node).top-left,.f-flow .f-node-input:not(.f-node).top-left,.f-flow .f-node-output:not(.f-node).top-left{top:calc(var(--ff-connector-size) / -2);left:calc(var(--ff-connector-size) / -2)}f-flow .f-node-input:not(.f-node).top-right,f-flow .f-node-output:not(.f-node).top-right,.f-flow .f-node-input:not(.f-node).top-right,.f-flow .f-node-output:not(.f-node).top-right{top:calc(var(--ff-connector-size) / -2);right:calc(var(--ff-connector-size) / -2)}f-flow .f-node-input:not(.f-node).bottom,f-flow .f-node-output:not(.f-node).bottom,.f-flow .f-node-input:not(.f-node).bottom,.f-flow .f-node-output:not(.f-node).bottom{bottom:calc(var(--ff-connector-size) / -2);left:50%;transform:translate(-50%)}f-flow .f-node-input:not(.f-node).bottom-left,f-flow .f-node-output:not(.f-node).bottom-left,.f-flow .f-node-input:not(.f-node).bottom-left,.f-flow .f-node-output:not(.f-node).bottom-left{bottom:calc(var(--ff-connector-size) / -2);left:calc(var(--ff-connector-size) / -2)}f-flow .f-node-input:not(.f-node).bottom-right,f-flow .f-node-output:not(.f-node).bottom-right,.f-flow .f-node-input:not(.f-node).bottom-right,.f-flow .f-node-output:not(.f-node).bottom-right{bottom:calc(var(--ff-connector-size) / -2);right:calc(var(--ff-connector-size) / -2)}f-flow .f-node-input:not(.f-node):hover,f-flow .f-node-output:not(.f-node):hover,.f-flow .f-node-input:not(.f-node):hover,.f-flow .f-node-output:not(.f-node):hover{box-shadow:0 0 0 4px color-mix(in oklch,var(--ff-connector-accent-color) 22%,transparent)}f-flow .f-node-input:not(.f-node).f-connector-connectable,f-flow .f-node-output:not(.f-node).f-connector-connectable,.f-flow .f-node-input:not(.f-node).f-connector-connectable,.f-flow .f-node-output:not(.f-node).f-connector-connectable{border-color:var(--ff-connector-accent-color)}f-flow .f-node-input:not(.f-node).f-node-output-connected,f-flow .f-node-input:not(.f-node).f-node-input-connected,f-flow .f-node-output:not(.f-node).f-node-output-connected,f-flow .f-node-output:not(.f-node).f-node-input-connected,.f-flow .f-node-input:not(.f-node).f-node-output-connected,.f-flow .f-node-input:not(.f-node).f-node-input-connected,.f-flow .f-node-output:not(.f-node).f-node-output-connected,.f-flow .f-node-output:not(.f-node).f-node-input-connected{background:var(--ff-connector-connected-color);border-color:var(--ff-connector-connected-color)}f-flow .f-node-input:not(.f-node).f-node-output-not-connectable,f-flow .f-node-input:not(.f-node).f-node-input-not-connectable,f-flow .f-node-input:not(.f-node).f-node-input-disabled,f-flow .f-node-input:not(.f-node).f-node-output-disabled,f-flow .f-node-output:not(.f-node).f-node-output-not-connectable,f-flow .f-node-output:not(.f-node).f-node-input-not-connectable,f-flow .f-node-output:not(.f-node).f-node-input-disabled,f-flow .f-node-output:not(.f-node).f-node-output-disabled,.f-flow .f-node-input:not(.f-node).f-node-output-not-connectable,.f-flow .f-node-input:not(.f-node).f-node-input-not-connectable,.f-flow .f-node-input:not(.f-node).f-node-input-disabled,.f-flow .f-node-input:not(.f-node).f-node-output-disabled,.f-flow .f-node-output:not(.f-node).f-node-output-not-connectable,.f-flow .f-node-output:not(.f-node).f-node-input-not-connectable,.f-flow .f-node-output:not(.f-node).f-node-input-disabled,.f-flow .f-node-output:not(.f-node).f-node-output-disabled{background:var(--ff-connector-disabled-color);border-color:var(--ff-connector-disabled-border-color);box-shadow:none}f-flow .f-node-input:not(.f-node),.f-flow .f-node-input:not(.f-node){border-radius:var(--ff-connector-input-radius)}f-flow .f-connections-dragging .f-node-input:not(.f-connector-connectable):not(.f-node-input-connected):not(.f-node-output-connected),f-flow .f-connections-dragging .f-node-output:not(.f-connector-connectable):not(.f-node-input-connected):not(.f-node-output-connected),.f-flow .f-connections-dragging .f-node-input:not(.f-connector-connectable):not(.f-node-input-connected):not(.f-node-output-connected),.f-flow .f-connections-dragging .f-node-output:not(.f-connector-connectable):not(.f-node-input-connected):not(.f-node-output-connected){border-color:var(--ff-connector-disabled-border-color)}f-flow .f-node-outlet,.f-flow .f-node-outlet{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:32px;padding:var(--ff-outlet-padding-y) var(--ff-outlet-padding-x);box-sizing:border-box;border:1px solid var(--ff-outlet-border-color);border-radius:var(--ff-outlet-border-radius);background:var(--ff-outlet-background-color);color:var(--ff-outlet-color);pointer-events:all}f-flow .f-node-outlet.f-node-outlet-disabled,.f-flow .f-node-outlet.f-node-outlet-disabled{background:var(--ff-outlet-disabled-background-color);border-color:var(--ff-outlet-disabled-border-color);color:var(--ff-outlet-disabled-color)}f-flow .f-connection-content,.f-flow .f-connection-content{box-sizing:border-box;color:var(--ff-connection-content-color);font-size:var(--ff-connection-content-font-size);padding:var(--ff-connection-content-padding-y) var(--ff-connection-content-padding-x);background:var(--ff-connection-content-background-color);border:1px solid var(--ff-connection-content-border-color);border-radius:var(--ff-connection-content-border-radius)}f-flow .f-connection .f-connection-selection,.f-flow .f-connection .f-connection-selection{fill:none;stroke:transparent;stroke-width:var(--ff-connection-hit-width)}f-flow .f-connection .f-connection-path,.f-flow .f-connection .f-connection-path{fill:none;stroke:var(--ff-connection-color);stroke-width:var(--ff-connection-width)}f-flow .f-connection .f-connection-drag-handle,.f-flow .f-connection .f-connection-drag-handle{fill:transparent;stroke:transparent;cursor:move}f-flow .f-connection.f-snap-connection .f-connection-path,.f-flow .f-connection.f-snap-connection .f-connection-path{stroke:var(--ff-snap-connection-color);stroke-dasharray:8 4}f-flow .f-connection.f-selected .f-connection-content,.f-flow .f-connection.f-selected .f-connection-content{border-color:var(--ff-connection-content-border-color-selected)}f-flow .f-connection.f-selected .f-connection-path,.f-flow .f-connection.f-selected .f-connection-path{stroke:var(--ff-connection-selected-color)}f-flow:not(.f-dragging) .f-connection:not(.f-dragging):not(.f-selected):not(.f-connection-selection-disabled):hover .f-connection-selection,.f-flow:not(.f-dragging) .f-connection:not(.f-dragging):not(.f-selected):not(.f-connection-selection-disabled):hover .f-connection-selection{stroke:var(--ff-connection-hover-color)}f-flow .f-marker,f-flow .connection-marker,.f-flow .f-marker,.f-flow .connection-marker{color:var(--ff-marker-color)}f-flow .f-marker circle,f-flow .f-marker rect,f-flow .f-marker path,f-flow .f-marker polygon,f-flow .f-marker line,f-flow .connection-marker circle,f-flow .connection-marker rect,f-flow .connection-marker path,f-flow .connection-marker polygon,f-flow .connection-marker line,.f-flow .f-marker circle,.f-flow .f-marker rect,.f-flow .f-marker path,.f-flow .f-marker polygon,.f-flow .f-marker line,.f-flow .connection-marker circle,.f-flow .connection-marker rect,.f-flow .connection-marker path,.f-flow .connection-marker polygon,.f-flow .connection-marker line{fill:currentColor;stroke:currentColor}f-flow .f-connection.f-snap-connection .f-marker,f-flow .f-connection.f-snap-connection .connection-marker,.f-flow .f-connection.f-snap-connection .f-marker,.f-flow .f-connection.f-snap-connection .connection-marker{color:var(--ff-snap-connection-color)}f-flow .f-connection.f-selected .f-marker,f-flow .f-connection.f-selected .connection-marker,.f-flow .f-connection.f-selected .f-marker,.f-flow .f-connection.f-selected .connection-marker{color:var(--ff-connection-selected-color)}f-flow .f-connection .f-connection-waypoints .f-candidate,f-flow .f-connection .f-connection-waypoints .f-waypoint,.f-flow .f-connection .f-connection-waypoints .f-candidate,.f-flow .f-connection .f-connection-waypoints .f-waypoint{vector-effect:non-scaling-stroke;transform-box:fill-box;transform-origin:center;stroke-width:1.5}f-flow .f-connection .f-connection-waypoints .f-candidate:hover,f-flow .f-connection .f-connection-waypoints .f-waypoint:hover,.f-flow .f-connection .f-connection-waypoints .f-candidate:hover,.f-flow .f-connection .f-connection-waypoints .f-waypoint:hover{transform:scale(1.1)}f-flow .f-connection .f-connection-waypoints .f-candidate,.f-flow .f-connection .f-connection-waypoints .f-candidate{fill:var(--ff-waypoint-candidate-fill);stroke:var(--ff-waypoint-candidate-stroke)}f-flow .f-connection .f-connection-waypoints .f-waypoint,.f-flow .f-connection .f-connection-waypoints .f-waypoint{fill:var(--ff-waypoint-fill);stroke:var(--ff-waypoint-stroke);cursor:move}f-flow .f-connection .f-connection-drag-handle,.f-flow .f-connection .f-connection-drag-handle{fill:transparent;stroke:var(--ff-connection-drag-handle-stroke);stroke-width:1.5}.f-external-item{display:inline-flex;align-items:center;gap:8px;padding:12px 14px;box-sizing:border-box;color:var(--ff-external-item-color);background:var(--ff-external-item-background-color);border:1px solid var(--ff-external-item-border-color);border-radius:var(--ff-external-item-border-radius);box-shadow:var(--ff-external-item-shadow);cursor:grab;-webkit-user-select:none;user-select:none}.f-external-item.f-external-item-disabled{color:var(--ff-external-item-disabled-color);background:var(--ff-external-item-disabled-background-color);cursor:not-allowed}.f-external-item-preview{box-sizing:border-box;box-shadow:var(--ff-external-item-preview-shadow)}.f-external-item-placeholder{box-sizing:border-box;background:var(--ff-external-item-placeholder-background-color);border:1px dashed var(--ff-external-item-placeholder-border-color);border-radius:var(--ff-external-item-border-radius)}f-flow .f-background line,f-flow .f-background path,.f-flow .f-background line,.f-flow .f-background path{stroke:var(--ff-background-line-color)}f-flow .f-background circle,.f-flow .f-background circle{fill:var(--ff-background-dot-color)}f-flow .f-selection-area,.f-flow .f-selection-area{box-sizing:border-box;background:var(--ff-selection-area-color);border:1px solid var(--ff-selection-area-border-color)}f-flow .f-minimap,.f-flow .f-minimap{overflow:hidden;background:var(--ff-minimap-background-color);border:1px solid var(--ff-minimap-border-color);border-radius:var(--ff-minimap-border-radius);box-shadow:var(--ff-minimap-shadow);bottom:16px;right:16px;width:140px;height:120px}f-flow .f-minimap .f-minimap-node,f-flow .f-minimap .f-minimap-group,.f-flow .f-minimap .f-minimap-node,.f-flow .f-minimap .f-minimap-group{fill:var(--ff-minimap-node-color)}f-flow .f-minimap .f-minimap-node.f-selected,f-flow .f-minimap .f-minimap-group.f-selected,.f-flow .f-minimap .f-minimap-node.f-selected,.f-flow .f-minimap .f-minimap-group.f-selected{fill:var(--ff-minimap-node-selected-color)}f-flow .f-minimap .f-minimap-view,.f-flow .f-minimap .f-minimap-view{fill:var(--ff-minimap-view-color);stroke:var(--ff-minimap-view-border-color);stroke-width:1}f-flow .f-magnetic-lines .f-line,f-flow .f-line-alignment .f-line,.f-flow .f-magnetic-lines .f-line,.f-flow .f-line-alignment .f-line{background:var(--ff-magnetic-line-color)}f-flow .f-magnetic-rects .f-rect,.f-flow .f-magnetic-rects .f-rect{box-sizing:border-box;background:var(--ff-magnetic-rect-fill);border:1px solid var(--ff-magnetic-rect-border-color)}:root{--prx-form-element-height: 32px;--issue-number-min-width: 7ch;--ff-color-surface-page: var(--prx-color-surface);--ff-color-surface-canvas: var(--prx-color-surface-raised);--ff-color-surface-card: var(--prx-color-surface);--ff-color-border-default: var(--prx-color-border);--ff-color-border-strong: var(--prx-color-border-strong);--ff-color-border-accent: var(--prx-color-action);--ff-color-text-primary: var(--prx-color-text-primary);--ff-color-text-secondary: var(--prx-color-text-secondary);--ff-color-accent: var(--prx-color-action);--ff-color-connector-connected: var(--prx-color-action);--ff-color-connection: var(--prx-color-border-strong);--ff-color-connection-muted: var(--prx-color-border)}*,*:before,*:after{box-sizing:border-box}html,body{height:100%;margin:0;overflow:hidden;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--prx-color-surface);color:var(--prx-color-text-primary)}.brand{font-size:1.25rem;font-weight:700;letter-spacing:-.02em;text-decoration:none;color:inherit}.app-toolbar{position:sticky;top:0;z-index:100;gap:4px;flex-shrink:0;justify-content:flex-end}.page-container{max-width:1280px;margin:0 auto;padding:6px 24px 48px}@media(max-width:640px){.page-container{padding:16px 16px 32px}}.page-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:24px}.page-title{font-size:1.5rem;font-weight:600;margin:0;color:var(--prx-color-text-primary);letter-spacing:-.02em}.page-subtitle{font-size:.875rem;color:var(--prx-color-text-secondary);margin:0}.status-chip{display:inline-flex;align-items:center;justify-content:center;gap:4px;font-size:.75rem;font-weight:600;line-height:1;padding:4px 10px;min-width:96px;border-radius:20px;white-space:nowrap;text-transform:uppercase;letter-spacing:.04em}.status-chip.status-queued{background:#fef3c7;color:#92400e}.status-chip.status-cloning{background:#dbeafe;color:#1e40af}.status-chip.status-running{background:#dcfce7;color:#166534}.status-chip.status-reviewing{background:#e0f2fe;color:#075985}.status-chip.status-completed{background:#dcfce7;color:#166534}.status-chip.status-failed{background:#fee2e2;color:#991b1b}.status-chip.status-cancelled{background:#f3f4f6;color:#374151}@media(prefers-color-scheme:dark){html:not(.prx-light) .status-chip.status-queued{background:#451a03;color:#fde68a}html:not(.prx-light) .status-chip.status-cloning{background:#1e3a5f;color:#93c5fd}html:not(.prx-light) .status-chip.status-running{background:#14532d;color:#86efac}html:not(.prx-light) .status-chip.status-reviewing{background:#0c4a6e;color:#7dd3fc}html:not(.prx-light) .status-chip.status-completed{background:#14532d;color:#86efac}html:not(.prx-light) .status-chip.status-failed{background:#450a0a;color:#fca5a5}html:not(.prx-light) .status-chip.status-cancelled{background:#1f2937;color:#9ca3af}}html.prx-dark .status-chip.status-queued{background:#451a03;color:#fde68a}html.prx-dark .status-chip.status-cloning{background:#1e3a5f;color:#93c5fd}html.prx-dark .status-chip.status-running{background:#14532d;color:#86efac}html.prx-dark .status-chip.status-reviewing{background:#0c4a6e;color:#7dd3fc}html.prx-dark .status-chip.status-completed{background:#14532d;color:#86efac}html.prx-dark .status-chip.status-failed{background:#450a0a;color:#fca5a5}html.prx-dark .status-chip.status-cancelled{background:#1f2937;color:#9ca3af}.kind-badge{display:inline-flex;font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.05em}.kind-badge.kind-toolcall{background:#dbeafe;color:#1e40af}.kind-badge.kind-toolresult{background:#dcfce7;color:#166534}.kind-badge.kind-message{background:#fef3c7;color:#92400e}.kind-badge.kind-log{background:#f1f5f9;color:#475569}.kind-badge.kind-error{background:#fee2e2;color:#991b1b}@media(prefers-color-scheme:dark){html:not(.prx-light) .kind-badge.kind-toolcall{background:#1e3a5f;color:#93c5fd}html:not(.prx-light) .kind-badge.kind-toolresult{background:#14532d;color:#86efac}html:not(.prx-light) .kind-badge.kind-message{background:#451a03;color:#fde68a}html:not(.prx-light) .kind-badge.kind-log{background:#1e293b;color:#94a3b8}html:not(.prx-light) .kind-badge.kind-error{background:#450a0a;color:#fca5a5}}html.prx-dark .kind-badge.kind-toolcall{background:#1e3a5f;color:#93c5fd}html.prx-dark .kind-badge.kind-toolresult{background:#14532d;color:#86efac}html.prx-dark .kind-badge.kind-message{background:#451a03;color:#fde68a}html.prx-dark .kind-badge.kind-log{background:#1e293b;color:#94a3b8}html.prx-dark .kind-badge.kind-error{background:#450a0a;color:#fca5a5}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:64px 24px;text-align:center;color:var(--prx-color-text-secondary)}.empty-state prx-icon{opacity:.4}.empty-state h3{margin:0;font-size:1rem;font-weight:500}.empty-state p{margin:0;font-size:.875rem;max-width:320px}.error-banner{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--prx-color-danger-subtle);color:var(--prx-color-text-danger);border-radius:8px;font-size:.875rem;margin-bottom:16px}
