:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-sans:"Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", "JetBrains Mono", "Roboto Mono", Menlo, Consolas, monospace;font-family:var(--font-sans);font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"cv11", "ss01";--n-0:oklch(100% 0 0);--n-25:oklch(98.8% .003 258);--n-50:oklch(97.6% .004 258);--n-100:oklch(96.2% .005 258);--n-150:oklch(94% .006 258);--n-200:oklch(91% .008 258);--n-300:oklch(86% .01 258);--n-400:oklch(71.5% .013 260);--n-500:oklch(56% .017 262);--n-600:oklch(49.8% .019 264);--n-700:oklch(40.5% .022 266);--n-800:oklch(30.5% .024 268);--n-900:oklch(23.5% .024 268);--i-50:oklch(96.8% .018 274);--i-100:oklch(93% .04 274);--i-200:oklch(88% .07 274);--i-300:oklch(78% .11 274);--i-500:oklch(53% .185 274);--i-600:oklch(47.5% .19 274);--i-700:oklch(42% .175 275);--green-mark:oklch(61% .15 150);--green-ink:oklch(47% .11 152);--green-subtle:oklch(96.5% .03 152);--amber-mark:oklch(76% .15 75);--amber-ink:oklch(52% .11 65);--amber-subtle:oklch(96.5% .045 80);--red-mark:oklch(58% .215 27);--red-ink:oklch(51.5% .205 28);--red-subtle:oklch(96.2% .035 27);--bg:var(--n-50);--surface:var(--n-0);--surface-2:var(--n-50);--surface-3:var(--n-100);--surface-inset:var(--n-100);--border:var(--n-200);--border-strong:var(--n-300);--ink:var(--n-900);--ink-2:var(--n-700);--muted:var(--n-600);--accent:var(--i-500);--accent-hover:var(--i-600);--accent-active:var(--i-700);--accent-ink:var(--i-700);--accent-subtle:var(--i-50);--accent-border:var(--i-200);--on-accent:oklch(98.5% .004 274);--success:var(--green-mark);--success-ink:var(--green-ink);--success-subtle:var(--green-subtle);--warning:var(--amber-mark);--warning-ink:var(--amber-ink);--warning-subtle:var(--amber-subtle);--danger:var(--red-mark);--danger-ink:var(--red-ink);--danger-subtle:var(--red-subtle);--on-danger:oklch(99% 0 0);--danger-solid:var(--red-ink);--warning-solid:var(--amber-ink);--ring:var(--accent);--ring-halo:oklch(53% .185 274/.32);--overlay:oklch(23.5% .024 268/.45);--space-2xs:2px;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-pill:999px;--shadow-xs:0 1px 2px oklch(23.5% .024 268/.06);--shadow-sm:0 1px 2px oklch(23.5% .024 268/.06), 0 2px 6px oklch(23.5% .024 268/.07);--shadow-md:0 2px 6px oklch(23.5% .024 268/.07), 0 8px 20px oklch(23.5% .024 268/.12);--shadow-lg:0 4px 10px oklch(23.5% .024 268/.09), 0 18px 44px oklch(23.5% .024 268/.2);--font-size-sm:12px;--font-size-code:13px;--font-size-body:14px;--font-size-heading:16px;--font-size-lg:19px;--font-size-xl:24px;--font-size-2xl:30px;--leading-tight:1.25;--leading-normal:1.5;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--dur-fast:.12s;--dur:.18s;--dur-slow:.24s;--z-base:1;--z-dropdown:1000;--z-sticky:1010;--z-modal-backdrop:1020;--z-modal:1030;--z-toast:1040;--z-tooltip:1050;--node-min-w:180px;--node-min-h:60px;--color-canvas:var(--bg);--color-surface:var(--surface);--color-accent:var(--accent);--color-destructive:var(--danger);--color-border:var(--border);--color-muted:var(--muted);--color-text:var(--ink);--color-error:var(--danger-ink);--color-warning:var(--warning-ink);--color-ok:var(--success-ink);--tint-input:oklch(52% .045 255);--tint-output:oklch(56% .13 150);--tint-branch:oklch(56% .17 305);--tint-decision_tree:oklch(51% .155 320);--tint-decision_table:oklch(55.5% .135 245);--tint-matrix:oklch(57.5% .12 110);--tint-rule:oklch(59% .12 228);--tint-ruleset:oklch(65.5% .13 85);--tint-computation:oklch(58.5% .11 178);--tint-loop:oklch(56% .095 198);--tint-model:oklch(58% .165 350);--tint-scorecard:oklch(61.5% .15 35)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--n-0:oklch(16.5% .006 264);--n-25:oklch(18% .006 264);--n-50:oklch(20% .007 264);--n-100:oklch(23.5% .008 264);--n-150:oklch(27% .009 264);--n-200:oklch(30% .01 264);--n-300:oklch(36.5% .012 264);--n-400:oklch(48% .014 262);--n-500:oklch(62% .016 260);--n-600:oklch(71.5% .016 258);--n-700:oklch(80% .013 258);--n-800:oklch(88% .009 258);--n-900:oklch(94.5% .006 258);--i-50:oklch(30% .06 274);--i-100:oklch(36% .085 274);--i-200:oklch(44% .11 274);--i-300:oklch(56% .15 274);--i-500:oklch(58.5% .175 274);--i-600:oklch(65% .165 274);--i-700:oklch(79% .125 274);--green-mark:oklch(70% .15 150);--green-ink:oklch(81% .12 152);--green-subtle:oklch(27% .045 152);--amber-mark:oklch(80% .15 75);--amber-ink:oklch(84% .115 80);--amber-subtle:oklch(28.5% .05 70);--red-mark:oklch(64% .215 27);--red-ink:oklch(76% .165 25);--red-subtle:oklch(28.5% .09 27);--bg:var(--n-0);--surface:oklch(21.5% .008 264);--surface-2:oklch(19% .007 264);--surface-3:oklch(27% .01 264);--surface-inset:oklch(27% .01 264);--danger-solid:oklch(52% .205 28);--warning-solid:oklch(54% .12 68);--ring-halo:oklch(58.5% .175 274/.4);--overlay:oklch(0% 0 0/.62);--shadow-xs:0 1px 2px oklch(0% 0 0/.32);--shadow-sm:0 1px 2px oklch(0% 0 0/.36), 0 2px 6px oklch(0% 0 0/.32);--shadow-md:0 2px 6px oklch(0% 0 0/.36), 0 8px 20px oklch(0% 0 0/.46);--shadow-lg:0 4px 10px oklch(0% 0 0/.42), 0 18px 44px oklch(0% 0 0/.58);--tint-input:oklch(66% .045 255);--tint-output:oklch(70% .13 150);--tint-branch:oklch(69% .165 305);--tint-decision_tree:oklch(66% .15 320);--tint-decision_table:oklch(69% .13 245);--tint-matrix:oklch(70.5% .115 110);--tint-rule:oklch(72% .115 228);--tint-ruleset:oklch(77% .125 85);--tint-computation:oklch(72% .105 178);--tint-loop:oklch(70% .09 198);--tint-model:oklch(71% .155 350);--tint-scorecard:oklch(73% .145 35)}:root[data-theme=dark] .react-flow__minimap-mask{fill:oklch(92% 0 0/.06)}*{box-sizing:border-box}html{height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:var(--font-size-body);line-height:var(--leading-normal);margin:0}#root{flex-direction:column;height:100vh;display:flex}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}h1,h2,h3,h4{text-wrap:balance}p{text-wrap:pretty}code,pre,kbd,samp{font-family:var(--font-mono);font-feature-settings:normal}::selection{background:var(--accent-subtle);color:var(--accent-active)}a{color:var(--accent-ink)}:where(button,[role=button],a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--ring);outline-offset:2px;border-radius:var(--radius-xs)}:focus:not(:focus-visible){outline:none}*{scrollbar-width:thin;scrollbar-color:var(--n-300) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--n-300);border-radius:var(--radius-pill);background-clip:padding-box;border:2px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--n-400);background-clip:padding-box}.btn{justify-content:center;align-items:center;gap:var(--space-xs);min-height:32px;padding:0 var(--space-md);font-size:var(--font-size-body);white-space:nowrap;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);font-weight:600;line-height:1;display:inline-flex}.btn:hover{background:var(--surface-3);border-color:var(--n-400)}.btn:active{background:var(--surface-inset);transform:translateY(.5px)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;transform:none}.btn--primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);box-shadow:var(--shadow-xs)}.btn--primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn--primary:active{background:var(--accent-active);border-color:var(--accent-active)}.btn--accent-outline{background:var(--surface);border-color:var(--accent);color:var(--accent-ink)}.btn--accent-outline:hover{background:var(--accent-subtle);border-color:var(--accent)}.btn--ghost{color:var(--ink-2);background:0 0;border-color:#0000}.btn--ghost:hover{background:var(--surface-3);color:var(--ink);border-color:#0000}.btn--danger{background:var(--surface);border-color:var(--danger);color:var(--danger-ink)}.btn--danger:hover{background:var(--danger-subtle);border-color:var(--danger)}.btn--solid-danger{background:var(--danger);border-color:var(--danger);color:var(--on-danger)}.btn--solid-danger:hover{filter:brightness(.94)}.btn--sm{min-height:26px;padding:0 var(--space-sm);font-size:var(--font-size-sm)}.btn--icon{width:32px;padding:0}.icon-btn{width:32px;height:32px;font-size:var(--font-size-heading);border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--surface);color:var(--ink-2);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);flex:none;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.icon-btn:hover{background:var(--surface-3);color:var(--ink);border-color:var(--border-strong)}.icon-btn--danger:hover{background:var(--danger-subtle);color:var(--danger-ink);border-color:var(--danger)}.input,.select,.textarea{width:100%;min-height:32px;padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-body);color:var(--ink);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-xs);transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out)}.input::placeholder,.textarea::placeholder{color:var(--muted)}.input:hover,.select:hover,.textarea:hover{border-color:var(--n-400)}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring-halo);outline:none}.input:read-only{background:var(--surface-2);color:var(--ink-2);cursor:default}.input[aria-invalid=true]{border-color:var(--danger)}.input[aria-invalid=true]:focus{box-shadow:0 0 0 3px var(--red-subtle)}.textarea{font-family:var(--font-mono);font-size:var(--font-size-code);line-height:var(--leading-normal);resize:vertical}.field{gap:var(--space-xs);flex-direction:column;display:flex}.field__label{font-size:var(--font-size-sm);color:var(--ink-2);font-weight:600}.pill{align-items:center;gap:var(--space-xs);font-size:var(--font-size-sm);border-radius:var(--radius-pill);white-space:nowrap;border:1px solid #0000;padding:2px 10px;font-weight:600;line-height:1.4;display:inline-flex}.action-tile{align-items:flex-start;gap:var(--space-xs);text-align:left;padding:var(--space-md);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);cursor:pointer;transition:border-color var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out), transform var(--dur) var(--ease-out);flex-direction:column;display:flex}.action-tile:hover{border-color:var(--accent-border);box-shadow:var(--shadow-md);transform:translateY(-2px)}.action-tile:active{transform:translateY(0)}.action-tile__icon{border-radius:var(--radius-md);width:36px;height:36px;margin-bottom:var(--space-2xs);justify-content:center;align-items:center;display:inline-flex}.problem-row{align-items:center;gap:var(--space-sm);text-align:left;width:100%;padding:var(--space-sm);border-radius:var(--radius-xs);color:var(--color-text);font:inherit;transition:background var(--dur-fast) var(--ease-out);background:0 0;border:0;display:flex}button.problem-row{cursor:pointer}button.problem-row:hover{background:var(--surface-3)}.problem-row__dot{width:var(--space-sm);height:var(--space-sm);border-radius:var(--radius-pill);flex:none}.problem-row__text{gap:var(--space-2xs);flex-direction:column;min-width:0;display:flex}.problem-row__code{font-size:var(--font-size-sm);font-weight:600;font-family:var(--font-mono)}.problem-row__message{font-size:var(--font-size-body);color:var(--ink-2);line-height:1.45}.catalog-row{text-align:left;gap:var(--space-2xs);width:100%;padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-xs);background:var(--color-surface);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);display:flex}.catalog-row:hover{border-color:var(--border-strong);box-shadow:var(--shadow-xs)}.tablist{gap:var(--space-2xs);padding:var(--space-xs) var(--space-sm) 0;border-bottom:1px solid var(--border);background:var(--surface-2);flex-wrap:wrap;display:flex}.tab{padding:var(--space-sm) var(--space-xs);font-size:var(--font-size-body);white-space:nowrap;color:var(--muted);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);background:0 0;border:none;border-bottom:2px solid #0000;flex:none;margin-bottom:-1px;font-weight:600}.tab:hover:not(:disabled){color:var(--ink)}.tab[aria-selected=true]{color:var(--accent-ink);border-bottom-color:var(--accent)}.tab:disabled{color:var(--n-300);cursor:not-allowed}.test-constraint{gap:var(--space-sm);display:grid}.test-constraint__tabs{gap:var(--space-xs);display:flex}.test-constraint__tabs .tab[aria-disabled=true]{color:var(--muted);cursor:not-allowed}.palette-item{align-items:center;gap:var(--space-sm);width:100%;min-height:38px;padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-body);text-align:left;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:grab;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);font-weight:500;display:flex}.palette-item:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm);transform:translate(2px)}.palette-item:active{cursor:grabbing;background:var(--surface-3);transform:translate(0)}.palette-item__icon{border-radius:var(--radius-sm);background:var(--surface-3);width:26px;height:26px;color:var(--ink);flex:none;justify-content:center;align-items:center;display:inline-flex}.palette-item--icon{padding:var(--space-xs);justify-content:center}.palette-item--icon:hover{transform:none}.app-bar{align-items:center;gap:var(--space-sm);min-height:56px;padding:var(--space-sm) 20px;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow-xs);display:flex}.app-bar__brand{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);margin-left:calc(-1 * var(--space-xs));border-radius:var(--radius-sm);color:var(--ink);cursor:pointer;transition:background var(--dur-fast) var(--ease-out);background:0 0;border:none;display:inline-flex}.app-bar__brand:hover{background:var(--surface-3)}.app-bar__divider{width:1px;margin:var(--space-xs) 0;background:var(--border);align-self:stretch}.app-bar__flow-name{font-size:var(--font-size-body);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:220px;font-weight:600;overflow:hidden}@media (width<=900px){.app-bar__subtitle{display:none}}@media (width<=720px){.app-bar__flow-name{display:none}}.menu{padding:var(--space-xs);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);animation:ruly-menu-in var(--dur-fast) var(--ease-out);transform-origin:top;flex-direction:column;gap:1px;display:flex;position:absolute;top:calc(100% + 6px)}.menu[data-align=start]{left:0}.menu[data-align=end]{right:0}.menu__item{align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-sm) var(--space-sm);font-size:var(--font-size-body);text-align:left;white-space:nowrap;color:var(--ink);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:none;font-weight:500;display:flex}.menu__item:hover:not(:disabled){background:var(--surface-3)}.menu__item[data-danger=true]{color:var(--danger-ink)}.menu__item[data-danger=true]:hover:not(:disabled){background:var(--danger-subtle)}.menu__item:disabled{color:var(--n-300);cursor:not-allowed}.menu__item svg{color:var(--muted)}.menu__item[data-danger=true] svg{color:var(--danger-ink)}.menu__sep{height:1px;margin:var(--space-xs) calc(-1 * var(--space-xs));background:var(--border)}@keyframes ruly-menu-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-overlay{padding:var(--space-lg);background:var(--overlay);z-index:var(--z-modal);animation:ruly-fade-in var(--dur) var(--ease-out);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-lg);color:var(--ink);gap:var(--space-md);animation:ruly-modal-in var(--dur-slow) var(--ease-out);flex-direction:column;display:flex}.overlay-workspace{z-index:var(--z-modal-backdrop);background:var(--overlay);animation:ruly-fade-in var(--dur) var(--ease-out);position:absolute;inset:0}.overlay-workspace--fixed{position:fixed}.overlay-workspace__panel{inset:var(--space-lg);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:ruly-modal-in var(--dur-slow) var(--ease-out);flex-direction:column;display:flex;position:absolute;overflow:hidden}.overlay-workspace__header{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border);display:flex}.overlay-workspace__header>strong{font-size:var(--font-size-body)}.overlay-workspace__title{align-items:center;gap:var(--space-xs);font-weight:700;display:inline-flex}.overlay-workspace__hint{color:var(--color-muted);font-size:var(--font-size-sm)}.overlay-workspace__header .icon-btn{margin-left:auto}.overlay-workspace__scroll{flex:1;min-height:0;overflow-y:auto}.overlay-workspace__body{flex:1;min-height:0;display:flex}.overlay-nav{padding:var(--space-sm) 0;border-right:1px solid var(--border);background:var(--surface-2);flex:0 0 150px;overflow-y:auto}.overlay-nav__group+.overlay-nav__group{margin-top:var(--space-md)}.overlay-nav__group-label{padding:0 var(--space-md);font-size:var(--font-size-sm);letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted)}.overlay-nav__item{width:100%;padding:var(--space-2xs) var(--space-md);color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:block}.overlay-nav__item:hover{background:var(--surface-3)}.overlay-nav__item[aria-current=page]{background:var(--accent-subtle);box-shadow:inset 2px 0 0 var(--accent);font-weight:600}.overlay-workspace__page{min-width:0;padding:var(--space-md);flex:1;overflow:auto}.overlay-run{gap:var(--space-lg);align-items:flex-start;display:flex}.overlay-run__col{flex:1;min-width:0}.overlay-simulate>.overlay-simulate__side{flex:0 380px;min-width:300px}.overlay-simulate>.overlay-simulate__main{flex:1 1 0}.simulate-tabpanel{padding-top:var(--space-sm)}.datasets-panel__actions{gap:var(--space-xs);flex-wrap:wrap;display:flex}.datasets-list{margin:0;padding:0;list-style:none}.dataset-row{gap:var(--space-2xs);flex-direction:column;display:flex}.dataset-row__head{align-items:center;gap:var(--space-xs);min-width:0;display:flex}.dataset-row__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.dataset-row__delete{margin-left:auto}.dataset-row__meta{align-items:center;gap:var(--space-xs);font-size:var(--font-size-sm);flex-wrap:wrap;display:flex}.simulate-dialog__title{font-size:var(--font-size-lg);margin:0;font-weight:700}.simulate-dialog__row{gap:var(--space-sm);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.simulate-dialog__check{align-items:center;gap:var(--space-xs);font-size:var(--font-size-body);display:inline-flex}.simulate-dialog__actions{gap:var(--space-sm);justify-content:flex-end;display:flex}.simulate-dialog__warnings{padding-left:var(--space-lg);max-height:200px;font-size:var(--font-size-sm);font-family:var(--font-mono);margin:0;overflow:auto}.simulate-alert{padding:var(--space-xs) var(--space-sm);border-left:3px solid var(--color-error);background:var(--danger-subtle);color:var(--color-text);font-size:var(--font-size-body);margin:0}.count-grid{gap:var(--space-sm);padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);grid-template-columns:repeat(auto-fit,minmax(110px,1fr));display:grid}.count-grid[aria-busy=true]{opacity:.7}.count-grid__cell{gap:var(--space-2xs);flex-direction:column;display:flex}.count-grid__label{font-size:var(--font-size-sm);color:var(--color-muted)}.count-grid__value{font-size:var(--font-size-lg);font-variant-numeric:tabular-nums;font-weight:600}.mapping-table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm)}.mapping-table th,.mapping-table td{text-align:left;vertical-align:top;padding:var(--space-2xs) var(--space-xs);border-bottom:1px solid var(--color-border)}.mapping-table__header{font-family:var(--font-mono);word-break:break-all}.mapping-table td .input{margin-top:var(--space-2xs)}.mapping-table__dup{font-size:var(--font-size-sm);display:block}.run-form__fieldset{gap:var(--space-xs);border:0;flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.run-form__fieldset>legend{margin-bottom:var(--space-2xs);font-size:var(--font-size-sm);color:var(--color-muted);padding:0;font-weight:600}.run-form__radio{align-items:center;gap:var(--space-xs);font-size:var(--font-size-body);display:inline-flex}.run-form__inline{align-items:flex-end;gap:var(--space-xs);display:flex}.run-form__grow{flex:auto;min-width:0}.run-form__actions{gap:var(--space-sm);display:flex}.run-form__problems-title{margin:0 0 var(--space-2xs);font-weight:600}.run-form__problems{padding-left:var(--space-lg);font-size:var(--font-size-sm);margin:0}.runs-list{margin:0;padding:0;list-style:none}.run-row{gap:var(--space-2xs);padding:var(--space-2xs);border-radius:var(--radius-sm);flex-direction:column;display:flex}.run-row[data-selected=true]{box-shadow:0 0 0 2px var(--accent)}.run-row__head{align-items:center;gap:var(--space-xs);flex-wrap:wrap;min-width:0;display:flex}.run-row__select{font:inherit;color:var(--color-text);cursor:pointer;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;min-width:0;padding:0;font-weight:600;overflow:hidden}.run-row__select:hover{text-decoration:underline}.run-row__meta{gap:var(--space-xs);font-size:var(--font-size-sm);flex-wrap:wrap;display:flex}.run-row__actions{gap:var(--space-2xs);flex-wrap:wrap;display:flex}.run-row__actions:empty{display:none}.run-row__failure{font-size:var(--font-size-sm)}.run-row__failure>summary{cursor:pointer;color:var(--color-muted)}.run-row__failure>pre{margin:var(--space-2xs) 0 0;white-space:pre-wrap;word-break:break-word;font-family:var(--font-mono)}.status-chip[data-status=succeeded]{background:var(--success-subtle);color:var(--success-ink)}.status-chip[data-status=running],.status-chip[data-status=cancelling]{background:var(--accent-subtle);color:var(--accent-ink)}.status-chip[data-status=failed],.status-chip[data-status=interrupted]{background:var(--danger-subtle);color:var(--danger-ink)}.progress{border-radius:var(--radius-pill);background:var(--surface-3);height:6px;overflow:hidden}.progress__fill{background:var(--accent);height:100%;transition:width var(--dur) var(--ease-out)}.progress--indeterminate .progress__fill{width:30%;animation:1.2s ease-in-out infinite ruly-pulse}.simulate-banner{padding:var(--space-xs) var(--space-sm);border-left:3px solid var(--color-warning);background:var(--warning-subtle);color:var(--color-text);font-size:var(--font-size-body);margin:0}.summary-head,.summary-section-head{justify-content:space-between;align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.summary-head .section-heading,.summary-section-head .section-heading{align-items:center;gap:var(--space-xs);margin:0;display:inline-flex}.summary-strip{gap:var(--space-sm);padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);grid-template-columns:repeat(auto-fit,minmax(90px,1fr));margin:0;display:grid}.summary-strip__cell dt{font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--color-muted)}.summary-strip__cell dd{font-size:var(--font-size-lg);font-variant-numeric:tabular-nums;margin:0;font-weight:600}.summary-bar{height:10px;margin-bottom:var(--space-xs);border-radius:var(--radius-pill);background:var(--surface-3);display:flex;overflow:hidden}.summary-bar__seg{flex-basis:0;min-width:2px;display:block}.summary-bar__seg[data-class=APPROVE]{background:var(--success)}.summary-bar__seg[data-class=DECLINE]{background:var(--danger)}.summary-bar__seg[data-class=REFER]{background:var(--warning)}.summary-bar__seg[data-class=OTHER]{background:var(--n-400)}.summary-table{border-collapse:collapse;width:100%;font-size:var(--font-size-body)}.summary-table th,.summary-table td{text-align:left;padding:var(--space-2xs) var(--space-xs);border-bottom:1px solid var(--color-border)}.summary-table th{font-size:var(--font-size-sm);color:var(--color-muted);font-weight:600}.summary-table th:not(:first-child),.summary-table td:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}.summary-rate{align-items:baseline;gap:var(--space-xs);flex-wrap:wrap;margin:0;display:flex}.summary-rate strong{font-size:var(--font-size-xl);font-variant-numeric:tabular-nums}.summary-pareto,.summary-keys{margin:0;padding:0;list-style:none}.summary-keys{margin-top:var(--space-2xs);padding-left:var(--space-md)}.summary-pareto li,.summary-key{justify-content:space-between;gap:var(--space-sm);padding:var(--space-2xs) 0;font-family:var(--font-mono);font-size:var(--font-size-sm);display:flex}.summary-key__count{font-variant-numeric:tabular-nums;white-space:nowrap}.summary-key--never .summary-key__count{color:var(--color-warning);font-weight:600}.summary-hit{padding-left:var(--space-sm);border-left:3px solid #0000}.summary-hit[data-never-hit=true]{border-left-color:var(--color-warning);background:var(--warning-subtle)}.summary-hit__head{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.summary-hit__node{font:inherit;color:var(--accent-ink);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline}.summary-hit__node--gone{color:var(--color-muted);cursor:default;text-decoration:none}.summary-hit__visits{font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto}.summary-filter{align-items:center;gap:var(--space-2xs);font-size:var(--font-size-sm);display:inline-flex}.paged-table__scroll{overflow-x:auto}.paged-table__nav{align-items:center;gap:var(--space-xs);margin-top:var(--space-xs);display:flex}.paged-table__range{font-variant-numeric:tabular-nums;margin-right:auto}.rows-tab__filters{align-items:center;gap:var(--space-sm);font-size:var(--font-size-sm);flex-wrap:wrap;display:flex}.rows-tab__filter{align-items:center;gap:var(--space-2xs);font-size:var(--font-size-sm);display:inline-flex}.rows-tab__filter .select,.rows-tab__filter .input{width:auto;min-width:7rem}.rows-table th,.rows-table td,.rows-table th:not(:first-child),.rows-table td:not(:first-child){text-align:left;vertical-align:top}.rows-table tr[data-selected=true]>td{box-shadow:inset 3px 0 0 var(--accent)}.rows-table__replay{font:inherit;font-variant-numeric:tabular-nums;color:var(--accent-ink);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.rows-table__decision{font-family:var(--font-mono);font-size:var(--font-size-sm);word-break:break-word}.rows-table__class{margin-right:var(--space-2xs);font-weight:600}.rows-table__reasons{font-family:var(--font-mono);font-size:var(--font-size-sm);display:block}.status-chip[data-status=ok]{background:var(--success-subtle);color:var(--success-ink)}.status-chip[data-status=error]{background:var(--danger-subtle);color:var(--danger-ink)}.status-chip[data-status=not_runnable]{background:var(--warning-subtle);color:var(--color-text)}.replay-pane{margin-top:var(--space-sm);padding:var(--space-sm);border:1px solid var(--color-border);border-left:3px solid var(--accent);border-radius:var(--radius-sm)}.replay-pane__head{align-items:center;gap:var(--space-xs);margin:var(--space-xs) 0;font-size:var(--font-size-sm);flex-wrap:wrap;display:flex}.replay-pane__decision{font-family:var(--font-mono);word-break:break-word}.chip[data-match=true]{background:var(--success-subtle);color:var(--success-ink)}.chip[data-match=false]{background:var(--warning-subtle);color:var(--color-text)}.replay-pane__body{gap:var(--space-md);grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;display:grid}@media (width<=900px){.replay-pane__body{grid-template-columns:minmax(0,1fr)}}.replay-pane__inputs{max-height:24rem;padding:var(--space-xs);border:1px solid var(--color-border);border-radius:var(--radius-xs);background:var(--surface-2);font-family:var(--font-mono);font-size:var(--font-size-sm);white-space:pre-wrap;word-break:break-word;margin:0;overflow:auto}.replay-pane__failure{margin:0 0 var(--space-2xs)}.replay-pane__problems{margin:0 0 var(--space-xs);padding-left:var(--space-md);font-size:var(--font-size-sm)}.compare-against{padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);margin:0}.compare-against__choices{align-items:center;gap:var(--space-sm);font-size:var(--font-size-body);flex-wrap:wrap;display:flex}.compare-against__choice{align-items:center;gap:var(--space-2xs);display:inline-flex}.compare-against .select{width:auto;min-width:10rem}.compare-source-line{align-items:center;gap:var(--space-2xs);flex-wrap:wrap;display:flex}.compare-parity{border-left:3px solid var(--accent);padding-left:var(--space-sm)}.compare-matrix td[data-diagonal=true]{background:var(--success-subtle)}.compare-two-up{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.chip--changed{background:var(--warning-subtle)}.compare-segments__controls{gap:var(--space-sm);flex-wrap:wrap;display:inline-flex}.compare-segments tr[data-small-cell=true]{color:var(--color-muted)}.compare-segments__withheld{font-style:italic;text-align:left!important}.outcomes-controls{padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);gap:var(--space-xs);flex-direction:column;margin:0;display:flex}.outcomes-controls__row{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.outcomes-controls__row .select,.outcomes-controls__row .input{width:auto;min-width:8rem}.outcomes-controls__assumption{border:0;margin:0;padding:0}.outcomes-controls__assumption>legend{font-size:var(--font-size-sm);color:var(--color-muted);margin-bottom:var(--space-2xs);padding:0}.outcomes-controls__assumption .input{width:5rem}.outcomes-controls__assumption .input[aria-invalid=true]{border-color:var(--color-error)}.outcomes-cards{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.outcomes-card{padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-left:3px solid var(--n-400);border-radius:var(--radius-sm);background:var(--surface)}.outcomes-card[data-set=kept]{border-left-color:var(--success)}.outcomes-card[data-set=swap_out]{border-left-color:var(--warning)}.outcomes-card[data-set=swap_in]{border-left-color:var(--accent)}.outcomes-card__title{margin:0 0 var(--space-2xs);font-size:var(--font-size-body);align-items:baseline;gap:var(--space-xs);flex-wrap:wrap;font-weight:600;display:flex}.outcomes-card__title .muted-copy{font-weight:400;font-size:var(--font-size-sm)}.outcomes-card__meta{margin:0 0 var(--space-2xs);font-variant-numeric:tabular-nums}.outcomes-card__figure{gap:var(--space-2xs);flex-direction:column;margin:0;display:flex}.outcomes-card__figure>div{justify-content:space-between;align-items:baseline;gap:var(--space-xs);min-width:0;display:flex}.outcomes-card__figure dt{font-size:var(--font-size-sm);color:var(--color-muted);overflow-wrap:anywhere;min-width:0}.outcomes-card__figure dd{font-size:var(--font-size-lg);font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right;flex-shrink:0;margin:0;font-weight:600}.outcomes-distribution{font-size:var(--font-size-sm)}.outcomes-projection{border-left:3px solid var(--accent);padding-left:var(--space-sm)}.outcomes-operands{font-family:var(--font-mono);font-size:var(--font-size-sm)}.outcomes-bands tr[data-small-cell=true],.outcomes-bands tr[data-unscored=true],.outcomes-segments tr[data-small-cell=true]{color:var(--color-muted)}.outcomes-withheld{font-style:italic;text-align:left!important}.outcomes-tab .summary-strip{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.outcomes-tab .summary-strip__cell dt{overflow-wrap:anywhere}.live-panel{gap:var(--space-sm);flex-direction:column;display:flex}.live-block{gap:var(--space-2xs);flex-direction:column;display:flex}.live-experiments{margin:0;padding:0;list-style:none}.live-experiment{gap:var(--space-2xs);flex-direction:column;display:flex}.live-experiment__head{justify-content:space-between;align-items:center;gap:var(--space-xs);display:flex}.live-experiment__name{font-size:var(--font-size-body);color:var(--color-text);overflow-wrap:anywhere}.live-experiment__arms code{font-family:var(--font-mono);font-size:var(--font-size-sm);white-space:nowrap}.live-experiments__link{align-self:flex-start;text-decoration:none}.live-shadow__head{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.live-shadow__actions{gap:var(--space-xs);flex-wrap:wrap;display:flex}.live-strip{grid-template-columns:repeat(auto-fit,minmax(80px,1fr))}.compare-daily__table td{font-variant-numeric:tabular-nums}.canvas-hits-pill{top:var(--space-sm);left:var(--space-sm);z-index:var(--z-sticky);align-items:center;gap:var(--space-xs);padding:2px var(--space-2xs) 2px var(--space-sm);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);box-shadow:var(--shadow-sm);font-size:var(--font-size-sm);font-weight:600;display:inline-flex;position:absolute}.overlay-editor-page{gap:var(--space-md);flex-direction:column;min-height:100%;display:flex}.overlay-problems-strip{gap:var(--space-2xs);padding:var(--space-xs) var(--space-sm);border-top:1px solid var(--border);font-size:var(--font-size-sm);flex-direction:column;margin-top:auto;display:flex}.overlay-problems-strip__error{color:var(--color-error)}.overlay-problems-strip__warning{color:var(--color-warning)}.toast{bottom:var(--space-lg);z-index:var(--z-toast);align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-md);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:ruly-fade-in var(--dur) var(--ease-out);display:flex;position:fixed;left:50%;transform:translate(-50%)}.ruly-node{box-shadow:var(--shadow-xs);cursor:grab;transition:box-shadow var(--dur) var(--ease-out), border-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out)}.ruly-node:hover{box-shadow:var(--shadow-md)}.node-hit-badge{background:var(--accent);color:var(--on-accent)}.node-hit-badge[data-never-hit=true]{background:var(--surface-3);color:var(--color-muted);box-shadow:inset 0 0 0 1px var(--warning)}.ruly-node[data-never-hit=true]{box-shadow:0 0 0 2px var(--warning), var(--shadow-xs)}.ruly-node[data-selected=true]{box-shadow:0 0 0 2px var(--accent), var(--shadow-md)}.ruly-node[data-severity=error]{box-shadow:0 0 0 2px var(--danger), var(--shadow-sm)}.ruly-node[data-severity=warning]{box-shadow:0 0 0 2px var(--warning), var(--shadow-sm)}.ruly-node[data-selected=true][data-severity=error]{box-shadow:0 0 0 2px var(--danger), var(--shadow-md)}.react-flow,.react-flow__background{background:var(--bg)}.react-flow__background path,.react-flow__background circle{color:var(--n-200)}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output{text-align:left;width:auto;color:inherit;background:0 0;border:none;border-radius:0;padding:0}.react-flow__edge-path{stroke:var(--n-400);stroke-width:1.5px;transition:stroke var(--dur-fast) var(--ease-out)}.react-flow__edge:hover .react-flow__edge-path{stroke:var(--n-600)}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:focus .react-flow__edge-path{stroke:var(--accent);stroke-width:2px}.react-flow__arrowhead{fill:var(--n-400)}.react-flow__connectionline .react-flow__edge-path{stroke:var(--accent);stroke-width:2px}.react-flow__handle{background:var(--surface);border:1.5px solid var(--n-400);border-radius:var(--radius-pill);width:9px;height:9px;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out)}.react-flow__handle:hover,.react-flow__handle.connecting,.react-flow__handle-connecting{background:var(--accent);border-color:var(--accent);transform:scale(1.25)}.react-flow__controls{box-shadow:var(--shadow-md);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.react-flow__controls-button{background:var(--surface);border:none;border-bottom:1px solid var(--border);width:28px;height:28px;color:var(--ink-2);transition:background var(--dur-fast) var(--ease-out)}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls-button:hover{background:var(--surface-3);color:var(--ink)}.react-flow__controls-button svg{fill:currentColor}.react-flow__minimap{border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden}.react-flow__minimap-mask{fill:oklch(23.5% .024 268/.08)}.react-flow__attribution{background:0 0;font-size:10px}.react-flow__attribution a{color:var(--muted)}@keyframes ruly-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ruly-modal-in{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes ruly-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes ruly-pulse{0%,to{opacity:1}50%{opacity:.35}}.ruly-rise{animation:ruly-rise var(--dur-slow) var(--ease-out) both}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.inspector{border-left:1px solid var(--color-border);background:var(--color-surface);height:100%;color:var(--color-text);flex-direction:column;display:flex;position:relative;overflow:hidden}.inspector__resizer{width:var(--space-xs);cursor:col-resize;z-index:1;background:0 0;position:absolute;top:0;bottom:0;left:0}.inspector__scroll{flex:1;overflow:auto}.launcher-row{gap:var(--space-2xs);padding:var(--space-xs);border-bottom:1px solid var(--border);background:var(--surface-2);flex-wrap:wrap;display:flex}.inspector-section{border-bottom:1px solid var(--color-border)}.section-bar-row{align-items:center;gap:var(--space-2xs);display:flex}.section-bar{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);color:var(--color-text);font:inherit;font-weight:600;font-size:var(--font-size-body);cursor:pointer;text-align:left;background:0 0;border:0;flex:1;display:flex}.section-bar:hover{background:var(--surface-3)}.section-bar__caret{transition:transform var(--dur-fast) var(--ease-out)}.section-bar[aria-expanded=true] .section-bar__caret{transform:rotate(90deg)}.section-bar__badge{font-weight:400;font-size:var(--font-size-sm);color:var(--color-muted);margin-left:auto}.inspector-section__body{padding:var(--space-sm) var(--space-md) var(--space-md)}@keyframes ruly-section-open{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:none}}.inspector-section__body{animation:ruly-section-open var(--dur-fast) var(--ease-out)}.section-heading{font-size:var(--font-size-body);margin:0;font-weight:600}.section-block{gap:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid var(--color-border);flex-direction:column;display:flex}.muted-copy{font-size:var(--font-size-body);color:var(--color-muted);margin:0}.group-label{font-size:var(--font-size-sm);color:var(--color-muted);margin:0;font-weight:600}.hairline-rows>*+*{border-top:1px solid var(--color-border);padding-top:var(--space-sm);margin-top:var(--space-sm)}.rc-row{gap:var(--space-sm);flex-direction:column;display:flex}.inspector-card{gap:var(--space-2xs);padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--color-border);flex-direction:column;display:flex}.inspector-card__title{align-items:center;gap:var(--space-xs);font-weight:600;font-size:var(--font-size-body);display:flex}.inspector-card__meta{align-items:center;gap:var(--space-xs);font-size:var(--font-size-sm);color:var(--color-muted);flex-wrap:wrap;display:flex}.chip{padding:1px var(--space-xs);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--surface);color:var(--color-text);font-size:var(--font-size-sm);align-items:center;display:inline-flex}button.chip{font:inherit;font-size:var(--font-size-sm);cursor:pointer}button.chip:hover{background:var(--surface-3)}.chip[aria-expanded=true]{background:var(--accent-subtle)}.multi-select-card{gap:var(--space-xs)}.multi-select-card__chips{gap:var(--space-2xs);flex-wrap:wrap;display:flex}.stack-sm{gap:var(--space-sm);flex-direction:column;display:flex}.action-card{gap:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-xs);padding:var(--space-sm);flex-direction:column;display:flex}.action-card__subheading{font-size:var(--font-size-body);color:var(--color-muted);margin:var(--space-xs) 0 0;font-weight:600}.io-summary{gap:var(--space-md);flex-direction:column;display:flex}.io-summary__group{gap:var(--space-xs);flex-direction:column;display:flex}.io-summary__group-heading{align-items:baseline;gap:var(--space-xs);display:flex}.io-summary__count{font-weight:400;font-size:var(--font-size-sm);color:var(--color-muted)}.io-summary__rows{gap:var(--space-2xs);flex-direction:column;display:flex}.io-summary__row{justify-content:space-between;align-items:center;gap:var(--space-xs);font-size:var(--font-size-body);display:flex}.actions-summary__chips{gap:var(--space-2xs);flex-wrap:wrap;display:flex}.logic-summary{gap:var(--space-xs);flex-direction:column;display:flex}.logic-summary__facts{font-size:var(--font-size-body);margin:0;font-weight:600}.problems-section__toggle{align-items:center;gap:var(--space-xs);font-size:var(--font-size-sm);color:var(--color-muted);display:flex}.field-tree{gap:var(--space-2xs);flex-direction:column;display:flex;overflow-y:auto}.field-tree__filter{margin-bottom:var(--space-xs)}.field-tree__group-label{align-items:center;gap:var(--space-xs);font-size:var(--font-size-sm);color:var(--color-muted);margin-top:var(--space-sm);font-weight:600;display:flex}.field-tree__row{align-items:center;gap:var(--space-2xs);display:flex}.field-tree__row-btn{align-items:center;gap:var(--space-xs);min-width:0;padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-sm);color:var(--color-text);font-size:var(--font-size-body);cursor:pointer;text-align:left;background:0 0;border:0;flex:1;display:flex}.field-tree__row-btn:hover{background:var(--surface-3)}.field-tree__row-btn[aria-current=true]{background:var(--accent-subtle)}.chip--type{font-family:var(--font-mono);background:var(--surface-3)}.chip--nowrap{white-space:nowrap}.field-tree__dot{width:var(--space-xs);height:var(--space-xs);border-radius:var(--radius-pill);flex:none}.field-tree__dot--error{background:var(--color-error)}.field-tree__dot--warning{background:var(--color-warning)}.field-detail{gap:var(--space-sm);flex-direction:column;min-width:0;display:flex;overflow-y:auto}.field-detail__breadcrumb{align-items:center;gap:var(--space-2xs);font-size:var(--font-size-sm);color:var(--color-muted);display:flex}.field-detail__alert{color:var(--color-error);font-size:var(--font-size-sm);margin:0}.form-row{align-items:center;gap:var(--space-sm);display:flex}.form-row__label{font-size:var(--font-size-sm);color:var(--color-muted);font-weight:600;line-height:var(--leading-tight);flex:0 0 58px}.form-row>.input,.form-row>.select,.form-row>.textarea{flex:1;min-width:0}.form-row__controls{gap:var(--space-xs);flex:1;align-items:center;min-width:0;display:flex}.field-detail__flags{gap:var(--space-md);font-size:var(--font-size-body);flex-wrap:wrap;display:flex}.field-detail__children{gap:var(--space-2xs);flex-direction:column;display:flex}.field-detail__ref{gap:var(--space-sm);display:grid}.contract-settings{gap:var(--space-lg);flex-direction:column;display:flex}.contract-settings__row{align-items:center;gap:var(--space-xs);font-size:var(--font-size-body);display:flex}.io-editor__banner{margin:0;margin-bottom:var(--space-md);padding:var(--space-sm);font-size:var(--font-size-sm);border:1px solid var(--color-border);border-radius:var(--radius-xs);background:var(--color-surface);color:var(--color-muted);align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.io-editor{gap:var(--space-md);grid-template-rows:minmax(0,1fr) auto;grid-template-columns:290px minmax(0,1fr);height:100%;min-height:0;display:grid}.io-editor__tree,.io-editor__detail{grid-row:1;min-height:0;overflow-y:auto}.io-editor__strip{grid-column:1/-1}.io-editor__placeholder{color:var(--color-muted);font-size:var(--font-size-body)}.types-editor-page{gap:var(--space-md);flex-direction:column;height:100%;min-height:0;display:flex}.types-editor{gap:var(--space-md);flex:1;grid-template-columns:minmax(220px,1fr) 2fr;min-height:0;display:grid}.types-editor__list-pane{min-height:0;overflow-y:auto}.types-editor__list-pane-inner{gap:var(--space-sm);flex-direction:column;display:flex}.types-editor__list{gap:var(--space-2xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.types-editor__list li{align-items:center;gap:var(--space-xs);padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-sm);display:flex}.types-editor__list li[aria-current=true]{background:var(--surface-3)}.types-editor__detail{min-height:0;overflow-y:auto}.types-editor__form{gap:var(--space-sm);flex-direction:column;min-width:0;display:flex}.expr-input{gap:var(--space-xs);align-items:center;width:100%;display:inline-flex;position:relative}.expr-input>.input{flex:1;min-width:0}.expr-input__insert{position:relative}.expr-input__menu{z-index:var(--z-dropdown);padding:var(--space-xs);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);min-width:14rem;margin:0;list-style:none;position:absolute;right:0}.functions-editor-page{gap:var(--space-md);flex-direction:column;height:100%;min-height:0;display:flex}.functions-editor{gap:var(--space-md);flex:1;grid-template-columns:minmax(220px,1fr) 2fr;min-height:0;display:grid}.functions-editor__list-pane{min-height:0;overflow-y:auto}.functions-editor__list-pane-inner{gap:var(--space-sm);flex-direction:column;display:flex}.functions-editor__list{gap:var(--space-2xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.functions-editor__list li{align-items:center;gap:var(--space-xs);padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-sm);display:flex}.functions-editor__list li[aria-current=true]{background:var(--surface-3)}.functions-editor__list-actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.functions-editor__detail{min-height:0;overflow-y:auto}.functions-editor__form{gap:var(--space-sm);flex-direction:column;min-width:0;display:flex}.functions-editor__param-row{gap:var(--space-xs);align-items:flex-end;display:flex}.functions-editor__try{gap:var(--space-sm);flex-wrap:wrap;align-items:center;display:flex}.home{width:100%;max-width:880px;padding:var(--space-2xl) var(--space-lg);gap:var(--space-xl);color:var(--color-text);flex-direction:column;margin:0 auto;display:flex;overflow-y:auto}.home__header{align-items:center;gap:var(--space-lg);display:flex}.home__title{font-size:var(--font-size-xl);letter-spacing:-.02em;margin:0;font-weight:700}.home__lead{margin:var(--space-2xs) 0 0;max-width:56ch;color:var(--color-muted);font-size:var(--font-size-body);line-height:1.55}.home__actions{gap:var(--space-sm);flex-wrap:wrap;align-items:center;display:flex}.home__recent{gap:var(--space-sm);flex-direction:column;display:flex}.home__recent-head{justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.home__search{max-width:320px}.home__list{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);flex-direction:column;margin:0;padding:0;list-style:none;display:flex;overflow:hidden}.home__list>li+li{border-top:1px solid var(--border)}.home__row{gap:var(--space-2xs);width:100%;padding:var(--space-sm) var(--space-md);text-align:left;color:var(--ink);cursor:pointer;font:inherit;background:0 0;border:0;flex-direction:column;display:flex}.home__row:hover{background:var(--surface-3)}.home__row-name{font-weight:600;font-size:var(--font-size-body)}.home__row-meta{gap:var(--space-sm);color:var(--color-muted);font-size:var(--font-size-sm);flex-wrap:wrap;display:flex}.home__catalogs{align-items:center;gap:var(--space-xs);padding-top:var(--space-md);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.home__catalogs-label{font-size:var(--font-size-sm);letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted);margin-right:var(--space-xs);font-weight:600}.link-btn{font:inherit;color:var(--accent-ink);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.app-bar__flow-name--button{align-items:center;gap:var(--space-xs);padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-sm);cursor:text;font:inherit;background:0 0;border:1px solid #0000;margin:0;font-weight:600;display:inline-flex}.app-bar__flow-name--button:hover{border-color:var(--border);background:var(--surface-3)}.app-bar__flow-name--button svg{color:var(--muted);flex:none}.app-bar__rename{width:260px;max-width:40vw;font-weight:600}.workspace__region{min-width:0}.inspector-drawer{z-index:5;box-shadow:var(--shadow-lg);animation:ruly-fade-in var(--dur) var(--ease-out);display:flex;position:absolute;top:0;bottom:0;right:0}.inspector-drawer .inspector{max-width:min(420px,90vw)}@media (width<=1100px){.app-bar{flex-wrap:nowrap;overflow:hidden}.app-bar__subtitle{display:none}.app-bar__flow-name{max-width:160px}}@media (width<=720px){.app-bar__flow-name{max-width:120px;display:inline-flex}}.find-node__list{flex-direction:column;gap:1px;margin:0;padding:0;list-style:none;display:flex}.find-node__row{padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);cursor:pointer;flex-direction:column;gap:1px;display:flex}.find-node__row[data-active=true],.find-node__row:hover{background:var(--accent-subtle)}.find-node__label{font-weight:600;font-size:var(--font-size-body)}.find-node__meta{color:var(--color-muted);font-size:var(--font-size-sm)}.blank-hint__path{gap:var(--space-sm);counter-reset:step;font-size:var(--font-size-sm);color:var(--color-muted);margin:0;padding:0;list-style:none;display:flex}.blank-hint__path li{counter-increment:step;align-items:center;gap:var(--space-2xs);display:inline-flex}.blank-hint__path li:before{content:counter(step);border-radius:var(--radius-pill);background:var(--accent-subtle);width:18px;height:18px;color:var(--accent-ink);justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.blank-hint__path li+li:after{content:""}.python-provenance{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);font-size:var(--font-size-sm);color:var(--color-muted);flex-wrap:wrap;display:flex}.python-provenance[data-stale=true]{padding:var(--space-xs) var(--space-sm);border-left:3px solid var(--color-warning);background:var(--warning-subtle);color:var(--color-text)}.python-provenance__stale{font-weight:600}.test-form{gap:var(--space-xs);border:0;flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.test-form>legend{padding:0}.test-form__field{flex-direction:column;gap:2px;display:flex}.test-form__label{align-items:baseline;gap:var(--space-xs);font-size:var(--font-size-body);font-weight:600;display:flex}.test-form__required{color:var(--color-error)}.test-form__type{font-weight:400;font-size:var(--font-size-sm);color:var(--color-muted);font-family:var(--font-mono)}.test-form__hint{font-size:var(--font-size-sm);color:var(--color-muted)}.test-form__error{font-size:var(--font-size-sm);color:var(--color-error)}.run-summary{gap:var(--space-2xs);padding:var(--space-sm);border:1px solid var(--border);border-left:3px solid var(--success);border-radius:var(--radius-md);background:var(--surface);font-size:var(--font-size-body);flex-direction:column;display:flex}.run-summary[data-status=error]{border-left-color:var(--color-error)}.run-summary__k{min-width:5.5em;color:var(--color-muted);font-size:var(--font-size-sm);font-weight:600;display:inline-block}.run-summary__v{font-family:var(--font-mono);font-size:var(--font-size-code)}.run-summary__v[data-expected=differ]{color:var(--color-error)}.run-summary__v[data-expected=match]{color:var(--success-ink)}.flow-preview{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--color-canvas);padding:var(--space-xs);overflow:auto}.flow-preview__box{fill:var(--surface);stroke:var(--border-strong);stroke-width:1px}.flow-preview__label{fill:var(--ink);font-size:12px;font-weight:600;font-family:var(--font-sans)}.flow-preview__sub{fill:var(--muted);font-size:10px;font-family:var(--font-sans)}.flow-preview__edge-label{fill:var(--muted);font-size:10px;font-family:var(--font-mono)}.simulate-head{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-sm);flex-wrap:wrap;display:flex}.simulate-head__actions{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.simulate-head__status{align-items:center;gap:var(--space-xs);font-size:var(--font-size-sm);color:var(--color-muted);display:inline-flex}.simulate-head__status[data-online=false]{color:var(--color-text);padding:2px var(--space-sm);border-left:3px solid var(--color-warning);background:var(--warning-subtle)}.overlay-simulate{height:100%;min-height:0}.overlay-simulate>.overlay-simulate__side{flex-direction:column;min-height:0;max-height:100%;display:flex;overflow-y:auto}.overlay-simulate>.overlay-simulate__main{min-height:0;max-height:100%;overflow-y:auto}.simulate-filter{max-width:100%}.simulate-new-run{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-sm);background:var(--surface)}
