@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;700&family=Plus+Jakarta+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{--ref-neutral-0:#fffdfa;--ref-neutral-25:#fbf7f1;--ref-neutral-50:#f4efe7;--ref-neutral-100:#ede3d6;--ref-neutral-200:#ddd0bc;--ref-neutral-300:#c6b49b;--ref-neutral-500:#7b6c5c;--ref-neutral-700:#2f271f;--ref-neutral-950:#171310;--ref-blue-50:#e4f7f3;--ref-blue-200:#9edfd3;--ref-blue-700:#0f766e;--ref-green-50:#edf8ef;--ref-green-200:#b8e8c0;--ref-green-800:#1f6b38;--ref-red-50:#fff0ea;--ref-red-200:#f8c8b4;--ref-red-800:#9e3f1d;--ref-shadow-rgb:37 28 20;--color-background:var(--ref-neutral-50);--color-foreground:var(--ref-neutral-950);--color-foreground-inverse:var(--ref-neutral-50);--color-card:#fffdfae6;--color-card-subtle:#fffbf5c2;--color-border:var(--ref-neutral-200);--color-border-strong:var(--ref-neutral-300);--color-muted:#ede3d6b3;--color-muted-foreground:var(--ref-neutral-500);--color-primary-soft:var(--ref-blue-50);--color-primary-soft-border:var(--ref-blue-200);--color-primary-soft-foreground:var(--ref-blue-700);--color-success-soft:var(--ref-green-50);--color-success-soft-border:var(--ref-green-200);--color-success-soft-foreground:var(--ref-green-800);--color-danger-soft:var(--ref-red-50);--color-danger-soft-border:var(--ref-red-200);--color-danger-soft-foreground:var(--ref-red-800);--color-shadow:rgb(var(--ref-shadow-rgb) / .06);--background:var(--color-background);--foreground:var(--color-foreground);--foreground-inverse:var(--color-foreground-inverse);--card:var(--color-card);--card-subtle:var(--color-card-subtle);--border:var(--color-border);--border-strong:var(--color-border-strong);--muted:var(--color-muted);--muted-foreground:var(--color-muted-foreground);--surface-page:var(--background);--surface-panel:var(--card);--surface-panel-subtle:var(--card-subtle);--surface-raised:var(--card);--surface-muted:var(--muted);--text-strong:var(--foreground);--text-body:var(--foreground);--text-muted:var(--muted-foreground);--text-inverse:var(--foreground-inverse);--interactive-primary:#173a37;--interactive-primary-hover:#0f2d2a;--interactive-primary-foreground:#f8f3ec;--interactive-secondary:#fffdf9b8;--interactive-secondary-hover:#fffaf3f5;--interactive-secondary-foreground:var(--foreground);--focus-ring-color:#0f766e2e;--surface-accent:linear-gradient(135deg, #e4f7f3f5, #faf1e3eb);--surface-hero:linear-gradient(145deg, #fffcf6f5, #f3ece1e6);--surface-ink:#1e1813;--font-sans:"Plus Jakarta Sans", "Noto Sans KR", "Apple SD Gothic Neo", "Segoe UI", sans-serif;--font-display:"Space Grotesk", "Plus Jakarta Sans", "Noto Sans KR", sans-serif;--font-mono:"IBM Plex Mono", "Cascadia Code", "SFMono-Regular", Consolas, monospace;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-size-meta:10px;--font-size-caption:12px;--font-size-section:13px;--font-size-body:14px;--font-size-title:22px;--font-size-display:34px;--font-size-metric:24px;--font-size-mono:12px;--line-height-section:1.4;--line-height-body:1.55;--line-height-caption:1.4;--line-height-tight:1.2;--line-height-display:1.05;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--radius-sm:8px;--radius-md:14px;--radius-lg:18px;--radius-xl:22px;--radius-2xl:26px;--radius-3xl:32px;--radius-pill:999px;--shadow-sm:0 1px 2px rgb(var(--ref-shadow-rgb) / .05), 0 10px 28px rgb(var(--ref-shadow-rgb) / .05);--shadow-md:0 18px 40px rgb(var(--ref-shadow-rgb) / .09);--shadow-lg:0 28px 60px rgb(var(--ref-shadow-rgb) / .15);--shadow-focus:0 0 0 4px var(--focus-ring-color);--transition-fast:.15s ease;--transition-base:.22s ease;--layout-shell-padding:14px;--layout-gap:12px;--layout-section-gap:16px;--layout-rail-width:340px;--layout-content-max-width:1440px;--layout-sticky-top:20px;--layout-mobile-tabbar-height:64px;--layout-mobile-sheet-max-height:calc(100dvh - 72px);--safe-area-bottom:env(safe-area-inset-bottom,0px);--panel-radius:var(--radius-3xl);--panel-border-color:var(--border);--panel-background:var(--surface-panel);--panel-shadow:var(--shadow-md);--panel-padding:var(--space-5);--panel-padding-compact:var(--space-4);--card-radius:var(--radius-2xl);--card-border-color:var(--border);--card-background:var(--surface-panel);--card-background-subtle:var(--surface-muted);--card-padding:var(--space-4);--card-padding-compact:var(--space-3);--card-shadow:var(--shadow-sm);--button-radius:var(--radius-pill);--button-height-sm:36px;--button-height-md:42px;--button-height-lg:48px;--button-padding-inline:16px;--button-padding-inline-compact:14px;--button-font-size:var(--font-size-body);--button-font-weight:var(--font-weight-semibold);--button-primary-bg:var(--interactive-primary);--button-primary-bg-hover:var(--interactive-primary-hover);--button-primary-text:var(--interactive-primary-foreground);--button-secondary-bg:var(--interactive-secondary);--button-secondary-bg-hover:var(--interactive-secondary-hover);--button-secondary-text:var(--interactive-secondary-foreground);--button-secondary-border:var(--border);--field-height:44px;--field-radius:var(--radius-lg);--field-border-color:var(--border);--field-background:var(--surface-panel);--field-text:var(--text-body);--field-placeholder:var(--text-muted);--field-padding-inline:var(--space-4);--field-padding-block:var(--space-3);--field-focus-ring:var(--shadow-focus);--chip-radius:var(--radius-pill);--chip-padding-inline:var(--space-3);--chip-padding-block:var(--space-1);--chip-background:var(--surface-muted);--chip-border-color:var(--border);--chip-text:var(--text-muted);--nav-item-radius:var(--radius-md);--nav-item-background:var(--surface-panel);--nav-item-background-active:var(--interactive-primary);--nav-item-border:var(--border);--nav-item-text:var(--text-body);--nav-item-text-active:var(--text-inverse)}@media (width>=768px){:root{--font-size-title:22px;--font-size-display:38px;--layout-shell-padding:20px;--layout-gap:18px;--layout-section-gap:20px;--panel-padding:var(--space-6)}}@media (width>=1200px){:root{--layout-shell-padding:24px;--layout-gap:20px;--layout-section-gap:24px}}:root{color:var(--foreground);background:var(--background);font-family:var(--font-sans);font-size:var(--font-size-body);line-height:var(--line-height-body);font-weight:var(--font-weight-regular);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{color:var(--foreground);background:radial-gradient(circle at 0 0,#e4f7f3d1,#0000 24%),radial-gradient(circle at 100% 0,#fbe9cec2,#0000 22%),linear-gradient(#faf5ed 0%,#f4efe7 55%,#efe5d8 100%);position:relative}body:before{content:"";pointer-events:none;background-image:linear-gradient(#17131007 1px,#0000 1px),linear-gradient(90deg,#17131007 1px,#0000 1px);background-size:26px 26px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#0003,#0000 72%);mask-image:linear-gradient(#0003,#0000 72%)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);color:var(--foreground);font-family:var(--font-display);letter-spacing:-.035em;margin:0}p{font-size:var(--font-size-body);line-height:var(--line-height-body);margin:0}small{font-size:var(--font-size-caption);line-height:var(--line-height-caption)}code,pre{font-family:var(--font-mono);font-size:var(--font-size-mono)}a{color:var(--ref-blue-700)}::selection{background:#0f766e2e}.ui-button{min-height:var(--button-height-md);justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--button-radius);width:fit-content;padding:0 var(--button-padding-inline);font:inherit;font-size:var(--button-font-size);font-weight:var(--button-font-weight);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);border:1px solid #0000;line-height:1;text-decoration:none;display:inline-flex;box-shadow:inset 0 1px #ffffff61}.ui-button--primary{background:linear-gradient(180deg, color-mix(in srgb, var(--button-primary-bg) 90%, white 10%), var(--button-primary-bg));border-color:var(--button-primary-bg);color:var(--button-primary-text);box-shadow:inset 0 1px #fff3,0 10px 20px #173a372e}.ui-button--primary:hover{background:var(--button-primary-bg-hover);border-color:var(--button-primary-bg-hover);transform:translateY(-1px)}.ui-button--secondary{background:color-mix(in srgb, var(--button-secondary-bg) 84%, white 16%);border-color:var(--button-secondary-border);color:var(--button-secondary-text);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.ui-button--secondary:hover{background:color-mix(in srgb, var(--button-secondary-bg-hover) 88%, white 12%);transform:translateY(-1px)}.ui-button--ghost{color:var(--text-body);background:0 0;border-color:#0000}.ui-button--ghost:hover{background:color-mix(in srgb, var(--surface-muted) 82%, white 18%)}.ui-button--sm{min-height:var(--button-height-sm);padding-inline:var(--button-padding-inline-compact);font-size:var(--font-size-caption)}.ui-button--lg{min-height:var(--button-height-lg)}.ui-button--block{width:100%}.ui-button:disabled{opacity:.5;cursor:not-allowed}.ui-button:focus-visible{box-shadow:var(--field-focus-ring);outline:none}.ui-badge{min-height:28px;padding:var(--chip-padding-block) var(--chip-padding-inline);border-radius:var(--chip-radius);border:1px solid var(--chip-border-color);background:color-mix(in srgb, var(--chip-background) 88%, white 12%);color:var(--chip-text);font-size:var(--font-size-caption);line-height:var(--line-height-caption);white-space:nowrap;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);justify-content:center;align-items:center;display:inline-flex}.ui-badge--success{background:var(--color-success-soft);color:var(--color-success-soft-foreground);border-color:var(--color-success-soft-border)}.ui-badge--danger{background:var(--color-danger-soft);color:var(--color-danger-soft-foreground);border-color:var(--color-danger-soft-border)}.ui-badge--method{background:var(--color-primary-soft);color:var(--color-primary-soft-foreground);border-color:var(--color-primary-soft-border)}.ui-card{border:1px solid var(--card-border-color);border-radius:var(--card-radius);background:linear-gradient(180deg, color-mix(in srgb, var(--card-background) 92%, white 8%), color-mix(in srgb, var(--card-background) 98%, transparent 2%));box-shadow:var(--card-shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);min-width:0}.ui-card--panel{border-color:var(--panel-border-color);border-radius:var(--panel-radius);background:linear-gradient(180deg, color-mix(in srgb, var(--panel-background) 90%, white 10%), color-mix(in srgb, var(--panel-background) 98%, transparent 2%));box-shadow:var(--panel-shadow)}.ui-card--subtle{background:linear-gradient(180deg, color-mix(in srgb, var(--card-background-subtle) 86%, white 14%), color-mix(in srgb, var(--card-background-subtle) 98%, transparent 2%))}.ui-card__header,.ui-card__content,.ui-card__footer{padding:var(--card-padding)}.ui-card__header{gap:var(--space-2);flex-direction:column;display:flex}.ui-card__content,.ui-card__footer{padding-top:0}.ui-card__title{font-size:var(--font-size-title);line-height:var(--line-height-tight);letter-spacing:-.03em;margin:0}.ui-card__description{color:var(--text-muted);margin:0}.ui-tabs{gap:var(--space-2);flex-wrap:wrap;display:flex}.ui-tab{min-height:var(--button-height-sm);border-radius:var(--nav-item-radius);border:1px solid var(--button-secondary-border);background:color-mix(in srgb, var(--button-secondary-bg) 86%, white 14%);color:var(--button-secondary-text);padding:0 var(--button-padding-inline-compact);font:inherit;font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast);justify-content:center;align-items:center;display:inline-flex}.ui-tab:hover{background:color-mix(in srgb, var(--button-secondary-bg-hover) 84%, white 16%)}.ui-tab--active{background:linear-gradient(180deg, color-mix(in srgb, var(--button-primary-bg) 88%, white 12%), var(--button-primary-bg));color:var(--button-primary-text);border-color:var(--button-primary-bg);box-shadow:0 12px 20px #173a3724}.ui-tab:focus-visible{box-shadow:var(--field-focus-ring);outline:none}.ui-field-group{gap:var(--space-2);flex-direction:column;display:flex}.ui-field-label{font-size:var(--font-size-caption);line-height:var(--line-height-caption);color:var(--text-muted)}.ui-field-message{color:var(--text-muted);margin:0}.ui-input,.ui-textarea,.ui-select{border-radius:var(--field-radius);border:1px solid var(--field-border-color);background:color-mix(in srgb, var(--field-background) 80%, white 20%);width:100%;color:var(--field-text);padding:var(--field-padding-block) var(--field-padding-inline);box-sizing:border-box;font:inherit;transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast);box-shadow:inset 0 1px #ffffff80}.ui-input,.ui-select{min-height:var(--field-height)}.ui-textarea{resize:vertical;min-height:180px;font-family:var(--font-mono);font-size:var(--font-size-mono);line-height:var(--line-height-body)}.ui-input::placeholder,.ui-textarea::placeholder{color:var(--field-placeholder)}.ui-input:focus-visible,.ui-textarea:focus-visible,.ui-select:focus-visible{border-color:var(--border-strong);box-shadow:var(--field-focus-ring);outline:none}.ui-sheet{z-index:120;position:fixed;inset:0}.ui-sheet__backdrop{background:rgb(var(--ref-shadow-rgb) / .38);cursor:pointer;border:0;position:absolute;inset:0}.ui-sheet__panel{max-height:var(--layout-mobile-sheet-max-height);border-radius:var(--radius-3xl) var(--radius-3xl) 0 0;border:1px solid var(--panel-border-color);background:linear-gradient(180deg, color-mix(in srgb, var(--panel-background) 92%, white 8%), color-mix(in srgb, var(--panel-background) 98%, transparent 2%));box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);position:absolute;bottom:0;left:0;right:0;overflow:hidden}.ui-sheet__panel--left{border-radius:0 var(--radius-3xl) var(--radius-3xl) 0;width:min(420px,100vw - 24px);max-height:none;top:0;bottom:0;right:auto}.ui-sheet__header{z-index:1;justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--panel-padding-compact);border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--panel-background) 94%, white 6%);display:flex;position:sticky;top:0}.ui-sheet__title{font-size:var(--font-size-title);line-height:var(--line-height-tight);margin:0}.ui-sheet__description{margin:var(--space-2) 0 0;color:var(--text-muted)}.ui-sheet__content{max-height:calc(var(--layout-mobile-sheet-max-height) - 88px);padding:var(--panel-padding-compact);padding-bottom:calc(var(--panel-padding-compact) + var(--safe-area-bottom));overflow:auto}.ui-sheet__panel--left .ui-sheet__content{height:calc(100dvh - 88px);max-height:none;padding-bottom:var(--panel-padding-compact)}@media (width<=640px){.ui-card__header,.ui-card__content,.ui-card__footer{padding:var(--card-padding-compact)}}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px}button,input,textarea,select{font:inherit}code{font-family:var(--font-mono)}.app-shell{gap:var(--layout-gap);min-height:100vh;padding:var(--layout-shell-padding);max-width:var(--layout-content-max-width);box-sizing:border-box;font-size:var(--font-size-body);line-height:var(--line-height-body);isolation:isolate;flex-direction:column;margin:0 auto;display:flex;position:relative}.auth-screen{min-height:calc(100vh - (var(--layout-shell-padding) * 2));place-items:center;display:grid}.auth-card,.auth-error-card{width:min(100%,520px);margin:0 auto}.auth-card{gap:var(--space-4);flex-direction:column;padding:clamp(20px,3vw,28px);display:flex}.auth-card__actions{gap:var(--space-3);flex-direction:column;display:flex}.auth-card__hint,.auth-card__error{margin:0}.auth-card__error{color:var(--color-danger-soft-foreground)}.app-shell--mobile-nav{padding-bottom:calc(var(--layout-mobile-tabbar-height) + var(--safe-area-bottom) + var(--space-4))}.app-topbar{gap:var(--space-3);padding:var(--space-4);z-index:60;border:1px solid color-mix(in srgb, var(--border) 82%, white 18%);border-radius:var(--radius-3xl);background:linear-gradient(180deg, #fffcf6eb, #fcf6eddb), var(--surface-hero);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);flex-direction:column;display:flex;position:sticky;top:0}.app-topbar__main{justify-content:space-between;gap:var(--space-4);align-items:flex-start;display:flex}.app-topbar__mobile-actions{gap:var(--space-2);align-items:center;display:flex}.app-topbar__desktop-actions{gap:var(--space-3);flex-wrap:wrap;justify-content:flex-end;align-items:center;display:flex}.app-topbar__actions{gap:var(--space-3);flex-direction:column;align-items:flex-end;display:flex}.app-topbar__summary{align-self:flex-start}.topbar-identity{align-items:center;gap:var(--space-2);border:1px solid color-mix(in srgb, var(--border) 82%, white 18%);background:color-mix(in srgb, var(--card) 88%, white 12%);box-shadow:var(--shadow-sm);font-size:var(--font-size-caption);color:var(--muted-foreground);border-radius:999px;padding:8px 12px;display:inline-flex}.inline-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.main-stack,.mobile-workspace-shell,.workspace-rail-shell,.workspace-empty-state,.workspace-surface{gap:var(--layout-gap);flex-direction:column;min-width:0;display:flex}.workspace-surface{padding:0}.workspace-section-header{justify-content:space-between;gap:var(--space-4);align-items:flex-start;display:flex}.workspace-shell{grid-template-columns:var(--layout-rail-width) minmax(0, 1fr);gap:var(--layout-gap);align-items:start;display:grid}.workspace-rail{top:var(--layout-sticky-top);max-height:calc(100vh - (var(--layout-shell-padding) * 2));position:sticky;overflow:auto}.workspace-rail__header{align-items:start}.workspace-main{min-width:0}.workspace-empty{min-height:320px}.workbench-main,.builder-library,.playground-workbench,.workbench-single-flow,.workbench-view,.workbench-build-rail,.workbench-canvas-stage,.workbench-review-main,.workbench-review-rail,.workbench-inspect-rail,.workbench-inspect-main{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.builder-library,.playground-workbench{padding:var(--space-4);border:1px solid color-mix(in srgb, var(--border) 78%, white 22%);border-radius:var(--radius-3xl);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(#fffbf4eb,#f9f1e5e0);animation:.28s app-fade-up}.workbench-header{justify-content:space-between;gap:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid color-mix(in srgb, var(--border) 82%, white 18%);align-items:flex-start;display:flex}.workbench-header__actions{gap:var(--space-3);flex-direction:column;align-items:flex-end;display:flex}.workbench-layout{gap:var(--space-4);grid-template-columns:92px minmax(0,1fr);align-items:start;display:grid}.workbench-nav-rail,.workbench-content{min-width:0}.workbench-nav-rail{top:var(--layout-sticky-top);position:sticky}.workbench-nav{gap:var(--space-2);display:flex}.workbench-nav__item{border:1px solid color-mix(in srgb, var(--border) 84%, white 16%);min-height:72px;color:var(--foreground);border-radius:var(--radius-xl);text-align:left;box-shadow:var(--shadow-sm);background:linear-gradient(#fffdf9eb,#f6ede0e6);flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;padding:12px;display:flex}.workbench-nav__item span{font-weight:var(--font-weight-semibold)}.workbench-nav__item small{color:var(--muted-foreground);font-size:var(--font-size-caption)}.workbench-nav__item.is-active,.workbench-nav__item:hover{border-color:color-mix(in srgb, var(--ref-blue-700) 36%, var(--border) 64%);background:linear-gradient(#e4f7f3f5,#faf3e4eb);transform:translateY(-1px)}.workbench-nav-rail .workbench-nav{flex-direction:column}.workbench-nav-mobile{display:none}.workbench-card-accordion{border-radius:var(--card-radius)}.workbench-card-accordion__summary{align-items:center}.workbench-card-accordion__summary .eyebrow{margin-bottom:6px}.workbench-card-accordion__content{padding-top:0}.workbench-action-row{background:color-mix(in srgb, var(--card) 94%, white 6%);padding-top:var(--space-2);position:sticky;bottom:0}.workbench-build-shell{gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(320px,360px);align-items:start;display:grid}.workbench-review-shell{gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(320px,400px);align-items:start;display:grid}.workbench-inspect-shell{gap:var(--space-4);grid-template-columns:minmax(320px,360px) minmax(0,1fr);align-items:start;display:grid}.workbench-build-rail,.workbench-review-rail,.workbench-inspect-rail{top:var(--layout-sticky-top);position:sticky}.library-stack{gap:var(--space-4)}.library-toolbar{justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border:1px solid color-mix(in srgb, var(--border) 76%, white 24%);border-radius:var(--radius-xl);background:var(--surface-accent);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;display:flex}.library-toolbar__actions{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.library-list{gap:var(--space-3)}.mobile-bottom-nav{z-index:80;border-top:1px solid var(--border);background:color-mix(in srgb, var(--surface-panel) 94%, white 6%);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding-bottom:var(--safe-area-bottom);grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-bottom-nav__item{min-height:var(--layout-mobile-tabbar-height);color:var(--text-muted);background:0 0;border:0;border-radius:0;flex-direction:column;justify-content:center;gap:2px;padding:10px 12px;display:flex}.mobile-bottom-nav__item span{font-weight:var(--font-weight-semibold)}.mobile-bottom-nav__item small{color:inherit;font-size:var(--font-size-caption)}.mobile-bottom-nav__item.is-active{color:var(--text-strong);background:color-mix(in srgb, var(--surface-muted) 92%, white 8%)}.mobile-bottom-nav__item:hover{background:color-mix(in srgb, var(--surface-muted) 88%, white 12%)}.workspace-rail .editor input,.workspace-rail .editor select{background:var(--card)}.panel{background:var(--panel-background);border:1px solid var(--panel-border-color);border-radius:var(--panel-radius);box-shadow:var(--panel-shadow)}.app-header h1,.panel-header h2,.detail-header h2{font-size:var(--font-size-title);line-height:var(--line-height-tight);letter-spacing:-.03em;margin:0}.app-header p,.panel-header p,.callout p,.detail-header p,.muted{color:var(--muted-foreground)}.eyebrow{align-items:center;gap:var(--space-1);border:1px solid var(--chip-border-color);background:var(--chip-background);color:var(--chip-text);border-radius:var(--chip-radius);padding:var(--chip-padding-block) var(--chip-padding-inline);font-size:var(--font-size-caption);line-height:var(--line-height-caption);margin-bottom:var(--space-3);text-transform:uppercase;letter-spacing:.04em;display:inline-flex}.app-header{padding:var(--space-5);gap:var(--space-4);flex-direction:column;display:flex}.app-header__top{justify-content:space-between;gap:var(--space-5);align-items:flex-start;display:flex}.app-header__actions{gap:var(--space-3);align-items:flex-start;display:flex}.app-nav{flex-wrap:wrap;gap:10px;display:flex}.text-link{color:var(--foreground);text-underline-offset:3px;font-size:.92rem;text-decoration:underline}.text-link:hover{color:#27272a}.nav-button{border:1px solid var(--nav-item-border);background:var(--nav-item-background);color:var(--nav-item-text);border-radius:var(--nav-item-radius);text-align:left;font:inherit;cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);padding:12px 14px}.nav-button:hover,.nav-button.is-active{background:var(--nav-item-background-active);color:var(--nav-item-text-active);border-color:var(--nav-item-background-active)}.summary-chip{border:1px solid var(--border);background:var(--muted);border-radius:var(--radius-xl);padding:var(--space-4)}.app-summary{gap:var(--space-2);grid-template-columns:repeat(3,minmax(120px,1fr));display:grid}.summary-chip strong{font-size:var(--font-size-metric);margin-top:var(--space-1);display:block}.stat-label{font-size:var(--font-size-caption);line-height:var(--line-height-caption);color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.04em}.stack-gap{gap:var(--space-5);padding:var(--space-5);flex-direction:column;display:flex}.panel-header{justify-content:space-between;gap:var(--space-6);align-items:end;display:flex}.catalog-layout{grid-template-columns:320px minmax(0,1fr);gap:18px;display:grid}.catalog-list{gap:18px;display:grid}.catalog-section{border:1px solid var(--border);background:var(--muted);border-radius:18px;padding:14px}.catalog-section h3{margin:0 0 10px}.catalog-card-list{gap:10px;display:grid}.catalog-item{border:1px solid var(--border);background:var(--card);text-align:left;cursor:pointer;border-radius:14px;padding:12px}.catalog-item.is-active{border-color:var(--foreground);box-shadow:inset 0 0 0 1px var(--foreground)}.catalog-item h4{margin:0 0 4px}.catalog-detail{flex-direction:column;gap:16px;display:flex}.detail-header{justify-content:space-between;align-items:start;gap:20px;display:flex}.badge-row,.chip-row{flex-wrap:wrap;gap:8px;display:flex}.badge,.chip{border:1px solid var(--chip-border-color);border-radius:var(--chip-radius);background:var(--chip-background);color:var(--chip-text);padding:var(--chip-padding-block) var(--chip-padding-inline);font-size:var(--font-size-caption);line-height:var(--line-height-caption);align-items:center;display:inline-flex}.chip--success{background:var(--color-success-soft);color:var(--color-success-soft-foreground);border-color:var(--color-success-soft-border)}.chip--danger{background:var(--color-danger-soft);color:var(--color-danger-soft-foreground);border-color:var(--color-danger-soft-border)}.grid-2,.grid-3,.grid-4{gap:12px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.metric-card,.detail-card,.trace-card,.handle-card,.edge-card{border:1px solid var(--card-border-color);border-radius:var(--card-radius);background:var(--card-background);padding:var(--card-padding);box-shadow:var(--card-shadow);position:relative;overflow:hidden}.metric-card:before,.detail-card:before,.trace-card:before,.handle-card:before,.edge-card:before{content:"";pointer-events:none;background:linear-gradient(90deg,#ffffffc7,#0000);height:1px;position:absolute;inset:0 0 auto}.metric-card strong{font-size:var(--font-size-metric);margin:var(--space-2) 0 var(--space-1);display:block}.label{font-size:var(--font-size-caption);color:var(--muted-foreground)}.handle-card h4,.edge-card h4,.detail-card h3{margin:0 0 8px}.json-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.editor{flex-direction:column;gap:8px;display:flex}.editor textarea,.editor input,.editor select,.demo-bar select{width:100%;min-height:var(--field-height);border-radius:var(--field-radius);border:1px solid var(--field-border-color);background:var(--field-background);color:var(--field-text);padding:var(--field-padding-block) var(--field-padding-inline);box-sizing:border-box;font:inherit}.editor textarea{resize:vertical;min-height:180px;font-family:var(--font-mono);font-size:var(--font-size-mono)}#endpoint-description{min-height:110px}.editor-actions,.demo-bar,.playground-toolbar,.playground-runner{flex-wrap:wrap;align-items:center;gap:10px;display:flex}button{min-height:var(--button-height-md);border-radius:var(--button-radius);border:1px solid var(--button-primary-bg);background:var(--button-primary-bg);color:var(--button-primary-text);padding:0 var(--button-padding-inline);cursor:pointer;font:inherit;font-size:var(--button-font-size);font-weight:var(--button-font-weight);transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast)}button:hover{background:var(--button-primary-bg-hover);border-color:var(--button-primary-bg-hover)}button.secondary{background:var(--button-secondary-bg);color:var(--button-secondary-text);border-color:var(--button-secondary-border)}button.secondary:hover{background:var(--button-secondary-bg-hover)}button:focus-visible,.nav-button:focus-visible,.catalog-item:focus-visible,.node-chip:focus-visible,.api-collection-item__body:focus-visible,.doc-index__item--button:focus-visible,.trace-part-button:focus-visible,.trace-span-row:focus-visible,.trace-timeline-board__bar:focus-visible{box-shadow:var(--field-focus-ring);outline:none}pre.code-block,.json-block{background:var(--background);border:1px solid var(--border);border-radius:var(--radius-2xl);padding:var(--space-4);font-size:var(--font-size-mono);line-height:var(--line-height-body);font-family:var(--font-mono);margin:0;overflow:auto}.json-block{white-space:pre-wrap}.empty-state{border:1px dashed color-mix(in srgb, var(--border) 90%, var(--ref-blue-200) 10%);border-radius:var(--card-radius);padding:var(--space-5);color:var(--muted-foreground);background:linear-gradient(#fffcf7e6,#f1eadebf)}.callout{border:1px solid var(--border);background:var(--muted);border-radius:18px;padding:14px}.trace-list{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;display:grid}.trace-card strong{margin-bottom:8px;display:block}.button-link{border:1px solid var(--border);min-height:38px;color:var(--foreground);background:var(--card);border-radius:999px;justify-content:center;align-items:center;padding:0 14px;font-weight:600;text-decoration:none;display:inline-flex}.trace-viewer__summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.trace-viewer__header{align-items:start}.trace-viewer__actions{flex-direction:column;align-items:flex-end;gap:10px;display:flex}.trace-viewer--expanded{z-index:100;background:var(--background);position:fixed;inset:12px;overflow:auto;box-shadow:0 20px 60px #0f172a2e}.trace-viewer__layout{grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);align-items:start;gap:16px;display:grid}.trace-spans-shell{display:block}.trace-span-rail,.trace-span-detail{flex-direction:column;gap:12px;min-width:0;display:flex}.trace-span-detail,.trace-detail-split{display:none}.trace-span-rail__root{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--muted);padding:var(--space-3);justify-content:space-between;align-items:center;gap:12px;display:flex}.trace-span-rail__root p{margin:4px 0 0}.trace-span-rail__rows{flex-direction:column;gap:8px;display:flex}.trace-span-row{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--card);width:100%;color:var(--foreground);padding:var(--space-3);text-align:left;grid-template-columns:180px minmax(0,1fr);align-items:center;gap:12px;display:grid}.trace-span-row:hover,.trace-span-row.is-active{border-color:var(--foreground);background:var(--muted)}.trace-span-row__tree{align-items:center;gap:8px;min-width:0;display:flex}.trace-span-row__branch-mark{color:var(--muted-foreground)}.trace-span-row__tree strong,.trace-span-row__type{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.trace-span-row__type{color:var(--muted-foreground);font-size:var(--font-size-caption)}.trace-span-row__waterfall{flex-direction:column;align-items:stretch;gap:8px;min-width:0;display:flex}.trace-span-row__track-wrap{width:100%;min-width:0}.trace-span-row__track-wrap .trace-waterfall__track{width:100%}.trace-span-row__chips{flex-wrap:wrap;justify-content:flex-start;gap:8px;display:flex}.trace-span-detail__parts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.trace-span-detail__body{min-width:0}.trace-timeline-board{flex-direction:column;gap:18px;display:flex}.trace-timeline-board__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.trace-timeline-board__scroll{cursor:ew-resize;border:1px solid var(--border);border-radius:var(--panel-radius);background:var(--muted);padding-bottom:8px;overflow:auto hidden}.trace-timeline-board__content{min-width:100%;position:relative}.trace-timeline-board__axis-row{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:linear-gradient(180deg, var(--muted) 0%, transparent 100%);height:68px;position:relative}.trace-timeline-board__axis-line{background:var(--foreground);opacity:.55;width:1px;position:absolute;top:18px;bottom:0;left:0}.trace-timeline-board__axis-start,.trace-timeline-board__axis-end{z-index:1;position:absolute;top:-14px}.trace-timeline-board__axis-end{right:0}.trace-timeline-board__tick{border-left:1px dashed var(--border);position:absolute;top:0;bottom:0}.trace-timeline-board__tick span{color:var(--muted-foreground);font-size:var(--font-size-caption);position:absolute;top:12px;left:8px}.trace-timeline-board__compact-track{min-height:120px;position:relative;overflow:hidden}.trace-timeline-board__bar{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--card);min-width:0;height:46px;color:var(--foreground);text-align:left;white-space:nowrap;padding:8px 12px;position:absolute;overflow:hidden;box-shadow:0 1px 2px #0f172a0f}.trace-timeline-board__bar:hover,.trace-timeline-board__bar.is-active{border-color:var(--foreground);background:var(--background)}.trace-timeline-board__bar.is-error{border-color:var(--color-danger-soft-border)}.trace-timeline-board__bar strong,.trace-timeline-board__bar span{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.trace-timeline-board__bar span{color:var(--muted-foreground);font-size:var(--font-size-caption);margin-top:4px}.trace-timeline-board__bar.is-stacked{opacity:.96}.trace-timeline-board__bar.is-compact{padding-inline:8px}.trace-timeline-board__bar.is-micro{border-radius:999px;padding:0}.trace-timeline-board__bar.is-micro strong,.trace-timeline-board__bar.is-micro span,.trace-timeline-board__bar.is-micro .trace-timeline-board__bar-chip{display:none}.trace-timeline-board__meta-chip{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--background);min-width:0;height:26px;color:var(--muted-foreground);text-align:left;font-size:var(--font-size-caption);white-space:nowrap;text-overflow:ellipsis;padding:4px 10px;line-height:1.2;position:absolute;overflow:hidden}.trace-timeline-board__meta-chip:hover,.trace-timeline-board__meta-chip.is-active{border-color:var(--foreground);color:var(--foreground);background:var(--card)}.trace-timeline-board__grid-line{border-left:1px dashed #18181b1f;position:absolute;top:0;bottom:0}.trace-timeline-board__playhead{z-index:3;pointer-events:none;position:absolute;top:0;bottom:0;transform:translate(-50%)}.trace-timeline-board__playhead-line{background:var(--foreground);width:2px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 0 0 1px #ffffff52}.trace-timeline-board__playhead-handle{border-radius:var(--radius-pill);border:1px solid var(--foreground);background:var(--foreground);min-width:88px;color:var(--foreground-inverse);font-size:var(--font-size-caption);line-height:var(--line-height-caption);pointer-events:auto;cursor:ew-resize;z-index:4;padding:8px 12px;position:absolute;top:-16px;left:50%;transform:translate(-50%)}.trace-timeline-board__playhead-handle:hover{background:#27272a}.trace-detail-split{grid-template-columns:minmax(240px,.42fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.trace-parts,.trace-part-detail{min-width:0}.trace-part-button{border:1px solid var(--border);background:var(--card);width:100%;color:var(--foreground);border-radius:var(--radius-xl);padding:var(--space-3) var(--space-4);text-align:left;justify-content:space-between;align-items:center;gap:10px;display:flex}.trace-part-button:hover,.trace-part-button.is-active{border-color:var(--foreground);background:var(--muted)}.trace-part-button span{color:var(--muted-foreground)}.trace-lower-rails{grid-template-columns:minmax(220px,.52fr) minmax(0,1fr) minmax(280px,.82fr);align-items:start;gap:16px;display:grid}.trace-final-rail{flex-direction:column;gap:16px;min-width:0;display:flex}.trace-viewer__waterfall,.trace-viewer__detail{flex-direction:column;gap:12px;display:flex}.trace-waterfall__item{gap:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-2xl);background:var(--card);width:100%;padding:var(--space-4);text-align:left;flex-direction:column;display:flex}.trace-waterfall__item.is-active{border-color:var(--foreground);box-shadow:var(--shadow-focus)}.trace-waterfall__meta p{margin:4px 0 0}.trace-waterfall__track{border-radius:var(--radius-pill);background:var(--muted);height:12px;position:relative;overflow:hidden}.trace-waterfall__bar{background:linear-gradient(90deg,#111827,#374151);border-radius:999px;min-width:18px;height:100%}.trace-waterfall__bar.is-error{background:linear-gradient(90deg,#991b1b,#dc2626)}.trace-event,.trace-diff{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--card);padding:var(--space-3)}.trace-horizontal-map{padding-bottom:8px;overflow-x:auto}.trace-horizontal-map__content{min-width:max-content;position:relative}.trace-horizontal-map__overlay{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.trace-horizontal-map__path{fill:none;stroke:var(--border);stroke-width:2px;stroke-linecap:round}.trace-horizontal-map__path.is-traversed{stroke:var(--foreground)}.trace-horizontal-map__path.is-selected{stroke:var(--color-success-soft-border);stroke-width:3px}.trace-horizontal-step{width:176px;position:absolute}.trace-horizontal-step__node{box-sizing:border-box;border:1px solid var(--border);background:var(--card);width:100%;min-height:92px;color:var(--foreground);border-radius:var(--radius-xl);text-align:left;flex-direction:column;gap:4px;padding:10px;display:flex}.trace-horizontal-step__node strong{font-size:.98rem}.trace-horizontal-step__node .chip-row{gap:6px}.trace-horizontal-step__node .chip{padding:4px 10px}.trace-horizontal-step__node.is-active,.trace-horizontal-step__node:hover{border-color:var(--foreground);background:var(--muted)}.trace-horizontal-step__node.is-visited{box-shadow:inset 0 0 0 1px #16a34a0f}.trace-horizontal-step__node span:not(.label):not(.chip){color:var(--muted-foreground);font-size:var(--font-size-caption)}.trace-horizontal-map__edge-label{fill:var(--muted-foreground);letter-spacing:.04em;font-size:11px;font-weight:600}.trace-horizontal-map__edge-label.is-traversed{fill:var(--foreground)}.trace-horizontal-map__edge-label.is-selected{fill:var(--color-success-soft-border)}.trace-horizontal-map__edge-label-box{fill:#fffffff0;stroke:var(--border);stroke-width:1px}.trace-horizontal-map__edge-label-box.is-traversed{fill:#fffffffa;stroke:var(--foreground)}.trace-horizontal-map__edge-label-box.is-selected{fill:#f0fdf4fa;stroke:var(--color-success-soft-border)}.trace-topology-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.trace-topology-card{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--card);padding:var(--space-3)}.trace-topology-card.is-visited{border-color:var(--color-success-soft-border);box-shadow:inset 0 0 0 1px #16a34a14}.trace-edge-row{border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-3);background:var(--card);justify-content:space-between;align-items:start;gap:12px;display:flex}.trace-edge-row p{margin:4px 0 0}.trace-timeline{flex-direction:column;gap:0;display:flex}.trace-timeline__item{width:100%;color:var(--foreground);text-align:left;background:0 0;border:0;border-radius:0;grid-template-columns:18px minmax(0,1fr);gap:12px;padding:0;display:grid}.trace-timeline__item:hover{background:0 0}.trace-timeline__item.is-active .trace-timeline__content{border-color:var(--foreground);background:var(--muted)}.trace-timeline__marker{background:var(--foreground);width:12px;height:12px;box-shadow:0 0 0 4px var(--muted);border-radius:999px;margin-top:24px}.trace-timeline__content{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--card);margin-bottom:12px;position:relative}.trace-timeline__content:before{content:"";background:var(--border);width:2px;position:absolute;top:0;bottom:-12px;left:-18px}.flow-shell{grid-template-columns:300px minmax(0,1fr) 320px;gap:16px;min-height:720px;display:grid}.flow-shell--focused{grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr);align-items:start;gap:18px}.playground-control-grid{gap:var(--space-4);grid-template-columns:minmax(300px,.95fr) minmax(0,1.05fr);align-items:start;display:grid}.playground-meta-grid{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.playground-meta-grid__description{grid-column:1/-1}.playground-sidebar,.playground-inspector{flex-direction:column;gap:14px;display:flex}.playground-canvas{border:1px solid color-mix(in srgb, var(--border) 78%, white 22%);border-radius:var(--radius-2xl);width:100%;min-width:0;height:clamp(520px,72vh,760px);box-shadow:var(--shadow-md);background:radial-gradient(circle at 0 0,#e4f7f3b3,#0000 26%),linear-gradient(#fffcf7f5,#f4ece1eb);overflow:hidden}.playground-canvas--large{height:clamp(560px,76vh,820px)}.palette-item{border:1px solid var(--border);background:var(--card);border-radius:14px;padding:12px}.palette-item h4{margin:0 0 6px}.playground-node{border:1px solid color-mix(in srgb, var(--border) 80%, white 20%);border-radius:var(--radius-xl);min-width:180px;padding:var(--space-3);box-shadow:0 1px 2px var(--color-shadow), 0 12px 24px #251c140f;transition:border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);background:linear-gradient(#fffcf7f5,#f8f0e6eb)}.playground-node.is-selected{border-color:color-mix(in srgb, var(--ref-blue-700) 42%, var(--border) 58%);transform:translateY(-1px);box-shadow:0 0 0 1px #0f766e47,0 18px 28px #0f766e1f}.playground-node__title{font-weight:600}.playground-node__meta{font-size:var(--font-size-caption);color:var(--muted-foreground);margin-top:var(--space-1)}.playground-canvas .react-flow__handle,.playground-canvas--large .react-flow__handle{border-width:2px;border-color:var(--foreground);background:var(--card);width:14px;height:14px;box-shadow:0 0 0 2px var(--card);position:absolute}.playground-canvas .react-flow__handle:before,.playground-canvas--large .react-flow__handle:before{content:"";border-radius:999px;position:absolute;inset:-8px}.playground-canvas .react-flow__handle:hover,.playground-canvas .react-flow__handle.connectingfrom,.playground-canvas .react-flow__handle.connectingto,.playground-canvas--large .react-flow__handle:hover,.playground-canvas--large .react-flow__handle.connectingfrom,.playground-canvas--large .react-flow__handle.connectingto{background:var(--foreground)}.playground-canvas .react-flow__handle.playground-port-handle.is-compatible,.playground-canvas--large .react-flow__handle.playground-port-handle.is-compatible{background:var(--color-success-soft);border-color:var(--color-success-soft-border);box-shadow:0 0 0 2px var(--card), 0 0 0 5px #16a34a26}.playground-canvas .react-flow__handle.playground-port-handle.is-active,.playground-canvas--large .react-flow__handle.playground-port-handle.is-active{background:var(--foreground);border-color:var(--foreground);box-shadow:0 0 0 2px var(--card), 0 0 0 5px #18181b29}.playground-canvas .react-flow__handle.playground-port-handle.is-dimmed,.playground-canvas--large .react-flow__handle.playground-port-handle.is-dimmed{opacity:.28}.playground-canvas .react-flow__handle.playground-port-handle.is-dimmed:hover,.playground-canvas--large .react-flow__handle.playground-port-handle.is-dimmed:hover{background:var(--card)}.loading,.error-panel{max-width:560px;margin:48px auto;padding:24px}.playground-panel{overflow:hidden}.playground-header{align-items:start;padding-bottom:2px}.playground-header__meta{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.playground-topbar{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.playground-canvas__header-meta{gap:var(--space-3);flex-direction:column;align-items:flex-end;display:flex}.playground-mobile-sheet{gap:var(--space-4);flex-direction:column;display:flex}.compact-card{flex-direction:column;gap:10px;display:flex}.compact-card>.muted{margin:0}.endpoint-workspace{gap:var(--layout-gap);flex-direction:column;display:flex}.endpoint-workspace__header{padding:var(--space-5)}.endpoint-workspace__actions{align-items:center;gap:10px;display:flex}.overview-grid,.payload-preview-grid{align-items:start}.history-layout{gap:var(--space-4);grid-template-columns:minmax(280px,320px) minmax(0,1fr);align-items:start;display:grid}.history-rail,.history-main{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.builder-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.builder-summary .summary-chip{flex-direction:column;gap:8px;display:flex}.builder-summary .summary-chip p{margin:0}.playground-main{flex-direction:column;gap:14px;min-width:0;display:flex}.playground-rail{min-width:0}.rail-intro{background:linear-gradient(#fff 0%,#fafafa 100%)}.rail-section h3,.canvas-header h3{margin:0 0 6px}.rail-section p,.canvas-header p{margin:0}.playground-rail-grid{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.playground-rail-primary,.playground-rail-secondary{flex-direction:column;gap:14px;min-width:0;display:flex}.testing-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.compatibility-card,.log-card,.test-card,.compatibility-group,.schema-card,.doc-index__item{border:1px solid var(--border);background:var(--card);border-radius:16px;padding:12px}.compatibility-card__header,.log-card__header,.compatibility-group__title,.schema-card__header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.doc-index{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.doc-index__item{color:var(--foreground);flex-direction:column;gap:6px;text-decoration:none;display:flex}.doc-index__item--button{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--card);width:100%;padding:var(--space-3);text-align:left}.doc-index__item--button:hover,.doc-index__item--button.is-active{background:var(--muted);border-color:var(--foreground);color:var(--foreground)}.doc-index__item span{color:var(--muted-foreground);font-size:var(--font-size-caption)}.docs-hub{gap:var(--space-4);grid-template-columns:minmax(260px,320px) minmax(0,1fr);align-items:start;display:grid}.docs-hub__index{gap:var(--space-3);flex-direction:column;display:flex}.docs-hub__article{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.docs-hub__article-header{align-items:start}.node-library-layout{gap:var(--space-4);grid-template-columns:minmax(260px,320px) minmax(0,1fr);align-items:start;display:grid}.node-library-sidebar,.node-library-main{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.library-playground-layout{gap:var(--space-4);grid-template-columns:minmax(240px,300px) minmax(0,1fr) minmax(260px,320px);align-items:start;display:grid}.library-playground-sidebar,.library-playground-main,.library-playground-inspector{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.playground-node--library{min-width:200px}.markdown-article{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.markdown-article__h1,.markdown-article__h2,.markdown-article__h3{margin:0}.markdown-article__h1{font-size:var(--font-size-title)}.markdown-article__h2{font-size:var(--font-size-section);text-transform:uppercase;letter-spacing:.04em}.markdown-article__h3{font-size:var(--font-size-body)}.markdown-article__paragraph{color:var(--foreground);margin:0}.markdown-article__list{gap:var(--space-1);flex-direction:column;margin:0;padding-left:18px;display:flex}.markdown-article__list li{font-size:var(--font-size-body);line-height:var(--line-height-body)}.markdown-article__code{margin-top:0}.endpoint-docs{flex-direction:column;gap:12px;min-width:0;display:flex}.endpoint-docs__header{padding-bottom:2px}.endpoint-docs__meta{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.endpoint-docs__accordion{flex-direction:column;gap:10px;display:flex}.accordion-card{border:1px solid var(--border);border-radius:var(--card-radius);background:var(--card-background);overflow:hidden}.accordion-card[open]{box-shadow:inset 0 0 0 1px #18181b0a}.accordion-summary{cursor:pointer;padding:var(--card-padding);background:var(--card-background-subtle);justify-content:space-between;align-items:center;gap:12px;list-style:none;display:flex}.accordion-summary::-webkit-details-marker{display:none}.accordion-summary:after{content:"+";border:1px solid var(--border);background:var(--muted);width:28px;height:28px;color:var(--muted-foreground);border-radius:999px;flex:none;justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:inline-flex}.accordion-card[open] .accordion-summary:after{content:"-"}.accordion-summary div{flex-direction:column;gap:4px;min-width:0;display:flex}.accordion-summary strong{font-size:.97rem}.accordion-summary span{color:var(--muted-foreground);font-size:.84rem}.accordion-content{min-width:0;padding:0 14px 14px}.accordion-content>.json-block,.accordion-content>.code-block{margin-top:0}.playground-inline-disclosure{border-color:color-mix(in srgb, var(--border) 82%, white 18%);box-shadow:var(--shadow-sm);background:linear-gradient(#fffbf5f0,#f6ede1e0)}.playground-inline-disclosure__summary{padding:var(--space-3) var(--space-4)}.playground-inline-disclosure__summary strong{font-size:.95rem}.playground-inline-disclosure__summary span{max-width:52ch}.playground-inline-disclosure__summary:after{content:"›";transition:transform var(--transition-fast), background var(--transition-fast), color var(--transition-fast);font-size:1.35rem;line-height:1;transform:rotate(90deg)}.playground-inline-disclosure[open] .playground-inline-disclosure__summary:after{content:"›";transform:rotate(-90deg)}.playground-inline-disclosure__content{padding-top:0}.doc-section{scroll-margin-top:20px}.tab-bar{flex-wrap:wrap;gap:8px;display:flex}.tab-button{background:var(--card);color:var(--foreground);border-color:var(--border)}.tab-button:hover,.tab-button.is-active,.tab-button[aria-selected=true]{background:var(--muted);color:var(--foreground);border-color:var(--foreground)}.tab-button:disabled{opacity:.45;cursor:not-allowed}.inspector-panel{gap:var(--space-4);flex-direction:column;display:flex}.inspector-header{align-items:flex-start}.inspector-header p{margin:var(--space-2) 0 0;max-width:62ch}.inspector-body{gap:var(--space-3)}.inspector-column-stack{gap:var(--space-3);flex-direction:column;display:flex}.inspector-split-grid{align-items:start}.inspector-section{gap:var(--space-3);flex-direction:column;display:flex}.inspector-section .compatibility-card__header p{margin:4px 0 0}.inspector-overview-item{flex-direction:column;gap:4px;min-width:0;display:flex}.inspector-overview-item strong{font-size:var(--font-size-caption);line-height:var(--line-height-caption);color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.04em}.inspector-overview-item span{color:var(--foreground);font-weight:var(--font-weight-medium);word-break:break-word}.inspector-schema-card,.inspector-json-card,.inspector-handle-card,.inspector-test-card{gap:var(--space-3);flex-direction:column;display:flex}.inspector-handle-stack{gap:var(--space-2);flex-direction:column;display:flex}.inspector-json-card .json-block{margin-top:0}.inspector-panel .grid-2,.inspector-panel .grid-3,.inspector-panel .inspector-split-grid,.workbench-review-rail .grid-2,.workbench-review-rail .grid-3{grid-template-columns:1fr}.inspector-accordion .accordion-summary strong{font-size:.95rem}.inspector-accordion .accordion-summary span{max-width:56ch}.playground-inspector--sticky{top:var(--layout-sticky-top);position:sticky}.playground-inspector .detail-card,.playground-inspector .panel,.playground-inspector .catalog-item{min-width:0}.stack-list{flex-direction:column;gap:8px;display:flex}.connection-pill{border:1px solid var(--border);background:var(--muted);color:var(--muted-foreground);word-break:break-word;border-radius:12px;padding:10px 12px;font-size:.82rem}.chip--method{background:var(--color-primary-soft);color:var(--color-primary-soft-foreground);border-color:var(--color-primary-soft-border)}.node-strip{flex-wrap:wrap;gap:10px;display:flex}.node-chip{border:1px solid var(--border);background:var(--card);min-width:120px;color:var(--foreground);text-align:left;border-radius:14px;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:10px 12px;display:flex}.node-chip:hover,.node-chip.is-active{background:var(--muted);border-color:var(--foreground);color:var(--foreground)}.node-chip small{color:var(--muted-foreground);margin-top:4px;font-size:.78rem;display:block}.api-collection-list{flex-direction:column;gap:8px;display:flex}.api-collection-item{border:1px solid color-mix(in srgb, var(--border) 80%, white 20%);background:var(--card-background);border-radius:var(--card-radius);padding:var(--card-padding-compact);color:var(--foreground);gap:var(--space-3);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast), border-color var(--transition-fast), background var(--transition-fast), box-shadow var(--transition-fast);flex-direction:column;display:flex}.api-collection-item:hover,.api-collection-item.is-active{border-color:color-mix(in srgb, var(--ref-blue-700) 34%, var(--border) 66%);color:var(--foreground);box-shadow:var(--shadow-md);background:linear-gradient(#fffcf7fa,#eefaf7db);transform:translateY(-1px)}.api-collection-item__top{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.api-collection-item__path{font-family:var(--font-mono);word-break:break-all;margin-bottom:6px;font-size:.86rem}.api-collection-item p{margin:0}.api-collection-item__body{width:100%;color:inherit;text-align:left;background:0 0;border:0;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:0;display:flex}.api-collection-item__body:hover{background:0 0}.api-collection-item__delete{width:100%}.api-collection-item__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.create-endpoint-card{background:linear-gradient(#fff 0%,#fafafa 100%)}.checkbox-row{color:var(--foreground);align-items:flex-start;gap:10px;display:flex}.checkbox-row input{margin-top:2px}.api-collection-item .playground-runner{margin-top:10px}.api-console-routebar{grid-template-columns:minmax(180px,.7fr) minmax(0,1fr);align-items:start;gap:10px;display:grid}.api-route-card,.api-response-card{border:1px solid color-mix(in srgb, var(--border) 82%, white 18%);border-radius:var(--radius-xl);padding:var(--space-3);background:linear-gradient(#fffaf3f5,#f1e9ded6)}@keyframes app-fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.api-route-card{flex-direction:column;gap:8px;display:flex}.api-route-card strong{font-family:var(--font-mono);word-break:break-all}.api-route-card p,.api-response-card p{margin:0}.api-response-card{flex-direction:column;gap:10px;display:flex}.api-response-card__meta{flex-wrap:wrap;gap:8px;display:flex}.endpoint-chat-panel{min-width:0}.chat-thread{flex-direction:column;gap:10px;max-height:320px;padding-right:2px;display:flex;overflow:auto}.chat-bubble{border:1px solid color-mix(in srgb, var(--border) 82%, white 18%);background:linear-gradient(#fffcf7f5,#f3ebdfe0);border-radius:18px;flex-direction:column;gap:6px;padding:12px 14px;display:flex}.chat-bubble strong,.chat-bubble p{margin:0}.chat-bubble--user{border-color:color-mix(in srgb, var(--ref-blue-700) 24%, var(--border) 76%);background:linear-gradient(#e7f7f2fa,#d6efe8e6);max-width:min(88%,42rem);margin-left:auto}.chat-bubble--assistant,.chat-bubble--system{max-width:min(92%,44rem)}.chat-bubble--system{background:linear-gradient(#fff7eefa,#f5e8e1e6)}@media (width<=1280px){.workspace-shell,.workbench-layout,.workbench-build-shell,.workbench-review-shell,.workbench-inspect-shell{grid-template-columns:1fr}.workspace-rail{max-height:none;position:static}.workbench-nav-rail,.workbench-build-rail,.workbench-review-rail,.workbench-inspect-rail{max-height:none;position:static;overflow:visible}.flow-shell,.catalog-layout,.docs-hub,.node-library-layout,.library-playground-layout,.playground-control-grid,.history-layout,.builder-summary,.flow-shell--focused,.trace-lower-rails{grid-template-columns:1fr}.playground-inspector--sticky{position:static}}@media (width<=900px){.app-shell{padding:var(--layout-shell-padding)}.app-shell--mobile-nav{padding-bottom:calc(var(--layout-mobile-tabbar-height) + var(--safe-area-bottom) + var(--space-4))}.workspace-section-header{flex-direction:column}.workbench-header,.workbench-header__actions{align-items:flex-start}.library-toolbar{align-items:stretch}.library-toolbar__actions{width:100%}.json-grid,.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.builder-summary{gap:10px}.playground-canvas,.playground-canvas--large{height:520px}.playground-toolbar,.playground-runner,.demo-bar{flex-direction:column;align-items:stretch}.playground-meta-grid,.api-console-routebar{grid-template-columns:1fr}.app-header__top{flex-direction:column}.app-header__actions,.playground-header__meta,.endpoint-docs__meta,.playground-canvas__header-meta{flex-direction:column;align-items:stretch;width:100%}.app-topbar__main{flex-direction:column;align-items:flex-start}.app-topbar__mobile-actions{justify-content:flex-end;width:100%}.app-topbar__desktop-actions{justify-content:space-between;width:100%}.workbench-action-row{background:0 0;padding-top:0;position:static}.app-summary{grid-template-columns:1fr}.compatibility-card__header,.log-card__header,.compatibility-group__title,.schema-card__header{flex-direction:column}.node-strip{grid-template-columns:1fr 1fr;display:grid}.playground-rail-grid{gap:12px}.workbench-nav-mobile{display:block}.workbench-nav-mobile .workbench-nav{z-index:70;border:1px solid color-mix(in srgb, var(--border) 76%, white 24%);border-radius:var(--radius-3xl);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:8px;padding-bottom:var(--safe-area-bottom);background:linear-gradient(#fffbf4f0,#f8f0e4e6);grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid;position:fixed;bottom:10px;left:10px;right:10px}.workbench-nav-mobile .workbench-nav__item{min-height:var(--layout-mobile-tabbar-height);border-radius:var(--radius-xl);text-align:center;box-shadow:none;background:0 0;border:1px solid #0000;align-items:center;padding:10px 12px}.workbench-nav-mobile .workbench-nav__item small{color:inherit}}@media (width<=640px){.app-shell{padding:var(--space-3);gap:var(--space-3);padding-bottom:calc(var(--layout-mobile-tabbar-height) + var(--safe-area-bottom) + var(--space-3))}.stack-gap{padding:var(--space-4)}.panel-header,.detail-header,.accordion-summary{flex-direction:column;align-items:start}.playground-node{min-width:156px}.accordion-summary:after{align-self:flex-end}.playground-topbar,.builder-summary,.playground-rail-grid,.playground-rail-primary,.playground-rail-secondary{gap:10px}.library-toolbar,.api-collection-item__actions{flex-direction:column;align-items:stretch}.playground-inspector{gap:10px}.detail-card,.metric-card,.trace-card,.handle-card,.edge-card{padding:var(--card-padding-compact);border-radius:var(--card-radius)}.node-strip{grid-template-columns:1fr}.playground-canvas,.playground-canvas--large{height:420px}.trace-viewer__summary,.trace-viewer__layout{grid-template-columns:1fr}.trace-viewer__actions{align-items:stretch;width:100%}.trace-viewer--expanded{border-radius:0;inset:0}.trace-span-row{grid-template-columns:1fr}.trace-span-rail__root{flex-direction:column;align-items:flex-start}.trace-horizontal-step{flex-basis:240px}}.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#777;--xy-background-pattern-lines-color-default:#777;--xy-background-pattern-cross-color-default:#777;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}
