@zaip-ai/cli 1.0.8 → 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/services/adapters.d.ts +1 -1
- package/dist/services/adapters.js +1 -1
- package/dist/services/agent-adapters.js +3 -3
- package/dist/services/agent-adapters.js.map +1 -1
- package/dist/services/agent-adapters.test.js +7 -1
- package/dist/services/agent-adapters.test.js.map +1 -1
- package/dist/services/codex-pre-tool-hook-template.d.ts.map +1 -1
- package/dist/services/codex-pre-tool-hook-template.js +89 -7
- package/dist/services/codex-pre-tool-hook-template.js.map +1 -1
- package/dist/services/codex-rules.d.ts +1 -1
- package/dist/services/codex-rules.d.ts.map +1 -1
- package/dist/services/codex-rules.js +7 -0
- package/dist/services/codex-rules.js.map +1 -1
- package/dist/services/install-agents-template.d.ts.map +1 -1
- package/dist/services/install-agents-template.js +1 -0
- package/dist/services/install-agents-template.js.map +1 -1
- package/dist/services/logger.test.js +2 -2
- package/dist/services/runtime-template.test.js +31 -7
- package/dist/services/runtime-template.test.js.map +1 -1
- package/dist/services/template-manifest.d.ts.map +1 -1
- package/dist/services/template-manifest.js +12 -3
- package/dist/services/template-manifest.js.map +1 -1
- package/package.json +1 -1
- package/templates/.agents/architecture/software-architecture.md +131 -0
- package/templates/.agents/branding/brandbook.docx +0 -0
- package/templates/.agents/branding/brandbook.md +60 -0
- package/templates/.agents/config/agents/catalog.yaml +7 -7
- package/templates/.agents/config/clients/codex/agents/zaip-agent-backend.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-designer.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-finalizer.toml +1 -1
- package/templates/.agents/config/clients/codex/agents/zaip-agent-frontend.toml +8 -8
- package/templates/.agents/config/clients/codex/agents/zaip-agent-orchestrator.toml +1 -1
- package/templates/.agents/dashboard/.tmp-run-list.json +254 -0
- package/templates/.agents/dashboard/.zaip-managed.json +457 -173
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{CostCalculationGuidePage-Z60df2r-.js → CostCalculationGuidePage-ovxurkIk.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/DashboardHelpDialog-BgVgrfhQ.js +2310 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{PricingSettingsDialog-Coc6pA-1.js → PricingSettingsDialog-vSvvOHQp.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/ProjectSettingsPage-BomxqCBU.css +1 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/ProjectSettingsPage-zH758vfs.js +3 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/TraceabilityWorkspace-DLn-Mz2M.js +1 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{TraceabilityWorkspace-CaKwQP43.css → TraceabilityWorkspace-DvvavDLY.css} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/cost-monitor-DKwP1stV.js +68 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/cost-monitor-PoJA2PI1.css +1 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{icons-vendor-DFBuc_qp.js → icons-vendor-B_lDDHn1.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/index-B31GMG5O.css +1 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/index-CZQlsLV9.js +2 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{react-vendor-CCQOHdVI.js → react-vendor-B3TJrD4O.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{traceability-pC2_0J8x.js → traceability-7f1j5wx3.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/index.html +7 -7
- package/templates/.agents/dashboard/apps/frontend/package.json +1 -1
- package/templates/.agents/dashboard/apps/frontend/playwright.dom.config.ts +32 -0
- package/templates/.agents/dashboard/apps/frontend/src/App.tsx +199 -140
- package/templates/.agents/dashboard/apps/frontend/src/AppOverlays.tsx +0 -21
- package/templates/.agents/dashboard/apps/frontend/src/DashboardAlternateContent.tsx +20 -11
- package/templates/.agents/dashboard/apps/frontend/src/ProjectSettingsPage.tsx +14 -7
- package/templates/.agents/dashboard/apps/frontend/src/ProjectStackEditor.tsx +4 -2
- package/templates/.agents/dashboard/apps/frontend/src/TraceabilityWorkspace.dom.e2e.ts +56 -0
- package/templates/.agents/dashboard/apps/frontend/src/TraceabilityWorkspace.test.ts +21 -2
- package/templates/.agents/dashboard/apps/frontend/src/TraceabilityWorkspace.tsx +89 -19
- package/templates/.agents/dashboard/apps/frontend/src/cost-period-refresh.test.ts +19 -4
- package/templates/.agents/dashboard/apps/frontend/src/dashboard-api.test.ts +49 -3
- package/templates/.agents/dashboard/apps/frontend/src/dashboard-api.ts +29 -10
- package/templates/.agents/dashboard/apps/frontend/src/operations-period-render.test.ts +4 -4
- package/templates/.agents/dashboard/apps/frontend/src/overview-status-page.test.ts +4 -2
- package/templates/.agents/dashboard/apps/frontend/src/project-settings-page.css +36 -26
- package/templates/.agents/dashboard/apps/frontend/src/project-settings.test.ts +2 -2
- package/templates/.agents/dashboard/apps/frontend/src/snapshot-banner-semantics.test.ts +47 -6
- package/templates/.agents/dashboard/apps/frontend/src/snapshot-coherence.test.ts +59 -9
- package/templates/.agents/dashboard/apps/frontend/src/sqlite-page-export.test.ts +32 -0
- package/templates/.agents/dashboard/apps/frontend/src/sqlite-page-export.ts +21 -0
- package/templates/.agents/dashboard/apps/frontend/src/styles.css +19 -0
- package/templates/.agents/dashboard/apps/frontend/src/traceability-task-pagination.test.ts +32 -0
- package/templates/.agents/dashboard/apps/frontend/src/traceability-task-pagination.ts +36 -0
- package/templates/.agents/dashboard/apps/frontend/src/traceability-workspace.css +6 -2
- package/templates/.agents/dashboard/apps/frontend/src/use-app-cost-loaders.test.ts +137 -23
- package/templates/.agents/dashboard/apps/frontend/src/use-app-cost-loaders.ts +229 -35
- package/templates/.agents/dashboard/apps/frontend/src/use-app-effects.ts +61 -7
- package/templates/.agents/dashboard/apps/frontend/src/use-app-operations-pages.ts +3 -6
- package/templates/.agents/dashboard/apps/frontend/src/use-app-trace-documents.ts +7 -1
- package/templates/.agents/dashboard/apps/frontend/src/use-app-work-list-page.test.ts +163 -0
- package/templates/.agents/dashboard/apps/frontend/src/use-app-work-list-page.ts +136 -0
- package/templates/.agents/dashboard/apps/frontend/src/use-operations-detail-export.ts +76 -0
- package/templates/.agents/dashboard/apps/frontend/src/work-list-load-dedup.test.ts +23 -0
- package/templates/.agents/dashboard/apps/frontend/src/work-list-load-dedup.ts +27 -0
- package/templates/.agents/dashboard/apps/frontend/src/work-list-pagination.test.ts +39 -15
- package/templates/.agents/dashboard/apps/frontend/src/work-list-pagination.ts +3 -4
- package/templates/.agents/dashboard/apps/frontend/vite.config.ts +4 -1
- package/templates/.agents/dashboard/modules/cost-monitor/package.json +1 -1
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CompactLifecycleCostTable.test.ts +89 -19
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CompactLifecycleCostTable.tsx +31 -16
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostCharts.test.ts +43 -14
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostCharts.tsx +5 -5
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostDeveloperAttributionPanel.tsx +60 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostDeveloperAttributionTable.tsx +191 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostFilters.loading.test.ts +14 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostFilters.run-page.test.ts +18 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostFilters.tsx +18 -3
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostModelsAuditTable.tsx +1 -1
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostMonitorContent.tsx +75 -44
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostMonitorLoadErrors.tsx +35 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostMonitorPage.test.ts +162 -40
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostMonitorPage.tsx +221 -79
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTableLoading.test.ts +132 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTableLoading.tsx +70 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTables.test.ts +203 -155
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTables.tsx +164 -125
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-monitor-copy.ts +2 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-monitor-views.ts +3 -1
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-monitor.css +5 -2
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-page-range.ts +35 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/index.ts +2 -2
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/period-cost-groups.ts +2 -1
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/use-compact-cost-page.ts +32 -9
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/use-cost-group-page.test.ts +37 -2
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/use-cost-group-page.ts +131 -9
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/use-cost-run-page.ts +34 -17
- package/templates/.agents/dashboard/modules/cost-monitor/src/server/build-cost-monitor-projection.test.ts +0 -24
- package/templates/.agents/dashboard/modules/cost-monitor/src/server/build-cost-summary-projection.test.ts +225 -424
- package/templates/.agents/dashboard/modules/cost-monitor/src/server/build-cost-summary-projection.ts +24 -15
- package/templates/.agents/dashboard/modules/cost-monitor/src/server/build-cost-summary-terminal-day.test.ts +6 -1
- package/templates/.agents/dashboard/modules/cost-monitor/src/server/source-size-cost-server/build-cost-monitor-projection-agents.test.ts +31 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/server/source-size-cost-server/build-cost-summary-projection-duration.test.ts +414 -0
- package/templates/.agents/dashboard/modules/operations/package.json +1 -1
- package/templates/.agents/dashboard/modules/operations/src/contracts.ts +46 -26
- package/templates/.agents/dashboard/modules/operations/src/react/DeveloperAttributionPanel.test.ts +54 -0
- package/templates/.agents/dashboard/modules/operations/src/react/DeveloperAttributionPanel.tsx +247 -0
- package/templates/.agents/dashboard/modules/operations/src/react/EntityTables.tsx +31 -11
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsMainContent.tsx +39 -13
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverview.helpers.tsx +107 -2
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverview.macro-metrics.test.ts +55 -0
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverview.test.ts +23 -29
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverview.tsx +211 -184
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverviewTopPanel.tsx +127 -0
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsPage.tsx +60 -51
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsPageNavigation.tsx +1 -4
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsPageOverview.tsx +3 -0
- package/templates/.agents/dashboard/modules/operations/src/react/PagedWorkList.test.tsx +43 -0
- package/templates/.agents/dashboard/modules/operations/src/react/PagedWorkList.tsx +181 -0
- package/templates/.agents/dashboard/modules/operations/src/react/PeriodSummaryTable.tsx +32 -10
- package/templates/.agents/dashboard/modules/operations/src/react/TaskDetailsDialog.tsx +9 -3
- package/templates/.agents/dashboard/modules/operations/src/react/UnifiedWorkBoard.tsx +13 -5
- package/templates/.agents/dashboard/modules/operations/src/react/UnifiedWorkList.test.ts +16 -6
- package/templates/.agents/dashboard/modules/operations/src/react/UnifiedWorkList.tsx +14 -4
- package/templates/.agents/dashboard/modules/operations/src/react/conversation-rows.ts +1 -2
- package/templates/.agents/dashboard/modules/operations/src/react/developer-identities.test.ts +18 -0
- package/templates/.agents/dashboard/modules/operations/src/react/developer-identities.ts +30 -0
- package/templates/.agents/dashboard/modules/operations/src/react/execution-metrics.ts +1 -0
- package/templates/.agents/dashboard/modules/operations/src/react/export/ExcelExportAction.test.ts +393 -4
- package/templates/.agents/dashboard/modules/operations/src/react/export/ExcelExportAction.tsx +484 -61
- package/templates/.agents/dashboard/modules/operations/src/react/export/export-layout.test.ts +23 -1
- package/templates/.agents/dashboard/modules/operations/src/react/export/xlsx-runtime-e2e.test.ts +248 -0
- package/templates/.agents/dashboard/modules/operations/src/react/index.ts +1 -0
- package/templates/.agents/dashboard/modules/operations/src/react/operation-duration.test.ts +4 -4
- package/templates/.agents/dashboard/modules/operations/src/react/operation-duration.ts +6 -4
- package/templates/.agents/dashboard/modules/operations/src/react/operations-coverage-toast.test.ts +4 -3
- package/templates/.agents/dashboard/modules/operations/src/react/operations-date-filters.css +1 -1
- package/templates/.agents/dashboard/modules/operations/src/react/operations-global-filters.test.ts +4 -1
- package/templates/.agents/dashboard/modules/operations/src/react/operations-overview-period-filter.test.ts +22 -12
- package/templates/.agents/dashboard/modules/operations/src/react/operations-overview.css +4 -0
- package/templates/.agents/dashboard/modules/operations/src/react/operations-overview.status-cards.test.ts +1 -1
- package/templates/.agents/dashboard/modules/operations/src/react/operations-page-contract.ts +53 -6
- package/templates/.agents/dashboard/modules/operations/src/react/operations-view-order.test.ts +2 -4
- package/templates/.agents/dashboard/modules/operations/src/react/period-summary.test.ts +82 -6
- package/templates/.agents/dashboard/modules/operations/src/react/period-summary.ts +1 -0
- package/templates/.agents/dashboard/modules/operations/src/react/work-board-model.test.ts +2 -1
- package/templates/.agents/dashboard/modules/operations/src/react/work-board-model.ts +1 -1
- package/templates/.agents/dashboard/modules/operations/src/server/execution-relationship-counts.test.ts +19 -7
- package/templates/.agents/dashboard/modules/operations/src/server/execution-relationship-counts.ts +4 -1
- package/templates/.agents/dashboard/modules/operations/src/server/metric-coverage.ts +1 -0
- package/templates/.agents/dashboard/modules/operations/src/server/quick-daily-operations-projection.ts +11 -5
- package/templates/.agents/dashboard/modules/traceability/package.json +1 -1
- package/templates/.agents/dashboard/packages/branding/package.json +1 -1
- package/templates/.agents/dashboard/packages/branding/src/index.ts +1 -1
- package/templates/.agents/dashboard/packages/contracts/package.json +1 -1
- package/templates/.agents/dashboard/packages/contracts/src/index.ts +1 -0
- package/templates/.agents/dashboard/packages/data-export/package.json +1 -1
- package/templates/.agents/dashboard/packages/local-runtime/dist/server.cjs +533 -338
- package/templates/.agents/dashboard/packages/local-runtime/dist/sqlite-read-model.cjs +506 -311
- package/templates/.agents/dashboard/packages/local-runtime/gitignore.template +2 -0
- package/templates/.agents/dashboard/packages/local-runtime/package.json +1 -1
- package/templates/.agents/dashboard/packages/local-runtime/scripts/build-sqlite-dashboard.mjs +15 -7
- package/templates/.agents/dashboard/packages/local-runtime/scripts/build-sqlite-runtime.mjs +44 -13
- package/templates/.agents/dashboard/packages/local-runtime/scripts/rebuild-sqlite-read-model.mjs +8 -3
- package/templates/.agents/dashboard/packages/local-runtime/scripts/source-size-runtime-scripts/sqlite-read-model-fixture.mjs +397 -0
- package/templates/.agents/dashboard/packages/local-runtime/scripts/test-sqlite-read-model.mjs +472 -145
- package/templates/.agents/dashboard/packages/local-runtime/scripts/test-unix-launchers.mjs +15 -3
- package/templates/.agents/dashboard/packages/local-runtime/scripts/validate-sqlite-read-model.mjs +141 -33
- package/templates/.agents/dashboard/packages/local-runtime/server.mjs +533 -338
- package/templates/.agents/dashboard/packages/local-runtime/src/project-settings.test.ts +6 -2
- package/templates/.agents/dashboard/packages/local-runtime/src/project-settings.ts +3 -3
- package/templates/.agents/dashboard/packages/local-runtime/src/server-board.test.ts +89 -16
- package/templates/.agents/dashboard/packages/local-runtime/src/server-board.ts +33 -16
- package/templates/.agents/dashboard/packages/local-runtime/src/server-classification-page.test.ts +87 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-period-macro-metric.test.ts +44 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-period-macro-metric.ts +125 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-reconciliation-refresh.test.ts +66 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-request-authority.test.ts +61 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-request-authority.ts +18 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-run-projections.test.ts +42 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-snapshot-refresh.ts +97 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-snapshot.test.ts +22 -5
- package/templates/.agents/dashboard/packages/local-runtime/src/server-sqlite-task-trace.ts +91 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-workspace.ts +7 -3
- package/templates/.agents/dashboard/packages/local-runtime/src/server.test-fixtures.ts +36 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server.test.ts +230 -132
- package/templates/.agents/dashboard/packages/local-runtime/src/server.ts +224 -182
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-artifact-counts.ts +28 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-agent-page.test.ts +63 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-agent-page.ts +109 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-aggregates.ts +497 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-fast-page-parity.test-support.ts +65 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-group-page.test.ts +176 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-group-page.ts +119 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-group-projection.ts +41 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-invocation-page.test.ts +16 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-invocation-page.ts +29 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-first-fold-cache.ts +355 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-first-fold-persistence.ts +121 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-first-fold-timing.ts +27 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-metric-contract.ts +16 -2
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-operations-projection.ts +15 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-operations-work-list.test.ts +223 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-operations-work-list.ts +304 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-cache.test-support.ts +23 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-first-fold-types.ts +89 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-multi-provider-fixture.ts +227 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-multi-provider.test.ts +691 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-source-fingerprint.ts +81 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model.test.ts +1655 -567
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model.ts +2168 -1268
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-snapshot-cache.ts +129 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-snapshot-install.test.ts +26 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-snapshot-install.ts +28 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-snapshot-seed.test.ts +116 -0
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-launch-page.mjs +146 -0
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-launch-page.test.mjs +165 -0
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-refresh.mjs +140 -0
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard.mjs +255 -289
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard.test.mjs +94 -88
- package/templates/.agents/dashboard/packages/ui/package.json +1 -1
- package/templates/.agents/dashboard/packages/windows-launcher/Program.cs +5 -2
- package/templates/.agents/dashboard/tests/e2e/package.json +1 -1
- package/templates/.agents/dashboard/tests/e2e/playwright.config.ts +4 -1
- package/templates/.agents/dashboard/tests/e2e/specs/cost-monitor-loading.spec.ts +142 -0
- package/templates/.agents/dashboard/tests/e2e/specs/cost-monitor-pagination.spec.ts +232 -0
- package/templates/.agents/dashboard/tests/e2e/specs/dashboard-performance-matrix.spec.ts +743 -0
- package/templates/.agents/dashboard/tests/e2e/specs/dashboard.spec.ts +189 -214
- package/templates/.agents/dashboard/zaip-dashboard-windows.exe +0 -0
- package/templates/.agents/design/.zaip-managed.json +3 -3
- package/templates/.agents/design/apps/catalog/package.json +1 -1
- package/templates/.agents/design/packages/local-runtime/package.json +1 -1
- package/templates/.agents/growth/estrategia-bootstrap-90-dias.md +169 -0
- package/templates/.agents/growth/strategy.md +27 -0
- package/templates/.agents/marketing/estrategia-marketing-zaip-90-dias.md +197 -0
- package/templates/.agents/marketing/strategy.md +29 -0
- package/templates/.agents/requirements/autonomous-assurance.md +6 -6
- package/templates/.agents/requirements/comparative-audit.md +1 -1
- package/templates/.agents/requirements/context-engine.md +1 -1
- package/templates/.agents/requirements/cost-observability.md +1 -1
- package/templates/.agents/requirements/dashboard-launch.md +1 -1
- package/templates/.agents/requirements/data-export.md +1 -1
- package/templates/.agents/requirements/design-system.md +1 -1
- package/templates/.agents/requirements/execution-engine.md +3 -3
- package/templates/.agents/requirements/kanban-dashboard.md +10 -2
- package/templates/.agents/requirements/model-orchestration.md +1 -1
- package/templates/.agents/requirements/public-distribution.md +1 -1
- package/templates/.agents/requirements/software-architecture.md +1 -1
- package/templates/.agents/requirements/strategic-improvements.md +1 -1
- package/templates/.agents/requirements/work-lifecycle.md +4 -4
- package/templates/.agents/requirements/zaip-strategic-95.md +1 -1
- package/templates/.agents/rules/dashboard-ui-consistency.md +14 -0
- package/templates/.agents/rules/frontend-lite.md +4 -4
- package/templates/.agents/rules/run-lifecycle-closure.md +4 -4
- package/templates/.agents/runtime/VERSION +1 -1
- package/templates/.agents/runtime/bin/zaip.mjs +1142 -1041
- package/templates/.agents/runtime/checksums.sha256 +6 -6
- package/templates/.agents/runtime/manifest.json +1 -1
- package/templates/.agents/runtime/pnpm-lock.sha256 +1 -1
- package/templates/.agents/runtime/provenance.json +5 -5
- package/templates/.agents/runtime/sbom.cdx.json +3 -3
- package/templates/.agents/sales/playbook.md +32 -0
- package/templates/.agents/sales/roteiro-comercial-zaip.md +252 -0
- package/templates/.agents/skills/criar-pasta-obsidian/scripts/generate-obsidian-vault.test.mjs +20 -16
- package/templates/.agents/skills/zaip-aios/SKILL.md +1 -1
- package/templates/.agents/skills/zaip-skill-agent-catalog/SKILL.md +22 -0
- package/templates/.agents/skills/zaip-skill-agent-catalog/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-author-skills/SKILL.md +3 -2
- package/templates/.agents/skills/zaip-skill-author-skills/scripts/audit-skill-catalog.mjs +49 -0
- package/templates/.agents/skills/zaip-skill-author-skills/scripts/author-skill-scripts.test.mjs +27 -0
- package/templates/.agents/skills/zaip-skill-author-skills/scripts/run-skill-tests.mjs +37 -0
- package/templates/.agents/skills/zaip-skill-backend/SKILL.md +1 -0
- package/templates/.agents/skills/zaip-skill-brand-governance/SKILL.md +9 -2
- package/templates/.agents/skills/zaip-skill-brand-governance/references/brandbook-framework.md +39 -0
- package/templates/.agents/skills/zaip-skill-brand-governance/references/brandbook-standards.md +1 -1
- package/templates/.agents/skills/zaip-skill-change/SKILL.md +1 -1
- package/templates/.agents/skills/zaip-skill-change/references/observable-evidence.md +83 -0
- package/templates/.agents/skills/zaip-skill-dashboard-diagnostics/SKILL.md +22 -0
- package/templates/.agents/skills/zaip-skill-dashboard-diagnostics/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-enforce-architecture/SKILL.md +2 -0
- package/templates/.agents/skills/zaip-skill-execution/SKILL.md +1 -1
- package/templates/.agents/skills/zaip-skill-frontend/SKILL.md +4 -3
- package/templates/.agents/skills/zaip-skill-frontend/agents/openai.yaml +2 -2
- package/templates/.agents/skills/zaip-skill-github-deploy/SKILL.md +10 -10
- package/templates/.agents/skills/zaip-skill-growth-strategy-revops/SKILL.md +6 -0
- package/templates/.agents/skills/zaip-skill-lifecycle-closure/SKILL.md +27 -0
- package/templates/.agents/skills/zaip-skill-lifecycle-closure/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-marketing/SKILL.md +6 -0
- package/templates/.agents/skills/zaip-skill-prd/SKILL.md +4 -0
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-local-telemetry.mjs +111 -104
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-telemetry-explicit-recovery.mjs +223 -0
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-telemetry-lib.mjs +55 -9
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-telemetry-lib.test.mjs +145 -14
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-telemetry-remeasurement.mjs +19 -9
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-telemetry-remeasurement.test.mjs +82 -5
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/source-size-telemetry/model-identity-reconciliation.mjs +77 -0
- package/templates/.agents/skills/zaip-skill-release-qualification/SKILL.md +20 -0
- package/templates/.agents/skills/zaip-skill-release-qualification/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-review/SKILL.md +5 -0
- package/templates/.agents/skills/zaip-skill-rules/SKILL.md +1 -1
- package/templates/.agents/skills/zaip-skill-sales-methodology/SKILL.md +6 -0
- package/templates/.agents/skills/zaip-skill-spec/SKILL.md +4 -0
- package/templates/.agents/skills/zaip-skill-sqlite-read-model/SKILL.md +22 -90
- package/templates/.agents/skills/zaip-skill-sqlite-read-model/scripts/ensure-node.mjs +28 -5
- package/templates/.agents/zaip-aios/INDEX.md +57 -22
- package/templates/.agents/zaip-aios/README.md +24 -13
- package/templates/.agents/zaip-aios/VERSION +1 -1
- package/templates/.agents/zaip-aios/guides/02-requirements.md +5 -0
- package/templates/.agents/zaip-aios/guides/06-execucao.md +13 -4
- package/templates/.agents/zaip-aios/guides/07-revisao-e-validacao.md +7 -0
- package/templates/.agents/zaip-aios/guides/10-seguranca.md +23 -0
- package/templates/.agents/zaip-aios/guides/11-observabilidade-e-custos.md +6 -6
- package/templates/.agents/zaip-aios/guides/13-boas-praticas.md +3 -0
- package/templates/.agents/zaip-aios/guides/16-lifecycle-e-reconciliacao.md +12 -3
- package/templates/.agents/zaip-aios/guides/17-como-o-custo-e-calculado.md +5 -5
- package/templates/.agents/zaip-aios/guides/18-catalogo-de-agentes.md +76 -0
- package/templates/.agents/zaip-aios/guides/19-assurance-e-autonomia.md +95 -0
- package/templates/.agents/zaip-aios/guides/20-instalacao-detalhada.md +366 -0
- package/templates/.agents/zaip-aios/guides/21-telemetria-monitor-custos.md +46 -0
- package/templates/.agents/zaip-aios/guides/22-fluxos-e-roteamento.md +74 -0
- package/templates/.agents/zaip-aios/guides/23-orquestracao-de-modelos.md +483 -0
- package/templates/.agents/zaip-aios/guides/24-calculo-de-custos-openai.md +85 -0
- package/templates/.agents/zaip-aios/guides/25-fontes-de-precos-openai.md +19 -0
- package/templates/.agents/zaip-aios/guides/26-qualidade-e-release.md +111 -0
- package/templates/.agents/zaip-aios/guides/27-telemetria-git-native.md +172 -0
- package/templates/.agents/zaip-aios/guides/28-lifecycle-completo.md +149 -0
- package/templates/.agents/zaip-aios/guides/assets/diagrams/lifecycles-task-spec-prd.png +0 -0
- package/templates/.agents/zaip-aios/guides/assets/diagrams/prd-lifecycle.png +0 -0
- package/templates/.agents/zaip-aios/guides/assets/diagrams/spec-lifecycle.png +0 -0
- package/templates/.agents/zaip-aios/guides/assets/diagrams/task-lifecycle.png +0 -0
- package/templates/template-manifest.json +756 -235
- package/templates/.agents/dashboard/apps/frontend/dist/assets/DashboardHelpDialog-Cs6dzDmW.js +0 -1505
- package/templates/.agents/dashboard/apps/frontend/dist/assets/ProjectSettingsPage-QE1k9yZB.css +0 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/ProjectSettingsPage-_Pf5DA_A.js +0 -3
- package/templates/.agents/dashboard/apps/frontend/dist/assets/TraceabilityWorkspace-BVlz3DLZ.js +0 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/cost-monitor-BZ5WdaMN.css +0 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/cost-monitor-Cf9ctPVt.js +0 -68
- package/templates/.agents/dashboard/apps/frontend/dist/assets/index-8A4DcNXM.js +0 -2
- package/templates/.agents/dashboard/apps/frontend/dist/assets/index-DK_enB5Z.css +0 -1
- package/templates/.agents/dashboard/apps/frontend/src/use-idle-cost-prefetch.ts +0 -45
package/templates/.agents/dashboard/apps/frontend/dist/assets/ProjectSettingsPage-QE1k9yZB.css
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.project-settings-page,.project-settings-state{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#0f172a;background:#f5f7fb;min-height:100vh;padding:clamp(20px,4vw,48px)}.project-settings-page form,.project-settings-state-card{width:min(1440px,100%);margin-inline:auto}.project-settings-state{place-items:center;display:grid}.project-settings-state-card{text-align:center;background:#fff;border:1px solid #dbe4ef;border-radius:24px;justify-items:center;max-width:580px;padding:clamp(32px,6vw,56px);display:grid;box-shadow:0 18px 48px #0f172a14}.project-settings-loader{border:4px solid #00b0f02e;border-top-color:#00b0f0;border-radius:50%;width:42px;height:42px;margin-bottom:20px;animation:.8s linear infinite project-settings-spin}.project-settings-state-card h1{max-width:16ch}.project-settings-state-card button{width:auto;margin-top:26px}.project-settings-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.project-settings-header p,.project-settings-state p{color:#006b91;letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:.75rem;font-weight:700}.project-settings-header h1,.project-settings-state h1{letter-spacing:-.035em;margin:0;font-size:clamp(1.75rem,4vw,2.5rem);line-height:1.15}.project-settings-header>div>span{color:#526176;max-width:760px;margin-top:10px;line-height:1.65;display:block}.project-settings-back,.project-settings-footer button,.project-settings-state button{color:#006b91;cursor:pointer;min-height:44px;font:inherit;background:0 0;border:1px solid #00b0f073;border-radius:999px;padding:10px 20px;font-weight:700}.project-settings-footer button{color:#042330;background:linear-gradient(135deg,#00b0f0 0%,#72f4fb 100%);border-color:#0000}.project-settings-back:focus-visible,.project-settings-footer button:focus-visible,.project-settings-state button:focus-visible,.project-settings-field input:focus-visible,.project-settings-field select:focus-visible,.project-settings-field textarea:focus-visible,.project-settings-toggle input:focus-visible+span{outline-offset:3px;outline:3px solid #00b0f06b}.project-settings-message,.project-settings-feature{border-radius:16px;margin-bottom:20px;padding:16px 18px}.project-settings-message.is-error{color:#b91c1c;background:#fef2f2;border:1px solid #dc26264d}.project-settings-message.is-success{color:#166534;background:#f0fdf4;border:1px solid #16a34a4d}.project-settings-feature{background:#00b0f014;border:1px solid #00b0f057;justify-content:space-between;align-items:center;gap:24px;display:flex}.project-settings-feature h2,.project-settings-feature p{margin:0}.project-settings-feature h2{font-size:1rem}.project-settings-summary{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:20px;display:grid}.project-settings-metric{background:linear-gradient(145deg,#00b0f014,#fff 72%);border:1px solid #dbe4ef;border-radius:16px;align-content:center;gap:4px;min-height:94px;padding:14px 16px;display:grid}.project-settings-metric strong{color:#0f172a;font-variant-numeric:tabular-nums;font-size:1.75rem;line-height:1}.project-settings-metric span{color:#526176;font-size:.78rem;font-weight:700;line-height:1.35}.project-settings-feature p{color:#526176;margin-top:5px}.project-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;margin-top:32px;display:grid}.project-settings-card{background:#fff;border:1px solid #dbe4ef;border-radius:24px;overflow:hidden;box-shadow:0 10px 28px #0f172a0f}.project-settings-card.is-wide{grid-column:1/-1}.project-identity-card .project-settings-fields{grid-template-columns:minmax(110px,.55fr) minmax(220px,1fr) minmax(220px,1fr) minmax(260px,1.2fr);align-items:end}.project-settings-card>h2{background:linear-gradient(145deg,#00b0f014,#0000 72%);border-bottom:1px solid #dbe4ef;margin:0;padding:18px 22px;font-size:1rem}.project-settings-fields{gap:16px;padding:20px 22px 22px;display:grid}.project-settings-fields .project-settings-fields{padding:0}.project-settings-fields.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.project-stack-guide{color:#526176;border-left:3px solid #00b0f0;margin:0 22px;padding:2px 0 2px 12px;line-height:1.5}.project-stack-editor{gap:22px;padding:20px 22px 22px;display:grid}.project-stack-editor>section{gap:10px;display:grid}.project-stack-editor h3{margin:0;font-size:.95rem}.project-stack-table{background:#fff;border:1px solid #dbe4ef;border-radius:14px;overflow:hidden}.project-stack-table-head,.project-stack-row{grid-template-columns:minmax(170px,.9fr) minmax(170px,1fr) minmax(120px,.55fr) minmax(250px,1.35fr);align-items:center;gap:10px;padding:10px 12px;display:grid}.project-stack-table-head{color:#526176;letter-spacing:.04em;text-transform:uppercase;background:#f1f5f9;font-size:.7rem;font-weight:800}.project-stack-row+.project-stack-row{border-top:1px solid #e8eef5}.project-stack-row strong{color:#334155;font-size:.78rem}.project-stack-row input{color:#0f172a;caret-color:#018abb;min-width:0;font:inherit;-webkit-text-fill-color:#0f172a;background-color:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;padding:9px 10px;font-size:.82rem}.project-stack-row input::placeholder{color:#94a3b8;opacity:1;-webkit-text-fill-color:#94a3b8}.project-stack-row input:hover{background-color:#fff;border-color:#a9bfd3}.project-stack-row input:focus-visible{outline-offset:1px;background-color:#fff;border-color:#00b0f0;outline:3px solid #00b0f033}.project-stack-row input:-webkit-autofill{-webkit-text-fill-color:#0f172a;box-shadow:inset 0 0 0 1000px #f8fafc}.project-stack-row input:-webkit-autofill:hover{-webkit-text-fill-color:#0f172a;box-shadow:inset 0 0 0 1000px #f8fafc}.project-stack-row input:-webkit-autofill:focus{-webkit-text-fill-color:#0f172a;box-shadow:inset 0 0 0 1000px #f8fafc}.project-stack-format-help{color:#3f5268;background:#eff8ff;border-radius:12px;gap:5px;padding:12px 14px;font-size:.78rem;line-height:1.45;display:grid}.project-stack-format-help p{margin:0}.project-settings-advanced{border:1px solid #dbe4ef;border-radius:16px;margin:0 22px 22px;padding:0 16px}.project-stack-architecture{background:#f8fafc;border:1px solid #dbe4ef;border-radius:16px;margin:0 22px 22px;padding:16px}.project-stack-architecture h3{margin:0 0 12px;font-size:.9rem}.project-stack-architecture>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.project-stack-architecture article{gap:5px;min-width:0;display:grid}.project-stack-architecture article strong{color:#334155;font-size:.78rem}.project-stack-architecture article span{color:#526176;font-size:.82rem;line-height:1.45}.project-stack-versions{margin:0 22px 22px}.project-stack-versions h3{margin:0 0 12px;font-size:.9rem}.project-stack-versions>div{grid-template-columns:minmax(0,1fr);gap:8px;display:grid}.project-stack-versions article{background:#f8fafc;border:1px solid #dbe4ef;border-radius:12px;grid-template-columns:minmax(150px,1.1fr) minmax(92px,.55fr) auto minmax(0,1fr);align-items:center;gap:12px;min-width:0;padding:9px 12px;display:grid}.project-stack-versions article strong{color:#334155;min-width:0;font-size:.8rem}.project-stack-versions article code{color:#0f172a;overflow-wrap:anywhere;min-width:0;font-size:.8rem}.project-stack-versions article small{color:#64748b;overflow-wrap:anywhere;min-width:0;font-size:.68rem;line-height:1.35}.project-stack-versions article span{border-radius:999px;width:fit-content;padding:3px 6px;font-size:.68rem;font-weight:700}.project-stack-versions .is-exact{color:#166534;background:#f0fdf4}.project-stack-versions .is-constraint{color:#9a3412;background:#fff7ed}.project-stack-versions .is-unavailable{color:#b91c1c;background:#fef2f2}.project-settings-advanced summary{color:#334155;cursor:pointer;min-height:48px;padding-top:15px;font-weight:700}.project-settings-advanced .project-settings-field{padding-bottom:16px}.project-settings-guidance{color:#526176;border-left:3px solid #00b0f0;gap:10px;margin:20px 22px 0;padding:4px 0 4px 14px;line-height:1.55;display:grid}.project-settings-guidance p{margin:0}.project-settings-field{gap:8px;min-width:0;display:grid}.project-settings-field>span{color:#475569;letter-spacing:.04em;font-size:.75rem;font-weight:700}.project-settings-field input,.project-settings-field select,.project-settings-field textarea{color:#0f172a;width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:16px;padding:12px 14px}.project-settings-field input[readonly]{color:#64748b;background:#f8fafc}.project-settings-field textarea{resize:vertical;font-family:Cascadia Code,SFMono-Regular,Consolas,monospace;font-size:.82rem;line-height:1.5}.project-settings-field small{color:#64748b;line-height:1.45}.project-settings-toggle-field{gap:2px;width:fit-content;max-width:680px;display:grid}.project-settings-toggle-field>small{color:#64748b;padding-left:57px;line-height:1.45}.project-settings-toggle{cursor:pointer;align-items:center;gap:11px;width:fit-content;min-height:44px;display:inline-flex}.project-settings-toggle input{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.project-settings-toggle>span{background:#e2e8f0;border:1px solid #cbd5e1;border-radius:999px;width:46px;height:26px;transition:border-color .16s,background .16s;position:relative}.project-settings-toggle>span:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 2px 5px #0f172a3d}.project-settings-toggle input:checked+span{background:#00b0f0;border-color:#018abb}.project-settings-toggle input:checked+span:after{transform:translate(20px)}.project-settings-toggle strong{color:#334155;font-size:.88rem}.project-settings-fixed{background:#f8fafc;border:1px solid #dbe4ef;border-radius:16px;grid-column:1/-1;gap:7px;padding:14px 16px;display:grid}.project-settings-fixed span{color:#64748b;font-size:.82rem;line-height:1.5}.project-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.project-overview-item{background:#f8fafc;border:1px solid #dbe4ef;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.project-overview-item>div{gap:5px;min-width:0;display:grid}.project-overview-item code{color:#64748b;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.project-overview-item>span{border-radius:999px;flex:none;padding:4px 8px;font-size:.75rem;font-weight:700}.project-overview-item>span.is-available{color:#166534;background:#f0fdf4}.project-overview-item>span.is-unavailable{color:#b91c1c;background:#fef2f2}.project-settings-footer{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border:1px solid #dbe4ef;border-radius:24px;justify-content:space-between;align-items:center;gap:18px;margin-top:24px;padding:16px 20px;display:flex;position:sticky;bottom:0;box-shadow:0 18px 48px #0f172a14}.project-settings-footer span{color:#64748b;font-family:Cascadia Code,SFMono-Regular,Consolas,monospace;font-size:.8rem}.project-settings-footer button:disabled{cursor:wait;opacity:.65}@media (width<=1100px){.project-identity-card .project-settings-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=820px){.project-settings-header,.project-settings-feature,.project-settings-footer{flex-direction:column;align-items:stretch}.project-settings-grid,.project-settings-fields.two-columns,.project-identity-card .project-settings-fields,.project-overview{grid-template-columns:1fr}.project-settings-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.project-stack-architecture>div{grid-template-columns:1fr}.project-stack-versions article{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name badge""version source";align-items:start;gap:6px 10px;padding:10px 12px}.project-stack-versions article strong{grid-area:name}.project-stack-versions article code{grid-area:version}.project-stack-versions article span{grid-area:badge}.project-stack-versions article small{text-align:right;grid-area:source}.project-stack-table{background:0 0;border:0;gap:12px;display:grid;overflow:visible}.project-stack-table-head{display:none}.project-stack-row{background:#fff;border:1px solid #dbe4ef;border-radius:12px;grid-template-columns:1fr;gap:8px;padding:12px}.project-stack-row+.project-stack-row{border-top:1px solid #dbe4ef}.project-settings-card.is-wide{grid-column:auto}.project-settings-back,.project-settings-footer button{width:100%}}@media (prefers-reduced-motion:reduce){.project-settings-toggle>span,.project-settings-toggle>span:after{transition:none}.project-settings-loader{animation:none}}@keyframes project-settings-spin{to{transform:rotate(360deg)}}
|
package/templates/.agents/dashboard/apps/frontend/dist/assets/ProjectSettingsPage-_Pf5DA_A.js
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import{S as e,b as t}from"./cost-monitor-Cf9ctPVt.js";var n=e(),r=[{id:`primary_language`,defaultName:`TypeScript`,scope:`backend`},{id:`backend_runtime`,defaultName:`Node.js`,scope:`backend`},{id:`backend_api`,defaultName:`Hono`,scope:`backend`},{id:`query_builder`,defaultName:`Kysely`,scope:`backend`},{id:`database`,defaultName:`PostgreSQL via Supabase`,scope:`backend`},{id:`auth_storage`,defaultName:`Supabase Auth + Storage`,scope:`backend`},{id:`cache_messaging`,defaultName:`Redis`,scope:`backend`},{id:`async_queue`,defaultName:`BullMQ`,scope:`backend`},{id:`backend_infrastructure`,defaultName:`Hostinger VPS`,scope:`backend`},{id:`web_framework`,defaultName:`React`,scope:`frontend`},{id:`web_language`,defaultName:`TypeScript`,scope:`frontend`},{id:`web_build`,defaultName:`Vite`,scope:`frontend`},{id:`frontend_hosting`,defaultName:`Cloudflare Pages`,scope:`frontend`},{id:`site_framework`,defaultName:`Astro`,scope:`site`},{id:`site_language`,defaultName:`TypeScript`,scope:`site`},{id:`site_islands`,defaultName:`React Islands`,scope:`site`},{id:`site_build`,defaultName:`Vite`,scope:`site`},{id:`site_hosting`,defaultName:`Cloudflare Pages`,scope:`site`}];function i(e){let{languages:t,components:n,...i}=e.stack.overrides,a=p(n)?n:{};return{components:Object.fromEntries(r.map(e=>{let t=a[e.id],n=p(t)?t:{};return[e.id,{name:f(n.name)||e.defaultName,version:f(n.version),reference:f(n.reference)}]})),otherOverrides:JSON.stringify(i,null,2)}}function a(e,t){let n=new Map(t.filter(e=>e.verification===`exact`&&e.version!==null).map(e=>[e.name.toLowerCase(),e.version]));return Object.fromEntries(r.map(t=>{let r=e[t.id],i=n.get(u(t.id));return[t.id,r.version!==``||i===void 0?r:{...r,version:i}]}))}function o(e,t,n){let i=JSON.parse(n);if(!p(i))throw Error(`Demais overrides deve ser um objeto JSON.`);let{languages:a,components:o,...s}=i;for(let e of r){let n=t[e.id].version.trim();if(n!==``&&!/^\d+\.\d+(?:\.\d+)?(?:[-+][0-9A-Za-z.-]+)?$/.test(n))throw Error(`A versão de ${t[e.id].name||e.defaultName} deve ser exata, como 22.16.0 ou 17.6, sem ^, ~, >= ou latest.`)}let c=Object.fromEntries(r.map(e=>[e.id,{name:t[e.id].name.trim()||e.defaultName,version:t[e.id].version.trim(),reference:t[e.id].reference.trim()}]));return{...e,stack:{...e.stack,overrides:{...s,components:c,languages:{frontend:d(c,`frontend`),backend:d(c,`backend`),site:d(c,`site`)}}}}}function s(e){return[...new Set(e.split(/\r?\n/).map(e=>e.trim()).filter(Boolean))]}function c(){return{runtime:`autonomous`,autonomous:{provider:`codex`,model:`gpt-5.6-terra`,max_parallelism:1,lease_ms:6e4}}}function l(e){let t=e?.match(/^v?(\d+)\.(\d+)\.\d+(?:[-+][0-9A-Za-z.-]+)?$/);return t?`v${t[1]}.${t[2]}`:null}function u(e){return e===`backend_runtime`?`node.js`:e===`backend_api`?`hono`:e===`site_framework`?`astro`:e===`cache_messaging`?`redis`:e===`async_queue`?`bullmq`:e===`web_framework`||e===`site_islands`?`react`:e===`web_build`||e===`site_build`?`vite`:e===`primary_language`||e===`web_language`||e===`site_language`?`typescript`:``}function d(e,t){return[...new Set(r.filter(e=>e.scope===t).map(t=>e[t.id].name.trim()).filter(Boolean))]}function f(e){return typeof e==`string`?e:``}function p(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var m=t(),h={primary_language:{pt:`Linguagem principal`,en:`Primary language`},backend_runtime:{pt:`Runtime backend`,en:`Backend runtime`},backend_api:{pt:`Framework backend / API`,en:`Backend framework / API`},query_builder:{pt:`Query builder`,en:`Query builder`},database:{pt:`Banco de dados`,en:`Database`},auth_storage:{pt:`Autenticação e Storage`,en:`Authentication and Storage`},cache_messaging:{pt:`Cache e mensageria`,en:`Cache and messaging`},async_queue:{pt:`Filas e processamento assíncrono`,en:`Queues and async processing`},backend_infrastructure:{pt:`Infraestrutura backend`,en:`Backend infrastructure`},web_framework:{pt:`Framework do Web App`,en:`Web App framework`},web_language:{pt:`Linguagem do Web App`,en:`Web App language`},web_build:{pt:`Build do Web App`,en:`Web App build`},frontend_hosting:{pt:`Hospedagem do frontend`,en:`Frontend hosting`},site_framework:{pt:`Framework do site`,en:`Site framework`},site_language:{pt:`Linguagem do site`,en:`Site language`},site_islands:{pt:`Componentes interativos`,en:`Interactive components`},site_build:{pt:`Build do site`,en:`Site build`},site_hosting:{pt:`Hospedagem do site`,en:`Site hosting`}};function g({components:e,locale:t,onChange:n,referenceHint:i,versionHint:a}){let o=[{scope:`backend`,title:t===`pt-BR`?`Backend e dados`:`Backend and data`},{scope:`frontend`,title:`Web App`},{scope:`site`,title:t===`pt-BR`?`Site e landing pages`:`Site and landing pages`}],s=(t,r,i)=>n({...e,[t]:{...e[t],[r]:i}});return(0,m.jsxs)(`div`,{className:`project-stack-editor`,children:[o.map(n=>(0,m.jsxs)(`section`,{children:[(0,m.jsx)(`h3`,{children:n.title}),(0,m.jsxs)(`div`,{className:`project-stack-table`,children:[(0,m.jsxs)(`div`,{className:`project-stack-table-head`,"aria-hidden":`true`,children:[(0,m.jsx)(`span`,{children:`Item`}),(0,m.jsx)(`span`,{children:t===`pt-BR`?`Tecnologia`:`Technology`}),(0,m.jsx)(`span`,{children:t===`pt-BR`?`Versão exata`:`Exact version`}),(0,m.jsx)(`span`,{children:t===`pt-BR`?`Pacote / imagem / serviço`:`Package / image / service`})]}),r.filter(e=>e.scope===n.scope).map(n=>(0,m.jsxs)(`div`,{className:`project-stack-row`,children:[(0,m.jsx)(`strong`,{children:h[n.id][t===`pt-BR`?`pt`:`en`]}),(0,m.jsx)(`input`,{"aria-label":`${h[n.id].pt}: tecnologia`,value:e[n.id].name,onChange:e=>s(n.id,`name`,e.target.value)}),(0,m.jsx)(`input`,{"aria-label":`${h[n.id].pt}: versão exata`,inputMode:`decimal`,placeholder:`x.y.z`,value:e[n.id].version,onChange:e=>s(n.id,`version`,e.target.value)}),(0,m.jsx)(`input`,{"aria-label":`${h[n.id].pt}: referência`,placeholder:`npm:pacote ou service:nome`,value:e[n.id].reference,onChange:e=>s(n.id,`reference`,e.target.value)})]},n.id))]})]},n.scope)),(0,m.jsxs)(`div`,{className:`project-stack-format-help`,children:[(0,m.jsxs)(`p`,{children:[(0,m.jsx)(`strong`,{children:t===`pt-BR`?`Formato da versão:`:`Version format:`}),` `,a]}),(0,m.jsxs)(`p`,{children:[(0,m.jsx)(`strong`,{children:t===`pt-BR`?`Formato da referência:`:`Reference format:`}),` `,i]})]})]})}function _({components:e,text:t}){return e.length===0?null:(0,m.jsxs)(`section`,{className:`project-stack-versions`,"aria-label":t.versions,children:[(0,m.jsx)(`h3`,{children:t.versions}),(0,m.jsx)(`div`,{children:e.map(e=>(0,m.jsxs)(`article`,{children:[(0,m.jsx)(`strong`,{children:e.name}),(0,m.jsx)(`code`,{children:e.version??t.versionUnavailable}),(0,m.jsx)(`span`,{className:`is-${e.verification}`,children:e.verification===`exact`?t.exact:e.verification===`constraint`?t.constraint:t.versionUnavailable}),e.source?(0,m.jsx)(`small`,{children:e.source}):null]},e.name))})]})}var v={"pt-BR":{eyebrow:`Configurações`,title:`Configuração do projeto`,intro:`Edite o arquivo central do projeto com validação do schema antes da gravação.`,loading:`Carregando configurações do projeto…`,back:`Voltar ao dashboard`,save:`Salvar configurações`,saving:`Validando e salvando…`,saved:`Configurações salvas e validadas.`,framework:`Framework ZAIP-AIOS`,frameworkHint:`Ativa ou desativa o framework para este projeto.`,identity:`Identidade do projeto`,stack:`Stack e linguagens`,execution:`Execução`,assurance:`Assurance`,executionToggleHint:`Grava ou remove o bloco execution. Sem ele, o projeto usa execução manual.`,runtimeHint:`Manual apenas materializa o trabalho; autonomous executa a DAG pelo provider configurado quando as precondições passam.`,providerHint:`Provider que inicia os agentes da execução autônoma: Codex ou Claude.`,executionModelHint:`Modelo-base do runtime autônomo. A política automática de PRD/SPEC ainda pode selecionar um modelo permitido por agente.`,parallelismHint:`Teto de agentes simultâneos. O valor efetivo é o menor limite entre projeto, DAG, provider e squad.`,leaseHint:`Valor persistido no projeto. O coordenador atual ainda usa internamente um lease fixo de 60 segundos.`,assuranceToggleHint:`Ativa ou remove os gates de evidência, revisão e qualidade do projeto. Recomenda-se manter ativo.`,assuranceVersionHint:`Versão do contrato de assurance. É fixa e somente leitura.`,assuranceDepthHint:`Auto ajusta o rigor ao escopo; base exige o conjunto padrão; elevated amplia validações para mudanças mais abrangentes.`,finalCommitHint:`Exige que as evidências comprovem o commit final integrado. Sinais de produção ou migração ainda podem exigir isso mesmo quando desativado.`,context:`Contexto`,overview:`Visão geral do projeto`,available:`Criado`,unavailable:`Ainda não criado`,componentGuide:`Preencha cada responsabilidade separadamente. A versão fica sem prefixos (^, ~, >=) e a referência identifica o pacote, imagem ou serviço.`,versionHint:`Versão exata: 22.16.0 ou 17.6. Deixe vazio para serviços sem versão fixada.`,referenceHint:`Ex.: npm:hono, docker:node:22.16.0-bookworm-slim, service:supabase ou provider:cloudflare-pages.`,overrides:`Opções avançadas (JSON)`,overridesHint:`Use apenas fatos técnicos transversais confirmados. Deixe vazio quando não houver exceções.`,versions:`Versões verificadas no workspace`,exact:`Verificada`,constraint:`Requisito`,versionUnavailable:`Não encontrada`,contextGuide:`O contexto começa pelas fontes canônicas e inclui somente arquivos relevantes para a tarefa. Saídas geradas são consultadas apenas em setup, release ou checagem de paridade.`,contextDomains:`Branding, Marketing, Growth e Sales são usados sob demanda pelos respectivos especialistas, quando houver uma tarefa e artefatos desses domínios. Não os adicione aqui apenas por existirem como capacidades.`},"en-US":{eyebrow:`Settings`,title:`Project settings`,intro:`Edit the central project file with schema validation before writing.`,loading:`Loading project settings…`,back:`Back to dashboard`,save:`Save settings`,saving:`Validating and saving…`,saved:`Settings saved and validated.`,framework:`ZAIP-AIOS framework`,frameworkHint:`Enable or disable the framework for this project.`,identity:`Project identity`,stack:`Stack and languages`,execution:`Execution`,assurance:`Assurance`,executionToggleHint:`Writes or removes the execution block. Without it, the project uses manual execution.`,runtimeHint:`Manual only materializes work; autonomous runs the DAG through the configured provider after preconditions pass.`,providerHint:`Provider that starts autonomous execution agents: Codex or Claude.`,executionModelHint:`Base model for the autonomous runtime. PRD/SPEC automatic policy may still select an allowed model per agent.`,parallelismHint:`Maximum simultaneous agents. Effective parallelism is the smallest project, DAG, provider, and squad limit.`,leaseHint:`Value persisted in the project. The current coordinator still uses a fixed internal 60-second lease.`,assuranceToggleHint:`Enables or removes project evidence, review, and quality gates. Keeping it enabled is recommended.`,assuranceVersionHint:`Assurance contract version. It is fixed and read-only.`,assuranceDepthHint:`Auto adapts rigor to scope; base uses the standard set; elevated expands validation for broader changes.`,finalCommitHint:`Requires evidence for the final integrated commit. Production or migration signals may still require it when disabled.`,context:`Context`,overview:`Project overview`,available:`Created`,unavailable:`Not created yet`,componentGuide:`Fill each responsibility separately. Versions have no prefixes (^, ~, >=), and the reference identifies the package, image, or service.`,versionHint:`Exact version: 22.16.0 or 17.6. Leave blank for services without a pinned version.`,referenceHint:`E.g. npm:hono, docker:node:22.16.0-bookworm-slim, service:supabase, or provider:cloudflare-pages.`,overrides:`Advanced options (JSON)`,overridesHint:`Use only confirmed cross-cutting technical facts. Leave empty when there are no exceptions.`,versions:`Versions verified in the workspace`,exact:`Verified`,constraint:`Requirement`,versionUnavailable:`Not found`,contextGuide:`Context starts from canonical sources and includes only files relevant to the task. Generated outputs are consulted only for setup, release, or parity checks.`,contextDomains:`Branding, Marketing, Growth, and Sales are used on demand by their respective specialists when there is a task and artifacts in those domains. Do not add them here merely because they exist as capabilities.`}};function y({api:e,locale:t,onClose:r}){let u=v[t],[d,f]=(0,n.useState)(null),[p,h]=(0,n.useState)(null),[y,T]=(0,n.useState)(null),[E,D]=(0,n.useState)(`{}`),[O,k]=(0,n.useState)(!1),[A,j]=(0,n.useState)(null),[M,N]=(0,n.useState)(null);(0,n.useEffect)(()=>{Promise.all([e.projectSettings(),e.projectOverview()]).then(([e,t])=>{let n=i(e);f(e),h(t),T(a(n.components,t.stack_components)),D(n.otherOverrides)}).catch(e=>j(e instanceof Error?e.message:String(e)))},[e]);async function P(t){if(t.preventDefault(),d!==null){k(!0),j(null),N(null);try{let t=await e.saveProjectSettings(o(d,y??i(d).components,E)),n=await e.projectOverview(),r=i(t);f(t),h(n),T(r.components),D(r.otherOverrides),N(u.saved)}catch(e){j(e instanceof Error?e.message:String(e))}finally{k(!1)}}}return d===null?(0,m.jsx)(`main`,{className:`project-settings-state`,children:(0,m.jsxs)(`div`,{className:`project-settings-state-card`,children:[(0,m.jsx)(`span`,{"aria-hidden":`true`,className:`project-settings-loader`}),(0,m.jsx)(`p`,{children:u.eyebrow}),(0,m.jsx)(`h1`,{children:A??u.loading}),(0,m.jsxs)(`button`,{onClick:r,type:`button`,children:[`← `,u.back]})]})}):(0,m.jsx)(`main`,{className:`project-settings-page`,children:(0,m.jsxs)(`form`,{onSubmit:P,children:[(0,m.jsxs)(`header`,{className:`project-settings-header`,children:[(0,m.jsxs)(`div`,{children:[(0,m.jsx)(`p`,{children:u.eyebrow}),(0,m.jsx)(`h1`,{children:u.title}),(0,m.jsx)(`span`,{children:u.intro})]}),(0,m.jsxs)(`button`,{className:`project-settings-back`,onClick:r,type:`button`,children:[`← `,u.back]})]}),A?(0,m.jsx)(`div`,{className:`project-settings-message is-error`,children:A}):null,M?(0,m.jsx)(`div`,{className:`project-settings-message is-success`,role:`status`,children:M}):null,(0,m.jsxs)(`section`,{className:`project-settings-feature`,children:[(0,m.jsxs)(`div`,{children:[(0,m.jsxs)(`h2`,{children:[u.framework,l(p?.framework_version)?` - ${l(p?.framework_version)}`:``]}),(0,m.jsx)(`p`,{children:u.frameworkHint})]}),(0,m.jsx)(S,{checked:d.zaip?.enabled===!0,label:t===`pt-BR`?`Framework ativo`:`Framework enabled`,onChange:e=>f({...d,zaip:{enabled:e}})})]}),(0,m.jsx)(`section`,{className:`project-settings-summary`,"aria-label":u.overview,children:p?.metrics.map(e=>(0,m.jsxs)(`div`,{className:`project-settings-metric`,children:[(0,m.jsx)(`strong`,{children:e.value}),(0,m.jsx)(`span`,{children:e.label})]},e.id))}),(0,m.jsx)(b,{className:`is-wide`,title:u.overview,children:(0,m.jsx)(`div`,{className:`project-overview`,"aria-live":`polite`,children:p?.areas.map(e=>(0,m.jsxs)(`div`,{className:`project-overview-item`,children:[(0,m.jsxs)(`div`,{children:[(0,m.jsx)(`strong`,{children:e.label}),(0,m.jsx)(`code`,{children:e.artifact})]}),(0,m.jsx)(`span`,{className:e.available?`is-available`:`is-unavailable`,children:e.available?u.available:u.unavailable})]},e.id))})}),(0,m.jsxs)(`div`,{className:`project-settings-grid`,children:[(0,m.jsxs)(b,{className:`is-wide project-identity-card`,title:u.identity,children:[(0,m.jsx)(x,{label:`Schema`,children:(0,m.jsx)(`input`,{readOnly:!0,value:d.schema_version})}),(0,m.jsx)(x,{label:t===`pt-BR`?`ID do projeto`:`Project ID`,children:(0,m.jsx)(`input`,{required:!0,value:d.project.id,onChange:e=>f({...d,project:{...d.project,id:e.target.value}})})}),(0,m.jsx)(x,{label:t===`pt-BR`?`Nome do projeto`:`Project name`,children:(0,m.jsx)(`input`,{required:!0,value:d.project.name,onChange:e=>f({...d,project:{...d.project,name:e.target.value}})})}),(0,m.jsx)(x,{label:`Timezone IANA`,children:(0,m.jsx)(`input`,{required:!0,value:d.project.timezone,onChange:e=>f({...d,project:{...d.project,timezone:e.target.value}})})})]}),(0,m.jsxs)(b,{className:`is-wide`,title:u.stack,children:[(0,m.jsx)(`p`,{className:`project-stack-guide`,children:u.componentGuide}),y?(0,m.jsx)(g,{components:y,locale:t,onChange:T,referenceHint:u.referenceHint,versionHint:u.versionHint}):null,(0,m.jsx)(_,{components:p?.stack_components??[],text:u}),(0,m.jsxs)(`details`,{className:`project-settings-advanced`,children:[(0,m.jsx)(`summary`,{children:u.overrides}),(0,m.jsx)(x,{hint:u.overridesHint,label:`Overrides`,children:(0,m.jsx)(`textarea`,{rows:7,value:E,onChange:e=>D(e.target.value)})})]})]}),(0,m.jsxs)(b,{title:u.execution,children:[(0,m.jsx)(C,{checked:d.execution!==void 0,hint:u.executionToggleHint,label:t===`pt-BR`?`Incluir configuração de execução`:`Include execution configuration`,onChange:e=>f({...d,execution:e?{runtime:`manual`}:void 0})}),d.execution?(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(x,{hint:u.runtimeHint,label:`Runtime`,children:(0,m.jsxs)(`select`,{value:d.execution.runtime,onChange:e=>f({...d,execution:e.target.value===`manual`?{runtime:`manual`}:c()}),children:[(0,m.jsx)(`option`,{value:`manual`,children:`manual`}),(0,m.jsx)(`option`,{value:`autonomous`,children:`autonomous`})]})}),d.execution.runtime===`autonomous`?(0,m.jsx)(w,{config:d,setConfig:f,text:u}):null]}):null]}),(0,m.jsxs)(b,{title:u.assurance,children:[(0,m.jsx)(C,{checked:d.assurance!==void 0,hint:u.assuranceToggleHint,label:t===`pt-BR`?`Incluir assurance`:`Include assurance`,onChange:e=>f({...d,assurance:e?{version:1,standard_depth:`auto`,require_final_commit:!0}:void 0})}),d.assurance?(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(x,{hint:u.assuranceVersionHint,label:t===`pt-BR`?`Versão`:`Version`,children:(0,m.jsx)(`input`,{readOnly:!0,value:d.assurance.version})}),(0,m.jsx)(x,{hint:u.assuranceDepthHint,label:t===`pt-BR`?`Profundidade padrão`:`Standard depth`,children:(0,m.jsxs)(`select`,{value:d.assurance.standard_depth,onChange:e=>f({...d,assurance:{...d.assurance??{version:1,standard_depth:`auto`,require_final_commit:!0},standard_depth:e.target.value}}),children:[(0,m.jsx)(`option`,{value:`auto`,children:`auto`}),(0,m.jsx)(`option`,{value:`base`,children:`base`}),(0,m.jsx)(`option`,{value:`elevated`,children:`elevated`})]})}),(0,m.jsx)(S,{checked:d.assurance.require_final_commit,hint:u.finalCommitHint,label:t===`pt-BR`?`Exigir commit final`:`Require final commit`,onChange:e=>f({...d,assurance:{...d.assurance??{version:1,standard_depth:`auto`,require_final_commit:!0},require_final_commit:e}})})]}):null]}),(0,m.jsxs)(b,{className:`is-wide`,title:u.context,children:[(0,m.jsx)(C,{checked:d.context!==void 0,label:t===`pt-BR`?`Incluir raízes de contexto`:`Include context roots`,onChange:e=>f({...d,context:e?{canonical_roots:[`packages`],projection_roots:[]}:void 0})}),d.context?(0,m.jsxs)(m.Fragment,{children:[(0,m.jsxs)(`div`,{className:`project-settings-guidance`,children:[(0,m.jsx)(`p`,{children:u.contextGuide}),(0,m.jsx)(`p`,{children:u.contextDomains})]}),(0,m.jsxs)(`div`,{className:`project-settings-fields two-columns`,children:[(0,m.jsx)(x,{hint:t===`pt-BR`?`Uma pasta por linha. Estas são as fontes principais do projeto.`:`One folder per line. These are the project's primary sources.`,label:t===`pt-BR`?`Fontes canônicas`:`Canonical sources`,children:(0,m.jsx)(`textarea`,{required:!0,rows:5,value:d.context.canonical_roots.join(`
|
|
2
|
-
`),onChange:e=>f({...d,context:{...d.context??{canonical_roots:[`packages`],projection_roots:[]},canonical_roots:s(e.target.value)}})})}),(0,m.jsx)(x,{hint:t===`pt-BR`?`Uma pasta por linha. São saídas geradas, não fontes de contexto normal.`:`One folder per line. These are generated outputs, not normal context sources.`,label:t===`pt-BR`?`Saídas geradas/publicadas`:`Generated/published outputs`,children:(0,m.jsx)(`textarea`,{rows:5,value:d.context.projection_roots.join(`
|
|
3
|
-
`),onChange:e=>f({...d,context:{...d.context??{canonical_roots:[`packages`],projection_roots:[]},projection_roots:s(e.target.value)}})})})]})]}):null]})]}),(0,m.jsxs)(`footer`,{className:`project-settings-footer`,children:[(0,m.jsx)(`span`,{children:`.agents/config/project.yaml`}),(0,m.jsx)(`button`,{disabled:O,type:`submit`,children:O?u.saving:u.save})]})]})})}function b({children:e,className:t=``,title:n}){return(0,m.jsxs)(`section`,{className:`project-settings-card ${t}`,children:[(0,m.jsx)(`h2`,{children:n}),(0,m.jsx)(`div`,{className:`project-settings-fields`,children:e})]})}function x({children:e,hint:t,label:n}){return(0,m.jsxs)(`div`,{className:`project-settings-field`,children:[(0,m.jsx)(`span`,{children:n}),e,t?(0,m.jsx)(`small`,{children:t}):null]})}function S({checked:e,hint:t,label:n,onChange:r}){return(0,m.jsxs)(`div`,{className:`project-settings-toggle-field`,children:[(0,m.jsxs)(`label`,{className:`project-settings-toggle`,children:[(0,m.jsx)(`input`,{checked:e,onChange:e=>r(e.target.checked),type:`checkbox`}),(0,m.jsx)(`span`,{"aria-hidden":`true`}),(0,m.jsx)(`strong`,{children:n})]}),t?(0,m.jsx)(`small`,{children:t}):null]})}function C(e){return(0,m.jsx)(S,{...e})}function w({config:e,setConfig:t,text:n}){let r=e.execution?.runtime===`autonomous`?e.execution:c(),i=n=>t({...e,execution:{runtime:`autonomous`,autonomous:n}});return(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(x,{hint:n.providerHint,label:`Provider`,children:(0,m.jsxs)(`select`,{value:r.autonomous.provider,onChange:e=>i({...r.autonomous,provider:e.target.value}),children:[(0,m.jsx)(`option`,{value:`codex`,children:`codex`}),(0,m.jsx)(`option`,{value:`claude`,children:`claude`})]})}),(0,m.jsx)(x,{hint:n.executionModelHint,label:`Model`,children:(0,m.jsx)(`input`,{required:!0,value:r.autonomous.model,onChange:e=>i({...r.autonomous,model:e.target.value})})}),(0,m.jsx)(x,{hint:n.parallelismHint,label:`Max parallelism`,children:(0,m.jsx)(`input`,{max:8,min:1,type:`number`,value:r.autonomous.max_parallelism,onChange:e=>i({...r.autonomous,max_parallelism:Number(e.target.value)})})}),(0,m.jsx)(x,{hint:n.leaseHint,label:`Lease (ms)`,children:(0,m.jsx)(`input`,{max:36e5,min:5e3,step:1e3,type:`number`,value:r.autonomous.lease_ms,onChange:e=>i({...r.autonomous,lease_ms:Number(e.target.value)})})})]})}export{y as ProjectSettingsPage};
|
package/templates/.agents/dashboard/apps/frontend/dist/assets/TraceabilityWorkspace-BVlz3DLZ.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{S as e,b as t}from"./cost-monitor-Cf9ctPVt.js";import{n}from"./traceability-pC2_0J8x.js";var r=e(),i=t();function a(e,t){let n=t.trim().toLocaleLowerCase();return n===``?[...e]:e.filter(e=>`${e.title} ${e.id}`.toLocaleLowerCase().includes(n))}function o(e){return`traceability-task-option-${e}`}function s({locale:e,loadingTaskId:t,onSelectTask:s,onOpenChange:c,onOpenPrd:l,onOpenSpec:u,selectedTaskId:d,tasks:f,trace:p}){let m=[...f].sort((e,t)=>Date.parse(t.created_at)-Date.parse(e.created_at)),h=m.find(e=>e.id===d),[g,_]=(0,r.useState)(()=>h?.title??d),[v,y]=(0,r.useState)(!1),[b,x]=(0,r.useState)(0),S=(0,r.useMemo)(()=>a(m,g),[g,m]),C=`traceability-task-search`,w=`traceability-task-results`,T=e===`pt-BR`?`Task selecionada`:`Selected task`,E=e===`pt-BR`?`Buscar task por nome ou ID`:`Search task by name or ID`,D=v?S[b]?.id:void 0;(0,r.useEffect)(()=>{_(h?.title??d)},[h?.title,d]),(0,r.useEffect)(()=>{x(0)},[g]);let O=e=>{_(e.title),y(!1),s(e.id)};return(0,i.jsxs)(`section`,{className:`traceability-workspace`,children:[(0,i.jsxs)(`header`,{children:[(0,i.jsxs)(`div`,{children:[(0,i.jsx)(`label`,{htmlFor:C,children:T}),(0,i.jsx)(`input`,{"aria-activedescendant":D===void 0?void 0:o(D),"aria-autocomplete":`list`,"aria-controls":w,"aria-expanded":v,"aria-label":E,id:C,onChange:e=>{_(e.target.value),y(!0)},onFocus:()=>y(!0),onKeyDown:e=>{if(e.key===`ArrowDown`)e.preventDefault(),y(!0),x(e=>Math.min(e+1,Math.max(0,S.length-1)));else if(e.key===`ArrowUp`)e.preventDefault(),y(!0),x(e=>Math.max(0,e-1));else if(e.key===`Enter`&&v){let t=S[b];t!==void 0&&(e.preventDefault(),O(t))}else e.key===`Escape`&&y(!1)},role:`combobox`,type:`search`,value:g}),v?(0,i.jsx)(`ul`,{"aria-label":E,className:`traceability-task-results`,id:w,role:`listbox`,children:S.length>0?S.map((e,t)=>(0,i.jsx)(`li`,{role:`presentation`,children:(0,i.jsxs)(`button`,{"aria-selected":e.id===d,className:t===b?`is-active`:void 0,id:o(e.id),onClick:()=>O(e),role:`option`,type:`button`,children:[(0,i.jsx)(`strong`,{children:e.title}),(0,i.jsx)(`small`,{children:e.id})]})},e.id)):(0,i.jsx)(`li`,{className:`traceability-task-no-results`,role:`status`,children:e===`pt-BR`?`Nenhuma task encontrada.`:`No tasks found.`})}):null]}),(0,i.jsx)(`small`,{children:e===`pt-BR`?`Selecione pelo nome para visualizar o ciclo completo sem precisar do ID.`:`Select by name to inspect the complete lifecycle without knowing the ID.`})]}),t?(0,i.jsx)(`div`,{"aria-live":`polite`,className:`traceability-workspace-loading`,children:e===`pt-BR`?`Carregando as 6 etapas…`:`Loading all 6 stages…`}):p?(0,i.jsx)(n,{embedded:!0,locale:e,onClose:()=>void 0,onOpenChange:c,onOpenPrd:l,onOpenSpec:u,trace:p}):(0,i.jsx)(`p`,{children:e===`pt-BR`?`Nenhuma task disponível.`:`No task available.`})]})}export{s as TraceabilityWorkspace};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.ui-table-wrap{isolation:isolate;scrollbar-gutter:stable;max-height:800px;position:relative;overflow:auto}.ui-table{border-collapse:separate;border-spacing:0;width:100%;font-size:.86rem}.ui-table th,.ui-table td{border-bottom:1px solid var(--line,#ffffff14);text-align:left;vertical-align:top;padding:.86rem .8rem}.ui-table th{z-index:3;color:var(--muted,#94a3b8);letter-spacing:.06em;text-transform:uppercase;background:#0a0e17fa;font-size:.72rem;position:sticky;top:0}.ui-table th:hover,.ui-table th:focus-within{z-index:100}.ui-table-heading{justify-content:flex-end;align-items:center;gap:6px;width:100%;min-width:0;display:flex}.ui-table-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;line-height:1.35;overflow:hidden}.ui-table th:not(.is-number) .ui-table-heading{justify-content:flex-start}.ui-table-sort,.ui-table-info{box-sizing:border-box;aspect-ratio:1;width:18px;min-width:18px;max-width:18px;height:18px;min-height:18px;max-height:18px;color:inherit;font:inherit;cursor:pointer;background:#0f172aa8;border:1px solid #94a3b84d;border-radius:50%;flex:0 0 18px;place-items:center;padding:0;line-height:1;display:inline-grid;position:relative}.ui-table-sort:hover,.ui-table-sort:focus-visible{color:var(--accent,#60a5fa);outline-offset:2px;background:#3b82f624;border-color:#60a5faa6;outline:2px solid #60a5fa2e}.ui-table-sort-indicator{opacity:.82;font-size:8px;line-height:1}.ui-table-info{color:var(--muted,#94a3b8);text-transform:none;cursor:help;font-size:11px;font-style:normal}.ui-table-tooltip{z-index:2147483647;width:max-content;max-width:min(320px,70vw);color:var(--text,#f8fafc);letter-spacing:normal;text-align:left;text-transform:none;white-space:normal;pointer-events:none;background:#090e19fa;border:1px solid #60a5fa4d;border-radius:10px;padding:10px 12px;font-size:.76rem;font-weight:400;line-height:1.45;position:fixed;transform:translate(-50%);box-shadow:0 14px 35px #00000061}.ui-table tbody tr{transition:background .12s}.ui-table tbody tr:hover{background:#00b0f00a}.ui-table tbody .ui-table-row-action{cursor:pointer}.ui-table tbody .ui-table-row-action:focus-visible{outline:2px solid var(--accent,#00b0f0);outline-offset:-2px}.ui-table tbody tr:last-child td{border-bottom:0}.ui-table tfoot td{z-index:1;color:var(--text,#f8fafc);white-space:nowrap;background:#10192afa;border-top:1px solid #60a5fa59;border-bottom:0;font-weight:700;position:sticky;bottom:0}.ui-table .is-number{text-align:right}.ui-table strong,.ui-table small{display:block}.ui-table small{color:var(--muted,#94a3b8);overflow-wrap:anywhere;margin-top:.2rem}.ui-table-pagination{border-top:1px solid var(--border,#334155);background:var(--surface,#111827);color:var(--muted,#94a3b8);justify-content:flex-end;align-items:center;gap:.75rem;padding:.75rem .85rem;display:flex;position:sticky;left:0}.ui-table-pagination button{border:1px solid var(--border,#334155);background:var(--surface-elevated,#1e293b);min-height:2rem;color:var(--text,#f8fafc);cursor:pointer;border-radius:.45rem;padding:.35rem .7rem}.ui-table-pagination button:disabled{cursor:default;opacity:.45}.ui-empty{color:var(--muted,#94a3b8);text-align:center;margin:0;padding:1rem}.dashboard-header{z-index:60;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#020711f0;border-bottom:1px solid #94a3b81a;justify-content:space-between;align-items:center;gap:14px;min-height:64px;padding:10px 24px;display:flex;position:fixed;inset:0 0 auto}.dashboard-header-brand{align-items:start;gap:3px;display:grid}.dashboard-header-brand strong{color:var(--accent,#00b0f0);letter-spacing:-.02em;white-space:nowrap;align-items:center;gap:.75rem;font-size:1rem;display:flex}.dashboard-header-repository{color:#020617;background:#fff;border-radius:999px;align-items:center;gap:.25rem;padding-block:.3rem;padding-inline:.6rem .72rem;font-size:.76rem;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.dashboard-header-repository:hover{color:#020617;background:#e2e8f0}.dashboard-header-github{color:currentColor;flex:none;width:1.2em;height:1.2em}.dashboard-header-brand small{color:#64748b;white-space:nowrap;font-size:.61rem}.dashboard-header-logo{object-fit:contain;width:auto;height:28px;display:block;position:absolute;left:50%;transform:translate(-50%)}.dashboard-header-actions{background:#090e19e6;border:1px solid #ffffff12;border-radius:18px;align-items:center;gap:8px;padding:6px;display:flex;box-shadow:0 10px 30px #00000038}.dashboard-header button{border:1px solid var(--line-strong);min-height:40px;color:var(--text);cursor:pointer;background:#0f1422db;border-radius:11px;padding:0 14px;transition:border-color .12s,transform .12s,background .12s}.dashboard-header button:hover{border-color:#00b0f070;transform:translateY(-1px)}.dashboard-header button:disabled{cursor:wait;opacity:.65;transform:none}.dashboard-header-button,.dashboard-header-icon{justify-content:center;align-items:center;gap:10px;display:inline-flex}.dashboard-header-button{font-size:.82rem}.dashboard-header-icon{width:38px;padding:0}.dashboard-header-svg{flex:0 0 18px;width:18px;height:18px}.dashboard-header-flag{border-radius:6px;flex:0 0 20px;width:20px;height:20px;display:block;overflow:hidden}.dashboard-header-chevron{width:16px;height:16px;color:var(--muted);margin-left:2px}.dashboard-header-button.is-active,.dashboard-header-icon.is-active{color:var(--accent);background:#00b0f024;border-color:#00b0f070}.dashboard-header-anchor{position:relative}.dashboard-header-popup{z-index:70;background:#0b101cfa;border:1px solid #ffffff1a;border-radius:18px;min-width:280px;padding:14px;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 20px 48px #0000006b}.dashboard-header-filter-popup{width:auto;max-height:calc(100vh - 98px);position:fixed;inset:74px 24px auto;overflow:auto}.dashboard-header-locale-popup,.dashboard-header-settings-popup{gap:8px;width:280px;display:grid}.dashboard-header-locale-popup button{text-align:left;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;display:grid}.dashboard-header-settings-content,.dashboard-header-settings-content label{gap:7px;display:grid}.dashboard-header-settings-content label>span,.dashboard-header-settings-content>strong{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.67rem}.dashboard-header-settings-content select,.dashboard-header-mobile-settings select{border:1px solid var(--line-strong);min-height:40px;color:var(--text);background:#0a1220;border-radius:11px;padding:0 10px}.dashboard-header-mobile-settings{display:none}@media (width<=1180px){.dashboard-header-logo{display:none}}@media (width<=760px){.dashboard-header{justify-content:flex-end;min-height:64px;padding:10px 14px}.dashboard-header-brand,.dashboard-header-refresh,.dashboard-header-filter-action,.dashboard-header-locale-action{display:none}.dashboard-header-logo{height:26px;display:block}.dashboard-header-actions{box-shadow:none;background:0 0;border:0;margin-left:auto;padding:0;display:flex}.dashboard-header-settings-action .dashboard-header-settings-popup{width:auto;max-height:calc(100vh - 88px);position:fixed;inset:74px 14px auto;overflow-y:auto}.dashboard-header-mobile-settings{border-bottom:1px solid #ffffff1a;gap:12px;padding-bottom:14px;display:grid}.dashboard-header-mobile-settings>small{color:#64748b;font-size:.68rem}.dashboard-header-mobile-settings>button{justify-content:center;align-items:center;gap:8px;display:flex}.dashboard-header-mobile-settings>label,.dashboard-header-mobile-filters{gap:7px;display:grid}.dashboard-header-mobile-settings>label span,.dashboard-header-mobile-filters>strong{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.67rem}}.period-average-summary{margin:0 0 12px;display:grid}.period-average-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.period-average-grid article{border:1px solid var(--line);background:#0a101ce6;border-radius:13px;gap:5px;min-width:0;min-height:74px;padding:12px 14px 11px;display:grid;position:relative;overflow:hidden}.period-average-grid article:before{content:"";background:#66aef0;height:2px;position:absolute;inset:0 0 auto}.period-average-grid span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.66rem;line-height:1.15;overflow:hidden}.period-average-grid article>strong{color:var(--text);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;align-self:end;font-size:clamp(1rem,1.35vw,1.25rem);line-height:1;overflow:hidden}@media (width<=1180px){.period-average-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=760px){.period-average-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=420px){.period-average-grid{grid-template-columns:1fr}}.operations-entity-details{border-radius:24px;grid-template-rows:auto minmax(0,1fr);width:min(980px,100%);max-height:min(760px,90vh)}.operations-entity-details-scroll{overscroll-behavior:contain;min-height:0;padding:20px;overflow-y:auto}body .operations-status-dialog-backdrop{box-sizing:border-box;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#020617c7;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:24px;overflow:hidden}body .operations-entity-details{border-radius:24px;grid-template-rows:auto minmax(0,1fr);width:min(980px,100%);max-width:980px;height:auto;max-height:min(760px,90dvh);display:grid;overflow:hidden}body .operations-entity-details-scroll{overscroll-behavior:contain;min-height:0;overflow-y:auto}.operations-entity-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;display:grid}.operations-entity-detail-grid div{background:#0f172a94;border:1px solid #94a3b824;border-radius:12px;min-width:0;padding:14px}.operations-entity-detail-grid dt{color:#71829a;letter-spacing:.06em;text-transform:uppercase;font-size:.61rem}.operations-entity-detail-grid dd{color:#dce8f7;overflow-wrap:anywhere;white-space:pre-wrap;margin:7px 0 0;font-size:.76rem;line-height:1.5}@media (width<=760px){.operations-entity-detail-grid{grid-template-columns:1fr}}.export-progress{color:#fff;z-index:20;background:#172033;border-radius:.5rem;gap:.5rem;max-width:calc(100vw - 2rem);padding:1rem;display:grid;position:fixed;bottom:1rem;right:1rem}.export-progress progress{width:18rem}.export-success{z-index:20;color:#fff;background:#198754;border-radius:.5rem;padding:.65rem .9rem;position:fixed;bottom:1rem;right:1rem}.excel-export-action{align-items:center;gap:8px;display:inline-flex}.operations-task-card .operations-elapsed-badge{color:#bfdbfe;font-variant-numeric:tabular-nums;letter-spacing:.02em;white-space:nowrap;background:#60a5fa1f;border:1px solid #60a5fa52;border-radius:999px;justify-self:start;padding:4px 8px;font-size:.64rem;font-weight:700}.operations-task-card .operations-elapsed-badge.is-alert{color:#fecaca;background:#ef444429;border-color:#f8717185}.operations-task-card.is-kind-prd{background:linear-gradient(#46376f80,#1e1934c7);border-color:#a78bfa9e}.operations-task-card.is-kind-spec{background:linear-gradient(#14274ec7,#09142beb);border-color:#3758a4ad}.operations-task-card.is-kind-task{background:linear-gradient(#5c400d7a,#2a1f0cc2);border-color:#fbbf2485}.operations-task-card.is-kind-prd:hover{border-color:#c4b5fd}.operations-task-card.is-kind-spec:hover{border-color:#6f91d8}.operations-task-card.is-kind-task:hover{border-color:#fde68a}.operations-unified-work .operations-task-card.is-kind-task{background:linear-gradient(#2d374880,#181f2cc7);border-color:#94a3b86b}.operations-unified-work .operations-task-card.is-kind-task:hover{border-color:#cbd5e1}.operations-task-origin-badge{color:#bfdbfe;letter-spacing:.03em;background:#60a5fa1f;border:1px solid #60a5fa4d;border-radius:999px;justify-self:start;padding:4px 8px;font-size:.64rem;font-weight:700}.operations-task-origin-badge.is-spec{color:#ddd6fe;background:#7c3aed24;border-color:#a78bfa57}.operations-task-origin-badge.is-prd{color:#fde68a;background:#b4530924;border-color:#fbbf2457}.operations-macro-dialog-backdrop{--macro-accent:#72c7ff;--macro-accent-rgb:114, 199, 255}.operations-macro-planning-dialog{--macro-accent:#72c7ff;--macro-accent-rgb:114, 199, 255;border:1px solid rgba(var(--macro-accent-rgb), .26);color:#eaf3ff;background:radial-gradient(circle at 86% 0%, rgba(var(--macro-accent-rgb), .12), transparent 32%), linear-gradient(155deg, #080d19fc, #0c1220fc);border-radius:24px;grid-template-rows:auto minmax(0,1fr);width:min(1180px,100%);max-height:min(820px,90vh);display:grid;position:relative;overflow:hidden;box-shadow:0 34px 120px #00000094}.operations-macro-planning-dialog[data-kind=prd]{--macro-accent:#bba7ff;--macro-accent-rgb:187, 167, 255}.operations-macro-dialog-header{background:#080c17b8;border-bottom:1px solid #94a3b824;justify-content:space-between;align-items:flex-start;gap:28px;padding:30px 34px 28px;display:flex}.operations-macro-heading{align-items:flex-start;gap:16px;min-width:0;display:flex}.operations-macro-heading-icon{border:1px solid rgba(var(--macro-accent-rgb), .34);width:48px;height:48px;color:var(--macro-accent);background:rgba(var(--macro-accent-rgb), .1);box-shadow:inset 0 0 24px rgba(var(--macro-accent-rgb), .04);border-radius:15px;flex:0 0 48px;place-items:center;display:grid}.operations-macro-heading>div:last-child{min-width:0}.operations-macro-kicker{color:var(--macro-accent);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:9px;font-size:.7rem;font-weight:800;display:flex}.operations-macro-kicker i{opacity:.5;background:currentColor;border-radius:999px;width:4px;height:4px}.operations-macro-heading h2{color:#f4f8ff;letter-spacing:-.025em;max-width:800px;margin:8px 0 0;font-size:clamp(1.45rem,3vw,2.15rem);line-height:1.16}.operations-macro-heading p{color:#8696ad;text-overflow:ellipsis;white-space:nowrap;max-width:min(720px,72vw);margin:10px 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.73rem;overflow:hidden}.operations-macro-close{color:#cbd8e8;cursor:pointer;background:#121929e0;border:1px solid #94a3b838;border-radius:14px;flex:0 0 44px;place-items:center;width:44px;height:44px;transition:all .15s;display:grid}.operations-macro-close:hover{border-color:rgba(var(--macro-accent-rgb), .55);color:#fff;background:rgba(var(--macro-accent-rgb), .12)}.operations-macro-document-open{border:1px solid rgba(var(--macro-accent-rgb), .35);color:var(--macro-accent);background:rgba(var(--macro-accent-rgb), .09);cursor:pointer;border-radius:12px;align-items:center;gap:8px;margin-left:auto;padding:11px 13px;font-size:.72rem;font-weight:750;display:inline-flex}.operations-prd-document-backdrop{z-index:1001;background:#020610d1;place-items:center;padding:5vh 24px;display:grid;position:fixed;inset:0}.operations-prd-document-dialog{color:#eaf3ff;background:#0c1220;border:1px solid #bba7ff4d;border-radius:20px;grid-template-rows:auto minmax(0,1fr) auto;width:min(940px,100%);max-height:90vh;display:grid;overflow:hidden;box-shadow:0 34px 120px #0000009e}.operations-prd-document-dialog>header,.operations-prd-document-dialog>footer{border-bottom:1px solid #94a3b824;justify-content:space-between;align-items:flex-start;gap:20px;padding:22px 26px;display:flex}.operations-prd-document-dialog header span{color:#bba7ff;letter-spacing:.08em;align-items:center;gap:7px;font-size:.68rem;font-weight:800;display:flex}.operations-prd-document-dialog h2,.operations-prd-document-dialog p{margin:0}.operations-prd-document-dialog h2{margin-top:7px;font-size:1.35rem}.operations-prd-document-dialog p,.operations-prd-document-dialog>footer{color:#8696ad;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem}.operations-prd-document-dialog p{margin-top:6px}.operations-prd-document-dialog header button{color:#cbd8e8;cursor:pointer;background:0 0;border:0;padding:5px}.operations-prd-document-scroll{padding:26px;overflow:auto}.operations-prd-markdown{color:#d9e5f3;overflow-wrap:anywhere;font-size:.9rem;line-height:1.7}.operations-prd-markdown>:first-child{margin-top:0}.operations-prd-markdown>:last-child{margin-bottom:0}.operations-prd-markdown h1,.operations-prd-markdown h2,.operations-prd-markdown h3{color:#f2f6ff;line-height:1.25}.operations-prd-markdown h1{margin:0 0 20px;font-size:1.7rem}.operations-prd-markdown h2{margin:32px 0 14px;font-size:1.28rem}.operations-prd-markdown h3{margin:24px 0 10px;font-size:1.04rem}.operations-prd-markdown p{margin:0 0 16px}.operations-prd-markdown ul,.operations-prd-markdown ol{margin:0 0 18px;padding-left:24px}.operations-prd-markdown li+li{margin-top:6px}.operations-prd-markdown strong{color:#f0f5ff}.operations-prd-markdown a{color:#aeb9ff}.operations-prd-markdown :not(pre)>code{color:#d8d2ff;background:#bba7ff1f;border-radius:5px;padding:2px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82em}.operations-prd-markdown pre{background:#03071094;border:1px solid #94a3b829;border-radius:10px;margin:0 0 18px;padding:14px;overflow:auto}.operations-prd-markdown pre code{white-space:pre;font:.78rem/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.operations-prd-markdown blockquote{color:#bdc9da;background:#bba7ff0f;border-left:3px solid #bba7ff;margin:0 0 18px;padding:8px 14px}.operations-prd-markdown hr{background:#94a3b833;border:0;height:1px;margin:26px 0}.operations-prd-markdown-table{border:1px solid #94a3b829;border-radius:10px;margin:0 0 18px;overflow-x:auto}.operations-prd-markdown table{border-collapse:collapse;width:100%;font-size:.8rem}.operations-prd-markdown th,.operations-prd-markdown td{text-align:left;vertical-align:top;border-bottom:1px solid #94a3b81f;padding:10px 12px}.operations-prd-markdown th{color:#e8e5ff;background:#bba7ff17}.operations-prd-markdown tr:last-child td{border-bottom:0}.operations-prd-document-dialog>footer{border-top:1px solid #94a3b824;border-bottom:0}.operations-prd-document-loading,.operations-prd-document-error{background:linear-gradient(135deg,#bba7ff17,#0c142247);border:1px solid #bba7ff33;border-radius:16px;gap:22px;padding:22px;display:grid}.operations-prd-document-loading-copy{align-items:center;gap:11px;display:flex}.operations-prd-document-loading-copy strong,.operations-prd-document-error strong{color:#edf4ff;font-size:.88rem}.operations-prd-document-loading-copy p,.operations-prd-document-error p{color:#8da0b8;margin:4px 0 0;font-family:inherit;font-size:.76rem}.operations-prd-document-spinner{color:#bba7ff;flex:none;animation:1s linear infinite operations-document-spin}.operations-prd-document-skeleton{gap:10px;display:grid}.operations-prd-document-skeleton i{background:linear-gradient(90deg,#94a3b81a,#bba7ff40,#94a3b81a) 0 0/220% 100%;border-radius:999px;height:11px;animation:1.5s ease-in-out infinite operations-document-shimmer;display:block}.operations-prd-document-skeleton i:nth-child(2){width:88%;animation-delay:90ms}.operations-prd-document-skeleton i:nth-child(3){width:72%;animation-delay:.18s}.operations-prd-document-skeleton i:nth-child(4){width:82%;animation-delay:.27s}.operations-prd-document-error{border-color:#fb923c5c}.operations-prd-document-error button{color:#e8e5ff;cursor:pointer;background:#bba7ff1a;border:1px solid #bba7ff5c;border-radius:9px;align-items:center;gap:7px;width:fit-content;padding:8px 11px;font-size:.75rem;font-weight:750;display:inline-flex}@keyframes operations-document-spin{to{transform:rotate(360deg)}}@keyframes operations-document-shimmer{to{background-position:-220% 0}}@media (prefers-reduced-motion:reduce){.operations-prd-document-spinner,.operations-prd-document-skeleton i{animation:none}}.operations-macro-dialog-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-color:rgba(var(--macro-accent-rgb), .42) transparent;gap:26px;min-height:0;max-height:none;padding:28px 34px 36px;display:grid;overflow-y:auto}.operations-macro-back{width:max-content;max-width:100%;color:var(--macro-accent);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:flex}.operations-macro-back span{gap:2px;min-width:0;font-size:.75rem;font-weight:750;display:grid}.operations-macro-back small{color:#788aa2;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;font-weight:500;overflow:hidden}.operations-macro-usage-strip,.operations-macro-overview-cards,.operations-macro-mini-usage{margin:0}.operations-macro-usage-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.operations-macro-usage-strip>div{border:1px solid rgba(var(--macro-accent-rgb), .18);background:rgba(var(--macro-accent-rgb), .055);border-radius:16px;grid-template-rows:auto auto;grid-template-columns:36px minmax(0,1fr);column-gap:13px;min-height:76px;padding:16px 18px;display:grid}.operations-macro-usage-strip>div>span{width:36px;height:36px;color:var(--macro-accent);background:rgba(var(--macro-accent-rgb), .11);border-radius:11px;grid-row:1/3;align-self:center;place-items:center;display:grid}.operations-macro-usage-strip dt,.operations-macro-overview-cards dt,.operations-macro-mini-usage dt{color:#75869e;letter-spacing:.055em;text-transform:uppercase;font-size:.64rem}.operations-macro-usage-strip dd{color:#f1f7ff;margin:3px 0 0;font-size:1.08rem;font-weight:800}.operations-macro-overview-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.operations-macro-overview-cards>div{background:#0f172a85;border:1px solid #94a3b81f;border-radius:14px;grid-template-rows:auto auto;grid-template-columns:28px minmax(0,1fr);column-gap:11px;min-height:66px;padding:15px 16px;display:grid}.operations-macro-overview-cards>div>span{color:#7f91a9;grid-row:1/3;align-self:center}.operations-macro-overview-cards dd{color:#dce8f7;text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:.93rem;font-weight:750;overflow:hidden}.operations-macro-section{gap:18px;padding-top:6px;display:grid}.operations-macro-section-heading{grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.operations-macro-section-heading>span{width:38px;height:38px;color:var(--macro-accent);background:rgba(var(--macro-accent-rgb), .1);border-radius:12px;place-items:center;display:grid}.operations-macro-section-heading h3,.operations-macro-section-heading p{margin:0}.operations-macro-section-heading h3{color:#edf5ff;font-size:.94rem}.operations-macro-section-heading p{color:#8293aa;margin-top:4px;font-size:.72rem;line-height:1.45}.operations-macro-section-heading>strong{border:1px solid rgba(var(--macro-accent-rgb), .2);min-width:34px;height:34px;color:var(--macro-accent);background:rgba(var(--macro-accent-rgb), .08);border-radius:11px;place-items:center;font-size:.78rem;display:grid}.operations-prd-spec-grid,.operations-spec-task-list{gap:14px;display:grid}.operations-prd-spec-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.operations-prd-spec-grid>button,.operations-spec-task-list>button{color:#dce8f7;cursor:pointer;text-align:left;background:#0e1727c7;border:1px solid #5d729247;min-width:0;transition:border-color .15s,background .15s,transform .15s}.operations-prd-spec-grid>button:hover,.operations-spec-task-list>button:hover{border-color:rgba(var(--macro-accent-rgb), .62);background:rgba(var(--macro-accent-rgb), .08);transform:translateY(-1px)}.operations-prd-spec-grid>button{border-radius:17px;grid-template-columns:42px minmax(0,1fr) auto;grid-template-areas:"index copy action"".usage usage";gap:16px 15px;padding:18px;display:grid}.operations-prd-spec-index{width:42px;height:42px;color:var(--macro-accent);background:rgba(var(--macro-accent-rgb), .1);border-radius:12px;grid-area:index;place-items:center;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem;font-weight:800;display:grid}.operations-prd-spec-copy,.operations-spec-task-copy{gap:6px;min-width:0;display:grid}.operations-prd-spec-copy{grid-area:copy}.operations-prd-spec-copy>span,.operations-spec-task-copy>span{color:#8092aa;letter-spacing:.07em;text-transform:uppercase;font-size:.62rem;font-weight:800}.operations-prd-spec-copy strong,.operations-spec-task-copy strong{color:#edf4ff;text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;line-height:1.35;overflow:hidden}.operations-prd-spec-copy code,.operations-spec-task-copy code{color:#70839c;text-overflow:ellipsis;white-space:nowrap;font-size:.64rem;overflow:hidden}.operations-prd-spec-action{color:var(--macro-accent);grid-area:action;place-self:center end;align-items:center;gap:8px;display:flex}.operations-prd-spec-action small{color:#8da0b8;white-space:nowrap;font-size:.68rem}.operations-prd-spec-grid .operations-macro-mini-usage{grid-area:usage}.operations-macro-mini-usage{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.operations-macro-mini-usage>div{border-top:1px solid #94a3b81c;min-width:0;padding-top:11px}.operations-macro-mini-usage dd{color:#dce9f8;text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:.76rem;font-weight:750;overflow:hidden}.operations-spec-parent{color:#bba7ff;background:#bba7ff0e;border:1px solid #bba7ff2e;border-radius:13px;align-items:center;gap:9px;min-width:0;padding:12px 14px;font-size:.72rem;display:flex}.operations-spec-parent span{color:#8091a8}.operations-spec-parent strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.operations-spec-task-list>button{border-radius:15px;grid-template-columns:42px minmax(180px,1fr) minmax(230px,.72fr) auto;align-items:center;gap:14px;padding:14px 15px;display:grid}.operations-spec-task-sequence{height:42px;color:var(--macro-accent);background:rgba(var(--macro-accent-rgb), .09);border-radius:12px;place-items:center;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.68rem;font-weight:800;display:grid;position:relative}.operations-spec-task-sequence i{background:var(--macro-accent);width:5px;height:5px;box-shadow:0 0 8px rgba(var(--macro-accent-rgb), .72);border-radius:999px;position:absolute;top:7px;right:7px}.operations-spec-task-action{color:var(--macro-accent);white-space:nowrap;align-items:center;gap:7px;font-size:.71rem;font-weight:750;display:flex}.operations-macro-document{color:#7890aa;background:#0c142285;border:1px solid #94a3b81f;border-radius:14px;align-items:center;gap:12px;min-width:0;padding:13px 15px;display:flex}.operations-macro-document div{gap:4px;min-width:0;display:grid}.operations-macro-document span{letter-spacing:.06em;text-transform:uppercase;font-size:.63rem;font-weight:750}.operations-macro-document code{color:#a4b8cf;text-overflow:ellipsis;white-space:nowrap;font-size:.69rem;overflow:hidden}.operations-macro-empty{border:1px dashed rgba(var(--macro-accent-rgb), .22);color:#8193aa;background:rgba(var(--macro-accent-rgb), .025);border-radius:16px;justify-content:center;align-items:center;gap:10px;min-height:92px;display:flex}.operations-macro-empty p{margin:0;font-size:.78rem}@media (width<=860px){.operations-prd-spec-grid{grid-template-columns:1fr}.operations-spec-task-list>button{grid-template-columns:42px minmax(0,1fr) auto}.operations-spec-task-list .operations-macro-mini-usage{grid-column:2/4}}@media (width<=620px){.operations-macro-dialog-backdrop{padding:0}.operations-macro-planning-dialog{border-radius:0}.operations-macro-dialog-header{gap:12px;padding:22px}.operations-macro-heading{gap:11px}.operations-macro-document-open{margin-left:0}.operations-macro-heading-icon{border-radius:12px;flex-basis:40px;width:40px;height:40px}.operations-macro-dialog-scroll{gap:22px;padding:22px 22px 28px}.operations-macro-usage-strip,.operations-macro-overview-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.operations-spec-task-list>button{grid-template-columns:38px minmax(0,1fr)}.operations-spec-task-list .operations-macro-mini-usage,.operations-spec-task-action{grid-column:2}.operations-spec-task-action{justify-self:start}}@media (width<=430px){.operations-macro-heading h2{font-size:1.25rem}.operations-macro-usage-strip,.operations-macro-overview-cards{grid-template-columns:1fr}.operations-prd-spec-grid>button{grid-template-columns:38px minmax(0,1fr);grid-template-areas:"index copy"".usage"".action";row-gap:14px}.operations-prd-spec-index{width:38px;height:38px}.operations-prd-spec-action{justify-self:start}}.operations-period-summary .ui-table-heading{min-width:96px}.operations-period-summary .ui-table th:first-child .ui-table-heading{min-width:120px}.operations-period-summary .ui-table td,.operations-period-summary .ui-table th{white-space:nowrap}.operations-unified-work{gap:14px;display:grid}.operations-work-type-filters{flex-wrap:wrap;gap:8px;display:flex}.operations-work-type-filters button{border:1px solid var(--line);color:var(--muted);cursor:pointer;font:inherit;background:#0c121fd1;border-radius:999px;padding:9px 14px;font-size:.78rem;font-weight:400}.operations-work-type-filters button:hover,.operations-work-type-filters button:focus-visible,.operations-work-type-filters button.is-active{color:#8fd1ff;background:#1f4f7357;border-color:#60bcff94}.operations-work-board .operations-column.is-definition{--column-status-color:#c4b5fd;--column-status-tint:#a78bfa29;--column-card-border:#a78bfa85;--column-card-background:linear-gradient(180deg, #46376f80, #1e1934c7)}.operations-work-board .operations-column.is-planning{--column-status-color:#8da8e8;--column-status-tint:#3758a433;--column-card-border:#4c6fbfa3;--column-card-background:linear-gradient(180deg, #182d58c7, #0a162feb)}.operations-work-board .operations-column.is-ready{--column-status-color:#67e8f9;--column-status-tint:#06b6d426;--column-card-border:#22d3ee85;--column-card-background:linear-gradient(180deg, #1248548f, #09232bdb)}.operations-work-kind{color:#bfdbfe;letter-spacing:.05em;background:#60a5fa2e;border-radius:999px;justify-self:start;padding:5px 9px;font-size:.67rem;font-weight:800}.operations-work-kind.is-prd{color:#ddd6fe;background:#a78bfa33}.operations-work-kind.is-spec{color:#b8ccf2;background:#1e3a8a85}.operations-work-status{color:#cbd5e1;letter-spacing:.03em;background:#4755693d;border:1px solid #94a3b85c;border-radius:999px;justify-self:start;padding:4px 8px;font-size:.64rem;font-weight:700}.operations-work-status.is-executing{color:#8fd1ff;background:#1f4f7357;border-color:#60bcff94}.operations-work-status.is-ready{color:#a5f3fc;background:#06b6d426;border-color:#67e8f980}.operations-work-status.is-completed{color:#86efac;background:#15803d33;border-color:#4ade8070}.operations-work-status.is-blocked,.operations-work-status.is-failed{color:#fdba74;background:#9a341233;border-color:#fb923c7a}.operations-work-card-counts{color:var(--muted);font-size:.72rem}.operations-work-card{cursor:default}.operations-work-card:hover{box-shadow:none;transform:none}.operations-work-card-open{min-width:0;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;flex-wrap:wrap;align-items:flex-start;gap:6px;padding:0;display:flex}.operations-work-card-first-line{flex-basis:100%;align-items:center;gap:6px;min-height:24px;padding-right:76px;display:flex}.operations-work-card-open>.operations-work-next,.operations-work-card-open>.operations-work-status,.operations-work-card-open>.operations-risk{margin-top:4px}.operations-work-card-open>strong{flex-basis:100%;margin-top:4px}.operations-work-card{position:relative}.operations-work-reorder{position:absolute;top:10px;right:10px}.operations-work-reorder button{min-width:24px;min-height:24px;padding:0}.operations-work-card-open:hover>strong,.operations-work-card-open:focus-visible>strong{color:#8fd1ff;text-underline-offset:3px;text-decoration:underline}.operations-work-card-open:focus-visible{outline-offset:4px;outline:2px solid #67e8f9}.operations-work-card-open>strong{overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0;display:-webkit-box;overflow:hidden}.operations-work-order,.operations-work-next{border-radius:999px;justify-self:start;padding:3px 7px;font-size:.62rem;font-weight:800}.operations-work-order{color:#bfdbfe;background:#60a5fa29}.operations-work-next{color:#a5f3fc;background:#22d3ee2e}.operations-work-reorder{gap:6px;display:flex}.operations-work-reorder button{color:#cbd5e1;cursor:pointer;min-width:32px;font:inherit;background:#0f172ab3;border:1px solid #94a3b866;border-radius:8px}.operations-work-reorder button:hover,.operations-work-reorder button:focus-visible{color:#a5f3fc;border-color:#67e8f9}.operations-work-card>small[title]{letter-spacing:-.015em;text-overflow:ellipsis;white-space:nowrap;width:100%;min-width:0;font-size:.58rem;line-height:1.2;display:block;overflow:hidden}.operations-work-list-table{min-width:0}.operations-work-list-table .ui-table-wrap{scrollbar-color:#60bcffc7 #0f172ab8;scrollbar-gutter:stable both-edges;scrollbar-width:auto;overflow:scroll auto}.operations-work-list-table .ui-table-wrap::-webkit-scrollbar{height:12px}.operations-work-list-table .ui-table-wrap::-webkit-scrollbar-thumb{background:#60bcffc7;border:3px solid #0f172ab8;border-radius:999px}.operations-work-list-table .ui-table-wrap::-webkit-scrollbar-track{background:#0f172ab8}.operations-work-list-table .ui-table{min-width:1480px}.operations-work-list-table .ui-table th,.operations-work-list-table .ui-table td{padding:.78rem .6rem}.operations-work-list-identity{gap:5px;min-width:280px;display:grid}.operations-work-list-identity .operations-work-kind{width:fit-content}.operations-work-list-identity strong,.operations-work-list-identity small{overflow-wrap:anywhere}.operations-work-list-identity small{color:var(--muted);font-size:.62rem}.operations-work-list-table .operations-status,.operations-work-list-table .operations-risk{white-space:nowrap;display:inline-flex}.operations-work-card .operations-work-reorder button{box-sizing:border-box;width:32px;min-width:32px;height:32px;min-height:32px;padding:0}.operations-overview{margin-bottom:22px}.operations-overview-controls{justify-content:flex-end;margin-bottom:10px;display:flex}.operations-overview-period{color:#8fa7c2;align-items:center;gap:8px;font-size:.78rem;font-weight:700;display:inline-flex}.operations-overview-period select{border:1px solid var(--line-strong);min-width:138px;color:var(--text);font:inherit;background:#08111feb;border-radius:9px;padding:7px 30px 7px 10px}.operations-overview-period select:focus-visible{border-color:var(--accent);outline:2px solid var(--accent);outline-offset:2px}.operations-kpi-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:12px;display:grid}.operations-kpi,.operations-panel,.operations-column,.operations-macro-card,.operations-content{border:1px solid var(--line);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a0e17f0;border-radius:18px}.operations-kpi{gap:6px;min-height:108px;padding:16px 18px;display:grid;position:relative;overflow:hidden}.operations-kpi.is-selectable{border:1px solid var(--line);width:100%;color:inherit;cursor:pointer;font:inherit;text-align:left;transition:border-color .14s,box-shadow .14s,transform .14s}.operations-kpi.is-selectable:hover,.operations-kpi.is-selectable:focus-visible{box-shadow:var(--shadow), 0 0 0 2px #60a5fa24;border-color:#60a5fab8;outline:none;transform:translateY(-2px)}.operations-kpi:before{content:"";background:linear-gradient(90deg,#00b0f0,#00b0f00a);height:4px;position:absolute;inset:0 0 auto}.operations-kpi.is-featured{background:linear-gradient(135deg,#123655f5,#0a192bf5);border-color:#60a5fa7a}.operations-kpi span,.operations-kpi small,.operations-panel small{color:#8fa7c2}.operations-kpi span{font-size:.8rem}.operations-kpi strong{color:#f3f8ff;font-size:clamp(1.5rem,2vw,2.35rem);line-height:.95}.operations-kpi small{align-self:end;font-size:.75rem}.operations-chart-grid{grid-template-columns:minmax(0,calc(50% - 162px)) 300px 180px minmax(280px,1fr);gap:12px;display:grid}.operations-panel{min-height:264px;padding:16px 18px}.operations-panel-wide{grid-column:span 1}.operations-panel-header{gap:3px;margin-bottom:14px;display:grid}.operations-panel-header-title{justify-content:space-between;align-items:center;gap:12px;display:flex}.operations-panel-header h2{margin:0;font-size:1rem}.operations-status-visibility-toggle{color:#8fa7c2;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex:none;place-items:center;width:30px;height:30px;padding:0;display:grid}.operations-status-visibility-toggle:hover,.operations-status-visibility-toggle:focus-visible{color:#e6f6ff;background:#60a5fa1f;border-color:#60a5fa94;outline:none}.operations-stacked-bar{background:#243448db;border-radius:999px;height:14px;margin-bottom:16px;display:flex;overflow:hidden}.operations-stacked-bar i{min-width:4px;display:block}.operations-legend-grid{gap:9px;display:grid}.operations-legend-row{grid-template-columns:10px 1fr auto;align-items:center;gap:10px;font-size:.82rem;display:grid}.operations-status-filter{width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:9px;padding:3px 4px;transition:background .12s,color .12s}.operations-status-filter:hover,.operations-status-filter:focus-visible{color:#e6f6ff;background:#00b0f017;outline:none}.operations-status-filter:hover span,.operations-status-filter:focus-visible span{color:#e6f6ff}.operations-legend-row i{border-radius:999px;width:10px;height:10px}.operations-legend-row span{color:var(--muted);text-transform:capitalize}.operations-legend-row .operations-legend-value{color:inherit;text-transform:none;align-items:baseline;gap:6px;display:inline-flex}.operations-legend-value small{min-width:42px;color:var(--muted);text-align:right;font-size:.72rem}.operations-donut-wrap{width:136px;height:136px;margin:0 auto 14px;position:relative}.operations-panel-risk .operations-donut-wrap{margin-inline:auto}.operations-donut{border-radius:50%;width:100%;height:100%;-webkit-mask:radial-gradient(circle,#0000 0 53%,#000 55%);mask:radial-gradient(circle,#0000 0 53%,#000 55%)}.operations-donut-wrap>div:last-child{text-align:center;place-content:center;display:grid;position:absolute;inset:0}.operations-donut-wrap strong{font-size:1.7rem}.operations-donut-wrap span{color:#8fa7c2;font-size:.75rem}.operations-token-bars{gap:17px;padding-top:4px;display:grid}.operations-token-row{grid-template-columns:1fr auto;gap:7px 10px;font-size:.82rem;display:grid}.operations-token-row span{color:var(--muted)}.operations-token-row>div{background:#243448db;border-radius:999px;grid-column:1/-1;height:10px;overflow:hidden}.operations-token-row i{border-radius:inherit;height:100%;display:block}.operations-type-summary{gap:10px;display:grid}.operations-type-summary>div{border-bottom:1px solid #4a608047;gap:5px;padding:10px 0;display:grid}.operations-type-summary>div:first-child{padding-top:4px}.operations-type-summary>div:last-child{border-bottom:0}.operations-type-summary span{color:var(--muted);font-size:.8rem}.operations-type-summary strong{color:#f3f8ff;font-variant-numeric:tabular-nums;text-align:left;font-size:1rem}.operations-panel-type{flex-direction:column;display:flex}.operations-panel-type.is-en-us .operations-panel-header>small{letter-spacing:-.01em;white-space:nowrap;font-size:.72rem}.operations-latest-task-created{border-top:1px solid #4a608047;gap:5px;margin-top:auto;padding-top:14px;display:grid}.operations-latest-task-created span{color:var(--muted);font-size:.76rem}.operations-latest-task-created strong{color:#f3f8ff;font-variant-numeric:tabular-nums;font-size:.88rem;line-height:1.35}.operations-panel-type.is-en-us .operations-latest-task-created strong{letter-spacing:-.02em;white-space:nowrap;font-size:.75rem}.operations-run-bars{align-items:flex-end;gap:9px;height:184px;padding-top:12px;display:flex}.operations-run-bar{appearance:none;color:inherit;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:7px;min-width:0;height:100%;padding:0;display:flex}.operations-run-bar:hover i,.operations-run-bar:focus-visible i{filter:brightness(1.12)}.operations-run-bar:focus-visible{outline-offset:3px;border-radius:8px;outline:2px solid #60a5fa}.operations-run-bar:disabled{cursor:default}.operations-run-bars strong{color:#d8e6f5;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.68rem;font-weight:650;line-height:1}.operations-run-bars i{background:linear-gradient(#00b0f0,#60a5fa);border-radius:10px 10px 3px 3px;width:100%;min-height:8px;display:block}.operations-run-bars span{color:#8fa7c2;text-align:center;text-transform:uppercase;place-content:start center;min-height:2.4em;font-size:.65rem;line-height:1.2;display:grid}.operations-top-task-metrics{border-top:1px solid #4a608047;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:18px;padding-top:14px;display:grid}.operations-top-task-metrics>div{background:#11182794;border:1px solid #4a60804d;border-radius:12px;gap:5px;min-width:0;padding:10px;display:grid}.operations-top-task-metrics span,.operations-top-task-metrics small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.operations-top-task-metrics span{color:#8fa7c2;font-size:.68rem}.operations-top-task-metrics strong{color:#f3f8ff;font-variant-numeric:tabular-nums;font-size:.88rem;line-height:1.1}.operations-top-task-metrics small{color:#7089a5;font-size:.62rem}.operations-status-dialog-backdrop{box-sizing:border-box;z-index:80;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);width:100vw;max-width:none;height:100dvh;max-height:none;color:inherit;background:#020617c7;border:0;place-items:center;margin:0;padding:24px;display:grid;position:fixed;inset:0;overflow:hidden}.operations-status-dialog{border:1px solid var(--line-strong);background:linear-gradient(#0a0e17fc,#0d1220fc);border-radius:24px;grid-template-rows:auto auto minmax(0,1fr);width:min(780px,100%);max-height:min(760px,90vh);display:grid;overflow:hidden;box-shadow:0 30px 100px #00000080}.operations-status-dialog>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding:24px 26px 20px;display:flex}.operations-status-dialog header span,.operations-status-dialog header p{color:var(--muted);font-size:.78rem}.operations-status-dialog h2,.operations-status-dialog header p{margin:4px 0 0}.operations-status-dialog h2{font-size:clamp(1.4rem,3vw,2rem)}.operations-status-dialog>header>button{border:1px solid var(--line-strong);width:40px;height:40px;color:var(--text);cursor:pointer;background:#0f1422e6;border-radius:12px;flex:0 0 40px;font-size:1.25rem}.operations-status-dialog-search{gap:6px;padding:16px 16px 0;display:grid}.operations-status-dialog-search span{color:var(--muted);font-size:.74rem;font-weight:700}.operations-status-dialog-search input{border:1px solid var(--line-strong);width:100%;color:var(--text);background:#08111feb;border-radius:12px;padding:11px 13px}.operations-status-dialog-search input:focus-visible{border-color:var(--accent);outline:2px solid var(--accent);outline-offset:2px}.operations-status-task-list{overscroll-behavior:contain;gap:9px;min-height:0;max-height:none;padding:16px;display:grid;overflow-y:auto}.operations-status-task-list>button{border:1px solid var(--line);width:100%;color:var(--text);cursor:pointer;text-align:left;background:#111827c7;border-radius:14px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:14px 16px;transition:border-color .12s,background .12s,transform .12s;display:grid}.operations-status-task-list>button:hover,.operations-status-task-list>button:focus-visible{background:#00b0f014;border-color:#00b0f06b;outline:none;transform:translateY(-1px)}.operations-status-task-main{gap:5px;min-width:0;display:grid}.operations-status-task-main strong,.operations-status-task-main small{overflow-wrap:anywhere}.operations-status-task-main small{color:var(--muted)}.operations-status-task-action{color:var(--accent);white-space:nowrap;font-size:.76rem}@media (width<=760px){.operations-status-dialog-backdrop{padding:12px}.operations-status-dialog{border-radius:18px}.operations-status-dialog>header{padding:20px}.operations-status-task-list>button{grid-template-columns:minmax(0,1fr) auto}.operations-status-task-action{grid-column:1/-1}}.operations-page{width:min(1600px,100%);margin:0 auto;padding:84px 24px 56px}.operations-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.operations-hero{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;display:none}.operations-hero p{color:#95aac4;margin:0;font-size:.78rem}.operations-hero .operations-eyebrow{color:#00b0f0;letter-spacing:.16em;text-transform:uppercase;margin-bottom:6px;font-size:.82rem;font-weight:800}.operations-last-updated{color:#64748b;margin-top:7px;font-size:.64rem;display:none}.operations-actions{background:#090e19e6;border:1px solid #ffffff12;border-radius:18px;flex-wrap:wrap;align-items:center;gap:8px;padding:6px;display:none;box-shadow:0 10px 30px #00000038}.operations-actions button,.operations-toolbar button,.operations-dialog button{border:1px solid var(--line-strong);min-height:42px;color:var(--text);cursor:pointer;background:#0a0e17f5;border-radius:12px;padding:10px 14px;transition:transform .12s,border-color .12s,background .12s}.operations-actions button:hover,.operations-toolbar button:hover,.operations-dialog button:hover{border-color:#00b0f085;transform:translateY(-1px)}.operations-actions button:disabled{cursor:wait;opacity:.62;transform:none}.operations-nav-icon,.operations-nav-button{justify-content:center;align-items:center;gap:10px;display:inline-flex}.operations-nav-icon{width:42px;padding:0}.operations-nav-svg{stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;flex:0 0 18px;width:18px;height:18px}.operations-locale-flag{border-radius:6px;flex:0 0 20px;width:20px;height:20px;display:block;overflow:hidden}.operations-locale-chevron{width:16px;height:16px;color:var(--muted);margin-left:2px}.operations-nav-button.is-active,.operations-nav-icon.is-active{color:var(--accent);background:#00b0f024;border-color:#00b0f070}.operations-nav-popup-anchor{position:relative}.operations-nav-popup{z-index:30;background:#0b101cfa;border:1px solid #ffffff1a;border-radius:18px;min-width:280px;padding:14px;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 20px 48px #0000006b}.operations-filter-popup{grid-template-columns:minmax(240px,2fr) repeat(2,minmax(150px,1fr)) auto;align-items:end;gap:10px;width:min(850px,100vw - 48px);display:grid}.operations-filter-popup label,.operations-settings-popup{gap:7px;display:grid}.operations-filter-popup label>span,.operations-settings-popup>strong{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.67rem}.operations-filter-popup input,.operations-filter-popup select{border:1px solid var(--line-strong);min-height:42px;color:var(--text);background:#0a1220;border-radius:11px;padding:0 11px}.operations-locale-popup,.operations-settings-popup{width:280px}.operations-locale-popup{gap:8px;display:grid}.operations-locale-popup button{text-align:left;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;display:grid}.operations-toolbar{justify-content:space-between;align-items:center;gap:12px;margin:22px 0 12px;display:flex}.operations-run-kind-toolbar{margin-top:8px}.operations-toolbar nav{flex-wrap:wrap;gap:6px;min-width:0;padding:2px;display:flex;overflow-x:visible}.operations-toolbar button{white-space:nowrap;min-height:40px;padding:8px 10px;font-size:.82rem}.operations-toolbar button.is-active{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent)}.operations-tab-export{flex:none;justify-content:flex-end;display:flex}.operations-tab-export .excel-export-action{color:#042330;background:linear-gradient(135deg,#00b0f0 0%,#72f4fb 100%);border:1px solid #0000;border-radius:999px;gap:6px;min-height:44px;padding:0 10px;font-size:.82rem;font-weight:650}.operations-tab-export .excel-export-action svg{width:14px;height:14px}.operations-tab-export .excel-export-action:hover:not(:disabled){color:#042330;background:linear-gradient(135deg,#00b0f0 0%,#72f4fb 100%);border-color:#72f4fbb8}.operations-toolbar nav button:focus-visible,.operations-tab-export .excel-export-action:focus-visible{outline-offset:2px;outline:3px solid #00b0f0}.operations-toolbar input{border:1px solid var(--line-strong);min-width:260px;min-height:42px;color:var(--text);background:#0a0e17f5;border-radius:12px;padding:10px 12px}.operations-content{padding:14px}.operations-execution-table .ui-table-wrap{overflow-x:auto}.operations-execution-table .ui-table{table-layout:fixed;min-width:2080px}.operations-execution-table .ui-table th,.operations-execution-table .ui-table td{box-sizing:border-box;min-width:0;padding:.72rem .48rem}.operations-execution-table .ui-table th:first-child{width:12%}.operations-execution-table .ui-table th:nth-child(2){width:25%}.operations-execution-table .ui-table th:nth-child(3),.operations-execution-table .ui-table th:nth-child(4){width:9%}.operations-execution-table .ui-table th:nth-child(5),.operations-execution-table .ui-table th:nth-child(9){width:5%}.operations-execution-table .ui-table th:nth-child(6),.operations-execution-table .ui-table th:nth-child(7){width:8%}.operations-execution-table .ui-table th:nth-child(8){width:10%}.operations-execution-table .ui-table th:nth-child(10),.operations-execution-table .ui-table th:nth-child(11){width:4.5%}.operations-execution-table .ui-table td:nth-child(2){overflow-wrap:anywhere}.operations-execution-table .ui-table-heading{gap:3px;min-height:2.7rem}.operations-execution-table .ui-table-label{text-overflow:clip;white-space:nowrap;overflow:visible}.operations-board{grid-template-columns:repeat(9,minmax(240px,1fr));gap:16px;padding-bottom:4px;display:grid;overflow-x:auto}.operations-column{min-width:0;min-height:420px;box-shadow:none;background:#0d1220eb;padding:18px}.operations-column>header{border-bottom:1px solid #4a608047;border-top:3px solid var(--column-status-color,var(--line-strong));background:linear-gradient(105deg, var(--column-status-tint,transparent), transparent 70%);text-transform:uppercase;border-radius:12px 12px 0 0;justify-content:space-between;gap:12px;margin:-18px -18px 14px;padding:15px 18px 14px;font-size:.78rem;display:flex}.operations-column-trigger,.operations-column-count{color:var(--column-status-color,var(--text));cursor:pointer;font:inherit;border:0}.operations-column-trigger{color:var(--column-status-color,var(--text));text-align:left;background:0 0;padding:3px 0;font-weight:750}.operations-macro-column-title{color:var(--column-status-color,var(--text));text-align:left;text-transform:none;align-self:center;padding:3px 0;font-weight:750;line-height:1.35}.operations-column-trigger:hover,.operations-column-trigger:focus-visible,.operations-column-count:hover,.operations-column-count:focus-visible{filter:brightness(1.18);outline:2px solid var(--column-status-color,var(--accent));outline-offset:3px}.operations-column.is-draft{--column-status-color:#c4b5fd;--column-status-tint:#a78bfa29;--column-card-border:#a78bfa85;--column-card-background:linear-gradient(180deg, #46376f80, #1e1934c7)}.operations-column.is-planned{--column-status-color:#6f91d8;--column-status-tint:#1e3a8a3d;--column-card-border:#3758a4ad;--column-card-background:linear-gradient(180deg, #14274ec7, #09142beb)}.operations-column.is-executing{--column-status-color:#fde68a;--column-status-tint:#fbbf2429;--column-card-border:#fbbf2485;--column-card-background:linear-gradient(180deg, #5c400d7a, #2a1f0cc2)}.operations-column.is-verifying{--column-status-color:#fca5a5;--column-status-tint:#f8717129;--column-card-border:#f8717185;--column-card-background:linear-gradient(180deg, #5b263080, #30181fc7)}.operations-column.is-completed{--column-status-color:#86efac;--column-status-tint:#34d39929;--column-card-border:#34d39980;--column-card-background:linear-gradient(180deg, #164f3d80, #0f2b24c7)}.operations-column.is-blocked,.operations-column.is-failed,.operations-column.is-cancelled{--column-status-color:#cbd5e1;--column-status-tint:#64748b29;--column-card-border:#94a3b86b;--column-card-background:linear-gradient(180deg, #2d374880, #181f2cc7)}.operations-column-count{color:#9ef4e5;text-align:center;background:#14b8a62e;border-radius:50%;flex:0 0 36px;place-items:center;width:36px;min-width:36px;height:36px;min-height:36px;padding:0;font-weight:700;line-height:1;display:grid}.operations-column.is-draft>header .operations-column-count{color:#ddd6fe;background:#a78bfa33}.operations-column.is-planned>header .operations-column-count{color:#b8ccf2;background:#1e3a8a61}.operations-column.is-executing>header .operations-column-count{color:#fde68a;background:#fbbf2433}.operations-column.is-verifying>header .operations-column-count{color:#fecaca;background:#f8717133}.operations-column.is-completed>header .operations-column-count{color:#a7f3d0;background:#34d39933}.operations-column.is-blocked>header .operations-column-count,.operations-column.is-failed>header .operations-column-count,.operations-column.is-cancelled>header .operations-column-count{color:#cbd5e1;background:#64748b3d}.operations-column-body{gap:12px;min-width:0;display:grid}.operations-infinite-sentinel{min-height:34px;color:var(--muted);text-align:center;padding:8px;font-size:.7rem}.operations-task-card{border:1px solid var(--column-card-border,#4a60805c);background:var(--column-card-background,linear-gradient(180deg, #0f1b2efa, #0b1524fa));width:100%;min-width:0;max-width:100%;color:var(--text);text-align:left;cursor:pointer;border-radius:16px;gap:10px;padding:14px;transition:transform .12s,border-color .12s,box-shadow .12s;display:grid;overflow:hidden}.operations-task-card:hover{border-color:var(--column-status-color,#5eead499);transform:translateY(-2px);box-shadow:0 20px 34px #030a1459}.operations-task-card>strong{overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0;display:-webkit-box;overflow:hidden}.operations-task-card small,.operations-task-card span{color:#8fa7c2;overflow-wrap:anywhere}.operations-task-card .operations-task-id{letter-spacing:-.015em;text-overflow:ellipsis;white-space:nowrap;width:100%;min-width:0;max-width:100%;font-size:.58rem;line-height:1.2;display:block;overflow:hidden}.operations-task-card .operations-card-created{color:#64748b;font-variant-numeric:tabular-nums;letter-spacing:.01em;font-size:.62rem}.operations-task-card progress{width:100%;accent-color:var(--accent)}.operations-task-usage{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0;display:grid}.operations-task-usage div{border-top:1px solid #4a608047;min-width:0;padding-top:7px}.operations-task-usage dt{color:var(--muted);text-transform:uppercase;font-size:.58rem}.operations-task-usage dd{color:#e6f2ff;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:.67rem;font-weight:700;overflow:hidden}.operations-macro-board-card{text-align:left}.operations-macro-kind{color:#bfdbfe;letter-spacing:.07em;background:#60a5fa2e;border-radius:999px;justify-self:start;padding:5px 9px;font-size:.66rem;font-weight:700}.operations-macro-board-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:2px 0 0;display:grid}.operations-macro-board-card .operations-macro-usage{grid-template-columns:repeat(3,minmax(0,1fr))}.operations-macro-board-card dl div{border-top:1px solid #4a608047;padding-top:8px}.operations-macro-board-card dt{color:var(--muted);font-size:.65rem}.operations-macro-board-card dd{color:var(--text);margin:3px 0 0;font-weight:700}.operations-risk{text-transform:uppercase;border-radius:999px;justify-self:start;padding:5px 9px;font-size:.66rem}.operations-risk.is-critical{color:#fecaca;background:#7f1d1db8}.operations-risk.is-standard{color:#fde68a;background:#713f12b8}.operations-risk.is-lite{color:#bfdbfe;background:#1e40af7a}.operations-macro-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;display:grid}.operations-macro-card{border:1px solid var(--line);width:100%;color:var(--text);text-align:left;cursor:pointer;box-shadow:none;background:#0a0e17f0;border-radius:16px;padding:18px}.operations-macro-card:hover,.operations-macro-card:focus-visible{border-color:#00b0f08c;outline:none}.operations-macro-card header{justify-content:space-between;gap:16px;display:flex}.operations-macro-card h3{margin:4px 0}.operations-macro-card small,.operations-path{color:var(--muted);overflow-wrap:anywhere}.operations-macro-card dl,.operations-detail-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;display:grid}.operations-macro-card dl div,.operations-detail-grid div{border:1px solid var(--line);background:#0f1b2ec7;border-radius:12px;padding:12px}.operations-macro-card dt,.operations-detail-grid dt{color:var(--muted);text-transform:uppercase;font-size:.7rem}.operations-macro-card dd,.operations-detail-grid dd{overflow-wrap:anywhere;margin:5px 0 0;font-weight:700}.operations-status{background:var(--surface-raised);border-radius:999px;height:fit-content;padding:6px 10px;font-size:.7rem}.operations-status.is-executing{color:#fde68a}.operations-status.is-draft{color:#ddd6fe}.operations-status.is-planned{color:#bfdbfe}.operations-status.is-verifying{color:#fecaca}.operations-status.is-completed{color:#75e6a4}.operations-status.is-blocked,.operations-status.is-failed,.operations-status.is-cancelled{color:#cbd5e1}.operations-empty{color:var(--muted);text-align:center}.operations-dialog-backdrop{z-index:80;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#020617c7;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.operations-dialog{border:1px solid var(--line-strong);background:linear-gradient(#0a0e17fc,#0d1220fc);border-radius:24px;grid-template-rows:auto minmax(0,1fr) auto;width:min(980px,100%);max-height:90vh;padding:0;display:grid;overflow:hidden;box-shadow:0 30px 100px #00000073}.operations-dialog>header,.operations-dialog>footer{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.operations-dialog>header{border-bottom:1px solid var(--line);padding:28px 28px 22px}.operations-dialog-scroll{overscroll-behavior:contain;min-height:0;padding:24px 28px;overflow-y:auto}.operations-dialog h2{margin:4px 0;font-size:clamp(1.7rem,3vw,2.4rem)}.operations-dialog header p{color:var(--muted)}.operations-dialog section{margin-top:20px}.operations-dialog pre{white-space:pre-wrap;border:1px solid var(--line);color:#d2deee;background:#08111feb;border-radius:16px;max-height:none;padding:18px;line-height:1.65;overflow:visible}.operations-dialog footer{border-top:1px solid var(--line);color:var(--muted);overflow-wrap:anywhere;align-items:center;padding:18px 28px;font-size:.75rem}@media (width<=760px){.operations-dialog-backdrop{padding:12px}.operations-dialog{border-radius:18px}.operations-dialog>header,.operations-dialog-scroll,.operations-dialog>footer{padding-left:20px;padding-right:20px}}.operations-tags{flex-wrap:wrap;gap:8px;display:flex}.operations-tags span{color:#cde3ff;background:#2563eb29;border-radius:999px;padding:6px 10px}.operations-content-skeleton{border:1px solid var(--line);min-height:360px;color:var(--muted);background:#111827ad;border-radius:18px;gap:16px;padding:24px;display:grid}.operations-table-status,.operations-table-entry,.operations-table-decision-origin,.operations-table-stage,.operations-table-risk{text-transform:capitalize;border:1px solid #0000;border-radius:999px;align-items:center;padding:4px 9px;font-size:.7rem;font-weight:700;display:inline-flex}.operations-table-status{color:#cbd5e1;background:#64748b1f;border-color:#64748b52}.operations-table-status.is-completed{color:#86efac;background:#34d39924;border-color:#34d3996b}.operations-table-status.is-cancelled,.operations-table-risk.is-critical{color:#fca5a5;background:#f8717124;border-color:#f871716b}.operations-table-entry.is-prd,.operations-table-decision-origin.is-human{color:#ddd6fe;background:#a78bfa24;border-color:#a78bfa6b}.operations-table-entry.is-spec,.operations-table-stage.is-planning,.operations-table-risk.is-lite{color:#bfdbfe;background:#60a5fa24;border-color:#60a5fa6b}.operations-table-entry.is-task,.operations-table-stage.is-execution,.operations-table-risk.is-standard{color:#fde68a;background:#fbbf2424;border-color:#fbbf246b}.operations-table-entry.is-conversation,.operations-table-decision-origin.is-agent{color:#a5f3fc;background:#22d3ee24;border-color:#22d3ee6b}.operations-toolbar{flex-wrap:wrap;align-items:flex-end}.operations-toolbar nav{flex:620px}.operations-toolbar-filters{grid-template-columns:minmax(210px,1.35fr) repeat(2,minmax(128px,.8fr)) minmax(155px,1fr);align-items:end;gap:8px;margin-left:auto;display:grid}.dashboard-global-controls{justify-content:space-between;align-items:end;gap:18px;margin:22px 0 14px;scroll-margin-top:82px;display:flex}.dashboard-global-controls .dashboard-capability-nav{flex:none;margin:0}.dashboard-global-filters{flex:0 760px;width:min(760px,100%);min-width:0;margin-left:auto}.operations-toolbar-field{gap:4px;min-width:0;display:grid}.operations-toolbar-field>span{color:#64748b;letter-spacing:.08em;text-transform:uppercase;font-size:.51rem;font-weight:700}.operations-search-control{min-width:0;position:relative}.dashboard-global-controls .operations-search-control input{padding-right:38px}.dashboard-global-controls .operations-search-clear{color:#71829a;cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;width:26px;height:26px;padding:0;display:grid;position:absolute;top:50%;right:7px;transform:translateY(-50%)}.dashboard-global-controls .operations-search-clear:hover{color:#bae6fd;background:#7dd3fc1a}.dashboard-global-controls .operations-search-clear:focus-visible{outline-offset:1px;outline:2px solid #38bdf8}.operations-search-clear svg{stroke:currentColor;stroke-linecap:round;stroke-width:1.8px;width:16px;height:16px}.operations-toolbar .operations-toolbar-field input,.operations-toolbar .operations-toolbar-field select,.dashboard-global-controls .operations-toolbar-field input,.dashboard-global-controls .operations-toolbar-field select{border:1px solid var(--line-strong);width:100%;min-width:0;min-height:36px;color:var(--text);background:#0a0e17f5;border-radius:10px;padding:6px 9px;font-size:.76rem}.operations-toolbar .operations-date-field input,.dashboard-global-controls .operations-date-field input{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.operations-toolbar .operations-period-field select,.dashboard-global-controls .operations-period-field select{padding-right:30px}@media (width<=760px){.dashboard-global-controls{flex-direction:column;align-items:stretch}.dashboard-global-controls .dashboard-capability-nav,.dashboard-global-filters{width:100%;min-width:0}.operations-toolbar-filters{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.operations-search-field,.operations-period-field{grid-column:1/-1}}@media (width<=420px){.operations-toolbar-filters{grid-template-columns:1fr}.operations-search-field,.operations-period-field{grid-column:auto}}.operations-global-filters{grid-template-columns:repeat(4,minmax(160px,1fr));align-items:end;gap:16px 12px;padding:6px;display:grid}.dashboard-header-filter-popup:has(.operations-global-filters){background:radial-gradient(circle at 90% 0,#0ea5e917,#0000 34%),#080d18fb;border-color:#7dd3fc29;border-radius:20px;width:min(940px,100vw - 48px);padding:20px;inset:76px 24px auto auto;box-shadow:0 26px 70px #00000085}.operations-filter-heading{border-bottom:1px solid #94a3b81f;grid-column:1/-1;justify-content:space-between;align-items:center;gap:18px;padding:2px 2px 12px;display:flex}.operations-filter-heading>div{gap:4px;display:grid}.operations-filter-heading strong{color:#e5f2ff;font-size:1rem}.operations-filter-heading small{color:#71829a;font-size:.68rem}.operations-filter-status{color:#7dd3fc;align-items:center;gap:8px;font-size:.68rem;display:inline-flex}.operations-filter-status i{background:#38bdf8;border-radius:50%;width:8px;height:8px;animation:.9s ease-in-out infinite alternate operations-filter-pulse;box-shadow:0 0 0 5px #38bdf81f}.operations-global-filters label{gap:7px;display:grid}.operations-global-filters label>span{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.67rem}.operations-global-filters input,.operations-global-filters select{border:1px solid var(--line-strong);min-width:0;min-height:42px;color:var(--text);background:#080e19e6;border-radius:13px;outline:none;padding:0 14px;transition:border-color .14s,box-shadow .14s,background .14s}.operations-global-filters input:hover,.operations-global-filters select:hover{border-color:#7dd3fc47}.operations-global-filters input:focus,.operations-global-filters select:focus{background:#0a1423fa;border-color:#38bdf8b3;box-shadow:0 0 0 3px #38bdf81a}.operations-filter-search{grid-column:span 2}.operations-global-filters .operations-date-field input{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.dashboard-header .operations-clear-filters{color:#bae6fd;background:#0e74901a;border-color:#7dd3fc38;justify-content:center;align-items:center;gap:9px;min-height:42px;display:inline-flex}@media (width<=820px){.operations-global-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}.operations-reset-icon{stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:16px;height:16px}@keyframes operations-filter-pulse{to{opacity:.42;transform:scale(.78)}}.operations-loading-line{z-index:59;background:#38bdf814;height:2px;position:fixed;top:63px;left:0;right:0;overflow:hidden}.operations-loading-line:after{content:"";background:linear-gradient(90deg,#0000,#38bdf8,#0000);width:32%;height:100%;animation:.85s ease-in-out infinite operations-loading-slide;position:absolute}@keyframes operations-loading-slide{0%{transform:translate(-110%)}to{transform:translate(420%)}}.operations-filtered{transition:opacity .14s}.operations-filtered.is-loading{opacity:1;pointer-events:auto}.operations-loading-status{z-index:75;color:#dbeafe;background:#0f172af5;border:1px solid #38bdf859;border-radius:14px;align-items:center;gap:10px;padding:12px 14px;font-size:.86rem;display:flex;position:fixed;bottom:18px;right:18px;box-shadow:0 12px 32px #00000047}.operations-loading-status:before{content:"";border:3px solid #334155;border-top-color:#38bdf8;border-radius:50%;width:18px;height:18px;animation:.9s linear infinite operations-loading-spin}@keyframes operations-loading-spin{to{transform:rotate(360deg)}}@media (width>=1500px){.operations-chart-grid{grid-template-columns:minmax(0,calc(50% - 162px)) 300px 180px minmax(280px,1fr)}.operations-panel-wide{grid-column:span 1}}@media (width<=1180px){.operations-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.operations-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.operations-page{padding:86px 14px 42px}.operations-global-filters{grid-template-columns:1fr}.operations-filter-search,.operations-filter-heading{grid-column:auto}.operations-filter-heading{flex-direction:column;align-items:flex-start}.operations-hero,.operations-toolbar{flex-direction:column;align-items:stretch}.operations-kpi-grid,.operations-chart-grid{grid-template-columns:1fr}.operations-toolbar input{width:100%;min-width:0}.operations-tab-export{justify-content:flex-end}.operations-content{padding:10px}.operations-execution-table .ui-table{font-size:.73rem}.operations-execution-table .ui-table th,.operations-execution-table .ui-table td{padding:.56rem .3rem}.operations-execution-table .ui-table th:first-child{width:12%}.operations-execution-table .ui-table th:nth-child(2){width:25%}.operations-execution-table .ui-table th:nth-child(3),.operations-execution-table .ui-table th:nth-child(4){width:9%}.operations-execution-table .ui-table th:nth-child(5),.operations-execution-table .ui-table th:nth-child(9){width:5%}.operations-execution-table .ui-table th:nth-child(6),.operations-execution-table .ui-table th:nth-child(7){width:8%}.operations-execution-table .ui-table th:nth-child(8){width:10%}.operations-execution-table .ui-table th:nth-child(10),.operations-execution-table .ui-table th:nth-child(11){width:4.5%}.operations-dialog{padding:22px 18px}.operations-dialog>footer{flex-direction:column}}.cost-page{width:min(1600px,100%);margin:0 auto;padding:86px 26px 64px}.cost-monitor-nav{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#020711f0;border-bottom:1px solid #94a3b81a;justify-content:space-between;align-items:center;gap:14px;min-height:58px;padding:10px 24px;display:none;position:fixed;inset:0 0 auto}.dashboard-header-filter-popup .cost-filters,.dashboard-header-mobile-filters .cost-filters{box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;padding:0}.cost-monitor-nav button,.cost-tabs button,.cost-filters button,.cost-content button:not(.ui-table-sort):not(.ui-table-info){border:1px solid var(--line-strong);min-height:40px;color:var(--text);cursor:pointer;background:#0f1422db;border-radius:11px;padding:0 14px;transition:border-color .12s,transform .12s,background .12s}.cost-monitor-nav button:hover,.cost-tabs button:hover,.cost-filters button:hover,.cost-content button:not(.ui-table-sort):not(.ui-table-info):hover{border-color:#00b0f070;transform:translateY(-1px)}.cost-monitor-nav button:disabled{cursor:wait;opacity:.65;transform:none}.cost-back{color:var(--muted);justify-self:start}.cost-monitor-brand{align-items:start;gap:3px;display:grid}.cost-monitor-logo{object-fit:contain;width:auto;height:28px;display:block;position:absolute;left:50%;transform:translate(-50%)}.cost-monitor-title{color:#00b0f0;letter-spacing:-.02em;white-space:nowrap;font-size:1rem}.cost-last-updated{color:#64748b;white-space:nowrap;margin:0;font-size:.61rem}.cost-nav-actions{background:#090e19e6;border:1px solid #ffffff12;border-radius:18px;align-items:center;gap:8px;padding:6px;display:flex;box-shadow:0 10px 30px #00000038}.cost-period{gap:4px;display:grid}.cost-period span{color:#7f91aa;letter-spacing:.08em;text-transform:uppercase;font-size:.61rem}.cost-period select{border:1px solid var(--line-strong);min-height:40px;color:var(--text);background:#0a1220;border-radius:11px;padding:0 30px 0 10px}.cost-nav-icon,.cost-nav-button{justify-content:center;align-items:center;gap:10px;display:inline-flex}.cost-nav-button{font-size:.82rem}.cost-locale-flag{border-radius:6px;flex:0 0 20px;width:20px;height:20px;display:block;overflow:hidden}.cost-locale-chevron{color:var(--muted);flex:0 0 16px;width:16px;height:16px;margin-left:2px}.cost-nav-icon{width:38px;padding:0}.cost-settings-icon,.cost-filter-icon{stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:18px;height:18px}.cost-nav-button.is-active,.cost-nav-icon.is-active{color:var(--accent);background:#00b0f024;border-color:#00b0f070}.cost-nav-popup-anchor{position:relative}.cost-nav-popup{z-index:30;background:#0b101cfa;border:1px solid #ffffff1a;border-radius:18px;min-width:280px;padding:14px;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 20px 48px #0000006b}.cost-nav-filter-popup{width:min(1200px,100vw - 48px)}.cost-nav-filter-popup .cost-filters{box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;padding:0}.cost-nav-locale-popup,.cost-nav-settings-popup{gap:8px;width:280px;display:grid}.cost-mobile-settings{display:none}.cost-nav-locale-popup button{text-align:left;justify-content:space-between;align-items:center;gap:8px;display:flex}.cost-nav-settings-popup label{gap:7px;display:grid}.cost-nav-settings-popup span{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.67rem}.cost-nav-settings-popup select{border:1px solid var(--line-strong);min-height:40px;color:var(--text);background:#0a1220;border-radius:11px;padding:0 10px}.cost-row-action{place-items:center;width:34px;min-height:34px;padding:0;display:inline-grid}.cost-row-action svg{fill:currentColor;width:18px;height:18px}.cost-content .ui-table{width:max-content;min-width:100%}.cost-content:is(.cost-content-daily,.cost-content-monthly,.cost-content-annual) .ui-table{table-layout:fixed;width:100%;min-width:0}.cost-content:is(.cost-content-daily,.cost-content-monthly,.cost-content-annual) .cost-page-controls{justify-content:flex-end;align-items:center;gap:10px;margin-top:12px;display:flex}.cost-content:is(.cost-content-daily,.cost-content-monthly,.cost-content-annual) .cost-page-controls output{min-width:8.5rem;color:var(--muted);text-align:center;font-variant-numeric:tabular-nums;font-size:.78rem}.cost-content:is(.cost-content-daily,.cost-content-monthly,.cost-content-annual) .ui-table-heading{gap:4px;width:100%;min-width:0}.cost-content:is(.cost-content-daily,.cost-content-monthly,.cost-content-annual) .ui-table-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.cost-content:is(.cost-content-daily,.cost-content-monthly,.cost-content-annual) .ui-table :is(th,td){white-space:nowrap;padding-inline:clamp(.35rem,.65vw,.8rem)}.cost-content:is(.cost-content-daily,.cost-content-monthly,.cost-content-annual) .ui-table :is(th,td):first-child{width:clamp(128px,14vw,220px)}.cost-content-agentCalls .ui-table :is(th,td):nth-child(2),.cost-content-prds .ui-table :is(th,td):nth-child(2),.cost-content-specs .ui-table :is(th,td):nth-child(2){width:320px;min-width:320px}.cost-content-tasks .ui-table :is(th,td):nth-child(2){width:450px;min-width:450px}.cost-content-tasks .ui-table{width:max-content;min-width:0}.cost-content-tasks .ui-table :is(th,td){padding-inline:.7rem}.cost-content:is(.cost-content-conversations,.cost-content-prds,.cost-content-specs) .ui-table{width:max-content;min-width:0}.cost-content:is(.cost-content-conversations,.cost-content-prds,.cost-content-specs) .ui-table :is(th,td){padding-inline:.7rem}.cost-content-conversations .ui-table :is(th,td):nth-child(2){width:360px;min-width:360px}.cost-content:is(.cost-content-tasks,.cost-content-conversations,.cost-content-prds,.cost-content-specs) .ui-table{table-layout:fixed;width:100%;min-width:0}.cost-content:is(.cost-content-tasks,.cost-content-conversations,.cost-content-prds,.cost-content-specs) .ui-table :is(th,td){min-width:0}.cost-content:is(.cost-content-tasks,.cost-content-conversations,.cost-content-prds,.cost-content-specs) .ui-table :is(th,td):nth-child(2){width:clamp(220px,25vw,360px);min-width:0}.cost-hero{justify-content:space-between;align-items:end;gap:24px;padding:10px 0 18px;display:flex}.cost-hero-description{color:var(--muted);margin:0;font-size:.8rem;line-height:1.45}.cost-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.cost-summary article,.cost-filters,.cost-content,.cost-chart{border:1px solid var(--line);box-shadow:var(--shadow);background:#080d17f2;border-radius:18px}.cost-summary article{background:linear-gradient(135deg,#0a121ffa,#070d17fa);grid-template-rows:auto 1fr auto;gap:14px;min-width:0;min-height:154px;padding:24px 24px 22px;display:grid;position:relative;overflow:hidden}.cost-summary article:before{content:"";background:linear-gradient(90deg,#00b0f0,#00b0f00a);height:4px;position:absolute;inset:0 0 auto}.cost-summary span{color:#7185a1;letter-spacing:.05em;text-transform:uppercase;font-size:.76rem;font-weight:650}.cost-summary strong{color:#f4f8ff;font-variant-numeric:tabular-nums;letter-spacing:-.03em;white-space:nowrap;align-self:end;font-size:clamp(1.65rem,2.2vw,2.35rem);line-height:1}.cost-summary small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}.cost-filters{box-shadow:none;grid-template-columns:minmax(220px,2fr) repeat(5,minmax(120px,1fr));gap:11px;margin:18px 0;padding:14px;display:grid}.cost-filters label{gap:7px;display:grid}.cost-filters label span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.64rem}.cost-filters input,.cost-filters select{border:1px solid var(--line-strong);width:100%;min-height:42px;color:var(--text);background:#08111ef5;border-radius:11px;padding:0 11px}.cost-filters>button{align-self:end}.cost-tabs-bar{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:2px 2px 12px;display:grid}.cost-tabs{flex-wrap:wrap;gap:6px;display:flex;overflow-x:visible}.cost-tabs button{border-radius:999px;flex:none;min-height:44px;padding-inline:10px;font-size:.82rem}.cost-tabs button.is-active{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent)}.cost-tab-export{justify-content:flex-end;display:flex}.cost-tab-export .excel-export-action{color:#042330;background:linear-gradient(135deg,#00b0f0 0%,#72f4fb 100%);border:1px solid #0000;border-radius:999px;gap:6px;min-height:44px;padding:0 10px;font-size:.82rem;font-weight:650}.cost-tab-export .excel-export-action svg{width:14px;height:14px}.cost-tab-export .excel-export-action:hover:not(:disabled){color:#042330;background:linear-gradient(135deg,#00b0f0 0%,#72f4fb 100%);border-color:#72f4fbb8}.cost-tabs button:focus-visible,.cost-tab-export .excel-export-action:focus-visible{outline-offset:2px;outline:3px solid #00b0f0}.cost-run-kind-toolbar{gap:8px;margin:0 0 14px;display:flex}.cost-content .cost-run-kind-toolbar button.is-active{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent)}.cost-content{min-height:360px;padding:14px}.cost-content-overview{box-shadow:none;background:0 0;border:0;padding:0}.cost-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.cost-chart{min-height:270px;padding:20px;overflow:hidden}.cost-chart-trend{order:10;min-height:270px}.cost-chart-phases{order:-1}.cost-chart-model{order:1}.cost-chart header{justify-content:space-between;align-items:start;gap:16px;display:flex}.cost-chart header small{color:#00b0f0;letter-spacing:.12em;font-size:.66rem;font-weight:800}.cost-chart h2{margin:5px 0 0;font-size:1.14rem}.cost-chart header>strong{color:#7890ab;font-size:.76rem;font-weight:600}.cost-line-chart{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.cost-trend-plot{height:155px;margin:18px 12px 0;position:relative}.cost-trend-value{z-index:1;color:#d7eaff;font-variant-numeric:tabular-nums;pointer-events:none;white-space:nowrap;background:#070e1adb;border:1px solid #5ea7ff38;border-radius:6px;padding:2px 5px;font-size:.62rem;font-weight:700;line-height:1.2;position:absolute;transform:translate(-50%,-125%)}.cost-trend-value.is-first{transform:translateY(-125%)}.cost-trend-value.is-last{transform:translate(-100%,-125%)}.cost-trend-days{color:#7890ab;font-variant-numeric:tabular-nums;text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-top:7px;font-size:.61rem;display:grid}.cost-bar-list{gap:15px;margin-top:24px;display:grid}.cost-bar-list>div{grid-template-columns:minmax(80px,130px) 1fr auto;align-items:center;gap:12px;display:grid}.cost-bar-list span,.token-mix span,.phase-strip span{color:#a8b6c8;font-size:.78rem}.cost-bar-list i{background:#94a3b81a;border-radius:9px;height:7px;overflow:hidden}.cost-bar-list b{border-radius:inherit;height:100%;display:block}.cost-bar-list strong,.token-mix strong,.phase-strip strong{color:#e8f0fb;font-size:.8rem}.token-mix{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:25px;display:grid}.token-mix>div,.phase-strip>div{background:#0f1726ad;border:1px solid #94a3b81a;border-radius:13px;grid-template-columns:auto 1fr;gap:8px;padding:14px;display:grid}.token-mix i,.phase-strip i{border-radius:50%;width:9px;height:9px;margin-top:2px}.token-mix strong,.phase-strip strong{grid-column:2;font-size:1.14rem}.phase-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:30px;display:grid}.phase-strip>div{display:block}.phase-name{align-items:center;gap:8px;display:flex}.phase-name i{flex:0 0 9px;margin:0}.phase-name span{color:#c5d2e3;font-size:.76rem;font-weight:650}.phase-metrics{gap:7px;margin:12px 0 0;display:grid}.phase-metrics>div{border-top:1px solid #94a3b81a;gap:3px;padding-top:7px;display:grid}.phase-metrics dt{color:#7890ab;letter-spacing:.04em;text-transform:uppercase;font-size:.58rem}.phase-metrics dd{color:#e8f0fb;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.72rem;font-weight:700;overflow:hidden}.cost-empty{color:var(--muted);text-align:center;padding:55px 0}@media (width<=1180px){.cost-monitor-logo{display:none}.cost-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.cost-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.cost-page{padding:86px 14px 42px}.cost-monitor-nav{justify-content:flex-end;align-items:center;min-height:64px;padding:10px 14px}.cost-monitor-brand,.cost-refresh-action,.cost-filter-action,.cost-locale-action{display:none}.cost-monitor-logo{height:26px;display:block}.cost-back{justify-self:stretch}.cost-nav-actions{box-shadow:none;background:0 0;border:0;margin-left:auto;padding:0;display:flex}.cost-settings-action .cost-nav-settings-popup{width:auto;max-height:calc(100vh - 88px);position:fixed;inset:74px 14px auto;overflow-y:auto}.cost-mobile-settings{border-bottom:1px solid #ffffff1a;gap:12px;padding-bottom:14px;display:grid}.cost-mobile-updated{color:#64748b;font-size:.68rem}.cost-mobile-settings>label{gap:7px;display:grid}.cost-mobile-settings>label span,.cost-mobile-filters>strong{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.67rem}.cost-mobile-settings select{border:1px solid var(--line-strong);min-height:42px;color:var(--text);background:#0a1220;border-radius:11px;padding:0 10px}.cost-mobile-filters{gap:9px;display:grid}.cost-mobile-filters .cost-filters{box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:1fr;margin:0;padding:0}.cost-summary,.cost-chart-grid,.phase-strip{grid-template-columns:1fr 1fr}.cost-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.cost-hero{flex-direction:column;align-items:stretch}.cost-tabs-bar{grid-template-columns:1fr}.cost-tab-export{justify-content:flex-end}}@media (width<=500px){.cost-summary,.cost-chart-grid,.phase-strip,.cost-filters{grid-template-columns:1fr}.cost-nav-actions{grid-template-columns:1fr 1fr}.cost-nav-actions button{grid-column:span 2}}.cost-run-origin{letter-spacing:.02em;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;min-height:25px;padding:3px 9px;font-size:.72rem;font-weight:700;display:inline-flex}.cost-run-origin-prd{color:#d8b4fe;background:#7e22ce2e;border-color:#c084fc8c}.cost-run-origin-spec{color:#99f6e4;background:#0d94882e;border-color:#2dd4bf8c}.cost-run-origin-task{color:#bae6fd;background:#0284c72e;border-color:#38bdf88c}.cost-page.cost-page-embedded{width:100%;margin:0;padding:0}.cost-audit-heading{color:var(--text-primary);margin:2rem 0 .75rem;font-size:1rem}
|