@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url("./media/geist-variable-EIZ66W5S.woff2") format("woff2")}@font-face{font-family:Geist Mono;font-style:normal;font-weight:400 500;font-display:swap;src:url("./media/geist-mono-variable-XR4HLIUF.woff2") format("woff2")}@font-face{font-family:"Instrument Serif";font-style:normal;font-weight:400;font-display:swap;src:url("./media/instrument-serif-regular-J67N4HEY.woff2") format("woff2")}@font-face{font-family:"Instrument Serif";font-style:italic;font-weight:400;font-display:swap;src:url("./media/instrument-serif-italic-ZKFRSWYJ.woff2") format("woff2")}:root{--brand-primary: #581cff;--brand-primary-deep: #3f0fd1;--brand-primary-soft: #ede5ff;--brand-accent: #00d2ff;--brand-accent-soft: #d6f4fb;--brand-gradient: linear-gradient(135deg, #581cff 0%, #00d2ff 100%);--ink: #0c0d18;--ink-2: #1a1b2e;--ink-3: #262842;--paper: #fbfaff;--paper-soft: #f5f2ff;--paper-warm: #faf8ff;--surface: #ffffff;--line: #e8e3f5;--line-soft: #efedf8;--muted: #6b6783;--muted-soft: #9a95b5;--r-sm: 10px;--r-md: 16px;--r-lg: 24px;--r-xl: 32px;--r-pill: 999px;--font-display: "Geist", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-body: "Geist", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-italic: "Instrument Serif", "Times New Roman", Georgia, serif;--font-mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--shadow-card: 0 20px 60px -28px rgba(60, 22, 180, .18);--shadow-deep: 0 30px 80px -24px rgba(60, 22, 180, .28);--color-success: #0e7c3a;--color-success-soft: rgba(14, 124, 58, .1);--color-warning: #c27803;--color-warning-soft: rgba(194, 120, 3, .1);--color-danger: #cd3d64;--color-danger-hover: #b62f55;--color-danger-soft: rgba(205, 61, 100, .1);--color-info: #2563eb;--color-info-soft: rgba(37, 99, 235, .1);--xt-bg: var(--surface);--xt-surface: var(--paper);--xt-surface-muted: var(--paper-soft);--xt-border: var(--line);--xt-border-strong: #d8d2eb;--xt-fg: var(--ink);--xt-fg-muted: var(--muted);--xt-fg-subtle: var(--muted-soft);--xt-fg-inverse: #ffffff;--xt-brand: var(--brand-primary);--xt-brand-hover: var(--brand-primary-deep);--xt-brand-soft: var(--brand-primary-soft);--xt-brand-light: #a78bfa;--xt-accent: var(--brand-accent);--xt-brand-gradient: var(--brand-gradient);--xt-success: var(--color-success);--xt-success-soft: var(--color-success-soft);--xt-warning: var(--color-warning);--xt-warning-soft: var(--color-warning-soft);--xt-warning-bg: #fff4e5;--xt-warning-border: #ffb84d;--xt-warning-border-strong: #f59e0b;--xt-warning-text: #7a4f01;--xt-warning-text-strong: #5a3700;--xt-danger: var(--color-danger);--xt-danger-soft: var(--color-danger-soft);--xt-info: var(--color-info);--xt-info-soft: var(--color-info-soft);--xt-r-ctrl: 8px;--xt-r-card: var(--r-sm);--xt-r-modal: var(--r-md);--xt-r-pill: var(--r-pill);--xt-ctrl-h: 40px;--xt-ctrl-h-sm: 32px;--xt-ctrl-h-lg: 48px;--xt-sp-1: 4px;--xt-sp-2: 8px;--xt-sp-3: 12px;--xt-sp-4: 16px;--xt-sp-5: 20px;--xt-sp-6: 24px;--xt-sp-8: 32px;--xt-sp-10: 40px;--xt-shadow-sm: var(--shadow-card);--xt-shadow-md: var(--shadow-card);--xt-shadow-lg: var(--shadow-deep);--xt-focus-ring: 0 0 0 3px rgba(88, 28, 255, .22);--xt-font: var(--font-body);--xt-font-mono: var(--font-mono);--xt-ease: cubic-bezier(.2, .8, .2, 1);--xt-dur-fast: .15s;--xt-dur-base: .2s;--color-primary: var(--brand-primary);--color-primary-hover: var(--brand-primary-deep);--color-primary-soft: var(--brand-primary-soft);--color-accent: var(--brand-accent);--surface-page: var(--paper);--surface-card: var(--surface);--surface-muted: var(--paper-soft);--surface-selected: var(--brand-primary-soft);--border-subtle: var(--line);--border-strong: var(--xt-border-strong);--text-primary: var(--ink);--text-muted: var(--muted);--text-subtle: var(--muted-soft);--text-inverse: #ffffff;--radius-sm: var(--r-sm);--radius-md: var(--r-md);--radius-lg: var(--r-lg);--radius-pill: var(--r-pill);--shadow-card-hover: var(--shadow-deep);--shadow-elevated: var(--shadow-deep);--focus-ring: var(--xt-focus-ring);--font-sans: var(--font-body);--xt-primary: var(--brand-primary);--accent: var(--brand-primary);--neu-accent: var(--brand-primary)}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font-body);font-weight:400;color:var(--ink);background:var(--paper);line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,select,textarea{font-family:inherit}.font-display{font-family:var(--font-display);font-weight:500;letter-spacing:-.025em}.font-italic{font-family:var(--font-italic);font-style:italic;font-weight:400;letter-spacing:-.015em}.font-mono{font-family:var(--font-mono)}.accent-italic{font-family:var(--font-italic);font-style:italic;font-weight:400;color:var(--color-primary);letter-spacing:-.015em}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.18em;color:var(--color-primary)}.eyebrow:before{content:"";width:6px;height:6px;border-radius:999px;background:var(--color-primary);box-shadow:0 0 0 4px #581cff1f}.xt-redesign{font-family:var(--font-body);color:var(--text-primary);background:var(--surface-card)}.xt-redesign :is(h1,h2,h3,h4,h5){color:var(--text-primary);font-family:var(--font-display);letter-spacing:-.02em;font-weight:500}.xt-redesign .xt-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--xt-sp-2);height:var(--xt-ctrl-h);padding:0 var(--xt-sp-4);border-radius:var(--xt-r-ctrl);border:1px solid transparent;background:transparent;color:inherit;font:500 14px/1 var(--font-body);cursor:pointer;transition:background var(--xt-dur-fast) var(--xt-ease),box-shadow var(--xt-dur-fast) var(--xt-ease),border-color var(--xt-dur-fast) var(--xt-ease);white-space:nowrap}.xt-redesign .xt-btn:focus-visible{outline:none;box-shadow:var(--xt-focus-ring)}.xt-redesign .xt-btn--primary{background:var(--color-primary);color:var(--text-inverse);box-shadow:0 6px 22px -10px #581cff8c}.xt-redesign .xt-btn--primary:hover{background:var(--color-primary-hover)}.xt-redesign .xt-btn--secondary{background:var(--surface-card);color:var(--text-primary);border-color:var(--border-subtle)}.xt-redesign .xt-btn--secondary:hover{background:var(--surface-muted)}.xt-redesign .xt-btn--ghost{color:var(--text-muted)}.xt-redesign .xt-btn--ghost:hover{background:var(--surface-muted);color:var(--text-primary)}.xt-redesign .xt-btn--danger{background:var(--color-danger);color:var(--text-inverse)}.xt-redesign .xt-btn--danger:hover{background:var(--color-danger-hover)}.xt-redesign .xt-btn--icon{width:var(--xt-ctrl-h);padding:0}.xt-redesign .xt-btn--sm{height:var(--xt-ctrl-h-sm);padding:0 var(--xt-sp-3);font-size:13px}.xt-redesign .xt-btn--lg{height:var(--xt-ctrl-h-lg);padding:0 var(--xt-sp-5);font-size:15px}.xt-redesign .xt-btn:disabled{opacity:.5;cursor:not-allowed}.xt-redesign .xt-input{height:var(--xt-ctrl-h);width:100%;padding:0 var(--xt-sp-3);background:var(--surface-card);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:var(--xt-r-ctrl);font:14px var(--font-body);transition:border-color var(--xt-dur-fast) var(--xt-ease),box-shadow var(--xt-dur-fast) var(--xt-ease)}.xt-redesign .xt-input:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--xt-focus-ring)}.xt-redesign .xt-input::placeholder{color:var(--text-subtle)}.xt-redesign textarea.xt-input{height:auto;padding:var(--xt-sp-2) var(--xt-sp-3);resize:vertical;min-height:80px}.xt-redesign .xt-card{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--xt-r-card);padding:var(--xt-sp-5);box-shadow:var(--shadow-card)}.xt-redesign .xt-card--flat{box-shadow:none}.xt-redesign .xt-tile{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--xt-r-card);padding:var(--xt-sp-5);box-shadow:var(--shadow-card);cursor:pointer;transition:transform var(--xt-dur-base) var(--xt-ease),box-shadow var(--xt-dur-base) var(--xt-ease),border-color var(--xt-dur-fast) var(--xt-ease)}.xt-redesign .xt-tile:hover{transform:translateY(-2px);box-shadow:var(--shadow-deep);border-color:var(--color-primary-soft)}.xt-redesign .xt-tile--active{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.xt-redesign .xt-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--xt-r-pill);font:500 11px/1.6 var(--font-body);letter-spacing:.02em}.xt-redesign .xt-badge--success{background:var(--color-success-soft);color:var(--color-success)}.xt-redesign .xt-badge--warning{background:var(--color-warning-soft);color:var(--color-warning)}.xt-redesign .xt-badge--danger{background:var(--color-danger-soft);color:var(--color-danger)}.xt-redesign .xt-badge--info{background:var(--color-info-soft);color:var(--color-info)}.xt-redesign .xt-badge--muted{background:var(--surface-muted);color:var(--text-muted);border:1px solid var(--border-subtle)}.xt-redesign .xt-table{width:100%;border-collapse:collapse;font-size:13px}.xt-redesign .xt-table th,.xt-redesign .xt-table td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--line)}.xt-redesign .xt-table th{font:600 11px/1.5 var(--font-body);color:var(--ink);letter-spacing:.06em;text-transform:uppercase;background:var(--paper-soft);border-bottom:1px solid var(--line)}.xt-redesign .xt-table tbody tr:hover{background:var(--surface-muted)}.xt-redesign .xt-hero{background:var(--brand-gradient);color:var(--text-inverse);border-radius:var(--xt-r-card);padding:var(--xt-sp-6);box-shadow:var(--shadow-deep)}.xt-redesign .xt-hero h3{color:var(--text-inverse);font-size:18px;margin-bottom:4px}.xt-redesign .xt-hero p{opacity:.9;font-size:14px}.xt-redesign .xt-icon-box{width:40px;height:40px;border-radius:6px;background:var(--color-primary-soft);color:var(--color-primary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.xt-redesign .xt-section-label{font:500 11px/1.5 var(--font-body);color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase}.xt-redesign .xt-divider{height:1px;background:var(--line);margin:var(--xt-sp-4) 0}:root[data-theme=dark]{--paper: #0f0d1a;--paper-soft: #15132a;--paper-warm: #161325;--surface: #1a172e;--line: #2a2541;--line-soft: #211d36;--ink: #f5f3ff;--ink-2: #d8d2ee;--ink-3: #b6afd1;--muted: #aea8c9;--muted-soft: #837e9c;--xt-border: var(--line);--xt-border-strong: #3d3559;--xt-fg-inverse: #0f0d1a;--color-success: #4ade80;--color-success-soft: rgba(74, 222, 128, .14);--color-warning: #fbbf24;--color-warning-soft: rgba(251, 191, 36, .14);--color-danger: #f87171;--color-danger-soft: rgba(248, 113, 113, .14);--color-danger-hover: #ef4444;--color-info: #60a5fa;--color-info-soft: rgba(96, 165, 250, .14);--brand-primary-soft: rgba(88, 28, 255, .22);--brand-accent-soft: rgba(0, 210, 255, .15);color-scheme:dark}:root{font-family:var(--font-sans);line-height:1.5;font-weight:400;color:var(--text-primary);background:var(--surface-page);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--surface-page)}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1.1rem;border:none;border-radius:var(--radius-pill);font-size:.875rem;font-weight:600;cursor:pointer;transition:box-shadow .15s,opacity .15s;letter-spacing:.02em;white-space:nowrap;font-family:inherit}.btn-primary{background:var(--color-primary);color:var(--text-inverse);box-shadow:var(--shadow-card)}.btn-primary:hover,.btn-primary:active{background:var(--color-primary-hover)}.btn-primary:active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--text-primary) 8%,transparent)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--surface-card);color:var(--text-primary);box-shadow:inset 0 0 0 1px var(--border-subtle)}.btn-secondary:hover,.btn-secondary:active{background:var(--surface-muted);box-shadow:inset 0 0 0 1px var(--border-strong)}.btn-danger{background:var(--color-danger);color:var(--text-inverse);box-shadow:var(--shadow-card)}.btn-danger:hover{background:var(--color-danger-hover)}.btn-danger:active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--text-primary) 8%,transparent)}.card{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:1.25rem}.badge{display:inline-block;padding:.2rem .7rem;border-radius:var(--radius-pill);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.badge-draft{background:var(--text-subtle);color:var(--text-inverse)}.badge-published{background:var(--color-success);color:var(--text-inverse)}.f-connection .f-connection-path{fill:none;stroke:var(--color-primary);stroke-width:2px}.f-connection .f-connection-selection{fill:none;stroke:transparent;stroke-width:14px;pointer-events:stroke}.f-connection.f-selected .f-connection-path{stroke:var(--color-primary);stroke-width:3px}f-connection-for-create .f-connection-path{fill:none;stroke:var(--color-primary);stroke-width:2px;stroke-dasharray:6 4}f-flow.f-connections-dragging .f-node-input.f-connector-connectable{box-shadow:0 0 0 4px color-mix(in srgb,var(--color-primary) 35%,transparent)}f-minimap svg{background:var(--surface-card)}f-minimap .f-minimap-node{fill:var(--color-primary);stroke:none}f-minimap .f-minimap-view{fill:color-mix(in srgb,var(--color-primary) 12%,transparent);stroke:var(--color-primary);stroke-width:2px;vector-effect:non-scaling-stroke}.form-field{display:flex;flex-direction:column;gap:.3rem}.form-field label{font-size:.8rem;font-weight:600;color:var(--text-muted)}.form-field input,.form-field textarea{background:var(--surface-card);border:none;border-radius:var(--radius-sm);padding:.6rem .9rem;box-shadow:inset 0 0 0 1px var(--border-subtle);color:var(--text-primary);font-size:.9rem;font-family:inherit}.form-field input:focus,.form-field textarea:focus{outline:none;box-shadow:inset 0 0 0 1px var(--border-strong)}:root[data-theme=dark]{color-scheme:dark}
