.fd-shell{display:flex;flex-direction:column;gap:var(--space-md)}.fd-toolbar{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.fd-toolbar .spacer{margin-left:auto}.fd-toolbar-history{display:inline-flex;align-items:center;gap:6px;margin-left:auto}.fd-toolbar-history+.fd-manage{margin-left:0}.fd-canvas{height:60vh;min-height:360px;background:radial-gradient(#1e293b 1.4px,transparent 1.4px) 0 0 / 22px 22px,#020617;border:1px solid var(--color-border);border-radius:8px;display:flex;flex-direction:column}.fd-canvas-toolbar{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap;padding:8px 10px;border-bottom:1px solid var(--color-border);background:#0b1220;border-radius:8px 8px 0 0;flex-shrink:0}.fd-canvas-toolbar__check{display:flex;align-items:center;gap:var(--space-sm);font-size:13px;color:#cbd5e1;margin:0}.fd-canvas-toolbar__spacer{margin-left:auto}.fd-canvas .react-flow{flex:1;min-height:0;border-radius:0 0 8px 8px}.fd-canvas .react-flow,.fd-canvas .react-flow__renderer,.fd-canvas .react-flow__pane,.fd-canvas .react-flow__viewport,.fd-canvas .react-flow__container,.fd-canvas .react-flow__background{background:transparent!important;background-color:transparent!important}.fd-canvas .react-flow__background{display:none}.fd-node{background:#1e293b;border:1px solid var(--color-border);border-radius:8px;padding:9px 11px;min-width:160px;font-size:13px;box-shadow:0 1px 3px #0006}.fd-node .fd-ntitle{font-family:Fira Code,monospace;font-size:11px;text-transform:uppercase;letter-spacing:.04em;font-weight:700}.fd-node .fd-nname{font-family:Fira Code,monospace;font-weight:700;margin-top:2px}.fd-node .fd-nsub{font-size:11px;color:#94a3b8;margin-top:2px}.fd-node--root{border-color:var(--color-accent)}.fd-node--root .fd-ntitle{color:var(--color-accent)}.fd-node--sub{border-color:var(--color-info)}.fd-node--sub .fd-ntitle{color:var(--color-info)}.fd-node--outcomes{background:#0d2317;border:2px dashed var(--color-accent);min-width:180px;max-width:280px}.fd-node--outcomes .fd-ntitle{color:#4ade80}.fd-outcome-list{margin:6px 0 0;padding:0 0 0 1.1em;list-style:disc;font-size:12px;line-height:1.35;color:#cbd5e1}.fd-outcome-list li{margin:2px 0}.fd-outcome-list li::marker{color:#4ade80}.fd-node--template{background:#1a1430;border:2px dotted #a78bfa}.fd-node--template .fd-ntitle{color:#a78bfa}.fd-presentation-mode{font-size:10px;text-transform:uppercase;letter-spacing:.04em;font-weight:700;color:#c4b5fd;border-color:#7c3aed80;background:#1e1438}.fd-presentation-mode--static{color:#94a3b8;border-color:#64748b80;background:#0f172a}.fd-node--question{border-color:var(--color-border)}.fd-node--question .fd-ntitle{color:var(--color-accent)}.fd-node--start,.fd-node--end{text-align:center}.fd-node--start{background:#0d2137;border-color:#22c55e}.fd-node--start .fd-ntitle{color:#22c55e}.fd-node--end{background:#2a1219;border-color:#f87171}.fd-node--end .fd-ntitle{color:#f87171}.fd-fact-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px;max-width:220px}.fd-fact-chip{display:inline-flex;align-items:center;gap:4px;background:#0d2317;border:1px dashed #4ade8080;color:#bbf7d0;border-radius:999px;padding:2px 8px;font-size:11px;line-height:1.3}.fd-fact-chip--compute{border-style:dotted;border-color:#38bdf880;color:#bae6fd}.fd-fact-chip__label{text-transform:uppercase;letter-spacing:.04em;font-size:9px;font-weight:700;opacity:.75}.fd-step-inspector-tabs{margin:0 var(--space-md) var(--space-sm)}.fd-step-facts{padding:0 var(--space-md) var(--space-md)}.fd-step-facts-toolbar{margin-bottom:10px}.fd-step-facts-list{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:6px}.fd-step-fact-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;width:100%;text-align:left;padding:8px 10px;border-radius:8px;border:1px solid var(--color-border);background:#0b1220;color:inherit;cursor:pointer}.fd-step-fact-row:hover{border-color:color-mix(in srgb,var(--color-accent) 50%,var(--color-border))}.fd-step-fact-row.on{border-color:var(--color-accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-accent) 40%,transparent)}.fd-confirm-overlay{z-index:100}.fd-confirm-dialog{width:min(420px,100%);background:var(--color-secondary, #1e293b);border:1px solid var(--color-border, #334155);border-radius:10px;box-shadow:0 20px 40px #0000008c}.fd-confirm-eyebrow{font-size:11px;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.fd-confirm-body{display:flex;flex-direction:column;gap:10px}.fd-confirm-p{margin:0;font-size:13.5px;line-height:1.5;color:#cbd5e1;white-space:pre-wrap}.fd-confirm-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.fd-confirm-danger{background:var(--color-destructive, #ef4444)!important;color:#fff!important;border-color:transparent!important}.fd-confirm-danger:hover{filter:brightness(1.08)}.fd-inspector-eyebrow{font-size:11px;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.fd-template-empty{padding:8px 0}.fd-template-current{margin-bottom:14px;padding:10px 12px;border:1px solid var(--color-border);border-radius:10px;background:#0b1220}.fd-template-current-main{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}.fd-template-current-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.fd-template-header-actions{display:flex;align-items:center;gap:8px}.fd-add-step-body{padding:0 var(--space-md) var(--space-md);display:flex;flex-direction:column;gap:10px}.fd-template-save-row{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:8px}.fd-template-saved{margin-right:auto;font-size:13px;color:#4ade80}.fd-outcomes-inspector .fd-response-body,.fd-template-inspector .fd-response-body{min-height:120px}.fd-route-modal{width:min(640px,100%);max-height:min(90vh,820px);overflow-y:auto;background:var(--color-secondary, #1e293b);border:1px solid var(--color-border, #334155);border-radius:12px;box-shadow:0 24px 48px #0000008c;gap:var(--space-md)}.fd-route-modal__header{align-items:flex-start}.fd-route-modal__eyebrow{font-size:11px;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.fd-route-modal__title{font-size:17px;margin:0;font-weight:600;color:var(--color-foreground, #f8fafc)}.fd-route-modal__hint{margin:0;font-size:12.5px;line-height:1.5;color:#94a3b8}.fd-route-modal__hint code{color:#cbd5e1;font-size:12px}.fd-route-path{display:flex;align-items:center;gap:8px;padding:12px 14px;background:#0b1220;border:1px solid var(--color-border, #334155);border-radius:10px}.fd-route-path__node{display:flex;flex-direction:column;gap:2px;min-width:0;flex:0 1 auto;padding:8px 10px;background:#1e293b;border:1px solid var(--color-border, #334155);border-radius:8px}.fd-route-path__node--target{border-color:color-mix(in srgb,var(--color-info, #3b82f6) 55%,var(--color-border))}.fd-route-path__role{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:#64748b;font-weight:600}.fd-route-path__id{font-size:13px;font-weight:700;color:#e2e8f0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:140px}.fd-route-path__arrow{flex:1 1 auto;display:flex;align-items:center;gap:6px;min-width:80px}.fd-route-path__line{flex:1 1 12px;height:2px;background:#475569;border-radius:1px}.fd-route-path__chip{flex-shrink:0;max-width:140px;cursor:default}.fd-route-path__chip--always{border-style:dashed;color:#94a3b8}.fd-route-path__chevron{color:#64748b;font-size:14px;flex-shrink:0}.fd-route-modal__body{display:flex;flex-direction:column;gap:8px}.fd-route-modal__section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#94a3b8}.fd-route-modal__actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:4px}.fd-route-modal__actions-right{display:flex;gap:8px;margin-left:auto}.fd-route-clear:disabled{opacity:.4;cursor:not-allowed}@media(max-width:560px){.fd-route-path{flex-direction:column;align-items:stretch}.fd-route-path__arrow{justify-content:center}.fd-route-path__id{max-width:none}}.fd-chip{display:inline-flex;align-items:center;gap:4px;background:#0f172a;border:1px solid var(--color-border);color:#94a3b8;border-radius:999px;padding:1px 8px;font-size:11px}.fd-gate{background:#f59e0b20;color:#f59e0b;border:1px solid #f59e0b60;border-radius:999px;padding:2px 8px;font-size:11px;display:inline-block}.fd-edge-chip{background:#020617;border:1px solid var(--color-border);color:#cbd5e1;font-size:11px;padding:2px 8px;border-radius:999px;pointer-events:all}.fd-edge-chip--selected{border-color:var(--color-accent, #22c55e);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-accent) 50%,transparent)}.fd-edge-chip--routing{border-color:#64748b;color:#e2e8f0;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-shadow:0 2px 8px #00000073}.fd-edge-chip--routing:hover{border-color:var(--color-accent, #22c55e);color:#f8fafc}.fd-clause{background:#020617;border:1px solid var(--color-border);border-radius:8px;padding:10px;font-size:12.5px}.fd-pill{background:#020617;border:1px solid var(--color-border);border-radius:6px;padding:3px 9px;color:#e2e8f0;font-size:12px}.fd-seg{display:inline-flex;background:#0f172a;border:1px solid var(--color-border);border-radius:8px;padding:3px}.fd-seg button{border:0;background:transparent;color:#94a3b8;font-size:12px;padding:5px 12px;border-radius:6px;font-weight:600}.fd-seg button.on{background:var(--color-accent);color:#020617}.fd-seg button:disabled{opacity:.45;cursor:not-allowed}.fd-cond-group{background:#0b1220;border:1px solid #334155;border-radius:8px;padding:10px;margin:8px 0 8px 12px}.fd-cond-group-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.fd-cond-clause{display:flex;gap:6px;align-items:center;margin-bottom:6px;flex-wrap:wrap}.fd-cond-clause--tall{align-items:flex-start}.fd-cond-clause .input{min-width:0;flex:1 1 100px}.fd-cond-multiselect{flex:1 1 160px;min-width:140px;max-height:140px;overflow-y:auto;display:flex;flex-direction:column;gap:4px;padding:6px 8px;background:#020617;border:1px solid var(--color-border);border-radius:8px}.fd-cond-multiselect__opt{display:flex;align-items:flex-start;gap:8px;font-size:12.5px;color:#e2e8f0;cursor:pointer;margin:0}.fd-cond-multiselect__opt input{margin-top:2px;flex-shrink:0}.fd-cond-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.fd-cond-depth-warn{color:#fbbf24;font-size:12px;font-weight:600}.fd-cond-opaque-banner{background:#fbbf2414;border:1px solid #fbbf2440;border-radius:8px;padding:10px;font-size:12px;color:#fde68a;margin-bottom:12px}.fd-cond-opaque-child{display:flex;align-items:center;gap:8px;margin-bottom:6px;padding:6px 8px;border:1px dashed #fbbf2440;border-radius:6px}.fd-field{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#cbd5e1}.fd-field>span{color:#9fb0c5;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.03em}.fd-issues{background:color-mix(in srgb,var(--color-destructive) 10%,var(--color-muted));border:1px solid color-mix(in srgb,var(--color-destructive) 45%,var(--color-border));border-radius:8px;padding:var(--space-md)}.fd-issues li{color:#fecaca;font-size:13px}.react-flow__controls{box-shadow:0 8px 24px #00000080;border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.react-flow__controls-button{background:#1e293b!important;border-bottom:1px solid var(--color-border)!important;border-radius:0!important;color:#f8fafc!important;width:28px!important;height:28px!important}.react-flow__controls-button:hover{background:#334155!important}.react-flow__controls-button svg{fill:#f8fafc;max-width:14px;max-height:14px}.react-flow__controls-button[disabled]{opacity:.4}.react-flow__minimap{background:#0f172a!important;border:1px solid var(--color-border);border-radius:6px}.react-flow__minimap-mask{fill:#00000080}.react-flow__minimap-node{fill:#1e293b}.react-flow__edge-path{stroke-linecap:round}.react-flow__attribution{background:transparent!important;color:#475569!important}.react-flow__handle{background:var(--color-accent);border:2px solid #020617;width:10px;height:10px;border-radius:50%!important;min-width:0;min-height:0}.fd-map-handle.react-flow__handle{width:12px!important;height:12px!important;background:var(--color-accent)!important;border:2px solid #020617!important;border-radius:50%!important;opacity:1;pointer-events:all}.fd-map-handle--source.react-flow__handle{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 35%,transparent)}.fd-map-handle.react-flow__handle:hover{width:14px!important;height:14px!important}.fd-handle.react-flow__handle{width:12px!important;height:12px!important;background:var(--color-accent)!important;border:2px solid #020617!important;border-radius:50%!important;min-width:0;min-height:0;opacity:0;pointer-events:none;transition:opacity .12s ease,width .12s ease,height .12s ease}.react-flow__node.selected .fd-handle.react-flow__handle{opacity:1;pointer-events:all}.react-flow__node.selected .fd-handle--source.react-flow__handle{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 35%,transparent)}.react-flow__node.selected .fd-handle.react-flow__handle:hover{width:14px!important;height:14px!important}.fd-canvas--connecting .fd-handle.react-flow__handle[data-handleid^=t-]{opacity:1;pointer-events:all;box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 25%,transparent)}.fd-canvas--connecting .fd-handle.react-flow__handle[data-handleid^=t-]:hover{width:14px!important;height:14px!important}.fd-canvas--connecting .react-flow__node.selected .fd-handle.react-flow__handle{opacity:1;pointer-events:all}.fd-node--start .fd-handle.react-flow__handle{background:#22c55e!important}.react-flow__node.selected .fd-node--start .fd-handle.react-flow__handle,.fd-canvas--connecting .fd-node--start .fd-handle.react-flow__handle{box-shadow:0 0 0 3px color-mix(in srgb,#22c55e 35%,transparent)}.fd-node--end .fd-handle.react-flow__handle{background:#f87171!important;box-shadow:none}.react-flow__node.selected .fd-node{box-shadow:0 0 0 2px var(--color-accent)}.fd-rules{display:flex;flex-direction:column;gap:12px}.fd-rules-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.fd-rules-copy{margin:6px 0 0;max-width:52ch}.fd-rules-copy--embedded{margin-top:0}.fd-rules-empty{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:16px;border:1px dashed var(--color-border);border-radius:8px;background:#0b1220}.fd-rules-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.fd-rule-row{display:flex;align-items:flex-start;gap:10px;background:#0b1220;border:1px solid var(--color-border);border-radius:8px;padding:10px 12px}.fd-rule-row--focus{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent)}.fd-rule-row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.fd-rule-row-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.fd-rule-priority{font-family:Fira Code,monospace;font-size:11px;font-weight:700;color:#94a3b8;background:#020617;border:1px solid var(--color-border);border-radius:999px;padding:1px 8px;min-width:2ch;text-align:center}.fd-rule-when{font-size:13px;color:#e2e8f0;line-height:1.35}.fd-rule-id{font-size:11px;margin:0;opacity:.7}.fd-rule-row-actions{display:flex;flex-direction:column;gap:6px;flex-shrink:0}.fd-emit-pills{display:flex;flex-wrap:wrap;gap:4px}.fd-rule-form{background:#0b1220;border:1px solid var(--color-border);border-radius:8px;padding:14px;display:flex;flex-direction:column;gap:4px}.fd-rule-form-title{font-weight:700;font-size:14px;color:#e2e8f0;margin-bottom:8px}.fd-rule-soft-warn{background:#fbbf2414;border:1px solid #fbbf2440;border-radius:8px;padding:8px 10px;font-size:12px;color:#fde68a;margin:4px 0 8px}.fd-rule-emit-fieldset{border:1px solid var(--color-border);border-radius:8px;padding:10px 12px;margin:12px 0 4px}.fd-rule-emit-fieldset legend{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#9fb0c5;padding:0 4px}.fd-rule-emit-list{display:flex;flex-direction:column;gap:6px;max-height:200px;overflow:auto}.fd-rule-emit-item{display:flex;align-items:center;gap:8px;font-size:13px;color:#cbd5e1}.fd-rule-priority-row{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-top:12px}.fd-rule-priority-controls{display:flex;align-items:center;gap:6px}.fd-rule-advanced{margin-top:12px;padding:8px 10px;border:1px solid var(--color-border);border-radius:8px;background:#020617;color:#94a3b8;font-size:12px}.fd-rule-advanced summary{cursor:pointer;font-weight:600;color:#cbd5e1}.fd-rule-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:14px;padding-top:12px;border-top:1px solid var(--color-border)}.fd-response-inspector{max-height:min(88vh,900px);display:flex;flex-direction:column}.fd-outcomes-meta{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.fd-outcomes-share{margin:0;font-size:12px;padding:8px 10px}.fd-outcomes-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:12px}.fd-outcomes-filters{display:flex;gap:4px;flex-wrap:wrap}.fd-outcomes-count{display:inline-block;margin-left:6px;min-width:1.1em;font-size:10px;font-weight:700;opacity:.85}.fd-outcomes-empty,.fd-outcomes-empty-wire{display:flex;flex-direction:column;gap:10px;padding:16px 4px 8px}.fd-outcomes-empty-actions{display:flex;gap:8px;flex-wrap:wrap}.fd-outcomes-assign-list{list-style:none;padding:0;margin:0 0 16px;display:flex;flex-direction:column;gap:8px}.fd-outcomes-assign-row{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--color-border);border-radius:10px;background:#0b1220}.fd-outcomes-assign-row--focus{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent)}.fd-outcomes-assign-main{flex:1;min-width:0}.fd-outcomes-assign-title{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}.fd-outcomes-assign-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.fd-chip--always{background:color-mix(in srgb,var(--color-accent) 22%,#0b1220);border-color:color-mix(in srgb,var(--color-accent) 40%,#334155)}.fd-outcome-form{display:flex;flex-direction:column;gap:4px}.fd-outcome-form-title{font-size:14px;font-weight:700;margin-bottom:10px;color:#e2e8f0}.fd-outcome-source,.fd-outcome-include-opts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}@media(max-width:560px){.fd-outcome-source,.fd-outcome-include-opts{grid-template-columns:1fr}}.fd-outcome-source-opt{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--color-border);border-radius:10px;background:#0b1220;cursor:pointer;color:#cbd5e1;font-size:13px}.fd-outcome-source-opt.on{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent)}.fd-outcome-source-opt input{margin-top:3px}.fd-outcome-include{margin:14px 0 8px;padding:12px;border:1px solid var(--color-border);border-radius:10px;background:#0b1220}.fd-outcome-include legend{padding:0 6px;font-size:12px;font-weight:700;color:#94a3b8}.fd-outcome-when-builder{margin-top:10px;padding-top:10px;border-top:1px solid var(--color-border)}.fd-response-tabs{display:flex;gap:4px;flex-wrap:wrap;padding:0 0 12px;border-bottom:1px solid var(--color-border);margin-bottom:12px}.fd-response-tab{border:1px solid var(--color-border);background:#0b1220;color:#94a3b8;font-size:12px;font-weight:600;padding:6px 12px;border-radius:999px;cursor:pointer}.fd-response-tab:hover{color:#e2e8f0;border-color:#475569}.fd-response-tab.on{background:var(--color-accent);border-color:var(--color-accent);color:#020617}.fd-response-body{flex:1;min-height:0;overflow:auto;padding-bottom:4px}.fd-response-manage{display:flex;align-items:center}.fd-always{display:flex;flex-direction:column;gap:4px}.fd-always-copy{max-width:56ch}.fd-always-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.fd-always-item{display:flex;flex-direction:column;gap:0}.fd-always-row{display:flex;align-items:center;gap:8px;padding:8px 10px}.fd-always-row--focus{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent)}.fd-always-edit{margin:0 0 4px;padding:10px 12px 12px;border:1px solid var(--color-border);border-top:0;border-radius:0 0 8px 8px;background:#0b1220}.fd-link-btn{border:0;background:transparent;padding:0;color:var(--color-accent);font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}.fd-reply{display:flex;flex-direction:column;gap:2px}.fd-template-fields{display:flex;flex-direction:column}.fd-template-outcomes-hint{margin-top:-2px;margin-bottom:8px;font-size:12px}.fd-template-outcomes-hint code{font-size:12px;padding:1px 4px;border-radius:4px;background:color-mix(in srgb,var(--color-accent) 14%,transparent)}.fd-toolbar.panel-header{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.fd-manage{position:relative;margin-left:auto}.fd-manage-menu{position:absolute;right:0;top:calc(100% + 4px);z-index:40;min-width:180px;padding:6px;border:1px solid var(--color-border);border-radius:8px;background:#0f172a;box-shadow:0 8px 24px #00000059;display:flex;flex-direction:column;gap:2px}.fd-manage-menu button{border:0;background:transparent;color:#e2e8f0;text-align:left;font:inherit;font-size:13px;padding:8px 10px;border-radius:6px;cursor:pointer}.fd-manage-sep{border:0;border-top:1px solid var(--color-border, #334155);margin:4px 8px}.fd-manage-menu button:hover{background:color-mix(in srgb,var(--color-accent) 18%,transparent)}.fd-catalog-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,1fr);gap:0;min-height:320px}.fd-catalog-list{padding:var(--space-md);border-right:1px solid var(--color-border);overflow:auto}.fd-catalog-detail{padding:var(--space-md);overflow:auto}.fd-catalog-row--focus td{background:color-mix(in srgb,var(--color-accent) 12%,transparent)}.fd-outcome-fields{display:flex;flex-direction:column}.fd-outcome-advanced{display:flex;flex-direction:column;margin-top:4px;padding-top:8px;border-top:1px dashed var(--color-border)}.fd-banner{padding:8px 10px;border-radius:6px;font-size:12px;margin-bottom:10px}.fd-banner-warn{background:color-mix(in srgb,#f59e0b 16%,transparent);border:1px solid color-mix(in srgb,#f59e0b 40%,transparent);color:#fde68a}.fd-banner-info{background:color-mix(in srgb,#38bdf8 12%,transparent);border:1px solid color-mix(in srgb,#38bdf8 32%,transparent);color:#bae6fd}@media(max-width:900px){.fd-catalog-layout{grid-template-columns:1fr}.fd-catalog-list{border-right:0;border-bottom:1px solid var(--color-border)}}.fd-graph-stack{display:flex;flex-direction:column;gap:var(--space-sm)}.fd-graph-inspector-anchor{scroll-margin-top:72px}.fd-question-inspector{display:flex;flex-direction:column;gap:0}.fd-question-inspector-body{padding:0 var(--space-md) var(--space-md)}.fd-derived-editor{padding:var(--space-md);display:flex;flex-direction:column;gap:4px}.fd-derived-body{display:flex;flex-direction:column;gap:4px;margin-top:8px}.fd-derived-compute{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;background:#0b1220}.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #555;--xy-background-pattern-lines-color-default: #333;--xy-background-pattern-cross-color-default: #333;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}:root{--color-primary: #0f172a;--color-on-primary: #ffffff;--color-secondary: #1e293b;--color-accent: #22c55e;--color-background: #020617;--color-foreground: #f8fafc;--color-muted: #1a1e2f;--color-border: #334155;--color-destructive: #ef4444;--color-warning: #f59e0b;--color-info: #3b82f6;--color-ring: #22c55e;--fg: var(--color-foreground);--muted: #94a3b8;--text-muted: #94a3b8;--primary: var(--color-accent);--border: var(--color-border);--warning: var(--color-warning);--bg-primary: var(--color-primary);--bg-secondary: var(--color-muted);--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;color-scheme:dark;font-family:Fira Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;background:var(--color-background);color:var(--color-foreground)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--color-background)}button,input,select{font:inherit}button,a,label.file-button{cursor:pointer}button:disabled{cursor:not-allowed}:focus-visible{outline:2px solid var(--color-ring);outline-offset:2px}.app-shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-md);background:var(--color-primary);border-right:1px solid var(--color-border)}.brand,.nav-item,.table-link{color:inherit;text-decoration:none}.brand{display:flex;align-items:center;gap:var(--space-sm);min-height:48px;font-family:Fira Code,monospace;font-weight:700}.brand img{width:42px;height:42px;object-fit:contain}.nav-list{display:flex;flex-direction:column;gap:var(--space-xs)}.nav-item{display:flex;align-items:center;gap:var(--space-sm);min-height:36px;padding:8px 10px;border-radius:6px;color:#cbd5e1;transition:background .15s ease,color .15s ease}.nav-item:hover,.nav-item.active{background:var(--color-muted);color:var(--color-foreground)}.auth-warning{padding:8px 10px;border:1px solid #f59e0b60;border-radius:6px;color:var(--color-warning);font-size:12px}.main-area{min-width:0;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:0 var(--space-lg);background:#020617f2;border-bottom:1px solid var(--color-border)}.breadcrumb{font-family:Fira Code,monospace;font-size:13px;color:#cbd5e1}.topbar-actions,.row-actions,.modal-actions{display:flex;align-items:center;gap:var(--space-sm)}.row-actions.compact{gap:var(--space-xs)}.chunk-nav{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm)}.chunk-nav .icon-button{width:30px;height:30px}.content{padding:var(--space-lg);flex:1}.credits-footer{display:flex;align-items:center;justify-content:center;gap:var(--space-md);min-height:72px;padding:var(--space-sm) var(--space-lg);border-top:1px solid var(--color-border);color:#cbd5e1;font-size:13px}.credits-footer img{width:auto;height:44px;object-fit:contain}.credits-copy{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-xs) var(--space-md)}.credits-copy strong{color:var(--color-foreground);font-weight:600}.page-stack{display:flex;flex-direction:column;gap:var(--space-lg)}.page-stack.compact{gap:var(--space-sm)}.danger-text{color:var(--color-destructive);font-weight:600}.page-header,.panel-header,.pager{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.page-header h1,.panel h2,.auth-panel h1,.modal h2{margin:0;font-family:Fira Code,monospace}.page-header h1{font-size:24px}.page-header p{margin:4px 0 0;color:#94a3b8}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-md)}.metric-grid.compact{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.metric-card,.panel,.auth-panel,.modal{background:var(--color-secondary);border:1px solid var(--color-border);border-radius:8px}.metric-card{min-height:82px;padding:var(--space-md);display:flex;flex-direction:column;justify-content:space-between}.drilldown-card{color:inherit;text-decoration:none}.drilldown-card:hover{border-color:var(--color-info);background:#1e3a5f}.metric-card span{color:#94a3b8;font-size:12px;text-transform:uppercase}.metric-card strong{font-family:Fira Code,monospace;font-size:22px;font-weight:600;overflow-wrap:anywhere}.panel{overflow:hidden}.panel-header{padding:14px var(--space-md);border-bottom:1px solid var(--color-border)}.panel h2{font-size:15px}.table{width:100%;border-collapse:collapse}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.table th,.table td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--color-muted);vertical-align:middle}.table th{color:#94a3b8;font-size:12px;font-weight:600;text-transform:uppercase;white-space:nowrap}.table-sort-button{display:inline-flex;align-items:center;gap:4px;padding:0;color:inherit;font:inherit;text-transform:inherit;background:transparent;border:0;cursor:pointer}.table-sort-button:hover,.table-sort-button.active{color:var(--color-foreground)}.table td{color:var(--color-foreground);font-size:14px}.table tr:hover td{background:var(--color-muted)}.table tr.clickable-row{cursor:pointer}.table tr.clickable-row:focus-visible td{background:var(--color-muted)}.table-link{color:#dbeafe;font-weight:600}.link-button{padding:0;color:inherit;font:inherit;text-align:left;background:transparent;border:0;cursor:pointer}.document-name-button{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.link-button:hover{color:var(--color-info);text-decoration:underline}.muted-link-button{color:#cbd5e1}.filter-strip{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.mono{font-family:Fira Code,monospace}.truncate-cell{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn,.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;transition:background .15s ease,border-color .15s ease,opacity .15s ease}.btn{min-height:36px;padding:8px 14px;border-radius:6px;font-weight:600}.btn-primary{color:#020617;background:var(--color-accent)}.btn-primary:hover{background:#16a34a}.btn-secondary{color:var(--color-foreground);background:transparent;border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-muted)}.btn-merge{color:#dcfce7;background:color-mix(in srgb,var(--color-accent) 18%,transparent);border:1px solid color-mix(in srgb,var(--color-accent) 70%,var(--color-border))}.btn-merge:hover{color:#020617;background:var(--color-accent);border-color:var(--color-accent)}.btn-danger{color:#fee2e2;background:color-mix(in srgb,var(--color-destructive) 16%,transparent);border:1px solid color-mix(in srgb,var(--color-destructive) 70%,var(--color-border))}.btn-danger:hover{color:#fff;background:var(--color-destructive);border-color:var(--color-destructive)}.full-width{width:100%}.section-body>div>.full-width{grid-column:1 / -1}.icon-button{width:32px;height:32px;color:#cbd5e1;background:transparent;border:1px solid var(--color-border);border-radius:6px}.icon-button:hover{background:var(--color-muted)}.icon-button.danger{color:var(--color-destructive)}.input{width:100%;min-height:36px;padding:8px 10px;color:var(--color-foreground);background:var(--color-primary);border:1px solid var(--color-border);border-radius:6px}.input:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 2px #22c55e30}.field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#cbd5e1}.badge{display:inline-flex;align-items:center;min-height:22px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}.badge-success{background:#22c55e20;color:var(--color-accent)}.badge-error{background:#ef444420;color:var(--color-destructive)}.badge-warning{background:#f59e0b20;color:var(--color-warning)}.badge-info{background:#3b82f620;color:var(--color-info)}.badge-muted{background:#6b728020;color:#9ca3af}.badge-button{gap:6px;border:0;cursor:pointer}.badge-button:hover{background:#3b82f620;color:var(--color-info)}.parse-status-cell{display:inline-flex;align-items:center;gap:var(--space-sm)}.pulse{animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.62}}.center-screen{min-height:100vh;display:grid;place-items:center;padding:var(--space-lg)}.auth-shell{position:relative;min-height:100vh;overflow:hidden;display:flex;flex-direction:column;background:#020617}.auth-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.auth-backdrop:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#0206171a,#02061729 44%,#020617bd),linear-gradient(180deg,#0206173d,#02061705 42%,#020617b3)}.auth-backdrop canvas{width:100%;height:100%;display:block}.auth-platform-mark{position:absolute;top:clamp(28px,7vh,76px);left:clamp(24px,6vw,92px);z-index:2;width:min(700px,calc(100vw - 48px));display:grid;grid-template-columns:116px minmax(0,1fr);align-items:center;gap:var(--space-lg);padding:20px 24px 22px;border:1px solid rgba(34,197,94,.2);border-left:3px solid rgba(34,197,94,.72);border-radius:8px;background:linear-gradient(135deg,#0f172aa3,#0f172a2e);box-shadow:0 24px 70px #00000038;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.auth-platform-mark img{width:116px;height:116px;object-fit:contain;filter:drop-shadow(0 16px 28px rgba(0,0,0,.28))}.auth-platform-mark h1{max-width:520px;margin:0 0 var(--space-xs);font-family:Fira Code,monospace;font-size:clamp(28px,4vw,48px);line-height:1.06;font-weight:700;text-wrap:balance}.auth-platform-mark p{margin:0;color:#cbd5e1;font-size:clamp(14px,1.4vw,18px)}.auth-punchline{position:absolute;left:clamp(24px,6vw,92px);bottom:clamp(116px,16vh,172px);z-index:1;width:min(560px,calc(100vw - 48px));padding:0 0 0 var(--space-md);border-left:2px solid rgba(34,197,94,.64);color:#f8fafc;text-shadow:0 2px 18px rgba(2,6,23,.82)}.auth-punchline span{display:flex;align-items:center;gap:9px;margin-bottom:var(--space-sm);color:#86efac;font-family:Fira Code,monospace;font-size:12px;font-weight:600;letter-spacing:0;text-transform:uppercase}.auth-punchline span svg{flex:0 0 auto;color:#bbf7d0;filter:drop-shadow(0 0 10px rgba(34,197,94,.32))}.auth-punchline strong{display:block;font-family:Fira Code,monospace;font-size:clamp(20px,2.6vw,34px);line-height:1.18;font-weight:700;text-wrap:balance}.auth-content{position:relative;z-index:2;flex:1;display:grid;align-items:center;justify-items:end;padding:clamp(24px,6vw,80px)}.auth-panel{position:relative;z-index:2;width:min(420px,100%);display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-lg);background:#1e293be6;box-shadow:0 28px 90px #0000005c;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.auth-shell .credits-footer{position:relative;z-index:2;background:#020617b8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.auth-panel h2{margin:0;font-family:Fira Code,monospace;font-size:18px;font-weight:700}.auth-panel h2+label{margin-top:var(--space-xs)}.auth-panel h2:after{content:"";display:block;width:42px;height:2px;margin-top:10px;border-radius:999px;background:var(--color-accent)}.auth-panel h2 small{color:#94a3b8;font-size:13px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:var(--space-lg);background:#000000a3}.modal-overlay-top{z-index:90}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;display:flex;justify-content:flex-end;background:#0000008f}.drawer-panel{width:min(760px,100%);height:100vh;overflow-y:auto;padding:var(--space-lg);background:var(--color-secondary);border-left:1px solid var(--color-border)}.modal{width:min(520px,100%);display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-lg)}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.modal-actions{justify-content:flex-end}.guide-overlay{align-items:center}.guide-modal{width:min(900px,100%);max-height:min(86vh,900px);overflow:hidden}.guide-modal .modal-header{flex-shrink:0}.document-viewer-modal{width:min(1100px,96vw);max-height:min(88vh,900px);overflow:hidden}.document-viewer-overlay-left{z-index:65;place-items:stretch;padding:var(--space-lg);pointer-events:none;background:transparent}.document-viewer-modal-left{position:fixed;top:var(--space-lg);right:calc(min(760px,100vw) + var(--space-lg));bottom:var(--space-lg);width:min(920px,calc(100vw - min(760px,100vw) - (var(--space-lg) * 2)));max-height:none;pointer-events:auto;box-shadow:0 20px 60px #00000080}.document-viewer-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm)}.document-viewer-toolbar .btn{margin-left:auto}.document-viewer-frame{width:100%;height:min(68vh,720px);border:1px solid var(--color-border);border-radius:6px;background:#fff}.document-image-preview,.document-text-preview{max-height:min(68vh,720px);overflow:auto;border:1px solid var(--color-border);border-radius:6px;background:var(--color-primary)}.document-image-preview{display:grid;place-items:center;padding:var(--space-md)}.document-image-preview img{max-width:100%;height:auto}.document-text-preview{margin:0;padding:var(--space-md);color:var(--color-foreground);white-space:pre-wrap}.markdown-view{min-height:0;overflow-y:auto;padding-right:var(--space-sm);color:#dbe4ef;line-height:1.55}.markdown-view h1,.markdown-view h2,.markdown-view h3{margin:1.25rem 0 .5rem;color:var(--color-foreground);font-family:Fira Code,monospace}.markdown-view h1:first-child,.markdown-view h2:first-child,.markdown-view h3:first-child{margin-top:0}.markdown-view h1{font-size:1.3rem}.markdown-view h2{font-size:1.05rem}.markdown-view h3{font-size:.95rem}.markdown-view p,.markdown-view ol,.markdown-view ul,.markdown-view pre{margin:.65rem 0}.markdown-view ol,.markdown-view ul{padding-left:1.35rem}.markdown-view li{margin:.35rem 0}.markdown-subitem{color:#aab7c7;list-style-type:circle}.markdown-view code,.markdown-view pre{font-family:Fira Code,monospace}.markdown-view :not(pre)>code{color:var(--color-accent);font-size:.9em}.markdown-view pre{overflow-x:auto;padding:.75rem;border:1px solid var(--color-border);border-radius:6px;background:#020617;color:#e5edf7}.form-error,.error-state{color:var(--color-destructive)}.error-state,.empty-state{padding:var(--space-lg);color:#94a3b8;text-align:center}.compact-error{padding:10px 12px;text-align:left}.skeleton-stack{display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-md)}.skeleton-stack div{height:36px;border-radius:6px;background:var(--color-muted)}.pager{padding:12px var(--space-md);color:#94a3b8;font-size:13px}.tabs{display:flex;gap:var(--space-sm);border-bottom:1px solid var(--color-border)}.tabs button{min-height:36px;padding:8px 12px;color:#cbd5e1;background:transparent;border:0;border-bottom:2px solid transparent}.tabs button.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.alert-strip{display:flex;align-items:center;gap:var(--space-sm);padding:10px 12px;color:var(--color-warning);border:1px solid #f59e0b60;border-radius:8px;background:#f59e0b12}.info-strip{color:var(--color-info);border-color:#3b82f660;background:#3b82f612}.form-grid{display:grid;grid-template-columns:minmax(220px,1fr) 120px 160px;gap:var(--space-md);padding:var(--space-md)}.filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-md);padding:var(--space-md)}.parse-options{display:grid;grid-template-columns:minmax(180px,1fr) minmax(160px,1fr) 130px 150px;gap:var(--space-md);padding:var(--space-md);border-bottom:1px solid var(--color-border)}.checkbox-field{flex-direction:row;align-items:center;gap:.5rem;justify-content:end}.checkbox-field input{width:16px;height:16px;accent-color:var(--color-accent)}.probe-box,.detail-stack{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-md)}.detail-stack h3{margin:0 0 var(--space-sm);font-size:14px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.status-strip{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.text-box,.json-viewer{max-height:360px;overflow:auto;padding:var(--space-md);border:1px solid var(--color-border);border-radius:6px;background:var(--color-primary);white-space:pre-wrap}.json-viewer{margin:0;font-family:Fira Code,monospace;font-size:12px}.plain-list{margin:0;padding-left:20px}.textarea{min-height:96px;resize:vertical}.textarea.large{min-height:220px}.result-list{display:flex;flex-direction:column}.result-row{padding:var(--space-md);border-bottom:1px solid var(--color-muted)}.result-row p{margin:10px 0 0;color:#dbeafe;line-height:1.45;white-space:pre-wrap}.result-meta{display:flex;flex-direction:column;gap:4px}.result-meta span,.muted-line{color:#94a3b8;font-size:13px}.latency{display:inline-flex;min-height:22px;align-items:center;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600}.phase-track{display:inline-flex;align-items:center;gap:5px;min-width:70px}.phase-dot{width:10px;height:10px;border-radius:999px;background:#475569}.phase-dot.done{background:var(--color-accent)}.phase-dot.current{box-shadow:0 0 0 4px #22c55e20}.parse-progress-detail{display:inline-flex;flex-direction:column;gap:4px;min-width:160px}.vector-progress-detail{display:inline-flex;flex-direction:column;gap:4px;min-width:120px}.parse-progress-topline,.parse-progress-subline{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);font-size:12px}.parse-progress-topline span,.parse-progress-subline{color:#cbd5e1}.parse-progress-topline span{max-width:118px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.parse-progress-topline strong{color:var(--color-foreground);font-family:Fira Code,monospace;font-size:12px;font-weight:600}.parse-progress-subline{justify-content:flex-start;color:#94a3b8}.parse-progress-detail .linear-progress{width:160px}.vector-progress-detail .linear-progress{width:120px}.linear-progress{width:96px;height:8px;overflow:hidden;border-radius:999px;background:#475569}.linear-progress span{display:block;height:100%;min-width:0;border-radius:inherit;background:var(--color-accent);transition:width .2s ease}.file-button input{display:none}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1023px){.app-shell{grid-template-columns:72px minmax(0,1fr)}.brand span,.nav-item span{display:none}.sidebar{align-items:center}}@media(max-width:767px){.app-shell{display:block}.sidebar{position:static;width:100%;height:auto;flex-direction:row;overflow-x:auto}.nav-list{flex-direction:row}.content,.topbar{padding-left:var(--space-md);padding-right:var(--space-md)}.page-header,.topbar{align-items:flex-start;flex-direction:column}.auth-content{justify-items:center}.auth-backdrop:after{background:#020617b8}.auth-platform-mark{position:relative;top:auto;left:auto;z-index:2;width:auto;grid-template-columns:72px minmax(0,1fr);margin:var(--space-md) var(--space-md) 0}.auth-platform-mark img{width:72px;height:72px}.auth-platform-mark h1{font-size:24px}.auth-punchline{display:none;left:var(--space-md);right:var(--space-md);bottom:92px;width:auto;opacity:.72}.auth-punchline strong{font-size:18px}.panel{overflow-x:auto}.form-grid,.parse-options{grid-template-columns:1fr}.drawer-overlay{display:block}.drawer-panel{width:100%;height:100dvh;border-left:0}.document-viewer-overlay-left{z-index:65;display:grid;place-items:center;padding:var(--space-sm);pointer-events:auto;background:#000000a3}.document-viewer-modal-left{position:static;width:min(100%,960px);max-height:88dvh}}.wizard-modal{width:min(640px,100%);max-height:90vh;display:flex;flex-direction:column}.step-indicator{display:flex;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--color-border)}.step-dot{display:flex;align-items:center;gap:var(--space-sm);color:#6b7280}.step-dot.current{color:var(--color-text)}.step-dot.completed{color:var(--color-success)}.step-number{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;border:2px solid #6b7280}.step-dot.current .step-number{border-color:var(--color-info);background:#3b82f620}.step-dot.completed .step-number{border-color:var(--color-success);background:#22c55e20}.step-label{font-size:13px}.step-body{flex:1;overflow-y:auto;padding:var(--space-lg)}.step-content{display:flex;flex-direction:column;gap:var(--space-md)}.step-description{color:#94a3b8;font-size:14px;line-height:1.5;margin:0}.wizard-footer{display:flex;justify-content:flex-end;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-top:1px solid var(--color-border)}.create-config-wizard{width:min(760px,100%)}.create-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md)}.provider-key-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-lg);align-items:start}.provider-key-grid>.field{grid-column:auto}.section-body .llm-provider-key-grid{grid-column:1 / -1}.section-body .llm-model-grid{display:grid;grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-lg)}.section-body .llm-provider-key-grid>.field,.section-body .llm-provider-key-grid .field:has(.secret-row),.section-body .llm-provider-key-grid .field-hint{grid-column:auto}.section-body .llm-provider-key-grid>.field{display:grid;align-content:start;gap:var(--space-sm)}.section-body .llm-provider-key-grid>.field>span:first-child{display:flex;align-items:center;min-height:22px}.secret-panel,.accordion-section,.summary-bar{border:1px solid var(--color-border);border-radius:8px;background:#0f172a66}.secret-panel{display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-md)}.secret-label{display:block;margin-bottom:var(--space-xs);color:#cbd5e1;font-size:13px;font-weight:600}.secret-row{display:grid;grid-template-columns:minmax(0,1fr) 32px auto;gap:var(--space-sm);align-items:center}.secret-value{font-family:Fira Code,monospace}.secret-copy-button{white-space:nowrap}.value-label{float:right;color:var(--color-accent);font-family:Fira Code,monospace;font-size:12px}.slider-row{display:grid;grid-template-columns:92px minmax(140px,1fr);gap:var(--space-sm);align-items:center}.compact-number{min-width:0}.range-input{width:100%;accent-color:var(--color-accent)}.tag-input{min-height:40px;padding:6px;background:var(--color-primary);border:1px solid var(--color-border);border-radius:6px}.tag-input:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 2px #22c55e30}.tag-pill-list{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.tag-pill{display:inline-flex;align-items:center;gap:4px;max-width:100%;min-height:26px;padding:3px 6px 3px 8px;color:#cbd5e1;background:#334155;border-radius:999px;font-size:12px}.tag-pill button{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;color:inherit;background:transparent;border:0;border-radius:50%}.tag-pill button:hover{background:#475569}.tag-pill-list input{flex:1 1 180px;min-width:140px;height:28px;color:var(--color-foreground);background:transparent;border:0;outline:0}.checkbox-group{padding:0;margin:0;border:0}.checkbox-group legend{margin-bottom:6px;padding:0;color:#cbd5e1}.checkbox-group>div{display:flex;gap:var(--space-sm);flex-wrap:wrap}.checkbox-card{display:inline-flex;align-items:center;gap:var(--space-sm);min-height:36px;padding:8px 10px;color:#cbd5e1;background:var(--color-primary);border:1px solid var(--color-border);border-radius:6px}.checkbox-card input{width:16px;height:16px;accent-color:var(--color-accent)}.accordion-section{overflow:hidden}.accordion-toggle,.key-toggle{width:100%;display:flex;align-items:center;gap:var(--space-sm);color:var(--color-foreground);background:transparent;border:0;text-align:left}.accordion-toggle{min-height:44px;padding:10px 12px;font-weight:600}.accordion-toggle .badge{margin-left:auto}.accordion-body{display:flex;flex-direction:column;gap:var(--space-sm);padding:0 var(--space-md) var(--space-md)}.key-panel{display:flex;flex-direction:column;gap:var(--space-sm)}.key-toggle{min-height:32px;padding:0;color:#cbd5e1;font-size:13px}.theme-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) 88px;align-items:end}.color-row{display:grid;grid-template-columns:44px minmax(0,1fr);gap:var(--space-sm)}.color-row input[type=color]{width:44px;height:36px;padding:0;overflow:hidden;background:transparent;border:1px solid var(--color-border);border-radius:6px}.theme-preview{height:36px;display:grid;place-items:center;border:1px solid var(--color-border);border-radius:6px;overflow:hidden}.theme-preview span{width:100%;height:100%;display:grid;place-items:center}.theme-preview strong{width:54px;height:18px;border-radius:999px;display:grid;place-items:center;font-size:12px;line-height:1;box-shadow:0 0 0 1px #00000030}.summary-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-md);align-items:center;padding:var(--space-md)}.summary-copy{min-width:0;display:flex;flex-direction:column;gap:4px;color:#cbd5e1;font-size:13px}.summary-copy strong{color:var(--color-foreground)}.summary-copy code{font-family:Fira Code,monospace;color:var(--color-accent)}.summary-warning{display:inline-flex;align-items:center;gap:6px;color:var(--color-warning)}.create-wizard-footer{padding:0;border-top:0}@media(max-width:767px){.modal-overlay{padding:var(--space-sm)}.create-config-grid,.llm-provider-key-grid,.section-body .llm-model-grid,.theme-grid,.summary-bar,.secret-row,.slider-row{grid-template-columns:1fr}.secret-row .icon-button,.secret-copy-button{width:100%}.step-indicator{flex-wrap:wrap;gap:var(--space-sm)}.summary-bar{align-items:stretch}.create-wizard-footer{justify-content:stretch}.create-wizard-footer .btn{flex:1}}.size-preview{display:flex;flex-direction:column;gap:var(--space-sm)}.size-labels{display:flex;justify-content:space-between;font-size:12px;color:#94a3b8}.size-bar{position:relative;height:8px;background:var(--color-primary);border-radius:4px;overflow:hidden}.size-fill{height:100%;background:var(--color-info);border-radius:4px}.size-marker{position:absolute;top:-2px;font-size:12px;color:var(--color-info);transform:translate(-50%)}.size-callout{font-size:12px;color:#6b7280}.advanced-section{border-top:1px solid var(--color-border);padding-top:var(--space-sm)}.advanced-toggle{display:flex;align-items:center;gap:var(--space-sm);background:none;border:none;color:var(--color-text);cursor:pointer;font-size:13px;padding:var(--space-sm) 0}.advanced-content{display:flex;flex-direction:column;gap:var(--space-sm);padding-top:var(--space-sm)}.review-grid{display:flex;flex-direction:column;gap:var(--space-md)}.review-section h4{margin:0 0 var(--space-xs);font-size:12px;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.confirm-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.confirm-modal{width:min(360px,90%)}.confirm-actions{display:flex;gap:var(--space-sm);justify-content:flex-end;margin-top:var(--space-md)}.warning-strip{background:#92400e30;border:1px solid #f59e0b;border-radius:6px;padding:var(--space-sm) var(--space-md);font-size:13px;display:flex;align-items:center;gap:var(--space-sm)}.error-strip{background:#991b1b30;border:1px solid #ef4444;border-radius:6px;padding:var(--space-sm) var(--space-md);font-size:13px}.field-hint{font-size:12px;color:#6b7280}.field-error{font-size:12px;color:#ef4444}.field-hint{display:block;color:var(--text-muted);font-size:.8rem;margin-top:.25rem;line-height:1.3}.input-error{border-color:#ef4444!important}.reset-link{background:none;border:none;color:var(--color-info);cursor:pointer;font-size:11px;padding:0;text-decoration:underline}.muted-line{color:#6b7280;font-size:13px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.form-section-title{font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-top:1rem;margin-bottom:.5rem;padding-bottom:.25rem;border-bottom:1px solid var(--border)}.tabs{display:flex;gap:.25rem;margin-bottom:1rem;border-bottom:1px solid var(--border);padding-bottom:0}.tabs button{padding:.5rem 1rem;border:none;background:none;color:var(--muted);cursor:pointer;font-size:.9rem;border-bottom:2px solid transparent;margin-bottom:-1px}.tabs button.active{color:var(--fg);border-bottom-color:var(--primary)}.tabs button:hover{color:var(--fg)}.metric-grid.compact{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.metric-grid.compact .metric-card{padding:.75rem}.metric-grid.compact .metric-card span{font-size:.75rem}.metric-grid.compact .metric-card strong{font-size:.9rem}.checkbox-field{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:.5rem}.checkbox-field input[type=checkbox]{width:1rem;height:1rem;flex:0 0 auto;accent-color:var(--primary)}.file-button{cursor:pointer;position:relative}.file-button input[type=file]{position:absolute;opacity:0;width:0;height:0}.pager{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;font-size:.85rem;color:var(--muted)}.muted-line{color:var(--muted);font-size:.85rem;margin-top:.5rem}.section-shell{position:relative}.section-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:.5rem;position:sticky;top:0;z-index:1;background:var(--color-secondary, #1e293b);padding:.5rem 0}.section-title{font-size:1rem;font-weight:600;margin:0}.section-actions{display:flex;gap:.5rem;flex-shrink:0}.section-success{margin-bottom:.75rem}.view-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem 2rem}.view-field{display:flex;flex-direction:column;gap:.15rem}.view-label{font-size:.8rem;color:var(--text-muted);font-weight:500}.view-value{font-size:.95rem;word-break:break-word}.view-value.locked{display:flex;align-items:center;gap:.35rem;color:var(--text-muted);font-style:italic}.view-field.full-width{grid-column:1 / -1}.secret-row{display:flex;gap:.5rem;align-items:center}.secret-row .input{flex:1}.icon-btn{padding:.4rem;display:inline-flex;align-items:center;justify-content:center}.color-field-row{display:flex;gap:.5rem;align-items:center}.color-field-row input[type=color]{width:2.5rem;height:2rem;padding:0;border:1px solid var(--border);border-radius:4px;cursor:pointer;background:none}.color-swatch{width:1.25rem;height:1.25rem;border-radius:3px;border:1px solid var(--border);flex-shrink:0}.tab-dirty:after{content:"•";color:var(--warning, #f59e0b);margin-left:.25rem;font-weight:700}.chat-preview-wrapper{display:flex;flex-direction:column;gap:var(--space-sm);align-items:stretch}.chat-preview-mode-switch{align-self:flex-end;display:inline-flex;padding:3px;background:#0f172a;border:1px solid #334155;border-radius:8px}.preview-mode-btn{min-height:30px;display:inline-flex;align-items:center;gap:6px;padding:0 10px;color:#cbd5e1;background:transparent;border:0;border-radius:6px;font-size:.8rem;font-weight:700;cursor:pointer}.preview-mode-btn:hover{color:#fff;background:#1e293b}.preview-mode-btn.active{color:#020617;background:var(--color-accent)}.chat-preview{width:300px;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden;position:sticky;top:1rem;flex-shrink:0}.chat-preview-device{width:400px;height:840px;max-width:100%;display:flex;flex-direction:column;margin:0 auto;padding:22px 12px 18px;background:#020617;border:2px solid #1e293b;border-radius:42px;box-shadow:0 18px 42px #0000005c,inset 0 0 0 2px #0f172a,inset 0 0 0 6px #111827}.chat-preview-device-speaker{width:78px;height:6px;margin:0 auto 14px;background:#334155;border-radius:999px;box-shadow:inset 0 1px 1px #ffffff1f}.chat-preview-device-home{width:116px;height:5px;margin:14px auto 0;background:#475569;border-radius:999px}.chat-preview--mobile{width:100%;flex:1;min-height:0;display:flex;flex-direction:column;margin:0;border-radius:28px;box-shadow:none;position:static}.chat-preview-header{padding:14px 20px;display:flex;align-items:center;gap:14px;border-bottom:2px solid rgba(255,255,255,.1);box-shadow:0 4px 20px #0000002e;flex-shrink:0}.chat-preview--mobile .chat-preview-header{padding:10px;gap:10px}.chat-preview-header-left{flex-shrink:0;display:flex;align-items:center}.chat-preview-mascot{width:52px;height:52px;object-fit:contain;background:#fff;border-radius:50%;padding:4px;border:2px solid rgba(255,255,255,.85);filter:drop-shadow(0 2px 8px rgba(0,0,0,.2))}.chat-preview--mobile .chat-preview-mascot{width:38px;height:38px;padding:2px}.chat-preview-mascot-fallback{display:grid;place-items:center;color:var(--color-primary);font-size:1rem;font-weight:700}.chat-preview-header-center{flex:1;min-width:0}.chat-preview-header-title{margin:0;color:var(--ap-title-color, #f7d77b);font-size:22px;font-weight:700;line-height:1.2;text-shadow:var(--ap-title-contrast-shadow, 0 1px 4px rgba(0, 0, 0, .2));overflow-wrap:anywhere}.chat-preview-header-title.gradient-title{color:transparent;background-size:150% 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.chat-preview-header-title.animated-gradient-title{animation:branding-title-gradient-shift 8s ease-in-out infinite}@keyframes branding-title-gradient-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.chat-preview--mobile .chat-preview-header-title{font-size:17px}.chat-preview-header-tagline{margin:3px 0 0;color:#fff;font-size:12px;font-weight:400;line-height:1.25;letter-spacing:.3px;opacity:.85}.chat-preview-header-subtitle{margin:2px 0 0;color:#fff;font-size:11px;font-weight:400;line-height:1.25;opacity:.7}.chat-preview-header-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.chat-preview .ap-lang-switcher{display:flex;background:#ffffff26;border:1px solid rgba(255,255,255,.25);border-radius:8px;padding:3px}.chat-preview .ap-lang-btn{padding:5px 10px;border:0;border-radius:6px;background:transparent;color:#fff;font-family:inherit;font-size:11px;font-weight:600;line-height:1;cursor:pointer;transition:all .2s}.chat-preview .ap-lang-btn:hover{background:#ffffff1a}.chat-preview .ap-lang-btn.active{background:#fff;color:var(--ap-primary)}.chat-preview--mobile .ap-lang-btn{padding:4px 8px;font-size:10px}.chat-preview-close-button{width:32px;height:32px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;font-size:18px;font-weight:700;line-height:1;background:#ffffff1a;border:1px solid rgba(255,255,255,.3);border-radius:50%;pointer-events:none}.chat-preview--mobile .chat-preview-close-button{width:32px;height:32px;font-size:18px}.chat-preview-body{padding:.75rem;display:flex;flex-direction:column;gap:.5rem;min-height:120px}.chat-preview--mobile .chat-preview-body{flex:1;min-height:0;overflow-y:auto}.chat-preview-bubble{padding:.5rem .75rem;border-radius:12px;font-size:.8rem;max-width:80%;word-break:break-word}.chat-preview-bubble.user{align-self:flex-end;color:#fff;border-bottom-right-radius:4px}.chat-preview-bubble.bot{align-self:flex-start;color:#000;border-bottom-left-radius:4px}.chat-preview-markdown{display:flex;flex-direction:column;gap:.35rem}.chat-preview-markdown p,.chat-preview-markdown ul,.chat-preview-markdown ol{margin:0}.chat-preview-markdown ul,.chat-preview-markdown ol{padding-left:1rem}.chat-preview-markdown li{margin:.15rem 0}.chat-preview-markdown code{font-family:Fira Code,monospace;font-size:.9em;background:#ffffff3d;border-radius:3px;padding:0 3px}.branding-markdown-view code{background:#94a3b829;color:var(--color-accent)}.prompt-markdown-view{margin-top:.5rem;max-height:360px;overflow:auto;padding:var(--space-md);color:#dbe4ef;background:#020617;border:1px solid #475569;border-radius:6px;line-height:1.55}.prompt-markdown-view--full{min-height:260px}.prompt-markdown-view h4,.prompt-markdown-view h5,.prompt-markdown-view h6{margin:1rem 0 .4rem;color:var(--color-foreground);font-family:Fira Code,monospace}.prompt-markdown-view h4:first-child,.prompt-markdown-view h5:first-child,.prompt-markdown-view h6:first-child{margin-top:0}.prompt-markdown-view h4{font-size:1rem}.prompt-markdown-view h5,.prompt-markdown-view h6{font-size:.9rem}.prompt-markdown-view p,.prompt-markdown-view ul,.prompt-markdown-view ol,.prompt-markdown-view pre{margin:.55rem 0}.prompt-markdown-view ul,.prompt-markdown-view ol{padding-left:1.25rem}.prompt-markdown-view code,.prompt-markdown-view pre{font-family:Fira Code,monospace}.prompt-markdown-view :not(pre)>code{color:var(--color-accent);font-size:.9em}.prompt-markdown-view pre{overflow-x:auto;padding:.75rem;border:1px solid var(--color-border);border-radius:6px;background:#0f172a;color:#e5edf7}.branding-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.5rem;align-items:flex-start}.branding-form{min-width:0;max-height:calc(100vh - 8rem);overflow-y:auto;padding-right:12px}.branding-preview-column{position:sticky;top:0;align-self:flex-start}.section-group{margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--border)}.section-group-title{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:.75rem}.section-shell{padding:var(--space-lg)}.section-body{min-width:0}.section-body>div:not(.branding-layout):not(.view-grid),.branding-form,.section-body .section-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-lg)}.section-body .section-group{margin-top:var(--space-sm);padding-top:var(--space-md);border-top-color:#475569}.section-body>div>.view-grid,.branding-form>.view-grid,.section-body>div>.section-group,.section-body .section-group-title,.section-body .section-group>.view-grid,.section-body .section-group>.accordion-section,.section-body .field:has(.textarea),.section-body .field:has(.tag-input),.section-body .field:has(.secret-row),.section-body .field-hint,.section-body .section-success,.section-body .form-error{grid-column:1 / -1}.section-body .branding-form>.field:has(.textarea){grid-column:auto}.section-body .branding-form>.gradient-preset-field{grid-column:1 / -1}.section-body .field{gap:var(--space-sm);color:var(--color-foreground)}.section-body .field>span:first-child,.integration-helper .field>span:first-child{color:#dbe4ef;font-size:.82rem;font-weight:700}.section-body .field-hint,.integration-helper .field-hint,.section-body .muted-line,.integration-helper .muted-line{color:#aab7c7;line-height:1.45}.section-body .input,.integration-helper .input{min-height:42px;padding:10px 12px;color:var(--color-foreground);background:#020617;border-color:#475569}.section-body .input::placeholder,.integration-helper .input::placeholder{color:#7f8da3}.section-body .textarea{min-height:112px;line-height:1.45}.section-body .view-grid{gap:var(--space-lg) 2.25rem}.section-body .view-field{gap:.35rem;min-width:0}.section-body .view-label{color:#9fb0c5;font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.section-body .view-value{color:var(--color-foreground);font-size:.98rem;font-weight:600;line-height:1.45}.section-body .view-value.locked{color:#cbd5e1;font-weight:500}.section-body .section-group-title,.integration-helper .section-group-title{color:#cbd5e1;margin-bottom:0}.section-body .prompt-template-guide{grid-template-columns:minmax(0,1fr);gap:var(--space-md)}.prompt-template-guide-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-md)}.prompt-template-guide-header .btn{display:inline-flex;align-items:center;gap:var(--space-sm);white-space:nowrap}.prompt-template-field-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:var(--space-sm)}.prompt-template-field-card{display:grid;gap:.35rem;padding:.75rem;border:1px solid #475569;border-radius:6px;background:#020617}.prompt-template-field-card code{color:var(--color-accent);font-family:Fira Code,monospace;font-size:.8rem}.prompt-template-field-card strong{color:var(--color-foreground);font-size:.9rem}.prompt-template-field-card span{color:#aab7c7;font-size:.82rem;line-height:1.4}.section-body .secret-row{display:grid;grid-template-columns:minmax(0,1fr) 36px auto;gap:var(--space-sm)}.section-body .secret-row .input{min-width:0}.section-body .slider-row{grid-template-columns:minmax(160px,1fr) 72px;gap:var(--space-md)}.section-body .slider-row input[type=range]{width:100%;accent-color:var(--color-accent)}.section-body .slider-value{min-height:34px;display:inline-flex;align-items:center;justify-content:center;padding:0 10px;color:var(--color-accent);font-family:Fira Code,monospace;font-size:.85rem;font-weight:700;background:#020617;border:1px solid #475569;border-radius:6px}.section-body .checkbox-group{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.section-body .checkbox-field{min-height:42px;padding:9px 12px;color:#dbe4ef;background:#020617;border:1px solid #475569;border-radius:6px}.section-body .checkbox-field:has(input:checked){border-color:#22c55e80;background:#22c55e12}.flow-config{display:flex;flex-direction:column;gap:var(--space-md);max-width:920px}.flow-master-card{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;background:#0b1220;border:1px solid #475569;border-radius:10px}.flow-master-card__icon{display:grid;place-items:center;width:40px;height:40px;flex:0 0 auto;color:#93c5fd;background:#1e3a5f66;border:1px solid #334155;border-radius:10px}.flow-master-card__body{min-width:0;flex:1}.flow-master-card__title-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:4px}.flow-master-card__title{font-size:15px;font-weight:650;color:#e2e8f0}.flow-master-card__hint{margin:0;font-size:12.5px;line-height:1.45;color:#94a3b8}.flow-master-toggle{align-items:flex-start!important;gap:12px!important;padding:14px 16px!important;min-height:unset!important}.flow-master-toggle__title{display:inline-flex;align-items:center;gap:8px;font-weight:650;font-size:14.5px;color:#e2e8f0}.flow-master-toggle__body{display:flex;flex-direction:column;gap:4px;min-width:0}.flow-config-idle{margin:0;padding:10px 12px;border-radius:8px;background:#0b1220;border:1px dashed #475569}.flow-section-group{display:flex!important;flex-direction:column!important;gap:10px!important;grid-template-columns:none!important}.flow-section-lead{margin:-4px 0 2px!important}.flow-option-stack{display:flex;flex-direction:column;gap:10px}.flow-option-stack .checkbox-field{margin:0}.flow-label-icon{display:inline-block;vertical-align:-2px;margin-right:6px;opacity:.85}.flow-config-alert{margin-top:4px}.flow-prompt-block{display:flex;flex-direction:column;gap:8px;padding:12px 14px;background:#020617;border:1px solid #334155;border-radius:10px}.flow-prompt-block__header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.flow-prompt-block .field>span:first-child:empty{display:none}.flow-prompt-block .field{margin:0}.section-body .flow-config .view-grid{gap:var(--space-md)}.section-body .checkbox-field input[type=checkbox]{width:1rem;height:1rem;flex:0 0 auto}.section-body .color-field-row{gap:var(--space-sm)}.section-body .color-field-row input[type=color]{width:42px;height:42px;border-color:#475569}.section-body .color-swatch{width:1.5rem;height:1.5rem;border-color:#64748b}.section-body .tag-input{min-height:44px;padding:8px;background:#020617;border-color:#475569}.section-body .tag-pill{min-height:28px;color:#e2e8f0;background:#334155}.section-body .accordion-section{background:#0f172a;border-color:#475569}.section-body .accordion-toggle{min-height:46px;padding:11px 14px}.section-body .accordion-body{gap:var(--space-md);padding:0 var(--space-md) var(--space-md)}.branding-layout{gap:var(--space-lg)}.branding-preview-column{display:flex;flex-direction:column;gap:var(--space-lg);align-items:stretch}.branding-preview-column .chat-preview{width:100%;max-width:none;position:static}.mascot-config-group{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md);margin-top:0}.mascot-config-group .section-group-title{grid-column:1 / -1;text-align:center}.integration-helper{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md) var(--space-lg);max-height:none;margin:var(--space-lg);padding:var(--space-lg);white-space:normal}.integration-helper .section-group,.integration-helper>.form-error,.integration-helper>table,.integration-helper>pre,.integration-helper>p:not(.muted-line){grid-column:1 / -1}.integration-helper .section-group{border-top-color:#475569}.mascot-field{min-width:0;align-items:center;text-align:center}.mascot-preview{width:100%;max-width:140px;aspect-ratio:1;display:grid;place-items:center;overflow:hidden;padding:var(--space-sm);background:#fff;border:1px solid #475569;border-radius:50%}.mascot-preview.loading{color:#475569;font-size:.76rem;text-align:center}.mascot-preview img{width:100%;height:100%;object-fit:contain}.mascot-preview--bare{background:transparent;border:none;border-radius:0;padding:0}.mascot-meta{color:#aab7c7;font-size:.82rem}.mascot-upload-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-sm)}.mascot-field .field-hint,.mascot-field .form-error{text-align:center}.gradient-preset-carousel{display:flex;align-items:center;gap:4px}.gradient-preset-grid{display:flex;gap:var(--space-sm);overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:4px;max-width:calc(100px * 5 + var(--space-sm) * 4)}.gradient-preset-grid::-webkit-scrollbar{height:0;display:none}.carousel-arrow{flex:0 0 auto;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#0f172a;border:1px solid #475569;border-radius:50%;color:#94a3b8;font-size:1.1rem;cursor:pointer;transition:background .15s,color .15s;padding:0;line-height:1}.carousel-arrow:hover{background:#1e293b;color:#f8fafc}.gradient-preset-option{flex:0 0 auto;scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px;width:100px;color:#dbe4ef;text-align:center;background:#020617;border:1px solid #475569;border-radius:6px;cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s}.gradient-preset-option:hover,.gradient-preset-option.active{border-color:#22c55e99;background:#0f172a;box-shadow:0 0 0 2px #22c55e14}.gradient-preset-swatch{width:84px;height:38px;border:1px solid #64748b;border-radius:6px;background:linear-gradient(135deg,#94a3b838,#1e293b42),#0f172a;background-size:220% 100%}.gradient-preset-swatch.animated{animation:branding-title-gradient-shift 8s ease-in-out infinite}.gradient-preset-copy{min-width:0;display:grid;gap:0;text-align:center}.gradient-preset-copy strong{color:#f8fafc;font-size:.78rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:90px}.gradient-preset-copy span{display:none}@media(max-width:767px){.section-shell,.integration-helper{padding:var(--space-md)}.integration-helper{margin:var(--space-md);grid-template-columns:1fr}.section-body .view-grid,.section-body>div:not(.branding-layout):not(.view-grid),.branding-form,.section-body .section-group,.branding-layout{grid-template-columns:1fr}.branding-layout{flex-direction:column}.branding-grid-spacer{display:none}.mascot-config-group{grid-template-columns:1fr}.chat-preview{width:100%;position:static}}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper .input{flex:1;padding-right:40px}.password-input-wrapper .icon-button{position:absolute;right:8px;padding:4px;background:transparent;border:none;color:#94a3b8;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:color .2s}.password-input-wrapper .icon-button:hover{color:#f8fafc;background:#ffffff0d}.form-hint{margin:0 0 var(--space-md);color:#94a3b8;font-size:13px;line-height:1.4}.otp-input-grid{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:center;gap:var(--space-sm);margin-bottom:var(--space-md)}.otp-input-grid .otp-input{flex:0 0 48px;width:auto;height:48px;text-align:center;font-size:20px;font-weight:600;letter-spacing:.1em;padding:0;color:var(--color-foreground);background:var(--color-primary);border:1px solid var(--color-border);border-radius:6px}.otp-input-grid .otp-input:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 2px #22c55e30}.user-info{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:6px;background:#ffffff0d}.user-name{font-weight:600;font-size:14px}@media(max-width:768px){.otp-input-grid{gap:var(--space-xs)}.otp-input-grid .otp-input{flex:0 0 42px;width:auto;height:42px;font-size:18px}.user-info{flex-direction:column;align-items:flex-start;gap:2px}}.user-menu{position:relative;display:inline-block}.user-menu-trigger{display:flex;align-items:center;gap:8px;min-height:36px;padding:8px 12px;color:var(--color-foreground);background:transparent;border:1px solid var(--color-border);border-radius:6px;font-size:14px;cursor:pointer;transition:background .15s ease}.user-menu-trigger:hover{background:var(--color-muted)}.user-role-badge{padding:2px 8px;font-size:12px;font-weight:600;background:#22c55e33;color:var(--color-accent);border-radius:999px}.user-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:180px;padding:8px;background:var(--color-secondary);border:1px solid var(--color-border);border-radius:6px;box-shadow:0 8px 24px #0006;z-index:100}.user-menu-dropdown button{width:100%;display:flex;align-items:center;gap:8px;min-height:36px;padding:8px 12px;color:var(--color-foreground);background:transparent;border:0;border-radius:4px;font-size:14px;text-align:left;cursor:pointer;transition:background .15s ease}.user-menu-dropdown button:hover{background:var(--color-muted)}.chatbot-checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-sm);padding:var(--space-md)}.chatbot-checkbox-grid .field{padding:12px;background:var(--color-primary);border:1px solid var(--color-border);border-radius:6px;cursor:pointer;transition:border-color .15s ease,background .15s ease}.chatbot-checkbox-grid .field:hover{border-color:var(--color-info);background:#1e3a5f}.chatbot-checkbox-grid .field input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-accent)}.chatbot-checkbox-grid .field span{font-size:14px;color:var(--color-foreground)}.field-group{display:flex;flex-direction:column;gap:var(--space-md)}@media(max-width:767px){.field-group{grid-column:1 / -1}}.url-cell{max-width:200px;overflow:hidden}.inline-url-input{width:100%;min-width:160px;padding:2px 6px;border:1px solid #ccc;border-radius:3px;font-size:inherit}.add-url-button{color:var(--muted);text-decoration:underline;text-decoration-style:dashed;text-underline-offset:3px}.add-url-button:hover{color:var(--color-info);text-decoration-style:solid}.score-low{color:#dc2626;font-weight:600}.filter-bar{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:12px}.source-chips{display:flex;flex-direction:column;gap:6px}.source-chip{display:grid;grid-template-columns:2.5rem minmax(0,1fr) 5rem 6rem;align-items:center;gap:10px;padding:5px 10px;font-size:.875rem}.source-chip .src-rank{color:#2563eb;font-weight:600}.source-chip .src-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-chip .src-score,.source-chip .src-pages{color:#6b7280}.source-chip .src-link{text-align:left;color:#2563eb}.source-chip .src-link:hover{text-decoration:underline}.source-chip-head{border:none;padding:2px 10px;font-weight:600;color:#6b7280;font-size:.7rem;text-transform:uppercase;letter-spacing:.03em}.response-markdown{display:flex;flex-direction:column;gap:.4rem;max-height:min(25vh,260px);overflow-y:auto;padding:.6rem .75rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-secondary);color:var(--color-foreground);font-size:.875rem;line-height:1.5;white-space:normal;word-break:break-word}.response-markdown p,.response-markdown ul,.response-markdown ol{margin:0}.response-markdown ul,.response-markdown ol{padding-left:1.25rem}.response-markdown li{margin:.15rem 0}.response-markdown code{font-family:Fira Code,monospace;font-size:.9em;background:var(--color-muted);border-radius:3px;padding:0 3px}.query-detail-modal{width:70vw;max-width:100%}.detail-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.detail-meta .meta-seg{white-space:nowrap}.detail-meta .meta-sep{opacity:.5}.detail-meta .token-meta{padding:1px 8px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-muted);font-size:12px}.sort-th{background:none;border:none;padding:0;color:inherit;font:inherit;font-weight:inherit;cursor:pointer;white-space:nowrap}.sort-th:hover{color:var(--color-foreground)}.openrouter-models-modal{width:min(640px,92vw);max-height:min(80vh,720px);overflow:hidden;padding:0;gap:0}.openrouter-models-modal .modal-header{padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--color-border);flex-shrink:0}.openrouter-models-modal .modal-header h3{margin:0;font-size:1rem}.modal-controls{display:flex;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);border-bottom:1px solid var(--color-border);flex-shrink:0}.modal-controls select{background:var(--color-secondary);color:var(--color-foreground);border:1px solid var(--color-border);border-radius:6px;padding:var(--space-xs) var(--space-sm)}.or-search{position:relative;flex:1;display:flex;align-items:center}.or-search-icon{position:absolute;left:var(--space-sm);color:var(--muted);pointer-events:none}.or-search .input-field{width:100%;padding-left:32px}.modal-list{overflow-y:auto;padding:var(--space-sm) var(--space-lg);display:flex;flex-direction:column;gap:var(--space-sm)}.model-card{text-align:left;background:var(--color-muted);color:var(--color-foreground);border:1px solid var(--color-border);border-radius:8px;padding:var(--space-sm) var(--space-md);cursor:pointer}.model-card:hover{border-color:var(--color-accent)}.model-card-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-sm)}.model-slug{font-size:12px;color:var(--muted)}.model-card-meta{display:flex;gap:var(--space-lg);font-size:12px;color:var(--text-muted);margin-top:var(--space-xs)}.model-desc{font-size:12px;color:var(--text-muted);margin:var(--space-xs) 0 0}.model-card .badge{font-size:11px;background:#22c55e26;color:var(--color-accent);padding:1px var(--space-sm);border-radius:999px}.icon-btn{background:none;border:none;cursor:pointer}.table-compact-rows td{padding:18px 12px}.chatbot-header-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-sm)}.chatbot-sort-controls{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm)}.chatbot-sort-field{margin:0;display:block}.chatbot-sort-field .input{min-width:10.5rem;height:36px}.chatbot-tile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-md)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.chatbot-tile{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-md);background:var(--color-secondary);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-sm, 0 1px 2px rgba(0, 0, 0, .2));min-height:180px}.chatbot-tile:hover{border-color:color-mix(in srgb,var(--color-accent) 40%,var(--color-border))}.chatbot-tile-head{display:flex;align-items:flex-start;gap:var(--space-md)}.chatbot-tile-title-block{min-width:0;flex:1;display:flex;flex-direction:column;gap:var(--space-sm)}.chatbot-tile-title{margin:0;font-size:1.05rem;font-weight:600;line-height:1.3;color:var(--color-foreground);overflow-wrap:anywhere}.chatbot-tile-badges{display:flex;flex-wrap:wrap;gap:var(--space-sm);align-items:center}.chatbot-tile-meta{margin:auto 0 0;font-size:13px;line-height:1.4;color:#94a3b8;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.chatbot-tile-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid var(--color-border)}.chatbot-tile-actions .btn{flex:1 1 auto;min-width:0}.mascot-avatar{width:64px;height:64px;object-fit:contain;display:block;flex-shrink:0;filter:drop-shadow(0 2px 6px rgba(0,0,0,.2))}.mascot-avatar-tile{box-sizing:border-box;background:#fff;border:2px solid rgba(255,255,255,.9);border-radius:50%;padding:4px;object-fit:contain}.mascot-avatar-fallback{width:64px;height:64px;box-sizing:border-box;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;border:2px solid rgba(255,255,255,.9);color:var(--color-text-muted, #64748b);font-weight:600;font-size:16px;flex-shrink:0}.detail-header-row-wrapper{width:100%}.detail-header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.detail-title-with-mascot{display:flex;align-items:center;gap:.6rem}.detail-mascot-launcher{width:48px;height:48px;border-radius:50%;background:#e0e0e0;border:1px solid var(--color-primary, #1a73e8);padding:4px;object-fit:contain;display:block;flex-shrink:0;box-shadow:0 0 0 1px #1a73e824,0 0 10px 2px #1a73e81f}.flows-section{display:flex;flex-direction:column;gap:var(--space-md)}.btn-xs{min-height:28px;padding:4px 10px;font-size:12px;border-radius:6px}.flow-editor{display:flex;flex-direction:column;gap:var(--space-md)}.flow-meta-panel{background:var(--color-muted);border:1px solid var(--color-border);border-radius:10px;padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-sm)}.flow-meta-panel .field{display:flex;flex-direction:column;gap:4px}.flow-meta-panel .input.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.flow-editor-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-sm)}.flow-editor-content{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(360px,1fr);gap:var(--space-md);align-items:start}@media(max-width:1100px){.flow-editor-content{grid-template-columns:1fr}}.json-editor-panel,.flow-test-panel{background:var(--color-muted);border:1px solid var(--color-border);border-radius:10px;padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-sm)}.json-editor-panel h4,.flow-test-panel h4,.interactive-test-section h4,.version-history-section h4{margin:0;font-size:14px;font-weight:700;display:flex;align-items:center;gap:8px}.flow-test-panel{gap:var(--space-md)}.validation-panel{background:color-mix(in srgb,var(--color-destructive) 12%,var(--color-muted));border:1px solid color-mix(in srgb,var(--color-destructive) 50%,var(--color-border));border-radius:10px;padding:var(--space-md)}.validation-panel h4{margin:0 0 var(--space-sm);color:#fca5a5}.validation-panel ul{margin:0;padding-left:var(--space-md);display:flex;flex-direction:column;gap:4px}.validation-panel li{color:#fecaca;font-size:13px;line-height:1.5}.validation-panel strong{color:#fff}.interactive-test-section{display:flex;flex-direction:column;gap:var(--space-sm)}.trigger-row{display:flex;gap:var(--space-sm)}.trigger-row .input{flex:1;min-height:36px}.test-transcript{display:flex;flex-direction:column;gap:6px;max-height:280px;overflow:auto;padding:var(--space-sm);background:var(--color-background);border:1px solid var(--color-border);border-radius:8px}.test-msg{font-size:13px;line-height:1.5;padding:8px 12px;border-radius:10px;max-width:90%;word-break:break-word}.test-msg-bot{background:var(--color-muted);border:1px solid var(--color-border);align-self:flex-start}.test-msg-user{background:color-mix(in srgb,var(--color-accent) 22%,var(--color-muted));color:#dcfce7;align-self:flex-end}.test-question-card{background:var(--color-background);border:1px solid var(--color-border);border-radius:10px;padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-sm)}.test-q-text{font-size:14px;font-weight:600;color:var(--color-foreground)}.test-q-help{font-size:12px;color:#9ca3af}.test-q-error{font-size:12px;color:#fca5a5;background:color-mix(in srgb,var(--color-destructive) 14%,transparent);padding:6px 10px;border-radius:6px}.test-options{display:flex;flex-wrap:wrap;gap:8px}.test-bubble{min-height:40px;padding:8px 14px;border-radius:999px;background:var(--color-muted);color:var(--color-foreground);border:1px solid var(--color-border);cursor:pointer;font-size:13px;font-weight:500;transition:background .15s ease,border-color .15s ease,transform .15s ease}.test-bubble:hover:not(:disabled){border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 14%,var(--color-muted))}.test-bubble:active:not(:disabled){transform:scale(.97)}.test-bubble:disabled{opacity:.5;cursor:not-allowed}.test-bubble:focus-visible{outline:2px solid var(--color-ring);outline-offset:2px}.test-input-form{display:flex;gap:8px}.test-input-form .input{flex:1;min-height:40px}.test-outcomes{display:flex;flex-direction:column;gap:var(--space-sm)}.test-outcomes h5{margin:0;font-size:12px;color:#9ca3af;text-transform:uppercase;letter-spacing:.04em}.outcome-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.outcome-card{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap;padding:10px 12px;background:color-mix(in srgb,var(--color-accent) 10%,var(--color-muted));border:1px solid color-mix(in srgb,var(--color-accent) 40%,var(--color-border));border-radius:8px}.outcome-name{font-weight:600;color:#dcfce7}.outcome-dept{font-size:12px;color:#9ca3af}.code-input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.version-history-section{display:flex;flex-direction:column;gap:var(--space-sm)}.table.compact th,.table.compact td{padding:8px 10px;font-size:13px}@media(prefers-reduced-motion:reduce){.test-bubble,.test-bubble:active,.btn,.icon-button{transition:none;transform:none}}.test-msg .test-qid{display:inline-block;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:#93c5fd;background:#1e3a8a40;padding:1px 6px;border-radius:4px;margin-right:8px;text-transform:lowercase}.test-msg .test-qtext{flex:1}.test-branch{display:flex;flex-direction:column;gap:2px;align-self:stretch;padding:6px 10px;border-left:2px solid var(--color-info);background:color-mix(in srgb,var(--color-info) 8%,transparent);border-radius:0 6px 6px 0}.test-branch-step{font-size:12px;color:#93c5fd;line-height:1.5;word-break:break-word}.test-branch-step code,.rules-table code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:#cbd5e1;background:var(--color-background);padding:1px 5px;border-radius:4px;border:1px solid var(--color-border)}.test-rules-eval{display:flex;flex-direction:column;gap:var(--space-sm);overflow-x:auto}.test-rules-eval h5{margin:0;font-size:12px;color:#9ca3af;text-transform:uppercase;letter-spacing:.04em}.rules-table{width:100%;border-collapse:collapse;font-size:12px}.rules-table th,.rules-table td{padding:6px 8px;border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top}.rules-table th{color:#9ca3af;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.03em}.rules-table .rule-row-matched{background:color-mix(in srgb,var(--color-accent) 8%,transparent)}.rules-table .rule-row-unmatched{opacity:.55}.rules-table .rule-hit{color:var(--color-accent)}.rules-table .rule-miss{color:#6b7280;font-size:16px;line-height:1}
