.kNpB8G_layout{flex-direction:column;flex:auto;gap:0;min-height:0;display:flex}.kNpB8G_builderModal{--spec-builder-body-height:min(780px, var(--app-modal-workspace-body-max-height));--spec-builder-palette-row-height:66px;--spec-builder-drawer-top:calc(var(--spec-builder-palette-row-height) + 10px)}.kNpB8G_builderModal .ant-modal-header{align-items:center;display:flex}.kNpB8G_builderModal .ant-modal-title{align-items:center;min-height:36px;display:flex}.kNpB8G_builderModal .ant-modal-body{max-height:var(--spec-builder-body-height);padding:0;overflow:hidden}.kNpB8G_builderModalBody{height:var(--spec-builder-body-height);flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.kNpB8G_modalTitle{align-items:center;gap:10px;line-height:1;display:inline-flex}.kNpB8G_modalTitleIcon{color:#ffffffe6;background:#ffffff1a;border:1px solid #ffffff29;border-radius:12px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.kNpB8G_modalTitleIcon svg{display:block}.kNpB8G_modalTitleText{line-height:1.12}.kNpB8G_modalTitle [aria-label=Tip]{color:#fff;background:#ffffff1f;border-color:#ffffff75}.kNpB8G_panel{flex-direction:column;flex:auto;gap:0;min-width:0;min-height:0;display:flex}.kNpB8G_panelHeader{flex-direction:column;gap:4px;display:flex}.kNpB8G_flowCanvasShell{background:radial-gradient(circle at top right, color-mix(in srgb, var(--brand) 10%, transparent), transparent 42%), linear-gradient(180deg, color-mix(in srgb, var(--surface) 96%, white 4%), var(--surface));border:0;border-radius:0;flex-direction:column;flex:auto;gap:0;min-width:0;min-height:0;padding:0;display:flex;position:relative;overflow:hidden}.kNpB8G_paletteRow{flex:0 0 var(--spec-builder-palette-row-height);min-height:var(--spec-builder-palette-row-height);border-bottom:1px solid color-mix(in srgb, var(--surface-border) 78%, transparent);background:color-mix(in srgb, var(--surface-elevated) 94%, transparent);z-index:5;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 18px;display:flex;position:relative}.kNpB8G_paletteButton{border:1px solid color-mix(in srgb, var(--fragment-accent) 28%, var(--surface-border));background:color-mix(in srgb, var(--fragment-accent) 10%, white);color:var(--fragment-accent);cursor:pointer;border-radius:999px;min-height:40px;padding:8px 14px;font-size:13px;font-weight:600;line-height:1;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s}.kNpB8G_paletteButton:hover{box-shadow:0 12px 24px color-mix(in srgb, var(--fragment-accent) 16%, transparent);transform:translateY(-1px)}.kNpB8G_paletteButtonActive{border-color:color-mix(in srgb, var(--fragment-accent) 52%, var(--surface-border));background:color-mix(in srgb, var(--fragment-accent) 18%, white);box-shadow:0 14px 28px color-mix(in srgb, var(--fragment-accent) 18%, transparent)}.kNpB8G_paletteButtonDisabled{border-color:color-mix(in srgb, var(--surface-border) 84%, transparent);background:color-mix(in srgb, var(--surface-muted) 78%, white 22%);color:var(--text-tertiary);box-shadow:none;cursor:not-allowed;transform:none}.kNpB8G_paletteDrawer{max-height:min(248px, calc(100% - var(--spec-builder-drawer-top) - 24px));overscroll-behavior:contain;left:18px;right:18px;top:var(--spec-builder-drawer-top);z-index:12;border:1px solid color-mix(in srgb, var(--surface-border) 84%, transparent);background:color-mix(in srgb, var(--surface) 94%, white 6%);border-radius:20px;flex-direction:column;gap:12px;margin:0;padding:14px;display:flex;position:absolute;overflow:hidden;box-shadow:0 22px 48px #0f172a1f}.kNpB8G_paletteDrawerList{grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;gap:10px;max-height:min(150px,20dvh);padding-right:2px;display:grid;overflow:hidden auto}.kNpB8G_flowCanvasViewport{border:1px solid color-mix(in srgb, var(--surface-border) 90%, transparent);background:radial-gradient(circle at top right, color-mix(in srgb, var(--brand) 8%, transparent), transparent 42%), linear-gradient(180deg, color-mix(in srgb, var(--surface) 97%, white 3%), var(--surface));border-radius:22px;flex:auto;min-height:0;margin:14px 18px 18px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffb3}.kNpB8G_xyFlowRoot{border-radius:inherit;width:100%;height:100%;min-height:100%;position:relative;overflow:hidden}.kNpB8G_xyFlowCanvas{width:100%;height:100%}.kNpB8G_xyFlowCanvas .react-flow__renderer{background:0 0}.kNpB8G_xyFlowCanvas .react-flow__controls{border:1px solid color-mix(in srgb, var(--surface-border) 84%, transparent);border-radius:16px;overflow:hidden;box-shadow:0 16px 28px #0f172a14}.kNpB8G_xyFlowCanvas .react-flow__controls-button{background:color-mix(in srgb, var(--surface) 94%, white 6%);border-bottom-color:color-mix(in srgb, var(--surface-border) 84%, transparent);width:30px;height:30px}.kNpB8G_xyFlowCanvas .react-flow__edge-path{stroke:color-mix(in srgb, var(--brand) 55%, var(--surface-border));stroke-width:2px}.kNpB8G_xyFlowCanvas .react-flow__attribution{background:color-mix(in srgb, var(--surface) 90%, white 10%);border-radius:10px 0 0;padding:4px 8px}.kNpB8G_canvasActionBar{z-index:4;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.kNpB8G_canvasValidationCallout{z-index:4;width:min(440px,100% - 32px);position:absolute;bottom:72px;left:50%;transform:translate(-50%)}.kNpB8G_xyFlowCanvas .react-flow__edge{cursor:pointer}.kNpB8G_flowNode{border:1px solid color-mix(in srgb, var(--surface-border) 84%, transparent);background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 98%, white 2%), var(--surface));backface-visibility:hidden;will-change:transform;border-radius:18px;flex-direction:column;justify-content:space-between;gap:12px;block-size:96px;inline-size:216px;padding:10px 12px;display:flex;position:relative;box-shadow:0 16px 28px #0f172a0f}.kNpB8G_flowNodeSelected{transform:translateY(-1px)}.kNpB8G_xyFlowCanvas .react-flow__node.dragging .kNpB8G_flowNode{box-shadow:0 10px 18px #0f172a14}.kNpB8G_flowNodeHeader{justify-content:space-between;align-items:center;gap:8px;display:flex}.kNpB8G_flowNodeActions{align-items:center;gap:6px;display:flex}.kNpB8G_flowNodeMeta{justify-content:flex-end;align-items:center;gap:6px;max-width:calc(100% - 72px);display:inline-flex}.kNpB8G_fragmentViewButton{border:1px solid color-mix(in srgb, var(--surface-border) 84%, transparent);background:color-mix(in srgb, var(--surface) 92%, white 8%);color:#475569;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:5px;padding:3px 8px;font-size:11px;font-weight:600;line-height:1;display:inline-flex}.kNpB8G_fragmentViewButton .anticon{align-items:center;line-height:1;display:inline-flex}.kNpB8G_fragmentViewButton:hover{border-color:color-mix(in srgb, #475569 28%, var(--surface-border));color:#334155;background:#f0f1f3}.kNpB8G_fragmentPreviewPopover{flex-direction:column;gap:10px;width:100%;display:flex}.kNpB8G_fragmentPreviewSection{flex-direction:column;gap:4px;display:flex}.kNpB8G_fragmentPreviewSurface{border:1px solid color-mix(in srgb, var(--surface-border) 84%, transparent);background:color-mix(in srgb, var(--surface) 95%, white 5%);border-radius:14px;padding:10px 12px}.kNpB8G_fragmentPreviewLabel{letter-spacing:.02em;text-transform:uppercase;font-size:11px}.kNpB8G_fragmentPreviewValue{white-space:pre-wrap;word-break:break-word;line-height:1.5;display:block}.kNpB8G_fragmentPreviewModalContent{width:100%}.kNpB8G_fragmentName{text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.45;display:block;overflow:hidden}.kNpB8G_fragmentCardFooter{justify-content:space-between;align-items:center;gap:8px;display:flex}.kNpB8G_flowNodeBody{flex:auto;min-height:0}.kNpB8G_flowNodeTitle{text-align:left;text-overflow:ellipsis;white-space:nowrap;inline-size:100%;max-width:100%;margin:0;font-size:13px;line-height:1.2;display:block;overflow:hidden}.kNpB8G_flowNodeFooter{justify-content:flex-end;align-items:center;gap:10px;min-height:28px;display:flex}.kNpB8G_flowNodeFooterActions{align-items:center;gap:8px;display:inline-flex}.kNpB8G_flowNodePrimaryAction{appearance:none;border:1px solid color-mix(in srgb, #2563eb 28%, var(--surface-border));color:#1d4ed8;cursor:pointer;font:inherit;background:#e9effd;border-radius:999px;justify-content:center;align-items:center;padding:6px 10px;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.kNpB8G_flowNodePrimaryAction:disabled{cursor:default;opacity:.6}.kNpB8G_flowNodeSecondaryAction{appearance:none;border:1px solid color-mix(in srgb, #d84f57 24%, var(--surface-border));color:#b42318;cursor:pointer;font:inherit;background:#fcf1f2;border-radius:999px;justify-content:center;align-items:center;padding:6px 10px;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.kNpB8G_flowNodeFooterSpacer{min-width:1px;height:1px}.kNpB8G_flowPin{background:var(--brand);cursor:crosshair;border:2px solid #fff;border-radius:999px;width:10px;height:10px;position:absolute;top:50%;transform:translateY(-50%)}.kNpB8G_flowPinLeft{left:-8px}.kNpB8G_flowPinRight{right:-8px}.kNpB8G_flowNodeBadge{white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;max-width:100%;min-height:22px;padding:0 8px;font-size:11px;font-weight:600;display:inline-flex}.kNpB8G_flowNodeRemove{border:1px solid color-mix(in srgb, var(--surface-border) 84%, transparent);background:color-mix(in srgb, var(--surface) 92%, white 8%);width:24px;height:24px;color:var(--text-secondary);appearance:none;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.kNpB8G_flowNodeRemove .anticon{justify-content:center;align-items:center;line-height:1;display:inline-flex}.kNpB8G_flowNodeRemove:hover{color:var(--text-primary);border-color:color-mix(in srgb, var(--danger) 30%, var(--surface-border))}.kNpB8G_fragmentCard{border:1px solid color-mix(in srgb, var(--surface-border) 84%, transparent);background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 96%, white 4%), var(--surface));border-radius:18px;flex-direction:column;gap:6px;block-size:76px;inline-size:100%;padding:10px 12px;transition:border-color .18s,box-shadow .18s,transform .18s;display:flex}.kNpB8G_fragmentCard:hover{transform:translateY(-1px);box-shadow:0 16px 28px #0f172a12}.kNpB8G_fragmentCardHeader{justify-content:space-between;align-items:center;gap:6px;min-width:0;display:flex}.kNpB8G_fragmentCardButton{text-align:left;cursor:pointer;background:0 0;border:0;flex:1;min-width:0;padding:0}.kNpB8G_flowEmptyState{pointer-events:none;justify-content:center;align-items:center;padding:28px;display:flex;position:absolute;inset:0}.kNpB8G_saveSpecModal{flex-direction:column;gap:14px;display:flex}.kNpB8G_saveSpecSection{flex-direction:column;gap:6px;display:flex}.kNpB8G_saveSpecLabel{letter-spacing:.02em;text-transform:uppercase;font-size:12px}.kNpB8G_saveSpecSurface{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 96%, white 4%), var(--surface));border:1px solid color-mix(in srgb, var(--surface-border) 90%, transparent);border-radius:16px;padding:12px 14px;transition:border-color .16s,box-shadow .16s}:is(.kNpB8G_saveSpecSurface .ant-input-outlined,.kNpB8G_saveSpecSurface .ant-input,.kNpB8G_saveSpecSurface .ant-input-affix-wrapper,.kNpB8G_saveSpecSurface .ant-input-textarea,.kNpB8G_saveSpecSurface textarea.ant-input){box-shadow:none;background:0 0;border:none;border-radius:0;outline:none}:is(.kNpB8G_saveSpecSurface .ant-input:focus,.kNpB8G_saveSpecSurface .ant-input:focus-within,.kNpB8G_saveSpecSurface textarea.ant-input:focus){box-shadow:none;outline:none}.kNpB8G_saveSpecSurface:focus-within{border-color:color-mix(in srgb, var(--brand) 26%, var(--surface-border));box-shadow:0 0 0 1px color-mix(in srgb, var(--brand) 14%, transparent)}.kNpB8G_saveSpecActions{justify-content:flex-end;display:flex}.kNpB8G_compiledSection{flex-direction:column;gap:12px;margin-top:20px;display:flex}.kNpB8G_compiledFooter{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.kNpB8G_compiledName{flex:0 320px}@media (width<=1100px){.kNpB8G_paletteDrawerList{grid-template-columns:repeat(3,minmax(0,1fr))}}.Ga1X8q_runsTableCard{background:linear-gradient(180deg, color-mix(in srgb, var(--surface-panel) 96%, transparent), color-mix(in srgb, var(--surface-elevated) 98%, transparent));border:1px solid color-mix(in srgb, var(--surface-border) 84%, transparent);border-radius:22px;min-width:0;overflow:hidden}.Ga1X8q_runsTableCard .ant-table-wrapper{min-width:0}.Ga1X8q_runsTableCard .ant-table-tbody>tr:last-child>td{border-bottom:none}.Ga1X8q_runsTableHeader{background:linear-gradient(180deg, color-mix(in srgb, var(--surface-elevated) 98%, white 2%), color-mix(in srgb, var(--surface-panel) 98%, transparent));border-bottom:1px solid color-mix(in srgb, var(--surface-border) 72%, transparent);justify-content:space-between;align-items:flex-end;gap:16px;min-width:0;padding:18px 20px 14px;display:flex}.Ga1X8q_runsTableHeaderCopy{flex-direction:column;gap:4px;min-width:0;display:flex}.Ga1X8q_runsTableEyebrow{color:var(--text-soft);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.Ga1X8q_runsTableTitle{color:var(--text-primary);font-size:16px;line-height:1.25;display:block}.Ga1X8q_runsHistoryTable{padding:8px 10px 10px}.Ga1X8q_runsHistoryTable .ant-table{background:0 0}.Ga1X8q_runsHistoryTable .ant-table-container{border:none}.Ga1X8q_runsHistoryTable .ant-table-thead>tr>th{border-bottom:1px solid color-mix(in srgb, var(--surface-border) 76%, transparent);color:var(--text-soft);letter-spacing:.08em;text-transform:uppercase;background:0 0;padding:10px 16px 12px;font-size:11px;font-weight:700}.Ga1X8q_runsHistoryTable .ant-table-tbody>tr>td{border-bottom:1px solid color-mix(in srgb, var(--surface-border) 58%, transparent);background:0 0;padding:14px 16px;transition:background-color .16s,border-color .16s}.Ga1X8q_runsHistoryTable .ant-table-tbody>tr:hover>td{background:color-mix(in srgb, var(--surface-subtle) 86%, white 14%)}.Ga1X8q_runsHistoryRow{cursor:pointer}.Ga1X8q_runsHistoryTable .ant-table-tbody>tr.Ga1X8q_runsHistoryRowActive>td,.Ga1X8q_runsHistoryTable .ant-table-tbody>tr.Ga1X8q_runsHistoryRowActive:hover>td{border-bottom-color:color-mix(in srgb, #1677ff 18%, var(--surface-border));background:#eaf3ff}.Ga1X8q_runsHistoryRunId{color:var(--text-primary);font-variant-numeric:tabular-nums}.Ga1X8q_runsHistoryDate{color:var(--text-secondary);font-variant-numeric:tabular-nums}.Ga1X8q_sentinelCheckTag{white-space:nowrap;justify-content:center;align-items:center;min-width:0;max-width:100%;margin-inline-end:0;display:inline-flex}.Ga1X8q_specViewContent{flex-direction:column;gap:14px;min-width:0;display:flex}.Ga1X8q_specViewSummary{gap:12px;min-width:0;display:grid}.Ga1X8q_specPreviewSection{flex-direction:column;gap:6px;min-width:0;display:flex}.Ga1X8q_specPreviewLabel{color:var(--text-soft);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:760;line-height:1}.Ga1X8q_specPreviewValue{border:1px solid color-mix(in srgb, var(--surface-border) 74%, transparent);background:color-mix(in srgb, var(--surface-subtle) 68%, transparent);min-width:0;min-height:44px;color:var(--text-primary);border-radius:14px;padding:11px 12px}.Ga1X8q_specPreviewValue .ant-typography{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.Ga1X8q_specViewDefinitionPanel{border:1px solid color-mix(in srgb, var(--surface-border) 76%, transparent);background:linear-gradient(180deg, color-mix(in srgb, var(--surface-panel) 96%, transparent), color-mix(in srgb, var(--surface-elevated) 98%, transparent));border-radius:18px;min-width:0;padding:14px 16px 16px;overflow:hidden}.Ga1X8q_specViewDefinitionHeader{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.Ga1X8q_specViewDefinitionHeader .ant-typography-secondary{font-size:13px}.Ga1X8q_specModalTitle{align-items:center;gap:10px;min-width:0;line-height:1;display:inline-flex}.Ga1X8q_specModalTitleIcon{color:#ffffffe6;background:#ffffff1a;border:1px solid #ffffff29;border-radius:12px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.Ga1X8q_specModalTitleIcon svg{display:block}.Ga1X8q_specModalTitleText{text-overflow:ellipsis;white-space:nowrap;line-height:1.12;overflow:hidden}.Ga1X8q_specModalTitle [aria-label=Tip]{color:#fff;background:#ffffff1f;border-color:#ffffff75}
