failproofai 1.0.4-beta.8 → 1.0.5-beta.0
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/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/build-manifest.json +5 -5
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- package/.next/standalone/.next/required-server-files.json +1 -1
- package/.next/standalone/.next/server/app/_global-error/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/_global-error/page/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/server/app/_global-error/page.js +2 -2
- package/.next/standalone/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_global-error.html +1 -1
- package/.next/standalone/.next/server/app/_global-error.rsc +7 -7
- package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +7 -7
- package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/server/app/_not-found/page.js +2 -2
- package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_not-found.html +1 -1
- package/.next/standalone/.next/server/app/_not-found.rsc +14 -14
- package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +14 -14
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +13 -13
- package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/api/audit/invite/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/audit/run/route.js +4 -4
- package/.next/standalone/.next/server/app/api/audit/run/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/audit/status/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/auth/login-request/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/auth/login-verify/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/auth/logout/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/auth/status/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/download/[project]/[session]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/download/[project]/[session]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/audit/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/audit/page/server-reference-manifest.json +4 -37
- package/.next/standalone/.next/server/app/audit/page.js +2 -2
- package/.next/standalone/.next/server/app/audit/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/audit/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/index.html +1 -1
- package/.next/standalone/.next/server/app/index.rsc +14 -14
- package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +13 -13
- package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +14 -14
- package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/page/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/server/app/page.js +2 -2
- package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/policies/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/policies/page/server-reference-manifest.json +14 -14
- package/.next/standalone/.next/server/app/policies/page.js +4 -4
- package/.next/standalone/.next/server/app/policies/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/policies/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/project/[name]/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/project/[name]/page/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/server/app/project/[name]/page.js +4 -4
- package/.next/standalone/.next/server/app/project/[name]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/project/[name]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/react-loadable-manifest.json +2 -2
- package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/server-reference-manifest.json +2 -2
- package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js +5 -5
- package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/projects/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/projects/page/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/server/app/projects/page.js +3 -3
- package/.next/standalone/.next/server/app/projects/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/settings/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/settings/page/server-reference-manifest.json +4 -15
- package/.next/standalone/.next/server/app/settings/page.js +4 -4
- package/.next/standalone/.next/server/app/settings/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/chunks/{[externals]__0hmcwgg._.js → [externals]__0-9ti7z._.js} +1 -1
- package/.next/standalone/.next/server/chunks/{[externals]__14b7cc6._.js → [externals]__0u3wrvq._.js} +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-219ec._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__04_h-a5._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__08dchfu._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0o07qi9._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0rv7m0k._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__17g9wh7._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1le9jqc._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1legmza._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1p-qi2t._.js +5 -0
- package/.next/standalone/.next/server/chunks/_0tovk6q._.js +1 -1
- package/.next/standalone/.next/server/chunks/_0trp3yc._.js +1 -1
- package/.next/standalone/.next/server/chunks/{_1_eakl4._.js → _1-akg6w._.js} +2 -2
- package/.next/standalone/.next/server/chunks/_1ek68ln._.js +10 -10
- package/.next/standalone/.next/server/chunks/_1vslkoe._.js +1 -1
- package/.next/standalone/.next/server/chunks/lib_telemetry_ts_0dctyyw._.js +1 -1
- package/.next/standalone/.next/server/chunks/package_json_[json]_cjs_1nxcc4v._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_hooks_fp-home_ts_09kv0bn._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__187jks6._.js → [root-of-the-server]__00-s7h8._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__04px77e._.js → [root-of-the-server]__013jr2b._.js} +3 -3
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0i0l1di._.js → [root-of-the-server]__01wy8d-._.js} +3 -3
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0r3c1_0._.js → [root-of-the-server]__02npjtd._.js} +3 -3
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__1ckpmkk._.js → [root-of-the-server]__0da85px._.js} +3 -3
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__17xnxlx._.js → [root-of-the-server]__0ftmoxc._.js} +3 -3
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0kokc8z._.js → [root-of-the-server]__0n_lxhg._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0oa1lav._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0-4ja6q._.js → [root-of-the-server]__0p-5p8u._.js} +3 -3
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0egr5s1._.js → [root-of-the-server]__0s740oi._.js} +3 -3
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__1fa1jd9._.js → [root-of-the-server]__0x1aj1_._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__1kpd1za._.js → [root-of-the-server]__190won8._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1ctpynv._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1nq7ivq._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__00cr3xu._.js → [root-of-the-server]__1p2otjt._.js} +3 -3
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__00y9ww2._.js → [root-of-the-server]__1sc84bb._.js} +2 -21
- package/.next/standalone/.next/server/chunks/ssr/_08x1r5t._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0s-77v5._.js → _0h_douw._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_00bqkhj._.js → _0u3xxgc._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0zs_4uu._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_1_ozgif._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_1ddpc5g._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_1es2j7i._.js +14 -51
- package/.next/standalone/.next/server/chunks/ssr/{_14c6q09._.js → _1if9ixi._.js} +2 -21
- package/.next/standalone/.next/server/chunks/ssr/{_07t3jol._.js → _1u8-lu2._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_1ylae7o._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_1zopuov._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_policies_page_actions_1sp2-yo.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/app_audit__components_audit-dashboard_tsx_0p9ud47._.js +69 -1
- package/.next/standalone/.next/server/chunks/ssr/app_global-error_tsx_1kp6l3x._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_policies_hooks-client_tsx_19dqvpc._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_settings_settings-client_tsx_20lq-mq._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/lib_openclaw-projects_ts_0qxq3bp._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/node_modules_13n822a._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/node_modules_html-to-image_es_index_1ao30b1.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_hooks_builtin-policies_ts_09j2ndl._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_hooks_fp-config_ts_04t589g._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_hooks_fp-home_ts_0je3xkv._.js +1 -1
- package/.next/standalone/.next/server/middleware-build-manifest.js +5 -5
- package/.next/standalone/.next/server/pages/404.html +1 -1
- package/.next/standalone/.next/server/pages/500.html +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.json +21 -65
- package/.next/standalone/.next/static/chunks/0hw6-c206lsma.js +1 -0
- package/.next/standalone/.next/static/chunks/{2mizt96igig1y.js → 0m9sx3khjrl1q.js} +1 -1
- package/.next/standalone/.next/static/chunks/{1302duobnz07l.js → 0oos8qpc1ugos.js} +1 -1
- package/.next/standalone/.next/static/chunks/0u64yey446k4f.css +1 -0
- package/.next/standalone/.next/static/chunks/{2ukucf6g-kbs5.js → 0unrx9g_x0u7j.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0jpd8dv2vk930.css → 29-iqnp9v_axt.css} +1 -1
- package/.next/standalone/.next/static/chunks/{3uyhmm01g64k4.css → 2k9f4tyv04809.css} +0 -1
- package/.next/standalone/.next/static/chunks/{0vm4wdx3w-2_w.js → 2qjn-leir0x_s.js} +1 -1
- package/.next/standalone/.next/static/chunks/{1chm9piluggc-.js → 2xbxkaszi1xnw.js} +1 -1
- package/.next/standalone/.next/static/chunks/{2n85g-crgcx5j.js → 33umhy-x204qj.js} +2 -2
- package/.next/standalone/.next/static/chunks/3nux7kkrc3eps.js +69 -0
- package/.next/standalone/.next/static/chunks/3qfoeqhy5l10x.js +1 -0
- package/.next/standalone/.next/static/chunks/3zkg2s2vzxc3d.js +1 -0
- package/.next/standalone/.next/static/chunks/{3a4gth64hwtwf.js → 40tpgs4fjct5p.js} +1 -1
- package/.next/standalone/.next/static/chunks/{1_x7pqemw5n_w.js → 40uih96wnkowy.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-3s3c-u_u_l0u9.js → turbopack-3p73obe0xmrxm.js} +1 -1
- package/.next/standalone/.opencode/plugins/failproofai.mjs +27 -51
- package/.next/standalone/app/actions/get-scheduled-audit.ts +0 -5
- package/.next/standalone/app/actions/update-scheduled-audit.ts +57 -18
- package/.next/standalone/app/api/auth/status/route.ts +2 -3
- package/.next/standalone/app/audit/_components/audit-dashboard.tsx +34 -140
- package/.next/standalone/app/audit/_components/audit-poster.tsx +10 -29
- package/.next/standalone/app/audit/_components/come-back-better-section.tsx +1 -6
- package/.next/standalone/app/audit/_components/empty-state.tsx +1 -4
- package/.next/standalone/app/audit/_components/how-to-improve-section.tsx +5 -19
- package/.next/standalone/app/audit/_components/share-templates.ts +44 -110
- package/.next/standalone/app/audit/audit-styles.css +1 -132
- package/.next/standalone/app/settings/page.tsx +1 -1
- package/.next/standalone/app/settings/settings-client.tsx +45 -50
- package/.next/standalone/lib/auth/api-server-client.ts +5 -33
- package/.next/standalone/lib/claude-sessions.ts +27 -101
- package/.next/standalone/lib/codex-sessions.ts +4 -20
- package/.next/standalone/lib/copilot-sessions.ts +1 -32
- package/.next/standalone/lib/cursor-sessions.ts +5 -62
- package/.next/standalone/lib/download-session.ts +13 -58
- package/.next/standalone/lib/openclaw-projects.ts +18 -54
- package/.next/standalone/lib/openclaw-sessions.ts +17 -75
- package/.next/standalone/lib/sqlite-reader.ts +1 -78
- package/.next/standalone/package.json +9 -9
- package/.next/standalone/sdk/python/CHANGELOG.md +32 -9
- package/.next/standalone/sdk/python/failproofai_sdk/_events.py +20 -0
- package/.next/standalone/sdk/python/failproofai_sdk/_redact.py +233 -0
- package/.next/standalone/sdk/python/failproofai_sdk/_writer.py +4 -1
- package/.next/standalone/sdk/python/failproofai_sdk/integrations/llama_index.py +5 -5
- package/.next/standalone/sdk/python/tests/integrations/test_llama_index.py +2 -2
- package/.next/standalone/sdk/python/tests/test_redaction.py +140 -0
- package/.next/standalone/sdk/python/tests/test_sdk.py +87 -0
- package/.next/standalone/sdk/python/tests/test_server_contract.py +60 -0
- package/.next/standalone/sdk/python/tests/test_site_docs.py +2 -2
- package/.next/standalone/server.js +1 -1
- package/bin/failproofai.mjs +1 -1
- package/dist/cli.mjs +664 -2121
- package/dist/worker.mjs +105 -422
- package/lib/auth/api-server-client.ts +5 -33
- package/lib/claude-sessions.ts +27 -101
- package/lib/codex-sessions.ts +4 -20
- package/lib/copilot-sessions.ts +1 -32
- package/lib/cursor-sessions.ts +5 -62
- package/lib/download-session.ts +13 -58
- package/lib/openclaw-projects.ts +18 -54
- package/lib/openclaw-sessions.ts +17 -75
- package/lib/sqlite-reader.ts +1 -78
- package/package.json +9 -9
- package/pi-extension/index.ts +5 -50
- package/src/audit/cache.ts +0 -6
- package/src/audit/cli-adapters/claude.ts +0 -13
- package/src/audit/cli-login.ts +1 -4
- package/src/audit/cli.ts +7 -157
- package/src/audit/harm-report.ts +4 -111
- package/src/audit/index.ts +15 -286
- package/src/audit/machine-store.ts +9 -8
- package/src/audit/redact-example.ts +15 -324
- package/src/audit/report-harm.ts +37 -33
- package/src/audit/report.ts +3 -6
- package/src/audit/schedule-cli.ts +33 -54
- package/src/audit/scoring.ts +0 -49
- package/src/audit/types.ts +0 -52
- package/src/hooks/builtin-policies.ts +2 -67
- package/src/hooks/configure-wizard.ts +0 -55
- package/src/hooks/fp-config.ts +48 -83
- package/src/hooks/fp-home.ts +0 -27
- package/src/hooks/integrations.ts +14 -51
- package/src/hooks/uninstall-cli.ts +2 -17
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0faqz9x._.js +0 -22
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zyc_nm._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__112b4go._.js +0 -24
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1l71g3y._.js +0 -22
- package/.next/standalone/.next/server/chunks/lib_openclaw-projects_ts_0gc-p24._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0n2txhk._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1kaotix._.js +0 -22
- package/.next/standalone/.next/server/chunks/ssr/_04ng_6x._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0l2hi_d._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/app_audit__components_rerun-button_tsx_0blihgw._.js +0 -3
- package/.next/standalone/.next/static/chunks/0igq884ziuv-8.js +0 -1
- package/.next/standalone/.next/static/chunks/349jkb79v5g6z.js +0 -1
- package/.next/standalone/app/actions/get-leaks.ts +0 -104
- package/.next/standalone/app/audit/_components/leak-section.tsx +0 -192
- package/.next/standalone/lib/openclaw-db.ts +0 -271
- package/lib/openclaw-db.ts +0 -271
- package/src/audit/desktop-notify.ts +0 -420
- package/src/audit/leak-fingerprint.ts +0 -198
- package/src/audit/leak-record.ts +0 -248
- package/src/audit/leak-scan.ts +0 -268
- package/src/audit/leak-store.ts +0 -220
- package/src/audit/macos-notifier.ts +0 -298
- package/src/hooks/notice.ts +0 -24
- /package/.next/standalone/.next/static/{DNhaAH8iPGH0tIuxee5_2 → 4_QeL7mSPYsuiSVJmBOTj}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{DNhaAH8iPGH0tIuxee5_2 → 4_QeL7mSPYsuiSVJmBOTj}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/.next/static/{DNhaAH8iPGH0tIuxee5_2 → 4_QeL7mSPYsuiSVJmBOTj}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/1c6aptmytnu6q.js"/><script src="/_next/static/chunks/2yuzx8716maf0.js" async=""></script><script src="/_next/static/chunks/
|
|
1
|
+
<!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/1c6aptmytnu6q.js"/><script src="/_next/static/chunks/2yuzx8716maf0.js" async=""></script><script src="/_next/static/chunks/3i8rg2fv9nd6e.js" async=""></script><script src="/_next/static/chunks/2zafgs90r_leq.js" async=""></script><script src="/_next/static/chunks/turbopack-3p73obe0xmrxm.js" async=""></script><script src="/_next/static/chunks/40uih96wnkowy.js" async=""></script><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/0cz1d0mv5g_q7.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/1c6aptmytnu6q.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/40uih96wnkowy.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/40uih96wnkowy.js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/40uih96wnkowy.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[97367,[\"/_next/static/chunks/40uih96wnkowy.js\"],\"ViewportBoundary\"]\na:I[97367,[\"/_next/static/chunks/40uih96wnkowy.js\"],\"MetadataBoundary\"]\nc:I[53348,[\"/_next/static/chunks/40uih96wnkowy.js\"],\"default\"]\n7:X\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4624]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"4_QeL7mSPYsuiSVJmBOTj\"}\n"])</script><script>self.__next_f.push([1,"7:C\n9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"6:null\nb:[]\n"])</script></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
self.__RSC_SERVER_MANIFEST="{\n \"node\": {\n \"
|
|
1
|
+
self.__RSC_SERVER_MANIFEST="{\n \"node\": {\n \"007fac1ea297f2f27cbd6d8805e3593773cfcd74a7\": {\n \"workers\": {\n \"app/_global-error/page\": {\n \"moduleId\": 39027,\n \"async\": false,\n \"codeHash\": null\n },\n \"app/_not-found/page\": {\n \"moduleId\": 37985,\n \"async\": false,\n \"codeHash\": null\n },\n \"app/audit/page\": {\n \"moduleId\": 99558,\n \"async\": false,\n \"codeHash\": null\n },\n \"app/page\": {\n \"moduleId\": 24190,\n \"async\": false,\n \"codeHash\": null\n },\n \"app/policies/page\": {\n \"moduleId\": 73338,\n \"async\": false,\n \"codeHash\": null\n },\n \"app/project/[name]/page\": {\n \"moduleId\": 165,\n \"async\": false,\n \"codeHash\": null\n },\n \"app/project/[name]/session/[sessionId]/page\": {\n \"moduleId\": 21776,\n \"async\": false,\n \"codeHash\": null\n },\n \"app/projects/page\": {\n \"moduleId\": 26035,\n \"async\": false,\n \"codeHash\": null\n },\n \"app/settings/page\": {\n \"moduleId\": 20213,\n \"async\": false,\n \"codeHash\": null\n }\n },\n \"filename\": \"app/actions/get-telemetry-config.ts\",\n \"exportedName\": \"getTelemetryConfig\"\n },\n \"0097365b303d8246d70b0c7bd69d51d2db4e32ccbb\": {\n \"workers\": {\n \"app/audit/page\": {\n \"moduleId\": 99558,\n \"async\": false,\n \"codeHash\": null\n }\n },\n \"filename\": \"app/actions/get-audit-result.ts\",\n \"exportedName\": \"getAuditResultAction\"\n },\n \"40bac45de691cd45b54f8470483c5556c26b05f130\": {\n \"workers\": {\n \"app/policies/page\": {\n \"moduleId\": 73338,\n \"async\": false,\n \"codeHash\": null\n }\n },\n \"filename\": \"app/actions/get-hook-activity.ts\",\n \"exportedName\": \"getHookActivityAction\"\n },\n \"60432abbdfe23da8f9bc4ce4ec8e78bfd38b3c2a30\": {\n \"workers\": {\n \"app/policies/page\": {\n \"moduleId\": 73338,\n \"async\": false,\n \"codeHash\": null\n },\n \"app/project/[name]/session/[sessionId]/page\": {\n \"moduleId\": 21776,\n \"async\": false,\n \"codeHash\": null\n }\n },\n \"filename\": \"app/actions/get-hook-activity.ts\",\n \"exportedName\": \"searchHookActivityAction\"\n },\n \"0029793c59e16ac037bb692a749175e8c4204ec4c4\": {\n \"workers\": {\n \"app/policies/page\": {\n \"moduleId\": 73338,\n \"async\": false,\n \"codeHash\": null\n }\n },\n \"filename\": \"app/actions/get-active-pauses.ts\",\n \"exportedName\": \"getActivePausesAction\"\n },\n \"00d5e8fde5b0126b0087efe3cd05ba30b4c4c378ec\": {\n \"workers\": {\n \"app/policies/page\": {\n \"moduleId\": 73338,\n \"async\": false,\n \"codeHash\": null\n }\n },\n \"filename\": \"app/actions/get-hooks-config.ts\",\n \"exportedName\": \"getHooksConfigAction\"\n },\n \"60f4ae6ef7c7011c3d0526f99bb9defdfd1a36b629\": {\n \"workers\": {\n \"app/policies/page\": {\n \"moduleId\": 73338,\n \"async\": false,\n \"codeHash\": null\n }\n },\n \"filename\": \"app/actions/update-hooks-config.ts\",\n \"exportedName\": \"toggleCustomPolicyAction\"\n },\n \"009254327180c2a2b3f69ec7008a46e4482b13d2c2\": {\n \"workers\": {\n \"app/policies/page\": {\n \"moduleId\": 73338,\n \"async\": false,\n \"codeHash\": null\n }\n },\n \"filename\": \"app/actions/pack-actions.ts\",\n \"exportedName\": \"addBundledPackWebAction\"\n },\n \"60b2a00e59db0fd4ae72c6138859bbe5503c265add\": {\n \"workers\": {\n \"app/policies/page\": {\n \"moduleId\": 73338,\n \"async\": false,\n \"codeHash\": null\n }\n },\n \"filename\": \"app/actions/pack-actions.ts\",\n \"exportedName\": \"addPackWebAction\"\n },\n \"40ae7d17c612381936ca6a465e3007c1eda4901d16\": {\n \"workers\": {\n \"app/policies/page\": {\n \"moduleId\": 73338,\n \"async\": false,\n \"codeHash\": null\n }\n },\n \"filename\": \"app/actions/pack-actions.ts\",\n \"exportedName\": \"previewPackWebAction\"\n },\n \"40f4876acc12024c705edf0e0bdb884d27aadca4f9\": {\n \"workers\": {\n \"app/policies/page\": {\n \"moduleId\": 73338,\n \"async\": false,\n \"codeHash\": null\n }\n },\n \"filename\": \"app/actions/pack-actions.ts\",\n \"exportedName\": \"removePackWebAction\"\n },\n \"7084dd1411c8cbb7a4d8278cffed97ce34fa1889e6\": {\n \"workers\": {\n \"app/policies/page\": {\n \"moduleId\": 73338,\n \"async\": false,\n \"codeHash\": null\n }\n },\n \"filename\": \"app/actions/pack-actions.ts\",\n \"exportedName\": \"togglePackPolicyAction\"\n },\n \"60a4349cb58f6b6c8b8fce708f420b49deb023cd1c\": {\n \"workers\": {\n \"app/policies/page\": {\n \"moduleId\": 73338,\n \"async\": false,\n \"codeHash\": null\n }\n },\n \"filename\": \"app/actions/install-hooks-web.ts\",\n \"exportedName\": \"installHooksWebAction\"\n },\n \"60a81e941aef96e97c1258bc2254e912d8f2d75544\": {\n \"workers\": {\n \"app/policies/page\": {\n \"moduleId\": 73338,\n \"async\": false,\n \"codeHash\": null\n }\n },\n \"filename\": \"app/actions/install-hooks-web.ts\",\n \"exportedName\": \"removeHooksWebAction\"\n },\n \"604a2c310533490e6700dedee6c801159f46fc21c4\": {\n \"workers\": {\n \"app/policies/page\": {\n \"moduleId\": 73338,\n \"async\": false,\n \"codeHash\": null\n }\n },\n \"filename\": \"app/actions/update-policy-params.ts\",\n \"exportedName\": \"updatePolicyParamsAction\"\n },\n \"00d297e7b56e7f7311df5a004ce424932cfddf3cc2\": {\n \"workers\": {\n \"app/settings/page\": {\n \"moduleId\": 20213,\n \"async\": false,\n \"codeHash\": null\n }\n },\n \"filename\": \"app/actions/get-scheduled-audit.ts\",\n \"exportedName\": \"getScheduledAuditAction\"\n },\n \"403cb3915c0c10dd0b97e45771542d2f7692410108\": {\n \"workers\": {\n \"app/settings/page\": {\n \"moduleId\": 20213,\n \"async\": false,\n \"codeHash\": null\n }\n },\n \"filename\": \"app/actions/update-scheduled-audit.ts\",\n \"exportedName\": \"setAutoAuditAction\"\n },\n \"401ffcccd6c2e3c3ff322e57836e1f57cc02afdf9d\": {\n \"workers\": {\n \"app/settings/page\": {\n \"moduleId\": 20213,\n \"async\": false,\n \"codeHash\": null\n }\n },\n \"filename\": \"app/actions/update-scheduled-audit.ts\",\n \"exportedName\": \"setAuditIntervalAction\"\n }\n },\n \"edge\": {},\n \"encryptionKey\": \"KtGXlsUogUhYcTNWe5IkLLlmjYFAbugbx8tLyvgc/8E=\"\n}"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"node": {
|
|
3
|
-
"
|
|
3
|
+
"007fac1ea297f2f27cbd6d8805e3593773cfcd74a7": {
|
|
4
4
|
"workers": {
|
|
5
5
|
"app/_global-error/page": {
|
|
6
6
|
"moduleId": 39027,
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"codeHash": null
|
|
14
14
|
},
|
|
15
15
|
"app/audit/page": {
|
|
16
|
-
"moduleId":
|
|
16
|
+
"moduleId": 99558,
|
|
17
17
|
"async": false,
|
|
18
18
|
"codeHash": null
|
|
19
19
|
},
|
|
@@ -51,10 +51,10 @@
|
|
|
51
51
|
"filename": "app/actions/get-telemetry-config.ts",
|
|
52
52
|
"exportedName": "getTelemetryConfig"
|
|
53
53
|
},
|
|
54
|
-
"
|
|
54
|
+
"0097365b303d8246d70b0c7bd69d51d2db4e32ccbb": {
|
|
55
55
|
"workers": {
|
|
56
56
|
"app/audit/page": {
|
|
57
|
-
"moduleId":
|
|
57
|
+
"moduleId": 99558,
|
|
58
58
|
"async": false,
|
|
59
59
|
"codeHash": null
|
|
60
60
|
}
|
|
@@ -62,40 +62,7 @@
|
|
|
62
62
|
"filename": "app/actions/get-audit-result.ts",
|
|
63
63
|
"exportedName": "getAuditResultAction"
|
|
64
64
|
},
|
|
65
|
-
"
|
|
66
|
-
"workers": {
|
|
67
|
-
"app/audit/page": {
|
|
68
|
-
"moduleId": 74863,
|
|
69
|
-
"async": false,
|
|
70
|
-
"codeHash": null
|
|
71
|
-
}
|
|
72
|
-
},
|
|
73
|
-
"filename": "app/actions/get-leaks.ts",
|
|
74
|
-
"exportedName": "dismissLeakAction"
|
|
75
|
-
},
|
|
76
|
-
"007989744ae84ac934dad4074b83cfd1e3183b9c2c": {
|
|
77
|
-
"workers": {
|
|
78
|
-
"app/audit/page": {
|
|
79
|
-
"moduleId": 74863,
|
|
80
|
-
"async": false,
|
|
81
|
-
"codeHash": null
|
|
82
|
-
}
|
|
83
|
-
},
|
|
84
|
-
"filename": "app/actions/get-leaks.ts",
|
|
85
|
-
"exportedName": "getLeaksAction"
|
|
86
|
-
},
|
|
87
|
-
"40d7b39f399bb129e558fe3910ed9f2db7c0fd9a3f": {
|
|
88
|
-
"workers": {
|
|
89
|
-
"app/audit/page": {
|
|
90
|
-
"moduleId": 74863,
|
|
91
|
-
"async": false,
|
|
92
|
-
"codeHash": null
|
|
93
|
-
}
|
|
94
|
-
},
|
|
95
|
-
"filename": "app/actions/get-leaks.ts",
|
|
96
|
-
"exportedName": "setLeakNotifyAction"
|
|
97
|
-
},
|
|
98
|
-
"4071feb1420bce0d6dc75844a645a7f9dcad5dba45": {
|
|
65
|
+
"40bac45de691cd45b54f8470483c5556c26b05f130": {
|
|
99
66
|
"workers": {
|
|
100
67
|
"app/policies/page": {
|
|
101
68
|
"moduleId": 73338,
|
|
@@ -106,7 +73,7 @@
|
|
|
106
73
|
"filename": "app/actions/get-hook-activity.ts",
|
|
107
74
|
"exportedName": "getHookActivityAction"
|
|
108
75
|
},
|
|
109
|
-
"
|
|
76
|
+
"60432abbdfe23da8f9bc4ce4ec8e78bfd38b3c2a30": {
|
|
110
77
|
"workers": {
|
|
111
78
|
"app/policies/page": {
|
|
112
79
|
"moduleId": 73338,
|
|
@@ -122,7 +89,7 @@
|
|
|
122
89
|
"filename": "app/actions/get-hook-activity.ts",
|
|
123
90
|
"exportedName": "searchHookActivityAction"
|
|
124
91
|
},
|
|
125
|
-
"
|
|
92
|
+
"0029793c59e16ac037bb692a749175e8c4204ec4c4": {
|
|
126
93
|
"workers": {
|
|
127
94
|
"app/policies/page": {
|
|
128
95
|
"moduleId": 73338,
|
|
@@ -133,7 +100,7 @@
|
|
|
133
100
|
"filename": "app/actions/get-active-pauses.ts",
|
|
134
101
|
"exportedName": "getActivePausesAction"
|
|
135
102
|
},
|
|
136
|
-
"
|
|
103
|
+
"00d5e8fde5b0126b0087efe3cd05ba30b4c4c378ec": {
|
|
137
104
|
"workers": {
|
|
138
105
|
"app/policies/page": {
|
|
139
106
|
"moduleId": 73338,
|
|
@@ -144,7 +111,7 @@
|
|
|
144
111
|
"filename": "app/actions/get-hooks-config.ts",
|
|
145
112
|
"exportedName": "getHooksConfigAction"
|
|
146
113
|
},
|
|
147
|
-
"
|
|
114
|
+
"60f4ae6ef7c7011c3d0526f99bb9defdfd1a36b629": {
|
|
148
115
|
"workers": {
|
|
149
116
|
"app/policies/page": {
|
|
150
117
|
"moduleId": 73338,
|
|
@@ -155,7 +122,7 @@
|
|
|
155
122
|
"filename": "app/actions/update-hooks-config.ts",
|
|
156
123
|
"exportedName": "toggleCustomPolicyAction"
|
|
157
124
|
},
|
|
158
|
-
"
|
|
125
|
+
"009254327180c2a2b3f69ec7008a46e4482b13d2c2": {
|
|
159
126
|
"workers": {
|
|
160
127
|
"app/policies/page": {
|
|
161
128
|
"moduleId": 73338,
|
|
@@ -166,7 +133,7 @@
|
|
|
166
133
|
"filename": "app/actions/pack-actions.ts",
|
|
167
134
|
"exportedName": "addBundledPackWebAction"
|
|
168
135
|
},
|
|
169
|
-
"
|
|
136
|
+
"60b2a00e59db0fd4ae72c6138859bbe5503c265add": {
|
|
170
137
|
"workers": {
|
|
171
138
|
"app/policies/page": {
|
|
172
139
|
"moduleId": 73338,
|
|
@@ -177,7 +144,7 @@
|
|
|
177
144
|
"filename": "app/actions/pack-actions.ts",
|
|
178
145
|
"exportedName": "addPackWebAction"
|
|
179
146
|
},
|
|
180
|
-
"
|
|
147
|
+
"40ae7d17c612381936ca6a465e3007c1eda4901d16": {
|
|
181
148
|
"workers": {
|
|
182
149
|
"app/policies/page": {
|
|
183
150
|
"moduleId": 73338,
|
|
@@ -188,7 +155,7 @@
|
|
|
188
155
|
"filename": "app/actions/pack-actions.ts",
|
|
189
156
|
"exportedName": "previewPackWebAction"
|
|
190
157
|
},
|
|
191
|
-
"
|
|
158
|
+
"40f4876acc12024c705edf0e0bdb884d27aadca4f9": {
|
|
192
159
|
"workers": {
|
|
193
160
|
"app/policies/page": {
|
|
194
161
|
"moduleId": 73338,
|
|
@@ -199,7 +166,7 @@
|
|
|
199
166
|
"filename": "app/actions/pack-actions.ts",
|
|
200
167
|
"exportedName": "removePackWebAction"
|
|
201
168
|
},
|
|
202
|
-
"
|
|
169
|
+
"7084dd1411c8cbb7a4d8278cffed97ce34fa1889e6": {
|
|
203
170
|
"workers": {
|
|
204
171
|
"app/policies/page": {
|
|
205
172
|
"moduleId": 73338,
|
|
@@ -210,7 +177,7 @@
|
|
|
210
177
|
"filename": "app/actions/pack-actions.ts",
|
|
211
178
|
"exportedName": "togglePackPolicyAction"
|
|
212
179
|
},
|
|
213
|
-
"
|
|
180
|
+
"60a4349cb58f6b6c8b8fce708f420b49deb023cd1c": {
|
|
214
181
|
"workers": {
|
|
215
182
|
"app/policies/page": {
|
|
216
183
|
"moduleId": 73338,
|
|
@@ -221,7 +188,7 @@
|
|
|
221
188
|
"filename": "app/actions/install-hooks-web.ts",
|
|
222
189
|
"exportedName": "installHooksWebAction"
|
|
223
190
|
},
|
|
224
|
-
"
|
|
191
|
+
"60a81e941aef96e97c1258bc2254e912d8f2d75544": {
|
|
225
192
|
"workers": {
|
|
226
193
|
"app/policies/page": {
|
|
227
194
|
"moduleId": 73338,
|
|
@@ -232,7 +199,7 @@
|
|
|
232
199
|
"filename": "app/actions/install-hooks-web.ts",
|
|
233
200
|
"exportedName": "removeHooksWebAction"
|
|
234
201
|
},
|
|
235
|
-
"
|
|
202
|
+
"604a2c310533490e6700dedee6c801159f46fc21c4": {
|
|
236
203
|
"workers": {
|
|
237
204
|
"app/policies/page": {
|
|
238
205
|
"moduleId": 73338,
|
|
@@ -243,7 +210,7 @@
|
|
|
243
210
|
"filename": "app/actions/update-policy-params.ts",
|
|
244
211
|
"exportedName": "updatePolicyParamsAction"
|
|
245
212
|
},
|
|
246
|
-
"
|
|
213
|
+
"00d297e7b56e7f7311df5a004ce424932cfddf3cc2": {
|
|
247
214
|
"workers": {
|
|
248
215
|
"app/settings/page": {
|
|
249
216
|
"moduleId": 20213,
|
|
@@ -254,7 +221,7 @@
|
|
|
254
221
|
"filename": "app/actions/get-scheduled-audit.ts",
|
|
255
222
|
"exportedName": "getScheduledAuditAction"
|
|
256
223
|
},
|
|
257
|
-
"
|
|
224
|
+
"403cb3915c0c10dd0b97e45771542d2f7692410108": {
|
|
258
225
|
"workers": {
|
|
259
226
|
"app/settings/page": {
|
|
260
227
|
"moduleId": 20213,
|
|
@@ -265,18 +232,7 @@
|
|
|
265
232
|
"filename": "app/actions/update-scheduled-audit.ts",
|
|
266
233
|
"exportedName": "setAutoAuditAction"
|
|
267
234
|
},
|
|
268
|
-
"
|
|
269
|
-
"workers": {
|
|
270
|
-
"app/settings/page": {
|
|
271
|
-
"moduleId": 20213,
|
|
272
|
-
"async": false,
|
|
273
|
-
"codeHash": null
|
|
274
|
-
}
|
|
275
|
-
},
|
|
276
|
-
"filename": "app/actions/update-scheduled-audit.ts",
|
|
277
|
-
"exportedName": "setAuditNotifyAction"
|
|
278
|
-
},
|
|
279
|
-
"405d922211894c9e4ef994cbad770a83a9eff5f462": {
|
|
235
|
+
"401ffcccd6c2e3c3ff322e57836e1f57cc02afdf9d": {
|
|
280
236
|
"workers": {
|
|
281
237
|
"app/settings/page": {
|
|
282
238
|
"moduleId": 20213,
|
|
@@ -289,5 +245,5 @@
|
|
|
289
245
|
}
|
|
290
246
|
},
|
|
291
247
|
"edge": {},
|
|
292
|
-
"encryptionKey": "
|
|
248
|
+
"encryptionKey": "KtGXlsUogUhYcTNWe5IkLLlmjYFAbugbx8tLyvgc/8E="
|
|
293
249
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,64237,e=>{"use strict";var t=e.i(43476),a=e.i(71645),s=e.i(12344),n=e.i(29054);let i=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;function r(e){if((0,n.isAbortError)(e))return"request timed out. check your network and try again.";let t=e instanceof Error?e.message:String(e);return`network error: ${t}`}e.s(["AuthDialog",0,function({open:e,headline:l="where to route the reminder?",subhead:o="we'll send a one-time code to confirm.",onClose:c,onAuthed:d,source:u="unknown"}){let{capture:h}=(0,s.usePostHog)(),[m,f]=(0,a.useState)({kind:"email",error:null}),[b,p]=(0,a.useState)(!1),v=(0,a.useRef)(!1),x=(0,a.useRef)(null),g=(0,a.useRef)(null);(0,a.useEffect)(()=>{e&&(f({kind:"email",error:null}),p(!1),v.current=!1,h("audit_auth_dialog_opened",{source:u}))},[h,e,u]);let y=(0,a.useRef)(!1);(0,a.useEffect)(()=>{if(e){y.current=!0;return}y.current&&!v.current&&h("audit_auth_dialog_dismissed",{source:u,step:m.kind}),y.current=!1},[h,e,u,m.kind]),(0,a.useEffect)(()=>{if(!e)return;let t=setTimeout(()=>{"email"===m.kind?x.current?.focus():"code"===m.kind&&g.current?.focus()},50);return()=>clearTimeout(t)},[e,m.kind]),(0,a.useEffect)(()=>{if(!e)return;let t=e=>{"Escape"!==e.key||b||c()};return window.addEventListener("keydown",t),()=>window.removeEventListener("keydown",t)},[e,b,c]);let w="code"===m.kind&&m.resendIn>0;(0,a.useEffect)(()=>{if(!w)return;let e=setInterval(()=>{f(e=>"code"===e.kind?{...e,resendIn:Math.max(0,e.resendIn-1)}:e)},1e3);return()=>clearInterval(e)},[w]);let j=(0,a.useCallback)(async(e,t={})=>{let{isResend:a=!1}=t,s=e=>{a?f(t=>"code"===t.kind?{...t,error:e}:t):f({kind:"email",error:e})};p(!0);try{let t=await (0,n.fetchWithTimeout)("/api/auth/login-request",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({email:e})}),a=await t.json().catch(()=>({}));if(!t.ok){let e=a.message??"could not send code.";"rate_limited"===a.code&&void 0!==a.retry_after_secs?e=`too many tries. wait ${a.retry_after_secs}s and try again.`:"upstream_unreachable"===a.code&&(e="api-server unreachable. check your network."),s(e);return}f({kind:"code",email:e,error:null,expiresIn:a.expires_in??600,resendIn:a.resend_available_in??30})}catch(e){s(r(e))}finally{p(!1)}},[]),k=(0,a.useCallback)(async(e,t)=>{p(!0);try{let a=await (0,n.fetchWithTimeout)("/api/auth/login-verify",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({email:e,code:t})}),s=await a.json().catch(()=>({}));if(!a.ok||!s.authenticated||!s.user){let e=s.message??"invalid code.";"invalid_code"===s.code&&(e="wrong code, or it expired. try again."),f(t=>"code"===t.kind?{...t,error:e}:t);return}v.current=!0,h("audit_auth_dialog_succeeded",{source:u}),f({kind:"done",user:s.user}),d(s.user)}catch(t){let e=r(t);f(t=>"code"===t.kind?{...t,error:e}:t)}finally{p(!1)}},[h,d,u]),N=(0,a.useCallback)(async e=>{if(e.preventDefault(),b||"email"!==m.kind)return;let t=String(new FormData(e.currentTarget).get("email")??"").trim().toLowerCase();i.test(t)?await j(t):f({kind:"email",error:"that doesn't look like an email."})},[b,m,j]),S=(0,a.useCallback)(async e=>{if(e.preventDefault(),b||"code"!==m.kind)return;let t=String(new FormData(e.currentTarget).get("code")??"").trim();t.length<4||t.length>12?f(e=>"code"===e.kind?{...e,error:"code is 4–12 characters."}:e):await k(m.email,t)},[b,m,k]),C=(0,a.useCallback)(async()=>{"code"!==m.kind||m.resendIn>0||b||await j(m.email,{isResend:!0})},[m,b,j]);return e?(0,t.jsx)("div",{className:"auth-dialog-backdrop",role:"dialog","aria-modal":"true","aria-labelledby":"auth-dialog-title",onClick:e=>{b||e.target!==e.currentTarget||c()},children:(0,t.jsxs)("div",{className:"auth-dialog",children:[(0,t.jsx)("button",{type:"button",className:"auth-close",onClick:c,disabled:b,"aria-label":"close",children:"×"}),(0,t.jsx)("h2",{id:"auth-dialog-title",className:"auth-headline",children:l}),"email"===m.kind&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("p",{className:"auth-sub",children:o}),(0,t.jsxs)("form",{onSubmit:N,className:"auth-form",children:[(0,t.jsx)("input",{ref:x,id:"auth-dialog-email",name:"email",type:"email",autoComplete:"email",inputMode:"email",spellCheck:!1,placeholder:"you@yourdomain.com",disabled:b,className:"auth-input",required:!0}),m.error&&(0,t.jsx)("div",{className:"auth-error",children:m.error}),(0,t.jsxs)("div",{className:"auth-actions",children:[(0,t.jsx)("button",{type:"submit",className:"auth-btn primary",disabled:b,children:b?"sending…":"send code"}),(0,t.jsx)("button",{type:"button",className:"auth-btn",onClick:c,disabled:b,children:"cancel"})]})]})]}),"code"===m.kind&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("p",{className:"auth-sub",children:["code sent to ",(0,t.jsx)("span",{className:"auth-email",children:m.email}),". expires in ",Math.ceil(m.expiresIn/60)," min."]}),(0,t.jsxs)("form",{onSubmit:S,className:"auth-form",children:[(0,t.jsx)("input",{ref:g,id:"auth-dialog-code",name:"code",type:"text",inputMode:"numeric",autoComplete:"one-time-code",spellCheck:!1,placeholder:"123456",disabled:b,className:"auth-input auth-input-code",maxLength:12,required:!0}),m.error&&(0,t.jsx)("div",{className:"auth-error",children:m.error}),(0,t.jsxs)("div",{className:"auth-actions",children:[(0,t.jsx)("button",{type:"submit",className:"auth-btn primary",disabled:b,children:b?"verifying…":"verify"}),(0,t.jsx)("button",{type:"button",className:"auth-btn",onClick:C,disabled:b||m.resendIn>0,children:m.resendIn>0?`resend in ${m.resendIn}s`:"resend code"})]}),(0,t.jsx)("button",{type:"button",className:"auth-back",onClick:()=>f({kind:"email",error:null}),disabled:b,children:"← use a different email"})]})]}),"done"===m.kind&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("p",{className:"auth-sub",children:[(0,t.jsx)("span",{className:"auth-ok",children:"✓"})," signed in as"," ",(0,t.jsx)("span",{className:"auth-email",children:m.user.email}),"."]}),(0,t.jsx)("div",{className:"auth-actions",children:(0,t.jsx)("button",{type:"button",className:"auth-btn primary",onClick:c,children:"continue"})})]})]})}):null}])},86616,e=>{"use strict";var t=e.i(29054);class a extends Error{kind;constructor(e,t){super(t),this.kind=e,this.name="RerunError"}}async function s(e){try{let s=await (0,t.fetchWithTimeout)("/api/audit/run",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({cli:e.cli.length>0?e.cli:void 0,since:"all"===e.since?void 0:e.since,noCache:!!e.noCache||void 0})});if(!s.ok&&409!==s.status){let e=await s.text().catch(()=>"");throw console.error("audit run failed:",s.status,e),new a("post_failed",`audit run failed (${s.status})`)}}catch(e){if(e instanceof a)throw e;throw console.error("audit run request failed:",e),new a((0,t.isAbortError)(e)?"timeout":"network","audit run request failed")}let s=0;for(;;){await new Promise(e=>setTimeout(e,1e3));let e=null;try{let a=await (0,t.fetchWithTimeout)("/api/audit/status",{cache:"no-store"});a.ok&&(e=await a.json())}catch{}if(null===e){if(++s>=10)throw new a("network","audit status poll lost the server");continue}if(s=0,!e.running){if(e.error)throw new a("post_failed",e.error);return}}}e.s(["RerunError",0,a,"triggerRun",0,s])},93237,e=>{"use strict";var t=e.i(43476),a=e.i(71645),s=e.i(95187);let n=(0,s.createServerReference)("00d297e7b56e7f7311df5a004ce424932cfddf3cc2",s.callServer,void 0,s.findSourceMapURL,"getScheduledAuditAction"),i=(0,s.createServerReference)("403cb3915c0c10dd0b97e45771542d2f7692410108",s.callServer,void 0,s.findSourceMapURL,"setAutoAuditAction"),r=(0,s.createServerReference)("401ffcccd6c2e3c3ff322e57836e1f57cc02afdf9d",s.callServer,void 0,s.findSourceMapURL,"setAuditIntervalAction");var l=e.i(86616),o=e.i(64237),c=e.i(55574),d=e.i(34713);function u(e){return new Date(e).toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function h(e,t){let a=e-t;if(a<=0)return"now";let s=Math.floor(a/864e5),n=Math.floor(a%864e5/36e5);return s>0?n>0?`${s}d ${n}h`:`${s}d`:n>0?`${n}h`:`${Math.max(1,Math.floor(a/6e4))}m`}function m(e){return e.toLocaleString("en-US")}function f({label:e,value:a,sub:s,tone:n}){return(0,t.jsxs)("div",{className:"set-stat",children:[(0,t.jsx)("div",{className:"set-stat-label",children:e}),(0,t.jsx)("div",{className:`set-stat-value${n?` ${n}`:""}`,children:a}),(0,t.jsx)("div",{className:"set-stat-sub",children:s??" "})]})}function b({lastRunAtMs:e,nextDueAtMs:a,now:s}){if(null==e||null==a||a<=e)return null;let n=Math.min(100,Math.max(0,(s-e)/(a-e)*100));return(0,t.jsxs)("div",{className:"tape","aria-hidden":"true",children:[(0,t.jsxs)("div",{className:"tape-rail",children:[(0,t.jsx)("div",{className:"tape-fill",style:{width:`${n}%`}}),(0,t.jsx)("div",{className:"tape-now",style:{left:`${n}%`}})]}),(0,t.jsxs)("div",{className:"tape-ends",children:[(0,t.jsxs)("span",{children:["last scan · ",u(e)]}),(0,t.jsxs)("span",{className:"tape-next",children:["next · ",h(a,s)]})]})]})}function p({enabled:e,onChange:a,disabled:s,label:n}){return(0,t.jsx)("button",{type:"button",role:"switch","aria-checked":e,"aria-label":n,disabled:s,onClick:a,className:"sw","data-on":e?"true":"false",children:(0,t.jsx)("span",{className:"sw-knob"})})}let v=[{label:"reads",body:"every session transcript on disk — your prompts, the files your agents read and wrote, and command output."},{label:"runs",body:"entirely on this machine. the transcripts never leave it."},{label:"sends",body:"counts, redacted examples, and this machine's name — and only when a scan finds something harmful."}];e.s(["default",0,function({initial:e}){let[s,x]=(0,a.useState)(e),[g,y]=(0,a.useState)(e?.auto??!1),[w,j]=(0,a.useState)(e?.intervalDays??7),[k,N]=(0,a.useState)(!1),[S,C]=(0,a.useState)(!1),[M,$]=(0,a.useState)(!1),[A,E]=(0,a.useState)(null===e),[D,R]=(0,a.useState)(0),_=(0,a.useRef)(!0),T=(0,a.useRef)(null!==e),I=(0,a.useCallback)(async()=>{try{let e=await n();if(!_.current)return;x(e),T.current=!0,y(e.auto),j(e.intervalDays),R(Date.now()),E(!1)}catch{_.current&&!T.current&&E(!0)}},[]);(0,a.useEffect)(()=>(_.current=!0,I(),()=>{_.current=!1}),[I]),(0,a.useEffect)(()=>{let e=()=>void I();return window.addEventListener("focus",e),document.addEventListener("visibilitychange",e),()=>{window.removeEventListener("focus",e),document.removeEventListener("visibilitychange",e)}},[I]);let L=s?.signedInAs??null,F=s?.daemon==="running",O=s?.daemon==="unsupported-platform",P=s?.schedule??null,q=s?.lastScan??null,U=P?.lastExitCode!=null&&0!==P.lastExitCode&&75!==P.lastExitCode,W=(0,a.useCallback)(async()=>{N(!0);try{let e=await i(!0);if(!e.ok){if(y(!1),"unreachable"===e.reason)return void(0,c.toast)("could not reach the server. check your connection and try again.");await I(),$(!0),(0,c.toast)("that sign-in expired. one more code and it's on.");return}y(e.auto),(0,c.toast)("scheduled audits on."),await I()}catch{y(!1),(0,c.toast)("could not turn that on.")}finally{N(!1)}},[I]),B=(0,a.useCallback)(async()=>{if(g){N(!0);try{let e=await i(!1);e.ok&&y(e.auto),(0,c.toast)("scheduled audits off."),await I()}catch{(0,c.toast)("could not turn that off.")}finally{N(!1)}return}L?await W():$(!0)},[g,W,I,L]),J=(0,a.useCallback)(async e=>{N(!0);try{let t=await r(e);j(t.intervalDays),x(e=>e?{...e,intervalDays:t.intervalDays}:e),(0,c.toast)(`scanning every ${t.intervalDays} day${1===t.intervalDays?"":"s"}.`)}catch{j(s?.intervalDays??7),(0,c.toast)("could not save that.")}finally{N(!1)}},[s?.intervalDays]),K=(0,a.useCallback)(async()=>{N(!0);try{await fetch("/api/auth/logout",{method:"POST"}),(0,c.toast)("signed out. scans continue; digests pause."),await I()}catch{(0,c.toast)("could not sign out.")}finally{N(!1)}},[I]),H=(0,a.useCallback)(async()=>{if(!S){C(!0);try{await (0,l.triggerRun)({cli:[],since:"all",noCache:!1}),(0,c.toast)("scan complete."),await I()}catch(e){(0,c.toast)(e instanceof l.RerunError&&"timeout"===e.kind?"the scan is taking a while — it will finish in the background.":"the scan could not be completed.")}finally{C(!1)}}},[I,S]),z=(0,a.useCallback)(async e=>{$(!1),await I(),await W()},[W,I]),G=s?F?{value:"running",sub:null!=s.daemonStartedAtMs&&D>0?`up ${function(e){let t=Math.floor(e/864e5);if(t>0)return`${t}d`;let a=Math.floor(e/36e5);return a>0?`${a}h`:`${Math.max(1,Math.floor(e/6e4))}m`}(Math.max(0,D-s.daemonStartedAtMs))}`:"",tone:"ok"}:O?{value:"unavailable",sub:"not on this platform"}:"not-installed"===s.daemon?{value:"not installed",sub:"run failproofai config",tone:"warn"}:"unknown"===s.daemon?{value:"unknown",sub:"could not read it"}:{value:"stopped",sub:"run failproofai config",tone:"warn"}:{value:"…",sub:"reading"},Q=g?P?.nextDueAtMs==null?{value:"pending",sub:"after the next scan"}:{value:D>0?h(P.nextDueAtMs,D):"—",sub:u(P.nextDueAtMs)}:{value:"off",sub:"nothing scheduled"},V=q?{value:(0,d.formatRelativeTime)(Date.parse(q.finishedAt)),sub:null!=q.sessionsScanned?`${m(q.sessionsScanned)} sessions`:"scanned"}:{value:"none yet",sub:"run one below"},X=q?null==q.findings?{value:"—",sub:"unreadable"}:{value:m(q.findings),sub:"this scan",...q.findings>0?{tone:"warn"}:{}}:{value:"—",sub:"no scan yet"};return(0,t.jsxs)("main",{className:"report",children:[(0,t.jsxs)("section",{className:"section set-sec",children:[(0,t.jsxs)("div",{className:"set-mast",children:[(0,t.jsx)("h1",{className:"set-title",children:"settings"}),(0,t.jsx)("p",{className:"set-lede",children:"keeping watch, so you don't have to."})]}),A?(0,t.jsx)("div",{className:"set-console",children:(0,t.jsx)("div",{className:"set-cell",children:(0,t.jsxs)("p",{className:"set-warn",children:["could not read this machine's settings. check that the dashboard can reach ",(0,t.jsx)("code",{children:"~/.failproofai/config.json"}),"."]})})}):(0,t.jsxs)("div",{className:"set-console",children:[(0,t.jsxs)("div",{className:"set-stats",children:[(0,t.jsx)(f,{label:"daemon",...G}),(0,t.jsx)(f,{label:"next scan",...Q}),(0,t.jsx)(f,{label:"last scan",...V}),(0,t.jsx)(f,{label:"findings",...X})]}),(0,t.jsxs)("div",{className:"set-cols",children:[(0,t.jsxs)("div",{className:"set-cell set-config",children:[(0,t.jsx)("h2",{className:"set-cell-title",children:"scheduled audit"}),(0,t.jsxs)("div",{className:"set-row set-row-main",children:[(0,t.jsx)(p,{enabled:g,disabled:k||null===s,onChange:()=>void B(),label:g?"turn off scheduled audits":"turn on scheduled audits"}),(0,t.jsxs)("div",{className:"set-row-copy",children:[(0,t.jsx)("span",{className:"set-strong",children:g?"scanning on a schedule.":"scan on a schedule."}),(0,t.jsx)("span",{className:"set-dim",children:g?"you'll get an email only when a scan finds something.":"off. nothing runs and nothing is sent."})]})]}),(0,t.jsxs)("div",{className:"set-row set-row-interval",children:[(0,t.jsx)("span",{className:"set-dim",children:"scan every"}),(0,t.jsx)("input",{type:"number",className:"set-num",min:1,max:90,value:w,disabled:k||null===s,"aria-label":"days between scheduled scans",onChange:e=>j(Number(e.target.value)),onBlur:e=>{let t=Number(e.target.value);Number.isFinite(t)?t!==s?.intervalDays&&J(t):j(s?.intervalDays??7)}}),(0,t.jsx)("span",{className:"set-dim",children:"days"}),(0,t.jsxs)("span",{className:"set-hint",children:[1,"–",90]})]}),(0,t.jsx)("div",{className:"set-rule"}),(0,t.jsx)("div",{className:"set-row set-row-identity",children:L?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"set-dim",children:"reports go to"}),(0,t.jsx)("span",{className:"set-email",children:L.email}),(0,t.jsx)("button",{type:"button",className:"set-link",disabled:k,onClick:()=>void K(),children:"sign out"})]}):g?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"set-warn",children:"signed out — scans continue, digests are paused."}),(0,t.jsx)("button",{type:"button",className:"set-link",disabled:k,onClick:()=>$(!0),children:"sign in to resume"})]}):(0,t.jsx)("span",{className:"set-dim",children:"turning this on asks for an email, so there is somewhere to send the report."})}),g&&s&&!F&&(0,t.jsx)("p",{className:"set-warn",children:O?"the background service isn't available on this platform, so scheduled scans can't run here. you can still run one now.":"not-installed"===s.daemon?"the background service isn't installed, so nothing will run on the timer. install it with `failproofai config`.":"the background service is stopped, so nothing will run until it starts. repair it with `failproofai config`."}),U&&(0,t.jsxs)("p",{className:"set-warn",children:["the last scheduled scan exited ",P?.lastExitCode,". the next one will still run."]}),(0,t.jsx)("div",{className:"set-actions",children:(0,t.jsx)("button",{type:"button",className:"btn btn-press",disabled:S,onClick:()=>void H(),children:S?"[ scanning… ]":"[ run a scan now ]"})})]}),(0,t.jsxs)("div",{className:"set-cell set-how",children:[(0,t.jsx)("h2",{className:"set-cell-title",children:"how it works"}),(0,t.jsx)("dl",{className:"set-how-list",children:v.map(e=>(0,t.jsxs)("div",{className:"set-how-row",children:[(0,t.jsx)("dt",{className:"set-how-label",children:e.label}),(0,t.jsx)("dd",{className:"set-how-body",children:e.body})]},e.label))})]})]})]}),g&&D>0&&(0,t.jsx)(b,{lastRunAtMs:P?.lastRunAtMs??null,nextDueAtMs:P?.nextDueAtMs??null,now:D})]}),(0,t.jsx)(o.AuthDialog,{open:M,source:"settings_scheduled_audit",headline:"where should the report go?",subhead:"we'll send a one-time code to confirm.",onClose:()=>$(!1),onAuthed:e=>void z(e)})]})}],93237)},29054,e=>{"use strict";e.s(["fetchWithTimeout",0,function(e,t={},a=15e3){let s=AbortSignal.timeout(a),n=t.signal?AbortSignal.any([t.signal,s]):s;return fetch(e,{...t,signal:n})},"isAbortError",0,function(e){if(null===e||"object"!=typeof e)return!1;let t=e.name;return"AbortError"===t||"TimeoutError"===t}])},34713,e=>{"use strict";e.s(["formatDuration",0,function(e){if(e<1e3)return`${e}ms`;let t=Math.round(e/100);if(t<600)return`${(t/10).toFixed(1)}s`;let a=Math.round(e/1e3);if(a<3600){let e=Math.floor(a/60);return`${e}m ${a%60}s`}let s=Math.round(e/6e4),n=Math.floor(s/60);return`${n}h ${s%60}m`},"formatRelativeTime",0,function(e){let t=Date.now()-e;return t<6e4?`${Math.max(1,Math.floor(t/1e3))}s ago`:t<36e5?`${Math.floor(t/6e4)}m ago`:t<864e5?`${Math.floor(t/36e5)}h ago`:`${Math.floor(t/864e5)}d ago`}])}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,24380,e=>{"use strict";var t=e.i(43476),r=e.i(71645),n=e.i(8734),o=e.i(89664),l=e.i(47163);function u(e){let t=document.createElement("textarea");t.value=e,t.style.position="fixed",t.style.opacity="0",document.body.appendChild(t);try{return t.select(),document.execCommand("copy")}finally{document.body.removeChild(t)}}e.s(["CopyButton",0,function({text:e,className:a}){let[i,c]=(0,r.useState)(!1),s=(0,r.useRef)(void 0);(0,r.useEffect)(()=>()=>{s.current&&clearTimeout(s.current)},[]);let d=(0,r.useCallback)(()=>{s.current&&clearTimeout(s.current),c(!0),s.current=setTimeout(()=>c(!1),2e3)},[]),f=(0,r.useCallback)(async()=>{try{if(navigator.clipboard?.writeText)await navigator.clipboard.writeText(e);else if(!u(e))throw Error("Both clipboard methods failed");d()}catch(t){console.error("Failed to copy to clipboard:",t);try{u(e)&&d()}catch{}}},[e,d]);return(0,t.jsx)("button",{type:"button",onClick:f,title:"Copy to clipboard",className:(0,l.cn)("inline-flex items-center justify-center rounded p-1 text-muted-foreground hover:text-foreground hover:bg-muted/80 transition-colors",a),children:i?(0,t.jsx)(o.Check,{className:"w-3.5 h-3.5 text-green-500"}):(0,t.jsx)(n.Copy,{className:"w-3.5 h-3.5"})})}])},69186,e=>{"use strict";var t=e.i(43476);let r=(0,e.i(70703).default)(()=>e.A(79348),{loadableGenerated:{modules:[5780]},ssr:!1,loading:()=>(0,t.jsx)("div",{className:"bg-card border border-border rounded-lg p-4 shadow-sm",children:(0,t.jsx)("div",{className:"flex items-center justify-center py-16",children:(0,t.jsx)("div",{className:"animate-pulse text-muted-foreground",children:"Loading log viewer..."})})})});e.s(["default",0,function({entries:e,projectName:n,sessionId:o}){return(0,t.jsx)(r,{entries:e,projectName:n,sessionId:o})}])},79348,e=>{e.v(t=>Promise.all(["static/chunks/
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,24380,e=>{"use strict";var t=e.i(43476),r=e.i(71645),n=e.i(8734),o=e.i(89664),l=e.i(47163);function u(e){let t=document.createElement("textarea");t.value=e,t.style.position="fixed",t.style.opacity="0",document.body.appendChild(t);try{return t.select(),document.execCommand("copy")}finally{document.body.removeChild(t)}}e.s(["CopyButton",0,function({text:e,className:a}){let[i,c]=(0,r.useState)(!1),s=(0,r.useRef)(void 0);(0,r.useEffect)(()=>()=>{s.current&&clearTimeout(s.current)},[]);let d=(0,r.useCallback)(()=>{s.current&&clearTimeout(s.current),c(!0),s.current=setTimeout(()=>c(!1),2e3)},[]),f=(0,r.useCallback)(async()=>{try{if(navigator.clipboard?.writeText)await navigator.clipboard.writeText(e);else if(!u(e))throw Error("Both clipboard methods failed");d()}catch(t){console.error("Failed to copy to clipboard:",t);try{u(e)&&d()}catch{}}},[e,d]);return(0,t.jsx)("button",{type:"button",onClick:f,title:"Copy to clipboard",className:(0,l.cn)("inline-flex items-center justify-center rounded p-1 text-muted-foreground hover:text-foreground hover:bg-muted/80 transition-colors",a),children:i?(0,t.jsx)(o.Check,{className:"w-3.5 h-3.5 text-green-500"}):(0,t.jsx)(n.Copy,{className:"w-3.5 h-3.5"})})}])},69186,e=>{"use strict";var t=e.i(43476);let r=(0,e.i(70703).default)(()=>e.A(79348),{loadableGenerated:{modules:[5780]},ssr:!1,loading:()=>(0,t.jsx)("div",{className:"bg-card border border-border rounded-lg p-4 shadow-sm",children:(0,t.jsx)("div",{className:"flex items-center justify-center py-16",children:(0,t.jsx)("div",{className:"animate-pulse text-muted-foreground",children:"Loading log viewer..."})})})});e.s(["default",0,function({entries:e,projectName:n,sessionId:o}){return(0,t.jsx)(r,{entries:e,projectName:n,sessionId:o})}])},79348,e=>{e.v(t=>Promise.all(["static/chunks/0unrx9g_x0u7j.js","static/chunks/2xbxkaszi1xnw.js"].map(t=>e.l(t))).then(()=>t(5780)))},89664,e=>{"use strict";let t=(0,e.i(56420).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);e.s(["Check",0,t],89664)},8734,e=>{"use strict";let t=(0,e.i(56420).default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);e.s(["Copy",0,t],8734)},90317,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={bindSnapshot:function(){return c},createAsyncLocalStorage:function(){return i},createSnapshot:function(){return s}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let l=Object.defineProperty(Error("Invariant: AsyncLocalStorage accessed in runtime where it is not available"),"__NEXT_ERROR_CODE",{value:"E504",enumerable:!1,configurable:!0});class u{disable(){throw l}getStore(){}run(){throw l}exit(){throw l}enterWith(){throw l}static bind(e){return e}}let a="u">typeof globalThis&&globalThis.AsyncLocalStorage;function i(){return a?new a:new u}function c(e){return a?a.bind(e):u.bind(e)}function s(){return a?a.snapshot():function(e,...t){return e(...t)}}},42344,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"workAsyncStorageInstance",{enumerable:!0,get:function(){return n}});let n=(0,e.r(90317).createAsyncLocalStorage)()},63599,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"workAsyncStorage",{enumerable:!0,get:function(){return n.workAsyncStorageInstance}});let n=e.r(42344)},9885,(e,t,r)=>{"use strict";function n(e){return e.split("/").map(e=>encodeURIComponent(e)).join("/")}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"encodeURIPath",{enumerable:!0,get:function(){return n}})},67585,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"BailoutToCSR",{enumerable:!0,get:function(){return o}});let n=e.r(32061);function o({reason:e,children:t}){if("u"<typeof window)throw Object.defineProperty(new n.BailoutToCSRError(e),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return t}},52157,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"PreloadChunks",{enumerable:!0,get:function(){return i}});let n=e.r(43476),o=e.r(74080),l=e.r(63599),u=e.r(9885),a=e.r(43369);function i({moduleIds:e}){if("u">typeof window)return null;let t=l.workAsyncStorage.getStore();if(void 0===t)return null;let r=[];if(t.reactLoadableManifest&&e){let n=t.reactLoadableManifest;for(let t of e){if(!n[t])continue;let e=n[t].files;r.push(...e)}}if(0===r.length)return null;let c=(0,a.getAssetTokenQuery)();return(0,n.jsx)(n.Fragment,{children:r.map(e=>{let r=`${t.assetPrefix}/_next/${(0,u.encodeURIPath)(e)}${c}`;return e.endsWith(".css")?(0,n.jsx)("link",{precedence:"dynamic",href:r,rel:"stylesheet",as:"style",nonce:t.nonce},e):((0,o.preload)(r,{as:"script",fetchPriority:"low",nonce:t.nonce}),null)})})}},69093,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return c}});let n=e.r(43476),o=e.r(71645),l=e.r(67585),u=e.r(52157);function a(e){return{default:e&&"default"in e?e.default:e}}let i={loader:()=>Promise.resolve(a(()=>null)),loading:null,ssr:!0},c=function(e){let t={...i,...e},r=(0,o.lazy)(()=>t.loader().then(a)),c=t.loading;function s(e){let a=c?(0,n.jsx)(c,{isLoading:!0,pastDelay:!0,error:null}):null,i=!t.ssr||!!t.loading,s=i?o.Suspense:o.Fragment,d=t.ssr?(0,n.jsxs)(n.Fragment,{children:["u"<typeof window?(0,n.jsx)(u.PreloadChunks,{moduleIds:t.modules}):null,(0,n.jsx)(r,{...e})]}):(0,n.jsx)(l.BailoutToCSR,{reason:"next/dynamic",children:(0,n.jsx)(r,{...e})});return(0,n.jsx)(s,{...i?{fallback:a}:{},children:d})}return s.displayName="LoadableComponent",s}},70703,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return o}});let n=e.r(55682)._(e.r(69093));function o(e,t){let r={};"function"==typeof e&&(r.loader=e);let o={...r,...t};return(0,n.default)({...o,modules:o.loadableGenerated?.modules})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,53348,e=>{"use strict";var r=e.i(43476),t=e.i(71645),n=e.i(
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,53348,e=>{"use strict";var r=e.i(43476),t=e.i(71645),n=e.i(87724),i=e.i(9969);e.s(["default",0,function({error:e,reset:o}){return(0,t.useEffect)(()=>{(0,n.getTelemetryConfig)().then(r=>{(0,i.setClientTelemetryConfig)(r),(0,i.captureClientEvent)("client_error",{error_message:e.message,error_name:e.name,error_digest:e.digest,boundary:"global"})}).catch(()=>{})},[e]),(0,r.jsx)("html",{children:(0,r.jsx)("body",{children:(0,r.jsx)("main",{style:{minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",background:"#031035",color:"#f8fafc",fontFamily:"system-ui, sans-serif"},children:(0,r.jsxs)("div",{style:{textAlign:"center",padding:"2rem",border:"1px solid rgba(239,68,68,0.4)",borderRadius:"0.5rem",maxWidth:"500px"},children:[(0,r.jsx)("h2",{style:{color:"#ef4444",marginBottom:"0.5rem",fontSize:"1.25rem"},children:"Something went wrong"}),(0,r.jsx)("p",{style:{color:"#94a3b8",marginBottom:"1.5rem"},children:e.message||"An unexpected error occurred."}),(0,r.jsx)("button",{onClick:o,style:{padding:"0.5rem 1.25rem",background:"#3b82f6",color:"white",border:"none",borderRadius:"0.375rem",cursor:"pointer",fontSize:"0.875rem"},children:"Try again"})]})})})})}])}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.auth-dialog-backdrop{z-index:10000;-webkit-backdrop-filter:blur(6px);background:#08080ab3;place-items:center;padding:32px 16px;display:grid;position:fixed;inset:0}.auth-dialog{border:1px solid var(--line-2);background:var(--bg-2);width:100%;max-width:420px;font-family:var(--font-mono);color:var(--ink);padding:28px 28px 24px;position:relative}.auth-close{font-family:var(--font-mono);color:var(--dim);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:20px;line-height:1;transition:color .12s;position:absolute;top:12px;right:14px}.auth-close:hover{color:var(--accent-pink)}.auth-close:disabled{color:var(--line-2);cursor:not-allowed}.auth-headline{font-family:var(--font-mono);letter-spacing:0;text-transform:none;color:var(--ink);margin:0 0 8px;font-size:18px;font-weight:600;line-height:1.3}.auth-sub{font-family:var(--font-mono);color:var(--ink-2);margin:0 0 18px;font-size:12px;line-height:1.55}.auth-sub .auth-email{color:var(--accent-pink)}.auth-sub .auth-ok{color:var(--accent-green);margin-right:6px}.auth-form{flex-direction:column;gap:10px;display:flex}.auth-field-label{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--accent-green);font-size:10px}.auth-input{background:var(--bg);border:1px solid var(--line-2);width:100%;color:var(--ink);font-family:var(--font-mono);letter-spacing:.03em;outline:none;padding:11px 14px;font-size:14px;transition:border-color .12s,box-shadow .12s}.auth-input:focus{border-color:var(--accent-pink);box-shadow:0 0 0 1px var(--accent-pink-soft)}.auth-input:disabled{opacity:.55;cursor:not-allowed}.auth-input-code{letter-spacing:.5em;text-align:center;font-variant-numeric:tabular-nums;font-size:18px}.auth-input::placeholder{color:var(--dim)}.auth-error{font-family:var(--font-mono);color:var(--accent-pink);background:var(--accent-pink-bg);border:1px solid var(--accent-pink);letter-spacing:.02em;border-left-width:3px;margin-top:4px;padding:8px 12px;font-size:12px}.auth-actions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.auth-btn{font-family:var(--font-mono);letter-spacing:.06em;border:1px solid var(--line-2);color:var(--ink);cursor:pointer;background:0 0;align-items:center;gap:8px;padding:10px 16px;font-size:12px;transition:all .12s;display:inline-flex}.auth-btn:hover:not(:disabled){border-color:var(--ink);background:#ffffff0a}.auth-btn:disabled{opacity:.45;cursor:not-allowed}.auth-btn.primary{border-color:var(--accent-pink);color:var(--accent-pink);background:var(--accent-pink-bg)}.auth-btn.primary:hover:not(:disabled){background:var(--accent-pink);color:var(--bg)}.auth-back{font-family:var(--font-mono);letter-spacing:.1em;color:var(--dim);cursor:pointer;background:0 0;border:none;align-self:flex-start;margin-top:4px;padding:6px 0;font-size:11px;transition:color .12s}.auth-back:hover:not(:disabled){color:var(--ink-2)}.auth-back:disabled{opacity:.45;cursor:not-allowed}@media (max-width:520px){.auth-dialog{padding:26px 22px 22px}.auth-actions{flex-direction:column;align-items:stretch}.auth-btn{justify-content:center}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,95408,e=>{"use strict";var t=e.i(95187);let a=(0,t.createServerReference)("60432abbdfe23da8f9bc4ce4ec8e78bfd38b3c2a30",t.callServer,void 0,t.findSourceMapURL,"searchHookActivityAction");e.s(["searchHookActivityAction",0,a])},73520,e=>{"use strict";var t=e.i(43476),a=e.i(24071),r=e.i(67927);e.s(["default",0,function({currentPage:e,totalPages:s,onPageChange:i}){if(s<=1)return null;let l=e=>`px-3 py-2 text-sm rounded-md transition-colors flex items-center gap-1 bg-muted text-muted-foreground ${e?"opacity-50 cursor-not-allowed":"hover:bg-muted/80"}`;return(0,t.jsxs)("div",{className:"flex items-center justify-center gap-2 py-4",children:[(0,t.jsxs)("button",{onClick:()=>i(e-1),disabled:1===e,className:l(1===e),"aria-label":"Previous page",children:[(0,t.jsx)(a.ChevronLeft,{className:"w-4 h-4"}),(0,t.jsx)("span",{className:"hidden sm:inline",children:"Previous"})]}),(0,t.jsx)("div",{className:"flex items-center gap-1",children:(()=>{if(s<=7)return Array.from({length:s},(e,t)=>t+1);let t=[1],a=Math.max(2,e-1),r=Math.min(s-1,e+1);e<=3&&(r=Math.min(5,s-1)),e>=s-2&&(a=Math.max(2,s-4)),a>2&&t.push("ellipsis-start");for(let e=a;e<=r;e++)t.push(e);return r<s-1&&t.push("ellipsis-end"),t.push(s),t})().map(a=>"string"==typeof a?(0,t.jsx)("span",{className:"px-2 text-muted-foreground",children:"..."},a):(0,t.jsx)("button",{onClick:()=>i(a),className:`min-w-[2.5rem] px-3 py-2 text-sm rounded-md transition-colors ${e===a?"bg-primary text-primary-foreground":"bg-muted text-muted-foreground hover:bg-muted/80"}`,"aria-label":`Page ${a}`,"aria-current":e===a?"page":void 0,children:a},a))}),(0,t.jsxs)("button",{onClick:()=>i(e+1),disabled:e===s,className:l(e===s),"aria-label":"Next page",children:[(0,t.jsx)("span",{className:"hidden sm:inline",children:"Next"}),(0,t.jsx)(r.ChevronRight,{className:"w-4 h-4"})]})]})}])},34713,e=>{"use strict";e.s(["formatDuration",0,function(e){if(e<1e3)return`${e}ms`;let t=Math.round(e/100);if(t<600)return`${(t/10).toFixed(1)}s`;let a=Math.round(e/1e3);if(a<3600){let e=Math.floor(a/60);return`${e}m ${a%60}s`}let r=Math.round(e/6e4),s=Math.floor(r/60);return`${s}h ${r%60}m`},"formatRelativeTime",0,function(e){let t=Date.now()-e;return t<6e4?`${Math.max(1,Math.floor(t/1e3))}s ago`:t<36e5?`${Math.floor(t/6e4)}m ago`:t<864e5?`${Math.floor(t/36e5)}h ago`:`${Math.floor(t/864e5)}d ago`}])},24071,e=>{"use strict";let t=(0,e.i(56420).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);e.s(["ChevronLeft",0,t],24071)},67927,e=>{"use strict";let t=(0,e.i(56420).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["ChevronRight",0,t],67927)},16306,e=>{"use strict";let t=(0,e.i(56420).default)("shield-alert",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M12 16h.01",key:"1drbdi"}]]);e.s(["ShieldAlert",0,t],16306)},84026,29407,e=>{"use strict";var t=e.i(56420);let a=(0,t.default)("shield-check",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);e.s(["ShieldCheck",0,a],84026);let r=(0,t.default)("shield-x",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m14.5 9.5-5 5",key:"17q4r4"}],["path",{d:"m9.5 9.5 5 5",key:"18nt4w"}]]);e.s(["ShieldX",0,r],29407)},82954,e=>{"use strict";let t=(0,e.i(56420).default)("shield",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]]);e.s(["Shield",0,t],82954)}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.empty-section,.running-section{padding-top:80px;padding-bottom:96px}.empty-panel,.running-panel{background:var(--bg-2);border:1px solid var(--line-2);flex-direction:column;padding:48px 56px;display:flex}.empty-glyph{text-align:center;align-self:center;margin-bottom:28px}.empty-glyph-grid{border:1px solid var(--line-2);background:var(--bg);grid-template-rows:repeat(6,14px);grid-template-columns:repeat(6,14px);gap:3px;margin:0 auto 14px;padding:16px;display:grid}.empty-glyph-grid .px{background:0 0}.empty-glyph-grid .px.on{background:var(--accent-pink)}.empty-glyph-label{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--dim);font-size:11px}.empty-headline{font-family:var(--font-display);letter-spacing:.1em;text-transform:lowercase;color:var(--ink);text-wrap:balance;text-align:center;margin:0 0 16px;font-size:clamp(32px,4.6vw,48px);line-height:1.05}.empty-sub{font-family:var(--font-mono);color:var(--ink-2);text-align:center;max-width:580px;margin:0 auto 32px;font-size:14px;line-height:1.65}.empty-actions{flex-direction:column;align-items:center;gap:12px;display:flex}.empty-cta{letter-spacing:.08em;padding:12px 24px;font-size:14px;text-decoration:none}.empty-meta{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--dim);font-size:11px}.running-panel{padding:36px 40px}.running-header{border-bottom:1px dashed var(--line);font-family:var(--font-mono);align-items:center;gap:10px;margin-bottom:22px;padding-bottom:18px;font-size:13px;display:flex}.running-prompt{color:var(--accent-green)}.running-cmd{color:var(--ink);letter-spacing:.02em}.running-cursor{color:var(--accent-pink);margin-left:4px;animation:.9s steps(2,end) infinite cursor-blink}@keyframes cursor-blink{50%{opacity:0}}.running-stages{flex-direction:column;margin:0 0 28px;padding:0;list-style:none;display:flex}.running-stage{border-bottom:1px dashed var(--line);font-family:var(--font-mono);grid-template-columns:28px 1fr auto;align-items:start;gap:14px;padding:12px 0;display:grid}.running-stage:last-child{border-bottom:none}.running-marker{font-family:var(--font-mono);letter-spacing:-1px;margin-top:1px;font-size:12px}.running-stage.queued{color:var(--dim)}.running-stage.queued .running-marker{color:var(--line-2)}.running-stage.active{color:var(--ink)}.running-stage.active .running-marker{color:var(--accent-pink)}.running-stage.done{color:var(--ink-2)}.running-stage.done .running-marker{color:var(--accent-green)}.running-stage.done .running-stage-label{text-decoration:line-through;-webkit-text-decoration-color:var(--line-2);text-decoration-color:var(--line-2)}.running-stage-label{letter-spacing:.04em;font-size:13px}.running-stage-detail{color:var(--ink-2);letter-spacing:.02em;margin-top:4px;font-size:11px}.running-stage-spin{font-family:var(--font-mono);color:var(--accent-pink);align-self:center;font-size:16px;animation:.7s steps(4,end) infinite spin-step}@keyframes spin-step{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.running-bar-label{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-2);justify-content:space-between;margin-bottom:8px;font-size:10px;display:flex}.running-bar-track{background:var(--bg);border:1px solid var(--line);height:6px;position:relative;overflow:hidden}.running-bar-fill{background:linear-gradient(90deg, var(--accent-pink) 0%, #e89aaf 100%);height:100%;transition:width .6s cubic-bezier(.22,1,.36,1);position:relative}.running-bar-fill:after{content:"";background:linear-gradient(90deg,#0000 0% 40%,#ffffff59 50%,#0000 60% 100%);animation:1.6s linear infinite bar-shine;position:absolute;inset:0}@keyframes bar-shine{0%{transform:translate(-100%)}to{transform:translate(100%)}}.running-foot{font-family:var(--font-mono);letter-spacing:.05em;color:var(--dim);text-align:center;margin-top:22px;font-size:11px}@media (max-width:720px){.empty-panel,.running-panel{padding:32px 24px}}.report{width:100%;max-width:clamp(720px,92vw,1480px);margin:0 auto;padding:0 clamp(20px,3vw,48px)}.section{border-bottom:1px solid var(--line);padding:64px 0;position:relative}.section:last-child{border-bottom:none}.section-mast{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:28px;display:flex}.section-label{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--accent-green);align-items:baseline;gap:10px;font-size:11px;display:inline-flex}.section-label .glyph{color:inherit;letter-spacing:-2px}.section-label .sep{color:inherit}.section-meta{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--dim);font-size:11px}.section-meta .g{color:var(--accent-green)}.section-meta .p{color:var(--accent-pink)}.section-h{font-family:var(--font-display);letter-spacing:.11em;color:var(--ink);text-transform:lowercase;text-wrap:balance;margin:0 0 18px;font-size:clamp(28px,4vw,44px);font-weight:400;line-height:1.05}.report-footer{border-top:1px solid var(--line);background:var(--bg);text-align:center;font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--dim);padding:48px 32px 24px;font-size:11px}.report-footer--fixed{z-index:10;padding:16px 32px;position:fixed;bottom:0;left:0;right:0}.report-footer .brand-mark{color:var(--accent-pink);font-family:var(--font-mono);letter-spacing:-2px;margin-right:6px;font-size:14px;font-weight:700}.auth-status-pill{border:1px dashed var(--line-2);font-family:var(--font-mono);letter-spacing:.1em;color:var(--ink-2);align-items:center;gap:8px;margin-top:16px;padding:6px 10px;font-size:11px;display:inline-flex}.auth-status-pill .dot{background:var(--accent-green);width:7px;height:7px;display:inline-block;box-shadow:0 0 6px #66d1b58c}.auth-status-pill .email{color:var(--accent-green)}@media (max-width:960px){.report{padding:0 20px}.archetype-frame{padding:32px 24px}.arch-body{grid-template-columns:1fr;gap:32px}.arch-meta-grid,.score-grid{grid-template-columns:1fr;gap:16px}.finding-body{grid-template-columns:1fr}.finding-block{border-right:none!important}.policies-grid,.share-grid{grid-template-columns:1fr}.strength-row{grid-template-columns:40px 1fr}.strength-metric{text-align:left;grid-column:2;margin-top:6px}.return-hook{padding:28px 24px}}@media (prefers-reduced-motion:reduce){.running-cursor,.running-stage-spin,.running-bar-fill:after,.auth-status-pill .dot{animation:none}.running-bar-fill{transition:none}}.audit-progress-strip{z-index:60;background:var(--bg-2);border-bottom:1px solid var(--accent-pink);font-family:var(--font-mono);animation:.22s cubic-bezier(.22,1,.36,1) audit-progress-slide-in;position:sticky;top:0;left:0;right:0}.audit-progress-strip--failed{border-bottom-color:var(--accent-pink);background:linear-gradient(to right, var(--accent-pink-bg), var(--bg-2))}.audit-progress-strip__inner{justify-content:space-between;align-items:center;gap:16px;max-width:1480px;margin:0 auto;padding:12px clamp(20px,3vw,48px);display:flex;position:relative}.audit-progress-strip__label{color:var(--ink);letter-spacing:.06em;text-transform:lowercase;align-items:center;gap:10px;font-size:12px;display:inline-flex}.audit-progress-strip--failed .audit-progress-strip__label{color:var(--accent-pink)}.audit-progress-strip__elapsed{font-variant-numeric:tabular-nums;color:var(--accent-pink);letter-spacing:.08em;font-size:12px}.audit-progress-strip__spinner{border:1.5px solid var(--accent-pink);background:0 0;border-top-color:#0000;border-radius:50%;width:9px;height:9px;animation:.8s linear infinite audit-progress-spin}.audit-progress-strip__x{border:1px solid var(--accent-pink);width:14px;height:14px;color:var(--accent-pink);justify-content:center;align-items:center;font-size:11px;line-height:1;display:inline-flex}.audit-progress-strip__dismiss{border:1px solid var(--line-2);color:var(--ink-2);font-family:var(--font-mono);text-transform:lowercase;letter-spacing:.06em;cursor:pointer;background:0 0;padding:5px 10px;font-size:11px;transition:border-color .14s,color .14s}.audit-progress-strip__dismiss:hover{border-color:var(--accent-pink);color:var(--accent-pink)}.audit-progress-strip__pulse{background:linear-gradient(90deg, transparent 0%, var(--accent-pink) 20%, var(--accent-pink) 80%, transparent 100%);transform-origin:0;height:1px;animation:2.4s cubic-bezier(.55,.1,.45,.9) infinite audit-progress-pulse;position:absolute;bottom:-1px;left:0;right:0}@keyframes audit-progress-spin{to{transform:rotate(360deg)}}@keyframes audit-progress-pulse{0%{opacity:.4;transform:scaleX(0)translate(0%)}50%{opacity:1;transform:scaleX(.6)translate(20%)}to{opacity:.2;transform:scaleX(0)translate(100%)}}@keyframes audit-progress-slide-in{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.audit-progress-strip{animation:none}.audit-progress-strip__spinner{border-top-color:var(--accent-pink);animation:none}.audit-progress-strip__pulse{opacity:.4;animation:none;transform:scaleX(.4)translate(30%)}}.poster-section{border-bottom:1px solid var(--line);flex-direction:column;gap:14px;height:calc(100vh - 52px);padding:20px 0 16px;display:flex}.poster{border:1px dashed var(--accent-pink-soft);background:var(--bg-2);flex-direction:column;flex:auto;width:100%;max-width:980px;min-height:0;margin:0 auto;padding:22px 40px;display:flex;position:relative;overflow:hidden}.poster-head{flex:none}.poster-body{flex:auto}.poster-foot{flex:none}.poster-head{border-bottom:1px dashed var(--line);font-family:var(--font-mono);letter-spacing:.04em;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:18px;padding-bottom:12px;font-size:14px;display:flex}.poster-wordmark{color:var(--ink);align-items:center;gap:8px;display:inline-flex}.poster-wordmark .poster-logo{width:auto;height:18px;display:block}.poster-wordmark .poster-sep{color:var(--dim);margin:0 2px}.poster-meta{color:var(--dim)}.poster-meta .poster-ix{color:var(--accent-pink)}.poster-meta .of,.poster-meta .poster-sep{color:var(--dim)}.poster-body{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:clamp(14px,2.6vh,30px);min-height:0;padding:clamp(6px,1.4vh,16px) 0;display:flex}.poster-sigil .sigil{background:var(--bg);border:1px solid var(--line-2);grid-template-rows:repeat(8,clamp(10px,1.7vh,16px));grid-template-columns:repeat(8,clamp(10px,1.7vh,16px));gap:2px;padding:clamp(6px,1vh,10px);display:grid}.poster-persona{flex-direction:column;align-items:center;gap:clamp(6px,1.2vh,14px);min-width:0;display:flex}.poster-persona .persona-name{font-family:var(--font-display);letter-spacing:.03em;color:var(--ink);text-transform:lowercase;text-wrap:balance;margin:0;font-size:clamp(32px,6.5vh,64px);line-height:.95}.poster-persona .persona-keywords{font-family:var(--font-display);letter-spacing:.06em;text-transform:lowercase;font-size:clamp(16px,2.2vh,22px)}.poster-persona .persona-keywords .kw-0{color:var(--accent-green)}.poster-persona .persona-keywords .kw-1{color:var(--ink)}.poster-persona .persona-keywords .kw-2{color:var(--accent-pink)}.poster-persona .persona-keywords .kw-sep{color:var(--dim);margin:0 10px}.poster-persona .persona-rarity{font-family:var(--font-mono);color:var(--accent-green);letter-spacing:.02em;font-size:clamp(11px,1.3vh,13px)}.poster-persona .persona-rarity .lbl{color:var(--dim)}.poster-persona .persona-rarity .pct{color:var(--accent-pink);font-weight:600}.poster-score{justify-content:center;align-items:baseline;gap:clamp(10px,1.4vh,16px);display:flex}.poster-score .score-n{font-family:var(--font-mono);letter-spacing:-.02em;color:var(--accent-pink);font-variant-numeric:tabular-nums;font-size:clamp(56px,11vh,112px);font-weight:700;line-height:1}.poster-score .score-of{font-family:var(--font-mono);color:var(--dim);letter-spacing:.04em;font-size:clamp(16px,2vh,22px);line-height:1}.poster-sigil .sigil .px{background:0 0}.poster-sigil .sigil .px.on{background:var(--ink)}.poster-sigil .sigil .px.p{background:var(--accent-pink)}.poster-sigil .sigil .px.g{background:var(--accent-green)}.poster-sigil .sigil .px.d{background:var(--dim)}.poster-foot{border-top:1px dashed var(--line);font-family:var(--font-mono);justify-content:space-between;align-items:baseline;padding-top:10px;font-size:14px;display:flex}.poster-brand{color:var(--ink);letter-spacing:.04em;text-shadow:0 0 6px #ffffff80,0 0 14px #ffffff38}.poster-cta{color:var(--accent-green);letter-spacing:.04em}.poster-cta .arrow{color:var(--accent-pink);margin:0 4px}.poster-cta .cta-cmd{text-shadow:0 0 6px #66d1b599,0 0 14px #66d1b54d}.poster-share-row{flex:none;grid-template-columns:repeat(3,1fr);gap:10px;max-width:980px;margin:0 auto;display:grid}.poster-share-btn{border:1px solid var(--line-2);background:var(--bg-2);color:var(--ink);font-family:var(--font-mono);letter-spacing:.04em;cursor:pointer;justify-content:center;align-items:center;gap:10px;padding:12px 16px;font-size:12px;transition:border-color .14s,color .14s,background .14s;display:inline-flex}.poster-share-btn:hover{border-color:var(--accent-pink);color:var(--accent-pink);background:var(--accent-pink-bg)}.poster-share-btn:disabled{opacity:.55;cursor:wait}.poster-share-btn:focus-visible,.cadence-btn:focus-visible,.invite-btn:focus-visible,.install-all-btn:focus-visible,.copy-icon-btn:focus-visible,.fix-install-btn:focus-visible{outline:2px solid var(--accent-pink);outline-offset:2px}.poster-share-btn .mark{color:var(--accent-pink);font-weight:700}.poster-scroll-hint{text-align:center;font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--dim);flex:none;margin:0;font-size:10px}.poster-scroll-hint .arrow{color:var(--accent-pink);margin-left:6px}@media (max-width:720px){.poster{padding:24px 22px}.poster-body{gap:28px;padding:12px 0}.poster-share-row{grid-template-columns:1fr}.poster-head{font-size:12px}.poster-score .score-n{font-size:clamp(72px,18vw,120px)}.poster-persona .persona-name{font-size:clamp(36px,9vw,56px)}}.audit-sec{border-bottom:1px solid var(--line);padding:48px 0}.audit-sec:last-child{border-bottom:none}.audit-sec-head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:6px;display:flex}.audit-sec-eyebrow{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--accent-green);font-size:11px}.audit-sec-eyebrow .ix{color:var(--dim);margin-right:8px}.audit-sec-meta{font-family:var(--font-mono);color:var(--dim);letter-spacing:.04em;font-size:11px}.audit-sec-meta strong{color:var(--ink);font-weight:600}.audit-sec-title{font-family:var(--font-mono);letter-spacing:-.01em;color:var(--ink);margin:4px 0 18px;font-size:18px;font-weight:600}.strength-list{flex-direction:column;display:flex}.strength-row{border-bottom:1px dashed var(--line);font-family:var(--font-mono);grid-template-columns:24px 1fr auto;align-items:baseline;gap:14px;padding:12px 0;display:grid}.strength-row:last-child{border-bottom:none}.strength-check{color:var(--accent-green);font-size:14px;line-height:1}.strength-body{flex-direction:column;gap:2px;min-width:0;display:flex}.strength-headline{color:var(--ink);letter-spacing:.02em;font-size:13px}.strength-detail{color:var(--ink-2);letter-spacing:.02em;font-size:11px}.strength-metric{font-family:var(--font-display);letter-spacing:.04em;color:var(--accent-green);text-align:right;white-space:nowrap;font-size:22px;line-height:1}.strength-metric .unit{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--dim);margin-top:4px;font-size:9px;display:block}.quirks-table{font-family:var(--font-mono)}.quirks-thead,.quirks-row{grid-template-columns:80px 1fr 90px 100px;align-items:center;gap:14px;display:grid}.quirks-thead{border-bottom:1px solid var(--line);color:var(--dim);letter-spacing:.18em;text-transform:uppercase;padding:0 0 8px;font-size:10px}.quirks-thead span:last-child{text-align:right}.quirks-row{border-bottom:1px dashed var(--line);padding:12px 0;font-size:12px}.quirks-row:last-child{border-bottom:none}.q-when{color:var(--dim);font-size:11px}.q-what{flex-direction:column;gap:2px;min-width:0;display:flex}.q-title{color:var(--ink);font-size:12px}.q-policy{color:var(--dim);font-size:10px}.q-policy code{color:var(--accent-green);background:0 0}.q-pill{border:1px solid var(--line-2);text-align:center;letter-spacing:.12em;text-transform:uppercase;justify-self:start;padding:2px 8px;font-size:10px}.q-pill-high{color:var(--accent-pink);background:#e4587c0f;border-color:#e4587c66}.q-pill-medium{color:var(--amber);background:var(--amber-bg);border-color:#e8c46a66}.q-pill-low{color:var(--ink-2)}.q-recur{text-align:right;color:var(--dim);letter-spacing:.04em;font-size:10px}.audit-sec-sub{font-family:var(--font-mono);color:var(--ink-2);margin:-10px 0 18px;font-size:12px;line-height:1.55}.audit-sec-sub strong{color:var(--ink);font-weight:600}.install-all-btn{border:1px solid var(--accent-pink);background:var(--accent-pink-bg);color:var(--accent-pink);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;padding:8px 14px;font-size:11px;transition:background-color .14s}.install-all-btn:hover{background:#e4587c2e}.fix-list{flex-direction:column;display:flex}.fix-row{border-bottom:1px dashed var(--line);grid-template-columns:1fr minmax(280px,auto);align-items:center;gap:24px;padding:14px 0;display:grid}.fix-row:last-child{border-bottom:none}.fix-row-info{flex-direction:column;gap:4px;min-width:0;display:flex}.fix-name{font-family:var(--font-mono);color:var(--ink);letter-spacing:.01em;font-size:13px;font-weight:500}.fix-desc{font-family:var(--font-mono);color:var(--ink-2);font-size:11px;line-height:1.55}.fix-row-cmd{align-items:stretch;gap:6px;min-width:0;display:flex}.fix-cmd-code{min-width:0;font-family:var(--font-mono);color:var(--accent-green);background:var(--bg);border:1px solid var(--line);letter-spacing:.02em;white-space:nowrap;flex:1;align-items:center;padding:8px 12px;font-size:11px;display:flex;overflow-x:auto}.copy-icon-btn{border:1px solid var(--line);background:var(--bg);color:var(--ink-2);font-family:var(--font-mono);cursor:pointer;justify-content:center;align-items:center;min-width:36px;padding:0 10px;font-size:12px;transition:color .14s,border-color .14s;display:inline-flex}.copy-icon-btn:hover{color:var(--accent-pink);border-color:var(--accent-pink)}.cbb-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:stretch;gap:14px;display:grid}@media (max-width:720px){.cbb-grid{grid-template-columns:1fr}}.cbb-card{border:1px solid var(--line-2);background:var(--bg-2);flex-direction:column;gap:12px;padding:18px 20px;display:flex}.cbb-card-title{font-family:var(--font-mono);color:var(--ink);letter-spacing:.02em;font-size:14px}.cbb-card-sub{font-family:var(--font-mono);color:var(--ink-2);font-size:11px;line-height:1.55}.cbb-card-primary{border-left:2px solid var(--accent-pink)}.cbb-card-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.cbb-pill{font-family:var(--font-mono);letter-spacing:.1em;white-space:nowrap;border:1px solid var(--line-2);color:var(--dim);padding:4px 8px;font-size:9.5px}.cbb-pill.on{border-color:var(--accent-green-shadow);color:var(--accent-green)}.cbb-row{font-family:var(--font-mono);color:var(--ink);align-items:center;gap:10px;font-size:12px;line-height:1.5;display:flex}.cbb-row-interval{flex-wrap:wrap;gap:9px}.cbb-muted{color:var(--ink-2)}.cbb-hint{color:var(--dim);font-size:10.5px}.cbb-strong{color:var(--ink)}.cbb-num{font-family:var(--font-mono);background:var(--bg);border:1px solid var(--line-2);width:58px;color:var(--ink);border-radius:0;padding:5px 10px;font-size:12px}.cbb-num:focus-visible{outline:2px solid var(--accent-pink);outline-offset:1px}.cbb-toggle{background:var(--line-2);cursor:pointer;border:none;border-radius:9px;flex:none;width:34px;height:18px;padding:0;transition:background .12s;position:relative}.cbb-toggle[data-on=true]{background:var(--accent-pink)}.cbb-toggle:disabled{opacity:.5;cursor:not-allowed}.cbb-toggle:focus-visible{outline:2px solid var(--accent-pink);outline-offset:2px}.cbb-toggle-knob{background:var(--bg);border-radius:50%;width:14px;height:14px;transition:transform .12s;position:absolute;top:2px;left:2px}.cbb-toggle[data-on=true] .cbb-toggle-knob{transform:translate(16px)}.cbb-identity{font-family:var(--font-mono);color:var(--ink-2);flex-wrap:wrap;align-items:baseline;gap:8px;font-size:11px;display:flex}.cbb-email{color:var(--accent-green)}.cbb-link-inline{color:var(--dim);text-underline-offset:2px;font-size:11px;text-decoration:underline}.cbb-link-inline:hover{color:var(--ink)}.cbb-warn{font-family:var(--font-mono);color:var(--accent-pink);font-size:11px;line-height:1.6}.cbb-warn-inline{color:var(--accent-pink)}.cbb-foot-block{border-top:1px dashed var(--line);font-family:var(--font-mono);flex-direction:column;gap:6px;margin-top:auto;padding-top:12px;font-size:11px;display:flex}.cbb-run-btn{font-family:var(--font-mono);text-align:center;border:1px solid var(--line-2);color:var(--ink);cursor:pointer;background:0 0;margin-top:6px;padding:8px 12px;font-size:12px}.cbb-run-btn:hover:not(:disabled){border-color:var(--accent-pink);color:var(--accent-pink)}.cbb-run-btn:disabled{opacity:.5;cursor:not-allowed}.cbb-run-btn:focus-visible{outline:2px solid var(--accent-pink);outline-offset:2px}.cbb-note{font-family:var(--font-mono);color:var(--dim);margin-top:14px;font-size:10.5px;line-height:1.55}.perks-progress{background:var(--bg);border:1px solid var(--line-2);height:6px;margin:4px 0;position:relative}.perks-progress span{background:var(--accent-pink);height:100%;transition:width .24s;display:block}.perks-meta{font-family:var(--font-mono);color:var(--ink-2);font-size:11px}.perks-meta strong{color:var(--accent-pink);font-weight:600}.invite-btn{border:1px solid var(--accent-pink);background:var(--accent-pink-bg);color:var(--accent-pink);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;align-self:flex-start;padding:8px 14px;font-size:11px;transition:background-color .14s}.invite-btn:hover{background:#e4587c2e}.invite-textarea{resize:vertical;letter-spacing:.02em;width:100%;min-height:90px;font-size:13px;line-height:1.45}.invite-summary{font-family:var(--font-mono);color:var(--dim);flex-wrap:wrap;gap:12px;margin-top:6px;font-size:11px;display:flex}.invite-summary .invite-valid{color:var(--accent-green)}.invite-summary .invite-invalid{color:var(--accent-pink)}.cbb-foot{font-family:var(--font-mono);color:var(--dim);margin-top:4px;font-size:10px}@media (max-width:720px){.cbb-grid{grid-template-columns:1fr}.fix-row{grid-template-columns:1fr;gap:8px}.fix-row-cmd{min-width:0}.quirks-thead,.quirks-row{grid-template-columns:1fr;gap:6px;padding:16px 0}.quirks-thead{display:none}}.share-card{max-width:420px}.leak-notify{margin-left:auto}.leak-list{flex-direction:column;gap:10px;margin:20px 0 0;padding:0;list-style:none;display:flex}.leak-row{border:1px solid var(--line-2);box-shadow:4px 4px 0 0 var(--line-2);background:var(--bg);flex-direction:column;gap:8px;padding:14px 16px;display:flex}.leak-row[data-attributed=true]{box-shadow:4px 4px 0 0 var(--accent-pink)}.leak-row-top{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.leak-key{font-family:var(--font-mono);color:var(--ink);letter-spacing:.02em;word-break:break-all;font-size:14px}.leak-label{font-family:var(--font-mono);color:var(--accent-pink);text-transform:lowercase;font-size:11px}.leak-name{font-family:var(--font-mono);color:var(--ink-2);border:1px solid var(--line-2);padding:1px 5px;font-size:11px}.leak-dismiss{font-family:var(--font-mono);color:var(--dim);border:1px solid var(--line-2);cursor:pointer;text-transform:lowercase;background:0 0;margin-left:auto;padding:3px 8px;font-size:10px}.leak-dismiss:hover:not(:disabled){color:var(--ink);border-color:var(--ink-2)}.leak-dismiss:disabled{opacity:.4;cursor:not-allowed}.leak-dismiss:focus-visible{outline:2px solid var(--accent-pink);outline-offset:2px}.leak-how{font-family:var(--font-mono);color:var(--ink-2);font-size:12px;line-height:1.6}.leak-verb{color:var(--ink)}.leak-where{color:var(--accent-green)}.leak-who{color:var(--ink)}.leak-when{color:var(--dim)}.leak-foot{font-family:var(--font-mono);color:var(--dim);flex-wrap:wrap;gap:14px;font-size:10px;display:flex}.leak-fix{color:var(--accent-green)}.leak-dir{color:var(--ink-2)}@media (max-width:640px){.leak-dismiss{margin-left:0}.leak-foot{flex-direction:column;gap:6px}}.scan-rerun{font-family:var(--font-mono);letter-spacing:.1em;text-transform:lowercase;color:var(--ink-2);border:1px solid var(--line-2);cursor:pointer;background:0 0;margin-left:auto;padding:4px 10px;font-size:10.5px}.scan-rerun:hover:not(:disabled){color:var(--ink);border-color:var(--accent-pink)}.scan-rerun:disabled{opacity:.5;cursor:not-allowed}.scan-rerun:focus-visible{outline:2px solid var(--accent-pink);outline-offset:2px}
|
|
1
|
+
.empty-section,.running-section{padding-top:80px;padding-bottom:96px}.empty-panel,.running-panel{background:var(--bg-2);border:1px solid var(--line-2);flex-direction:column;padding:48px 56px;display:flex}.empty-glyph{text-align:center;align-self:center;margin-bottom:28px}.empty-glyph-grid{border:1px solid var(--line-2);background:var(--bg);grid-template-rows:repeat(6,14px);grid-template-columns:repeat(6,14px);gap:3px;margin:0 auto 14px;padding:16px;display:grid}.empty-glyph-grid .px{background:0 0}.empty-glyph-grid .px.on{background:var(--accent-pink)}.empty-glyph-label{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--dim);font-size:11px}.empty-headline{font-family:var(--font-display);letter-spacing:.1em;text-transform:lowercase;color:var(--ink);text-wrap:balance;text-align:center;margin:0 0 16px;font-size:clamp(32px,4.6vw,48px);line-height:1.05}.empty-sub{font-family:var(--font-mono);color:var(--ink-2);text-align:center;max-width:580px;margin:0 auto 32px;font-size:14px;line-height:1.65}.empty-actions{flex-direction:column;align-items:center;gap:12px;display:flex}.empty-cta{letter-spacing:.08em;padding:12px 24px;font-size:14px;text-decoration:none}.empty-meta{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--dim);font-size:11px}.running-panel{padding:36px 40px}.running-header{border-bottom:1px dashed var(--line);font-family:var(--font-mono);align-items:center;gap:10px;margin-bottom:22px;padding-bottom:18px;font-size:13px;display:flex}.running-prompt{color:var(--accent-green)}.running-cmd{color:var(--ink);letter-spacing:.02em}.running-cursor{color:var(--accent-pink);margin-left:4px;animation:.9s steps(2,end) infinite cursor-blink}@keyframes cursor-blink{50%{opacity:0}}.running-stages{flex-direction:column;margin:0 0 28px;padding:0;list-style:none;display:flex}.running-stage{border-bottom:1px dashed var(--line);font-family:var(--font-mono);grid-template-columns:28px 1fr auto;align-items:start;gap:14px;padding:12px 0;display:grid}.running-stage:last-child{border-bottom:none}.running-marker{font-family:var(--font-mono);letter-spacing:-1px;margin-top:1px;font-size:12px}.running-stage.queued{color:var(--dim)}.running-stage.queued .running-marker{color:var(--line-2)}.running-stage.active{color:var(--ink)}.running-stage.active .running-marker{color:var(--accent-pink)}.running-stage.done{color:var(--ink-2)}.running-stage.done .running-marker{color:var(--accent-green)}.running-stage.done .running-stage-label{text-decoration:line-through;-webkit-text-decoration-color:var(--line-2);text-decoration-color:var(--line-2)}.running-stage-label{letter-spacing:.04em;font-size:13px}.running-stage-detail{color:var(--ink-2);letter-spacing:.02em;margin-top:4px;font-size:11px}.running-stage-spin{font-family:var(--font-mono);color:var(--accent-pink);align-self:center;font-size:16px;animation:.7s steps(4,end) infinite spin-step}@keyframes spin-step{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.running-bar-label{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-2);justify-content:space-between;margin-bottom:8px;font-size:10px;display:flex}.running-bar-track{background:var(--bg);border:1px solid var(--line);height:6px;position:relative;overflow:hidden}.running-bar-fill{background:linear-gradient(90deg, var(--accent-pink) 0%, #e89aaf 100%);height:100%;transition:width .6s cubic-bezier(.22,1,.36,1);position:relative}.running-bar-fill:after{content:"";background:linear-gradient(90deg,#0000 0% 40%,#ffffff59 50%,#0000 60% 100%);animation:1.6s linear infinite bar-shine;position:absolute;inset:0}@keyframes bar-shine{0%{transform:translate(-100%)}to{transform:translate(100%)}}.running-foot{font-family:var(--font-mono);letter-spacing:.05em;color:var(--dim);text-align:center;margin-top:22px;font-size:11px}@media (max-width:720px){.empty-panel,.running-panel{padding:32px 24px}}.report{width:100%;max-width:clamp(720px,92vw,1480px);margin:0 auto;padding:0 clamp(20px,3vw,48px)}.section{border-bottom:1px solid var(--line);padding:64px 0;position:relative}.section:last-child{border-bottom:none}.section-mast{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:28px;display:flex}.section-label{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--accent-green);align-items:baseline;gap:10px;font-size:11px;display:inline-flex}.section-label .glyph{color:inherit;letter-spacing:-2px}.section-label .sep{color:inherit}.section-meta{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--dim);font-size:11px}.section-meta .g{color:var(--accent-green)}.section-meta .p{color:var(--accent-pink)}.section-h{font-family:var(--font-display);letter-spacing:.11em;color:var(--ink);text-transform:lowercase;text-wrap:balance;margin:0 0 18px;font-size:clamp(28px,4vw,44px);font-weight:400;line-height:1.05}.report-footer{border-top:1px solid var(--line);background:var(--bg);text-align:center;font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--dim);padding:48px 32px 24px;font-size:11px}.report-footer--fixed{z-index:10;padding:16px 32px;position:fixed;bottom:0;left:0;right:0}.report-footer .brand-mark{color:var(--accent-pink);font-family:var(--font-mono);letter-spacing:-2px;margin-right:6px;font-size:14px;font-weight:700}.auth-status-pill{border:1px dashed var(--line-2);font-family:var(--font-mono);letter-spacing:.1em;color:var(--ink-2);align-items:center;gap:8px;margin-top:16px;padding:6px 10px;font-size:11px;display:inline-flex}.auth-status-pill .dot{background:var(--accent-green);width:7px;height:7px;display:inline-block;box-shadow:0 0 6px #66d1b58c}.auth-status-pill .email{color:var(--accent-green)}@media (max-width:960px){.report{padding:0 20px}.archetype-frame{padding:32px 24px}.arch-body{grid-template-columns:1fr;gap:32px}.arch-meta-grid,.score-grid{grid-template-columns:1fr;gap:16px}.finding-body{grid-template-columns:1fr}.finding-block{border-right:none!important}.policies-grid,.share-grid{grid-template-columns:1fr}.strength-row{grid-template-columns:40px 1fr}.strength-metric{text-align:left;grid-column:2;margin-top:6px}.return-hook{padding:28px 24px}}@media (prefers-reduced-motion:reduce){.running-cursor,.running-stage-spin,.running-bar-fill:after,.auth-status-pill .dot{animation:none}.running-bar-fill{transition:none}}.audit-progress-strip{z-index:60;background:var(--bg-2);border-bottom:1px solid var(--accent-pink);font-family:var(--font-mono);animation:.22s cubic-bezier(.22,1,.36,1) audit-progress-slide-in;position:sticky;top:0;left:0;right:0}.audit-progress-strip--failed{border-bottom-color:var(--accent-pink);background:linear-gradient(to right, var(--accent-pink-bg), var(--bg-2))}.audit-progress-strip__inner{justify-content:space-between;align-items:center;gap:16px;max-width:1480px;margin:0 auto;padding:12px clamp(20px,3vw,48px);display:flex;position:relative}.audit-progress-strip__label{color:var(--ink);letter-spacing:.06em;text-transform:lowercase;align-items:center;gap:10px;font-size:12px;display:inline-flex}.audit-progress-strip--failed .audit-progress-strip__label{color:var(--accent-pink)}.audit-progress-strip__elapsed{font-variant-numeric:tabular-nums;color:var(--accent-pink);letter-spacing:.08em;font-size:12px}.audit-progress-strip__spinner{border:1.5px solid var(--accent-pink);background:0 0;border-top-color:#0000;border-radius:50%;width:9px;height:9px;animation:.8s linear infinite audit-progress-spin}.audit-progress-strip__x{border:1px solid var(--accent-pink);width:14px;height:14px;color:var(--accent-pink);justify-content:center;align-items:center;font-size:11px;line-height:1;display:inline-flex}.audit-progress-strip__dismiss{border:1px solid var(--line-2);color:var(--ink-2);font-family:var(--font-mono);text-transform:lowercase;letter-spacing:.06em;cursor:pointer;background:0 0;padding:5px 10px;font-size:11px;transition:border-color .14s,color .14s}.audit-progress-strip__dismiss:hover{border-color:var(--accent-pink);color:var(--accent-pink)}.audit-progress-strip__pulse{background:linear-gradient(90deg, transparent 0%, var(--accent-pink) 20%, var(--accent-pink) 80%, transparent 100%);transform-origin:0;height:1px;animation:2.4s cubic-bezier(.55,.1,.45,.9) infinite audit-progress-pulse;position:absolute;bottom:-1px;left:0;right:0}@keyframes audit-progress-spin{to{transform:rotate(360deg)}}@keyframes audit-progress-pulse{0%{opacity:.4;transform:scaleX(0)translate(0%)}50%{opacity:1;transform:scaleX(.6)translate(20%)}to{opacity:.2;transform:scaleX(0)translate(100%)}}@keyframes audit-progress-slide-in{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.audit-progress-strip{animation:none}.audit-progress-strip__spinner{border-top-color:var(--accent-pink);animation:none}.audit-progress-strip__pulse{opacity:.4;animation:none;transform:scaleX(.4)translate(30%)}}.poster-section{border-bottom:1px solid var(--line);flex-direction:column;gap:14px;height:calc(100vh - 52px);padding:20px 0 16px;display:flex}.poster{border:1px dashed var(--accent-pink-soft);background:var(--bg-2);flex-direction:column;flex:auto;width:100%;max-width:980px;min-height:0;margin:0 auto;padding:22px 40px;display:flex;position:relative;overflow:hidden}.poster-head{flex:none}.poster-body{flex:auto}.poster-foot{flex:none}.poster-head{border-bottom:1px dashed var(--line);font-family:var(--font-mono);letter-spacing:.04em;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:18px;padding-bottom:12px;font-size:14px;display:flex}.poster-wordmark{color:var(--ink);align-items:center;gap:8px;display:inline-flex}.poster-wordmark .poster-logo{width:auto;height:18px;display:block}.poster-wordmark .poster-sep{color:var(--dim);margin:0 2px}.poster-meta{color:var(--dim)}.poster-meta .poster-ix{color:var(--accent-pink)}.poster-meta .of,.poster-meta .poster-sep{color:var(--dim)}.poster-body{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:clamp(14px,2.6vh,30px);min-height:0;padding:clamp(6px,1.4vh,16px) 0;display:flex}.poster-sigil .sigil{background:var(--bg);border:1px solid var(--line-2);grid-template-rows:repeat(8,clamp(10px,1.7vh,16px));grid-template-columns:repeat(8,clamp(10px,1.7vh,16px));gap:2px;padding:clamp(6px,1vh,10px);display:grid}.poster-persona{flex-direction:column;align-items:center;gap:clamp(6px,1.2vh,14px);min-width:0;display:flex}.poster-persona .persona-name{font-family:var(--font-display);letter-spacing:.03em;color:var(--ink);text-transform:lowercase;text-wrap:balance;margin:0;font-size:clamp(32px,6.5vh,64px);line-height:.95}.poster-persona .persona-keywords{font-family:var(--font-display);letter-spacing:.06em;text-transform:lowercase;font-size:clamp(16px,2.2vh,22px)}.poster-persona .persona-keywords .kw-0{color:var(--accent-green)}.poster-persona .persona-keywords .kw-1{color:var(--ink)}.poster-persona .persona-keywords .kw-2{color:var(--accent-pink)}.poster-persona .persona-keywords .kw-sep{color:var(--dim);margin:0 10px}.poster-persona .persona-rarity{font-family:var(--font-mono);color:var(--accent-green);letter-spacing:.02em;font-size:clamp(11px,1.3vh,13px)}.poster-persona .persona-rarity .lbl{color:var(--dim)}.poster-persona .persona-rarity .pct{color:var(--accent-pink);font-weight:600}.poster-score{justify-content:center;align-items:baseline;gap:clamp(10px,1.4vh,16px);display:flex}.poster-score .score-n{font-family:var(--font-mono);letter-spacing:-.02em;color:var(--accent-pink);font-variant-numeric:tabular-nums;font-size:clamp(56px,11vh,112px);font-weight:700;line-height:1}.poster-score .score-of{font-family:var(--font-mono);color:var(--dim);letter-spacing:.04em;font-size:clamp(16px,2vh,22px);line-height:1}.poster-sigil .sigil .px{background:0 0}.poster-sigil .sigil .px.on{background:var(--ink)}.poster-sigil .sigil .px.p{background:var(--accent-pink)}.poster-sigil .sigil .px.g{background:var(--accent-green)}.poster-sigil .sigil .px.d{background:var(--dim)}.poster-foot{border-top:1px dashed var(--line);font-family:var(--font-mono);justify-content:space-between;align-items:baseline;padding-top:10px;font-size:14px;display:flex}.poster-brand{color:var(--ink);letter-spacing:.04em;text-shadow:0 0 6px #ffffff80,0 0 14px #ffffff38}.poster-cta{color:var(--accent-green);letter-spacing:.04em}.poster-cta .arrow{color:var(--accent-pink);margin:0 4px}.poster-cta .cta-cmd{text-shadow:0 0 6px #66d1b599,0 0 14px #66d1b54d}.poster-share-row{flex:none;grid-template-columns:repeat(3,1fr);gap:10px;max-width:980px;margin:0 auto;display:grid}.poster-share-btn{border:1px solid var(--line-2);background:var(--bg-2);color:var(--ink);font-family:var(--font-mono);letter-spacing:.04em;cursor:pointer;justify-content:center;align-items:center;gap:10px;padding:12px 16px;font-size:12px;transition:border-color .14s,color .14s,background .14s;display:inline-flex}.poster-share-btn:hover{border-color:var(--accent-pink);color:var(--accent-pink);background:var(--accent-pink-bg)}.poster-share-btn:disabled{opacity:.55;cursor:wait}.poster-share-btn:focus-visible,.cadence-btn:focus-visible,.invite-btn:focus-visible,.install-all-btn:focus-visible,.copy-icon-btn:focus-visible,.fix-install-btn:focus-visible{outline:2px solid var(--accent-pink);outline-offset:2px}.poster-share-btn .mark{color:var(--accent-pink);font-weight:700}.poster-scroll-hint{text-align:center;font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--dim);flex:none;margin:0;font-size:10px}.poster-scroll-hint .arrow{color:var(--accent-pink);margin-left:6px}@media (max-width:720px){.poster{padding:24px 22px}.poster-body{gap:28px;padding:12px 0}.poster-share-row{grid-template-columns:1fr}.poster-head{font-size:12px}.poster-score .score-n{font-size:clamp(72px,18vw,120px)}.poster-persona .persona-name{font-size:clamp(36px,9vw,56px)}}.audit-sec{border-bottom:1px solid var(--line);padding:48px 0}.audit-sec:last-child{border-bottom:none}.audit-sec-head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:6px;display:flex}.audit-sec-eyebrow{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--accent-green);font-size:11px}.audit-sec-eyebrow .ix{color:var(--dim);margin-right:8px}.audit-sec-meta{font-family:var(--font-mono);color:var(--dim);letter-spacing:.04em;font-size:11px}.audit-sec-meta strong{color:var(--ink);font-weight:600}.audit-sec-title{font-family:var(--font-mono);letter-spacing:-.01em;color:var(--ink);margin:4px 0 18px;font-size:18px;font-weight:600}.strength-list{flex-direction:column;display:flex}.strength-row{border-bottom:1px dashed var(--line);font-family:var(--font-mono);grid-template-columns:24px 1fr auto;align-items:baseline;gap:14px;padding:12px 0;display:grid}.strength-row:last-child{border-bottom:none}.strength-check{color:var(--accent-green);font-size:14px;line-height:1}.strength-body{flex-direction:column;gap:2px;min-width:0;display:flex}.strength-headline{color:var(--ink);letter-spacing:.02em;font-size:13px}.strength-detail{color:var(--ink-2);letter-spacing:.02em;font-size:11px}.strength-metric{font-family:var(--font-display);letter-spacing:.04em;color:var(--accent-green);text-align:right;white-space:nowrap;font-size:22px;line-height:1}.strength-metric .unit{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--dim);margin-top:4px;font-size:9px;display:block}.quirks-table{font-family:var(--font-mono)}.quirks-thead,.quirks-row{grid-template-columns:80px 1fr 90px 100px;align-items:center;gap:14px;display:grid}.quirks-thead{border-bottom:1px solid var(--line);color:var(--dim);letter-spacing:.18em;text-transform:uppercase;padding:0 0 8px;font-size:10px}.quirks-thead span:last-child{text-align:right}.quirks-row{border-bottom:1px dashed var(--line);padding:12px 0;font-size:12px}.quirks-row:last-child{border-bottom:none}.q-when{color:var(--dim);font-size:11px}.q-what{flex-direction:column;gap:2px;min-width:0;display:flex}.q-title{color:var(--ink);font-size:12px}.q-policy{color:var(--dim);font-size:10px}.q-policy code{color:var(--accent-green);background:0 0}.q-pill{border:1px solid var(--line-2);text-align:center;letter-spacing:.12em;text-transform:uppercase;justify-self:start;padding:2px 8px;font-size:10px}.q-pill-high{color:var(--accent-pink);background:#e4587c0f;border-color:#e4587c66}.q-pill-medium{color:var(--amber);background:var(--amber-bg);border-color:#e8c46a66}.q-pill-low{color:var(--ink-2)}.q-recur{text-align:right;color:var(--dim);letter-spacing:.04em;font-size:10px}.audit-sec-sub{font-family:var(--font-mono);color:var(--ink-2);margin:-10px 0 18px;font-size:12px;line-height:1.55}.audit-sec-sub strong{color:var(--ink);font-weight:600}.install-all-btn{border:1px solid var(--accent-pink);background:var(--accent-pink-bg);color:var(--accent-pink);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;padding:8px 14px;font-size:11px;transition:background-color .14s}.install-all-btn:hover{background:#e4587c2e}.fix-list{flex-direction:column;display:flex}.fix-row{border-bottom:1px dashed var(--line);grid-template-columns:1fr minmax(280px,auto);align-items:center;gap:24px;padding:14px 0;display:grid}.fix-row:last-child{border-bottom:none}.fix-row-info{flex-direction:column;gap:4px;min-width:0;display:flex}.fix-name{font-family:var(--font-mono);color:var(--ink);letter-spacing:.01em;font-size:13px;font-weight:500}.fix-desc{font-family:var(--font-mono);color:var(--ink-2);font-size:11px;line-height:1.55}.fix-row-cmd{align-items:stretch;gap:6px;min-width:0;display:flex}.fix-cmd-code{min-width:0;font-family:var(--font-mono);color:var(--accent-green);background:var(--bg);border:1px solid var(--line);letter-spacing:.02em;white-space:nowrap;flex:1;align-items:center;padding:8px 12px;font-size:11px;display:flex;overflow-x:auto}.copy-icon-btn{border:1px solid var(--line);background:var(--bg);color:var(--ink-2);font-family:var(--font-mono);cursor:pointer;justify-content:center;align-items:center;min-width:36px;padding:0 10px;font-size:12px;transition:color .14s,border-color .14s;display:inline-flex}.copy-icon-btn:hover{color:var(--accent-pink);border-color:var(--accent-pink)}.cbb-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:stretch;gap:14px;display:grid}@media (max-width:720px){.cbb-grid{grid-template-columns:1fr}}.cbb-card{border:1px solid var(--line-2);background:var(--bg-2);flex-direction:column;gap:12px;padding:18px 20px;display:flex}.cbb-card-title{font-family:var(--font-mono);color:var(--ink);letter-spacing:.02em;font-size:14px}.cbb-card-sub{font-family:var(--font-mono);color:var(--ink-2);font-size:11px;line-height:1.55}.cbb-card-primary{border-left:2px solid var(--accent-pink)}.cbb-card-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.cbb-pill{font-family:var(--font-mono);letter-spacing:.1em;white-space:nowrap;border:1px solid var(--line-2);color:var(--dim);padding:4px 8px;font-size:9.5px}.cbb-pill.on{border-color:var(--accent-green-shadow);color:var(--accent-green)}.cbb-row{font-family:var(--font-mono);color:var(--ink);align-items:center;gap:10px;font-size:12px;line-height:1.5;display:flex}.cbb-row-interval{flex-wrap:wrap;gap:9px}.cbb-muted{color:var(--ink-2)}.cbb-hint{color:var(--dim);font-size:10.5px}.cbb-strong{color:var(--ink)}.cbb-num{font-family:var(--font-mono);background:var(--bg);border:1px solid var(--line-2);width:58px;color:var(--ink);border-radius:0;padding:5px 10px;font-size:12px}.cbb-num:focus-visible{outline:2px solid var(--accent-pink);outline-offset:1px}.cbb-toggle{background:var(--line-2);cursor:pointer;border:none;border-radius:9px;flex:none;width:34px;height:18px;padding:0;transition:background .12s;position:relative}.cbb-toggle[data-on=true]{background:var(--accent-pink)}.cbb-toggle:disabled{opacity:.5;cursor:not-allowed}.cbb-toggle:focus-visible{outline:2px solid var(--accent-pink);outline-offset:2px}.cbb-toggle-knob{background:var(--bg);border-radius:50%;width:14px;height:14px;transition:transform .12s;position:absolute;top:2px;left:2px}.cbb-toggle[data-on=true] .cbb-toggle-knob{transform:translate(16px)}.cbb-identity{font-family:var(--font-mono);color:var(--ink-2);flex-wrap:wrap;align-items:baseline;gap:8px;font-size:11px;display:flex}.cbb-email{color:var(--accent-green)}.cbb-link-inline{color:var(--dim);text-underline-offset:2px;font-size:11px;text-decoration:underline}.cbb-link-inline:hover{color:var(--ink)}.cbb-warn{font-family:var(--font-mono);color:var(--accent-pink);font-size:11px;line-height:1.6}.cbb-warn-inline{color:var(--accent-pink)}.cbb-foot-block{border-top:1px dashed var(--line);font-family:var(--font-mono);flex-direction:column;gap:6px;margin-top:auto;padding-top:12px;font-size:11px;display:flex}.cbb-run-btn{font-family:var(--font-mono);text-align:center;border:1px solid var(--line-2);color:var(--ink);cursor:pointer;background:0 0;margin-top:6px;padding:8px 12px;font-size:12px}.cbb-run-btn:hover:not(:disabled){border-color:var(--accent-pink);color:var(--accent-pink)}.cbb-run-btn:disabled{opacity:.5;cursor:not-allowed}.cbb-run-btn:focus-visible{outline:2px solid var(--accent-pink);outline-offset:2px}.cbb-note{font-family:var(--font-mono);color:var(--dim);margin-top:14px;font-size:10.5px;line-height:1.55}.perks-progress{background:var(--bg);border:1px solid var(--line-2);height:6px;margin:4px 0;position:relative}.perks-progress span{background:var(--accent-pink);height:100%;transition:width .24s;display:block}.perks-meta{font-family:var(--font-mono);color:var(--ink-2);font-size:11px}.perks-meta strong{color:var(--accent-pink);font-weight:600}.invite-btn{border:1px solid var(--accent-pink);background:var(--accent-pink-bg);color:var(--accent-pink);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;align-self:flex-start;padding:8px 14px;font-size:11px;transition:background-color .14s}.invite-btn:hover{background:#e4587c2e}.invite-textarea{resize:vertical;letter-spacing:.02em;width:100%;min-height:90px;font-size:13px;line-height:1.45}.invite-summary{font-family:var(--font-mono);color:var(--dim);flex-wrap:wrap;gap:12px;margin-top:6px;font-size:11px;display:flex}.invite-summary .invite-valid{color:var(--accent-green)}.invite-summary .invite-invalid{color:var(--accent-pink)}.cbb-foot{font-family:var(--font-mono);color:var(--dim);margin-top:4px;font-size:10px}@media (max-width:720px){.cbb-grid{grid-template-columns:1fr}.fix-row{grid-template-columns:1fr;gap:8px}.fix-row-cmd{min-width:0}.quirks-thead,.quirks-row{grid-template-columns:1fr;gap:6px;padding:16px 0}.quirks-thead{display:none}}.share-card{max-width:420px}
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
.auth-dialog-backdrop{z-index:10000;-webkit-backdrop-filter:blur(6px);background:#08080ab3;place-items:center;padding:32px 16px;display:grid;position:fixed;inset:0}.auth-dialog{border:1px solid var(--line-2);background:var(--bg-2);width:100%;max-width:420px;font-family:var(--font-mono);color:var(--ink);padding:28px 28px 24px;position:relative}.auth-close{font-family:var(--font-mono);color:var(--dim);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:20px;line-height:1;transition:color .12s;position:absolute;top:12px;right:14px}.auth-close:hover{color:var(--accent-pink)}.auth-close:disabled{color:var(--line-2);cursor:not-allowed}.auth-headline{font-family:var(--font-mono);letter-spacing:0;text-transform:none;color:var(--ink);margin:0 0 8px;font-size:18px;font-weight:600;line-height:1.3}.auth-sub{font-family:var(--font-mono);color:var(--ink-2);margin:0 0 18px;font-size:12px;line-height:1.55}.auth-sub .auth-email{color:var(--accent-pink)}.auth-sub .auth-ok{color:var(--accent-green);margin-right:6px}.auth-form{flex-direction:column;gap:10px;display:flex}.auth-field-label{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--accent-green);font-size:10px}.auth-input{background:var(--bg);border:1px solid var(--line-2);width:100%;color:var(--ink);font-family:var(--font-mono);letter-spacing:.03em;outline:none;padding:11px 14px;font-size:14px;transition:border-color .12s,box-shadow .12s}.auth-input:focus{border-color:var(--accent-pink);box-shadow:0 0 0 1px var(--accent-pink-soft)}.auth-input:disabled{opacity:.55;cursor:not-allowed}.auth-input-code{letter-spacing:.5em;text-align:center;font-variant-numeric:tabular-nums;font-size:18px}.auth-input::placeholder{color:var(--dim)}.auth-error{font-family:var(--font-mono);color:var(--accent-pink);background:var(--accent-pink-bg);border:1px solid var(--accent-pink);letter-spacing:.02em;border-left-width:3px;margin-top:4px;padding:8px 12px;font-size:12px}.auth-actions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.auth-btn{font-family:var(--font-mono);letter-spacing:.06em;border:1px solid var(--line-2);color:var(--ink);cursor:pointer;background:0 0;align-items:center;gap:8px;padding:10px 16px;font-size:12px;transition:all .12s;display:inline-flex}.auth-btn:hover:not(:disabled){border-color:var(--ink);background:#ffffff0a}.auth-btn:disabled{opacity:.45;cursor:not-allowed}.auth-btn.primary{border-color:var(--accent-pink);color:var(--accent-pink);background:var(--accent-pink-bg)}.auth-btn.primary:hover:not(:disabled){background:var(--accent-pink);color:var(--bg)}.auth-back{font-family:var(--font-mono);letter-spacing:.1em;color:var(--dim);cursor:pointer;background:0 0;border:none;align-self:flex-start;margin-top:4px;padding:6px 0;font-size:11px;transition:color .12s}.auth-back:hover:not(:disabled){color:var(--ink-2)}.auth-back:disabled{opacity:.45;cursor:not-allowed}@media (max-width:520px){.auth-dialog{padding:26px 22px 22px}.auth-actions{flex-direction:column;align-items:stretch}.auth-btn{justify-content:center}}
|
|
2
1
|
.set-sec{max-width:940px}.set-console{background:var(--line);border:1px solid var(--line);box-shadow:6px 6px 0 0 var(--accent-pink-shadow);flex-direction:column;gap:1px;display:flex}.set-cell{background:var(--bg-2);padding:20px 22px}.set-stats{background:var(--line);grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.set-stat{background:var(--bg-2);flex-direction:column;gap:7px;min-width:0;padding:16px 18px 15px;display:flex}.set-stat-label{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--dim);font-size:9.5px;font-weight:500}.set-stat-value{font-family:var(--font-display);letter-spacing:.04em;color:var(--ink);text-transform:lowercase;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:26px;line-height:1}.set-stat-value.ok{color:var(--accent-green)}.set-stat-value.warn{color:var(--accent-pink)}.set-stat-sub{font-family:var(--font-mono);color:var(--ink-2);min-height:1.5em;font-size:10.5px;line-height:1.5}.set-cols{background:var(--line);grid-template-columns:1.28fr 1fr;gap:1px;display:grid}.set-config{flex-direction:column;gap:16px;display:flex}.set-cell-title{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-2);margin:0;font-size:10px;font-weight:600}.set-actions{margin-top:auto;padding-top:4px}.set-how{flex-direction:column;gap:16px;display:flex}.set-how-list{flex-direction:column;gap:14px;margin:0;display:flex}.set-how-row{grid-template-columns:58px 1fr;align-items:baseline;gap:12px;display:grid}.set-how-label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-pink);font-size:9.5px;font-weight:500}.set-how-body{font-family:var(--font-mono);color:var(--ink-2);margin:0;font-size:11.5px;line-height:1.65}.set-mast{margin-bottom:28px}.set-title{font-family:var(--font-display);letter-spacing:.06em;color:var(--ink);text-transform:lowercase;margin:0 0 10px;font-size:40px;line-height:1}.set-lede{font-family:var(--font-mono);color:var(--ink-2);max-width:64ch;margin:0;font-size:13px;line-height:1.6}.set-row{font-family:var(--font-mono);color:var(--ink);align-items:center;gap:12px;font-size:13px;display:flex}.set-row-main{align-items:flex-start}.set-row-copy{flex-direction:column;gap:3px;line-height:1.5;display:flex}.set-row-interval{flex-wrap:wrap;gap:10px}.set-row-identity{flex-wrap:wrap;gap:8px;font-size:12px}.set-strong{color:var(--ink)}.set-dim{color:var(--ink-2)}.set-hint{color:var(--dim);font-size:11px}.set-email{color:var(--accent-green)}.set-num{font-family:var(--font-mono);background:var(--bg);border:1px solid var(--line-2);width:62px;color:var(--ink);border-radius:0;padding:6px 10px;font-size:13px}.set-num:focus-visible{outline:2px solid var(--accent-pink);outline-offset:1px}.set-link{font-family:var(--font-mono);color:var(--dim);text-underline-offset:3px;background:0 0;border:none;padding:0;font-size:12px;text-decoration:underline}.set-link:hover:not(:disabled){color:var(--ink)}.set-link:disabled{opacity:.5;cursor:not-allowed}.set-link:focus-visible{outline:2px solid var(--accent-pink);outline-offset:2px}.set-warn{font-family:var(--font-mono);color:var(--accent-pink);margin:0;font-size:12px;line-height:1.6}.set-warn-inline{color:var(--accent-pink)}.set-rule{background:var(--line);height:1px;margin:2px 0}.sw{background:var(--line-2);cursor:pointer;border:none;border-radius:10px;flex:none;width:38px;height:20px;padding:0;transition:background-color .14s cubic-bezier(.22,1,.36,1);position:relative}.sw[data-on=true]{background:var(--accent-pink)}.sw:disabled{opacity:.5;cursor:not-allowed}.sw:focus-visible{outline:2px solid var(--accent-pink);outline-offset:3px}.sw-knob{background:var(--bg);border-radius:50%;width:14px;height:14px;transition:transform .14s cubic-bezier(.22,1,.36,1);position:absolute;top:3px;left:3px}.sw[data-on=true] .sw-knob{transform:translate(18px)}.tape{flex-direction:column;gap:8px;margin-top:26px;display:flex}.tape-rail{background:var(--line-2);height:3px;position:relative}.tape-fill{background:var(--accent-green);opacity:.55;position:absolute;inset:0 auto 0 0}.tape-now{background:var(--accent-pink);width:2px;height:11px;position:absolute;top:-4px;transform:translate(-1px)}.tape-ends{font-family:var(--font-mono);letter-spacing:.04em;color:var(--dim);justify-content:space-between;gap:12px;font-size:10.5px;display:flex}.tape-next{color:var(--ink-2)}@media (max-width:860px){.set-stats{grid-template-columns:repeat(2,1fr)}.set-cols{grid-template-columns:1fr}}@media (max-width:640px){.set-title{font-size:32px}.set-console{box-shadow:4px 4px 0 0 var(--accent-pink-shadow)}.set-stat-value{font-size:22px}.set-cell{padding:18px}}@media (max-width:420px){.set-stats{grid-template-columns:1fr}.set-how-row{grid-template-columns:1fr;gap:4px}}@media (prefers-reduced-motion:reduce){.sw,.sw-knob{transition:none}}
|