@templatical/editor 0.27.1 → 0.27.3
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/dist/{AiChatSidebar-iVJDzqjr.js → AiChatSidebar-inzMb2Vi.js} +1 -1
- package/dist/{AiFeatureMenu-DrLGc2H2.js → AiFeatureMenu-BTdgjwdx.js} +3 -3
- package/dist/{BlockIssueBadge-BHysq7XQ.js → BlockIssueBadge-a7jENlL4.js} +2 -2
- package/dist/{BlockPreviewCanvas-2WASf5A4.js → BlockPreviewCanvas-CMuRmhQg.js} +2 -2
- package/dist/{CloudHeaderExtras-DWApyc4P.js → CloudHeaderExtras-Bgr-Ox9M.js} +2 -2
- package/dist/{CloudPanels-DvOhGdRj.js → CloudPanels-oFNlTOO5.js} +3 -3
- package/dist/{CollaboratorBar-C6MC0UCk.js → CollaboratorBar-BHja900c.js} +2 -2
- package/dist/{ColorPicker-Di8L5TLQ.js → ColorPicker-ClUa_hMj.js} +3 -3
- package/dist/{CommentsPanel-D5wQB1Kf.js → CommentsPanel-CB1-poNb.js} +1 -1
- package/dist/{CommentsSidebar-BoTIxpLE.js → CommentsSidebar-B6mV8ft4.js} +2 -2
- package/dist/{CountdownBlock-BFX8iU90.js → CountdownBlock-qKtJVRIV.js} +1 -1
- package/dist/{CountdownToolbar-d9QM4m5x.js → CountdownToolbar-BpnKUXN_.js} +2 -2
- package/dist/{DesignReferenceSidebar-DKsx2TiL.js → DesignReferenceSidebar-BC5UxrJl.js} +2 -2
- package/dist/{IssuesPanel-flKKwKpM.js → IssuesPanel-BFczwZkL.js} +38 -37
- package/dist/{MergeTagModeToggle-PKCoKAoF.js → MergeTagModeToggle-koHNtEJe.js} +2 -2
- package/dist/{ParagraphEditor-iwTjkjtx.js → ParagraphEditor-cKosDi_l.js} +7 -7
- package/dist/{RestoreVersionDialog-DyMPGfsr.js → RestoreVersionDialog-DpZmcFuf.js} +2 -2
- package/dist/{RichTextEditorContent-BVXG9oF4.js → RichTextEditorContent-Br3WBNOs.js} +4 -4
- package/dist/{SaveBlockDialog-BMCAIfK9.js → SaveBlockDialog-C7mSGScN.js} +5 -5
- package/dist/{SavedBlocksBrowserModal-p5ma1qay.js → SavedBlocksBrowserModal-D7MYzuVP.js} +6 -6
- package/dist/{SavedBlocksPanels-BsiSstsZ.js → SavedBlocksPanels-D5T63WyR.js} +1 -1
- package/dist/{SavedBlocksPickBar-fU4Mjm-8.js → SavedBlocksPickBar-BluJS58M.js} +2 -2
- package/dist/{TemplateScoringPanel-Bv_bBsJi.js → TemplateScoringPanel-C0z27t2p.js} +2 -2
- package/dist/{TestEmailModal-EFYcrmTk.js → TestEmailModal-DoSIuHXe.js} +6 -6
- package/dist/{TestEmailPanel-ljriUqs1.js → TestEmailPanel-3Y6uUX3Z.js} +1 -1
- package/dist/{TitleEditor-BqRW7HTz.js → TitleEditor-D9IWtoH3.js} +6 -6
- package/dist/{TplModal-CTC9-w6B.js → TplModal-CyBCFn5s.js} +3 -3
- package/dist/{VersionHistoryMenu-Cq4rH56t.js → VersionHistoryMenu-8nd_aOnh.js} +1 -1
- package/dist/{VersionHistoryPanels-GkxkBiSi.js → VersionHistoryPanels-Cm7MxfrI.js} +1 -1
- package/dist/{VersionPreviewBanner-BdtTu9mI.js → VersionPreviewBanner-B9w773jz.js} +1 -1
- package/dist/{blockTypeIcons-CIrMr1SJ.js → blockTypeIcons-BRCuWioG.js} +1 -1
- package/dist/bundle-stats.json +7 -7
- package/dist/cdn/chunks/{AiChatSidebar-DTUoBH5a.js → AiChatSidebar-BIvQg9Q5.js} +2 -2
- package/dist/cdn/chunks/{AiChatSidebar-DTUoBH5a.js.map → AiChatSidebar-BIvQg9Q5.js.map} +1 -1
- package/dist/cdn/chunks/{AiFeatureMenu-BQz9Kczt.js → AiFeatureMenu-BMvcmvDZ.js} +4 -4
- package/dist/cdn/chunks/{AiFeatureMenu-BQz9Kczt.js.map → AiFeatureMenu-BMvcmvDZ.js.map} +1 -1
- package/dist/cdn/chunks/{BlockIssueBadge-UzSSOM_2.js → BlockIssueBadge-Drrmjqd7.js} +3 -3
- package/dist/cdn/chunks/{BlockIssueBadge-UzSSOM_2.js.map → BlockIssueBadge-Drrmjqd7.js.map} +1 -1
- package/dist/cdn/chunks/{BlockPreviewCanvas-40ocpXDD.js → BlockPreviewCanvas-CuWJLv8h.js} +3 -3
- package/dist/cdn/chunks/{BlockPreviewCanvas-40ocpXDD.js.map → BlockPreviewCanvas-CuWJLv8h.js.map} +1 -1
- package/dist/cdn/chunks/{CloudHeaderExtras-F_ySlW1S.js → CloudHeaderExtras-Ctat5U0M.js} +3 -3
- package/dist/cdn/chunks/{CloudHeaderExtras-F_ySlW1S.js.map → CloudHeaderExtras-Ctat5U0M.js.map} +1 -1
- package/dist/cdn/chunks/{CloudPanels-C34bcHpc.js → CloudPanels-YRYmXE9O.js} +4 -4
- package/dist/cdn/chunks/{CloudPanels-C34bcHpc.js.map → CloudPanels-YRYmXE9O.js.map} +1 -1
- package/dist/cdn/chunks/{CollaboratorBar-WBtrPPnM.js → CollaboratorBar-DgdxBCkN.js} +3 -3
- package/dist/cdn/chunks/{CollaboratorBar-WBtrPPnM.js.map → CollaboratorBar-DgdxBCkN.js.map} +1 -1
- package/dist/cdn/chunks/{ColorPicker-CxKYd_8N.js → ColorPicker-B-we7_bC.js} +4 -4
- package/dist/cdn/chunks/{ColorPicker-CxKYd_8N.js.map → ColorPicker-B-we7_bC.js.map} +1 -1
- package/dist/cdn/chunks/{CommentsPanel-jzZ2X0P4.js → CommentsPanel-D7Y-74Nj.js} +2 -2
- package/dist/cdn/chunks/{CommentsPanel-jzZ2X0P4.js.map → CommentsPanel-D7Y-74Nj.js.map} +1 -1
- package/dist/cdn/chunks/{CommentsSidebar-Dxke-vUP.js → CommentsSidebar-DxTobvYS.js} +3 -3
- package/dist/cdn/chunks/{CommentsSidebar-Dxke-vUP.js.map → CommentsSidebar-DxTobvYS.js.map} +1 -1
- package/dist/cdn/chunks/{CountdownBlock-BYSrJWxg.js → CountdownBlock-BKrYGRiT.js} +2 -2
- package/dist/cdn/chunks/{CountdownBlock-BYSrJWxg.js.map → CountdownBlock-BKrYGRiT.js.map} +1 -1
- package/dist/cdn/chunks/{CountdownToolbar-pVbkPNVo.js → CountdownToolbar-D8QWL-jK.js} +3 -3
- package/dist/cdn/chunks/{CountdownToolbar-pVbkPNVo.js.map → CountdownToolbar-D8QWL-jK.js.map} +1 -1
- package/dist/cdn/chunks/{DesignReferenceSidebar-sZWciECR.js → DesignReferenceSidebar-D9Lm4Al0.js} +3 -3
- package/dist/cdn/chunks/{DesignReferenceSidebar-sZWciECR.js.map → DesignReferenceSidebar-D9Lm4Al0.js.map} +1 -1
- package/dist/cdn/chunks/{IssuesPanel-CHtetM9i.js → IssuesPanel-Dz90c1C6.js} +36 -34
- package/dist/cdn/chunks/IssuesPanel-Dz90c1C6.js.map +1 -0
- package/dist/cdn/chunks/{MergeTagModeToggle-ZwW-5EeN.js → MergeTagModeToggle-CfFrfYNC.js} +3 -3
- package/dist/cdn/chunks/{MergeTagModeToggle-ZwW-5EeN.js.map → MergeTagModeToggle-CfFrfYNC.js.map} +1 -1
- package/dist/cdn/chunks/{ParagraphEditor-BBcIQQK2.js → ParagraphEditor-Be-BO5hD.js} +8 -8
- package/dist/cdn/chunks/{ParagraphEditor-BBcIQQK2.js.map → ParagraphEditor-Be-BO5hD.js.map} +1 -1
- package/dist/cdn/chunks/{RestoreVersionDialog-DNUZHFa_.js → RestoreVersionDialog-CKtz_FEz.js} +3 -3
- package/dist/cdn/chunks/{RestoreVersionDialog-DNUZHFa_.js.map → RestoreVersionDialog-CKtz_FEz.js.map} +1 -1
- package/dist/cdn/chunks/{RichTextEditorContent-Cl-acKAD.js → RichTextEditorContent-D3eWZ793.js} +5 -5
- package/dist/cdn/chunks/{RichTextEditorContent-Cl-acKAD.js.map → RichTextEditorContent-D3eWZ793.js.map} +1 -1
- package/dist/cdn/chunks/{SaveBlockDialog-BXTZ729e.js → SaveBlockDialog-C5nT7Fxi.js} +6 -6
- package/dist/cdn/chunks/{SaveBlockDialog-BXTZ729e.js.map → SaveBlockDialog-C5nT7Fxi.js.map} +1 -1
- package/dist/cdn/chunks/{SavedBlocksBrowserModal-BqGNBpRR.js → SavedBlocksBrowserModal-Cvyewimb.js} +6 -6
- package/dist/cdn/chunks/{SavedBlocksBrowserModal-BqGNBpRR.js.map → SavedBlocksBrowserModal-Cvyewimb.js.map} +1 -1
- package/dist/cdn/chunks/{SavedBlocksPanels-nbK0UQTp.js → SavedBlocksPanels-B7aBlxKW.js} +2 -2
- package/dist/cdn/chunks/SavedBlocksPanels-B7aBlxKW.js.map +1 -0
- package/dist/cdn/chunks/{SavedBlocksPickBar-B9mbw3Gk.js → SavedBlocksPickBar-D0opM9P9.js} +3 -3
- package/dist/cdn/chunks/{SavedBlocksPickBar-B9mbw3Gk.js.map → SavedBlocksPickBar-D0opM9P9.js.map} +1 -1
- package/dist/cdn/chunks/{TemplateScoringPanel-Xdkp2EMY.js → TemplateScoringPanel-DEsNZlHe.js} +3 -3
- package/dist/cdn/chunks/{TemplateScoringPanel-Xdkp2EMY.js.map → TemplateScoringPanel-DEsNZlHe.js.map} +1 -1
- package/dist/cdn/chunks/{TestEmailModal-DE6fi3he.js → TestEmailModal-BANpGbEP.js} +7 -7
- package/dist/cdn/chunks/{TestEmailModal-DE6fi3he.js.map → TestEmailModal-BANpGbEP.js.map} +1 -1
- package/dist/cdn/chunks/{TestEmailPanel-CAjQDXle.js → TestEmailPanel-DItZMP3B.js} +2 -2
- package/dist/cdn/chunks/TestEmailPanel-DItZMP3B.js.map +1 -0
- package/dist/cdn/chunks/{TitleEditor-BP0ewaWF.js → TitleEditor-D_NJ4Ww8.js} +7 -7
- package/dist/cdn/chunks/{TitleEditor-BP0ewaWF.js.map → TitleEditor-D_NJ4Ww8.js.map} +1 -1
- package/dist/cdn/chunks/{TplModal-C4kJduTr.js → TplModal-C51W8LTn.js} +4 -4
- package/dist/cdn/chunks/{TplModal-C4kJduTr.js.map → TplModal-C51W8LTn.js.map} +1 -1
- package/dist/cdn/chunks/{VersionHistoryMenu-_MAj3qZj.js → VersionHistoryMenu-Cv23A0uu.js} +2 -2
- package/dist/cdn/chunks/{VersionHistoryMenu-_MAj3qZj.js.map → VersionHistoryMenu-Cv23A0uu.js.map} +1 -1
- package/dist/cdn/chunks/{VersionHistoryPanels-DMq2PRee.js → VersionHistoryPanels-DHDN1owI.js} +2 -2
- package/dist/cdn/chunks/{VersionHistoryPanels-DMq2PRee.js.map → VersionHistoryPanels-DHDN1owI.js.map} +1 -1
- package/dist/cdn/chunks/{VersionPreviewBanner-04CL1SGY.js → VersionPreviewBanner-Dw4kFkrh.js} +2 -2
- package/dist/cdn/chunks/VersionPreviewBanner-Dw4kFkrh.js.map +1 -0
- package/dist/cdn/chunks/{createCloudRuntime-gXA8_QRU.js → createCloudRuntime-D75oJ9j-.js} +2 -2
- package/dist/cdn/chunks/{createCloudRuntime-gXA8_QRU.js.map → createCloudRuntime-D75oJ9j-.js.map} +1 -1
- package/dist/cdn/chunks/{extensions-CMcVw2uu.js → extensions-Byo2sA1r.js} +3 -3
- package/dist/cdn/chunks/{extensions-CMcVw2uu.js.map → extensions-Byo2sA1r.js.map} +1 -1
- package/dist/cdn/chunks/{keys-CbQuRX85.js → keys-oJdkdtPn.js} +2 -2
- package/dist/cdn/chunks/{keys-CbQuRX85.js.map → keys-oJdkdtPn.js.map} +1 -1
- package/dist/cdn/chunks/{src-Ct4Fsx3t.js → src-B_pCqXyM.js} +3 -3
- package/dist/cdn/chunks/src-B_pCqXyM.js.map +1 -0
- package/dist/cdn/chunks/{useCloudI18n-NVa1aeY8.js → useCloudI18n-Ch-SiRjU.js} +3 -3
- package/dist/cdn/chunks/{useCloudI18n-NVa1aeY8.js.map → useCloudI18n-Ch-SiRjU.js.map} +1 -1
- package/dist/cdn/chunks/{useEditorCore-DC8gmfs6.js → useEditorCore-BtEO1qms.js} +127 -134
- package/dist/cdn/chunks/useEditorCore-BtEO1qms.js.map +1 -0
- package/dist/cdn/chunks/useEditorRoot-Cxnmf5hM.js +10 -0
- package/dist/cdn/chunks/useEditorRoot-Cxnmf5hM.js.map +1 -0
- package/dist/cdn/chunks/{useI18n-DVWCJJFH.js → useI18n-4sUbTM3Y.js} +3 -3
- package/dist/cdn/chunks/useI18n-4sUbTM3Y.js.map +1 -0
- package/dist/cdn/chunks/{useMergeTag-BfZBRPQp.js → useMergeTag-DxjTEyin.js} +2 -2
- package/dist/cdn/chunks/{useMergeTag-BfZBRPQp.js.map → useMergeTag-DxjTEyin.js.map} +1 -1
- package/dist/cdn/chunks/{usePopoverPosition-BC-HA7TK.js → usePopoverPosition-C1N2kaiZ.js} +2 -2
- package/dist/cdn/chunks/{usePopoverPosition-BC-HA7TK.js.map → usePopoverPosition-C1N2kaiZ.js.map} +1 -1
- package/dist/cdn/chunks/useScrollToBlock-BvWAfWd8.js +22 -0
- package/dist/cdn/chunks/useScrollToBlock-BvWAfWd8.js.map +1 -0
- package/dist/cdn/editor.css +1 -1
- package/dist/cdn/editor.js +1108 -971
- package/dist/cdn/editor.js.map +1 -1
- package/dist/{createCloudRuntime-Bt8W-ajI.js → createCloudRuntime-FEZG-Gve.js} +1 -1
- package/dist/{extensions-CX87G4aL.js → extensions-BV9qfsYr.js} +2 -2
- package/dist/{keys-BxixS0TN.js → keys-CVpi8xCT.js} +1 -1
- package/dist/style.css +1 -1
- package/dist/templatical-editor.js +1261 -1125
- package/dist/{useCloudI18n-CAZTZ9_a.js → useCloudI18n-DmWo4nzs.js} +2 -2
- package/dist/{useEditorCore-CFLzobo_.js → useEditorCore-DoKDh27o.js} +469 -476
- package/dist/useEditorRoot-DKyG95pb.js +8 -0
- package/dist/{useI18n-BfXff_Sy.js → useI18n-CvYvat9_.js} +2 -2
- package/dist/{useMergeTag-Dd4I7kge.js → useMergeTag-D6Z6cyDa.js} +1 -1
- package/dist/{usePopoverPosition-CxhCX3SQ.js → usePopoverPosition-WslxM_PU.js} +1 -1
- package/dist/useScrollToBlock-KA65jhQ_.js +44 -0
- package/package.json +8 -7
- package/dist/cdn/chunks/IssuesPanel-CHtetM9i.js.map +0 -1
- package/dist/cdn/chunks/SavedBlocksPanels-nbK0UQTp.js.map +0 -1
- package/dist/cdn/chunks/TestEmailPanel-CAjQDXle.js.map +0 -1
- package/dist/cdn/chunks/VersionPreviewBanner-04CL1SGY.js.map +0 -1
- package/dist/cdn/chunks/src-Ct4Fsx3t.js.map +0 -1
- package/dist/cdn/chunks/useEditorCore-DC8gmfs6.js.map +0 -1
- package/dist/cdn/chunks/useI18n-DVWCJJFH.js.map +0 -1
- package/dist/list-checks-jw-ZlvWY.js +0 -25
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { E as e } from "./draggable-BfpsXFg7.js";
|
|
2
|
+
import { g as t } from "./keys-oJdkdtPn.js";
|
|
3
|
+
//#region src/composables/useEditorRoot.ts
|
|
4
|
+
function n() {
|
|
5
|
+
return e(t, document) ?? document;
|
|
6
|
+
}
|
|
7
|
+
//#endregion
|
|
8
|
+
export { n as t };
|
|
9
|
+
|
|
10
|
+
//# sourceMappingURL=useEditorRoot-Cxnmf5hM.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useEditorRoot-Cxnmf5hM.js","names":[],"sources":["../../../src/composables/useEditorRoot.ts"],"sourcesContent":["import { inject } from \"vue\";\nimport { EDITOR_ROOT_KEY } from \"../keys\";\n\n/**\n * Returns the editor's effective DOM root — `Document` when mounted in light\n * DOM, `ShadowRoot` when mounted with `shadowDom: true`.\n *\n * Use this instead of reaching for `document` directly when the code is\n * shadow-DOM-aware (focus trap, selection, popover mount, etc.). Both\n * `Document` and `ShadowRoot` expose the same subset of APIs the editor\n * needs (`activeElement`, `getSelection?`, `querySelector`, `appendChild`),\n * so call sites usually don't need to branch.\n *\n * Falls back to `document` if no provider is in scope — keeps headless /\n * test-utility usage working without explicit wiring.\n *\n * Internal — not exported from the package entry.\n */\nexport function useEditorRoot(): Document | ShadowRoot {\n // When called outside a Vue setup() context (e.g. direct composable\n // invocation in unit tests), Vue's inject() warns and returns undefined\n // regardless of the default arg. Coalesce explicitly so callers always\n // get a usable root — keeps test ergonomics simple and matches the\n // \"headless fallback to document\" semantics this composable promises.\n const root = inject(EDITOR_ROOT_KEY, document);\n return root ?? document;\n}\n"],"mappings":";;;AAkBA,SAAgB,IAAuC;CAOrD,OADa,EAAO,GAAiB,QAC9B,KAAQ;AACjB"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { E as e, q as t } from "./draggable-BfpsXFg7.js";
|
|
2
|
-
import { V as n } from "./keys-
|
|
2
|
+
import { V as n } from "./keys-oJdkdtPn.js";
|
|
3
3
|
//#region src/composables/useI18n.ts
|
|
4
4
|
function r(r) {
|
|
5
5
|
let i = r ?? e(n, null);
|
|
6
|
-
if (!i) throw Error("useI18n() requires a translations provider. Ensure the component
|
|
6
|
+
if (!i) throw Error("useI18n() requires a translations provider. Ensure the component renders inside the editor, below Editor.vue.");
|
|
7
7
|
let a = t(i) ? i.value : i;
|
|
8
8
|
function o(e, t) {
|
|
9
9
|
return e.replace(/\{(\w+)\}/g, (e, n) => n in t ? String(t[n]) : `{${n}}`);
|
|
@@ -16,4 +16,4 @@ function r(r) {
|
|
|
16
16
|
//#endregion
|
|
17
17
|
export { r as t };
|
|
18
18
|
|
|
19
|
-
//# sourceMappingURL=useI18n-
|
|
19
|
+
//# sourceMappingURL=useI18n-4sUbTM3Y.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useI18n-4sUbTM3Y.js","names":[],"sources":["../../../src/composables/useI18n.ts"],"sourcesContent":["import type { Translations } from \"../i18n\";\nimport { type Ref, inject, isRef } from \"vue\";\nimport { TRANSLATIONS_KEY } from \"../keys\";\n\nexport interface UseI18nReturn {\n /** Current translations object */\n t: Translations;\n /** Format a string with placeholders */\n format: (template: string, values: Record<string, string | number>) => string;\n}\n\n/**\n * Composable for internationalization.\n * Provides access to the current locale's translations.\n *\n * @param translationsOverride - Optional translations to use instead of injected value\n */\nexport function useI18n(translationsOverride?: Translations): UseI18nReturn {\n const injected =\n translationsOverride ??\n (inject(TRANSLATIONS_KEY, null) as Translations | Ref<Translations> | null);\n\n if (!injected) {\n throw new Error(\n \"useI18n() requires a translations provider. Ensure the component renders inside the editor, below Editor.vue.\",\n );\n }\n\n const t: Translations = isRef(injected) ? injected.value : injected;\n\n /**\n * Format a string with placeholders.\n * e.g., format('{minutes}m ago', { minutes: 5 }) -> '5m ago'\n */\n function format(\n template: string,\n values: Record<string, string | number>,\n ): string {\n return template.replace(/\\{(\\w+)\\}/g, (_, key) => {\n return key in values ? String(values[key]) : `{${key}}`;\n });\n }\n\n return {\n t,\n format,\n };\n}\n"],"mappings":";;;AAiBA,SAAgB,EAAQ,GAAoD;CAC1E,IAAM,IACJ,KACC,EAAO,GAAkB,IAAI;CAEhC,IAAI,CAAC,GACH,MAAU,MACR,+GACF;CAGF,IAAM,IAAkB,EAAM,CAAQ,IAAI,EAAS,QAAQ;CAM3D,SAAS,EACP,GACA,GACQ;EACR,OAAO,EAAS,QAAQ,eAAe,GAAG,MACjC,KAAO,IAAS,OAAO,EAAO,EAAI,IAAI,IAAI,EAAI,EACtD;CACH;CAEA,OAAO;EACL;EACA;CACF;AACF"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { E as e, Q as t } from "./draggable-BfpsXFg7.js";
|
|
2
2
|
import { f as n, o as r, r as i } from "./src-B_QJduQD.js";
|
|
3
|
-
import { D as a, E as o, M as s, T as c, k as l } from "./keys-
|
|
3
|
+
import { D as a, E as o, M as s, T as c, k as l } from "./keys-oJdkdtPn.js";
|
|
4
4
|
//#region src/composables/useMergeTag.ts
|
|
5
5
|
function u() {
|
|
6
6
|
let u = e(c, []), d = e(l, i.liquid), f = e(s, null), p = e(o, !0), m = e(a, null), h = t(!1);
|
|
@@ -43,4 +43,4 @@ function u() {
|
|
|
43
43
|
//#endregion
|
|
44
44
|
export { u as t };
|
|
45
45
|
|
|
46
|
-
//# sourceMappingURL=useMergeTag-
|
|
46
|
+
//# sourceMappingURL=useMergeTag-DxjTEyin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMergeTag-
|
|
1
|
+
{"version":3,"file":"useMergeTag-DxjTEyin.js","names":[],"sources":["../../../src/composables/useMergeTag.ts"],"sourcesContent":["import type { MergeTag, SyntaxPreset } from \"@templatical/types\";\nimport {\n isMergeTagValue as checkIsMergeTagValue,\n getMergeTagLabel as resolveMergeTagLabel,\n SYNTAX_PRESETS,\n} from \"@templatical/types\";\nimport { inject, ref, type Ref } from \"vue\";\nimport {\n MERGE_TAGS_KEY,\n MERGE_TAG_SYNTAX_KEY,\n MERGE_TAG_AUTOCOMPLETE_KEY,\n MERGE_TAG_PICKER_KEY,\n ON_REQUEST_MERGE_TAG_KEY,\n} from \"../keys\";\n\nexport interface UseMergeTagReturn {\n /** Available merge tags from config */\n mergeTags: MergeTag[];\n /** Whether a merge tag request is in progress */\n isRequesting: Ref<boolean>;\n /**\n * Whether the \"Insert merge tag\" button should be shown. True when\n * either `onRequestMergeTag` is provided or `mergeTags.tags` is\n * non-empty (the built-in picker then handles the click).\n */\n canRequestMergeTag: boolean;\n /** Whether typing-based autocomplete is enabled by configuration */\n autocomplete: boolean;\n /** The resolved syntax preset for merge tags */\n syntax: SyntaxPreset;\n /** Check if a value matches the configured merge tag syntax */\n isMergeTagValue: (value: string) => boolean;\n /** Get the human-readable label for a merge tag value */\n getMergeTagLabel: (value: string) => string;\n /**\n * Request a merge tag from the user. Precedence: when\n * `onRequestMergeTag` is set it owns the UX; otherwise the built-in\n * picker opens with the configured `mergeTags.tags`; otherwise null.\n */\n requestMergeTag: () => Promise<MergeTag | null>;\n}\n\n/**\n * Composable for merge tag functionality.\n * Provides utilities for detecting, displaying, and requesting merge tags.\n */\nexport function useMergeTag(): UseMergeTagReturn {\n const mergeTags = inject(MERGE_TAGS_KEY, []);\n const syntax = inject(MERGE_TAG_SYNTAX_KEY, SYNTAX_PRESETS.liquid);\n const onRequestMergeTag = inject(ON_REQUEST_MERGE_TAG_KEY, null);\n const autocomplete = inject(MERGE_TAG_AUTOCOMPLETE_KEY, true);\n // Picker may be null in headless contexts (tests, non-editor consumers).\n // requestMergeTag() returns null in that case rather than throwing.\n const picker = inject(MERGE_TAG_PICKER_KEY, null);\n\n const isRequesting = ref(false);\n\n function isMergeTagValue(value: string): boolean {\n return checkIsMergeTagValue(value, syntax);\n }\n\n function getMergeTagLabel(value: string): string {\n return resolveMergeTagLabel(value, mergeTags);\n }\n\n /**\n * Request a merge tag from the user. Precedence:\n * 1. `onRequestMergeTag` callback (consumer-owned UX)\n * 2. Built-in picker over `mergeTags.tags`\n * 3. null (nothing configured)\n */\n async function requestMergeTag(): Promise<MergeTag | null> {\n if (onRequestMergeTag) {\n isRequesting.value = true;\n try {\n return await onRequestMergeTag();\n } finally {\n isRequesting.value = false;\n }\n }\n if (mergeTags.length > 0 && picker) {\n isRequesting.value = true;\n try {\n return await picker.open(mergeTags);\n } finally {\n isRequesting.value = false;\n }\n }\n return null;\n }\n\n const canRequestMergeTag = !!onRequestMergeTag || mergeTags.length > 0;\n\n return {\n mergeTags,\n isRequesting,\n canRequestMergeTag,\n autocomplete,\n syntax,\n isMergeTagValue,\n getMergeTagLabel,\n requestMergeTag,\n };\n}\n"],"mappings":";;;;AA8CA,SAAgB,IAAiC;CAC/C,IAAM,IAAY,EAAO,GAAgB,CAAC,CAAC,GACrC,IAAS,EAAO,GAAsB,EAAe,MAAM,GAC3D,IAAoB,EAAO,GAA0B,IAAI,GACzD,IAAe,EAAO,GAA4B,EAAI,GAGtD,IAAS,EAAO,GAAsB,IAAI,GAE1C,IAAe,EAAI,EAAK;CAE9B,SAAS,EAAgB,GAAwB;EAC/C,OAAO,EAAqB,GAAO,CAAM;CAC3C;CAEA,SAAS,EAAiB,GAAuB;EAC/C,OAAO,EAAqB,GAAO,CAAS;CAC9C;CAQA,eAAe,IAA4C;EACzD,IAAI,GAAmB;GACrB,EAAa,QAAQ;GACrB,IAAI;IACF,OAAO,MAAM,EAAkB;GACjC,UAAU;IACR,EAAa,QAAQ;GACvB;EACF;EACA,IAAI,EAAU,SAAS,KAAK,GAAQ;GAClC,EAAa,QAAQ;GACrB,IAAI;IACF,OAAO,MAAM,EAAO,KAAK,CAAS;GACpC,UAAU;IACR,EAAa,QAAQ;GACvB;EACF;EACA,OAAO;CACT;CAIA,OAAO;EACL;EACA;EACA,oBALyB,CAAC,CAAC,KAAqB,EAAU,SAAS;EAMnE;EACA;EACA,iBAAA;EACA,kBAAA;EACA;CACF;AACF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { E as e, Q as t } from "./draggable-BfpsXFg7.js";
|
|
2
|
-
import { P as n } from "./keys-
|
|
2
|
+
import { P as n } from "./keys-oJdkdtPn.js";
|
|
3
3
|
//#region src/utils/resolveColorsConfig.ts
|
|
4
4
|
var r = {
|
|
5
5
|
presets: [],
|
|
@@ -58,4 +58,4 @@ function l() {
|
|
|
58
58
|
//#endregion
|
|
59
59
|
export { r as a, o as i, c as n, a as o, s as r, l as t };
|
|
60
60
|
|
|
61
|
-
//# sourceMappingURL=usePopoverPosition-
|
|
61
|
+
//# sourceMappingURL=usePopoverPosition-C1N2kaiZ.js.map
|
package/dist/cdn/chunks/{usePopoverPosition-BC-HA7TK.js.map → usePopoverPosition-C1N2kaiZ.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePopoverPosition-BC-HA7TK.js","names":[],"sources":["../../../src/utils/resolveColorsConfig.ts","../../../src/utils/color.ts","../../../src/composables/usePopoverRoot.ts","../../../src/composables/usePopoverPosition.ts"],"sourcesContent":["import type { ColorsConfig } from \"@templatical/types\";\n\n/**\n * Normalized color-picker configuration handed to the provide/inject layer and\n * to `ColorPicker`. `presets` defaults to an empty array and `allowCustom` to\n * `true`, so consumers never branch on `undefined`.\n *\n * `allowCustomIgnored` is a validation signal, not a rendered value: it is\n * `true` when `allowCustom: false` was requested but forced back to `true`\n * because there were no presets to fall back on. This util stays pure — it\n * never logs; the consumer that owns the config surface emits the warning\n * (today that is `useEditorCore` for the editor-level config), the same split\n * `resolvePaletteBlocks` / `Sidebar.vue` use.\n */\nexport interface ResolvedColors {\n presets: string[];\n allowCustom: boolean;\n allowCustomIgnored: boolean;\n /**\n * Preset entries dropped because they are not a valid `#rgb` / `#rrggbb` hex\n * string (see the validity rule on {@link resolveColorsConfig}). Collected —\n * not logged — so the config-owning consumer can warn once listing them,\n * exactly as `allowCustomIgnored` is surfaced. Reflects THIS resolution's\n * `colors.presets` input only: when a `fallback`'s already-resolved (already\n * filtered) presets are inherited, its invalids are never re-reported here.\n */\n invalidPresets: string[];\n}\n\n/**\n * The unconfigured baseline: no presets, free-form entry allowed — i.e. the\n * picker behaves exactly as it did before the `colors` option existed. Used as\n * the inject default and as the fallback for the top-level resolution.\n */\nexport const DEFAULT_RESOLVED_COLORS: ResolvedColors = {\n presets: [],\n allowCustom: true,\n allowCustomIgnored: false,\n invalidPresets: [],\n};\n\n/**\n * A valid preset is a `#rgb` or `#rrggbb` hex string. 4-/8-digit alpha hex is\n * deliberately rejected: the wheel (vanilla-colorful) is RGB-only,\n * `normalizeColorToHex` drops alpha on the DOM round-trip so a selected alpha\n * preset would never read back as selected, and alpha degrades unpredictably\n * across email clients.\n */\nconst VALID_PRESET_HEX = /^#([0-9a-f]{3}|[0-9a-f]{6})$/i;\n\n/**\n * Resolve a `ColorsConfig` against an already-resolved `fallback`, applying\n * precedence per property (`input` → `fallback` → default) plus the shared\n * validation rule.\n *\n * The editor-level call passes no `fallback` (it defaults to\n * {@link DEFAULT_RESOLVED_COLORS}) and its result is provided via `COLORS_KEY`.\n * The `fallback` parameter is the nested-resolution seam: a narrower config can\n * be resolved against a broader already-resolved one, inheriting whichever\n * property it does not set.\n *\n * Validation: entries in `colors.presets` that aren't valid hex\n * ({@link VALID_PRESET_HEX}) are dropped from `presets` and collected into\n * `invalidPresets` for the caller to warn about. Separately, `allowCustom:\n * false` with no presets anywhere in the chain is ignored — forced back to\n * `true`, with `allowCustomIgnored` set so the caller can warn — because\n * hiding the wheel and hex input without a preset grid would leave the picker\n * unable to set a color. Filtering runs BEFORE that guard, so an all-invalid\n * list with `allowCustom: false` cascades into the forced-true path. This\n * mirrors how `paletteBlocks` is resolved: `resolvePaletteBlocks` collects the\n * offending entries and the consumer warns; this util stays pure the same way.\n */\nexport function resolveColorsConfig(\n colors: ColorsConfig | undefined,\n fallback: ResolvedColors = DEFAULT_RESOLVED_COLORS,\n): ResolvedColors {\n // Validate only presets this resolution actually supplies. When it inherits\n // `fallback.presets`, those were already resolved (already filtered), so\n // re-validating would double-report an upstream invalid entry.\n let presets: string[];\n let invalidPresets: string[];\n if (colors?.presets === undefined) {\n presets = fallback.presets;\n invalidPresets = [];\n } else {\n presets = [];\n invalidPresets = [];\n for (const entry of colors.presets) {\n if (VALID_PRESET_HEX.test(entry)) {\n presets.push(entry);\n } else {\n invalidPresets.push(entry);\n }\n }\n }\n\n const requestedAllowCustom = colors?.allowCustom ?? fallback.allowCustom;\n\n const allowCustomIgnored = !requestedAllowCustom && presets.length === 0;\n const allowCustom = allowCustomIgnored ? true : requestedAllowCustom;\n\n return { presets, allowCustom, allowCustomIgnored, invalidPresets };\n}\n","/**\n * Normalize a browser-serialized `rgb()/rgba()` color to `#rrggbb`. The browser\n * serializes an inline `style=\"color:#hex\"` to `rgb(...)`, so reading a stored\n * color back via `element.style.color` (e.g. a TipTap textStyle/highlight mark,\n * or a saved link color) surfaces `rgb(...)` — mismatching the hex used\n * everywhere else, and unparseable by the hex-only picker (`vanilla-colorful`)\n * and the native `<input type=\"color\">`. Non-rgb input (already hex, a keyword,\n * or empty) is returned unchanged.\n */\nexport function normalizeColorToHex(value: string): string {\n const m = /^rgba?\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)/i.exec(value.trim());\n if (!m) return value;\n const toHex = (n: string) => Number(n).toString(16).padStart(2, \"0\");\n return `#${toHex(m[1])}${toHex(m[2])}${toHex(m[3])}`;\n}\n\n/**\n * Canonicalize a hex color to the lowercase 6-digit form used for preset\n * membership tests. Runs {@link normalizeColorToHex} first (so a\n * browser-serialized `rgb(...)` round-trip collapses to hex), then expands a\n * 3-digit shorthand (`#abc` → `#aabbcc`) and lowercases it. Non-hex input (a\n * keyword, or empty) is returned unchanged after that rgb normalization —\n * the caller decides whether that counts as a member.\n *\n * Kept separate from `normalizeColorToHex` (which is left untouched) because a\n * configured preset may be `#abc` while the browser round-trips the selected\n * value to `#aabbcc`, and a factory default may be `#FFFFFF` while the preset\n * is `#ffffff` — bare equality misses both. Preset-selection display\n * (`ColorPicker`) and the off-palette defaults audit (`collectOffPaletteDefaults`)\n * both compare through this one function so the two membership tests can't drift.\n */\nexport function canonicalizeHexColor(value: string): string {\n const hex = normalizeColorToHex(value);\n const short = /^#([0-9a-f])([0-9a-f])([0-9a-f])$/i.exec(hex);\n if (short) {\n return `#${short[1]}${short[1]}${short[2]}${short[2]}${short[3]}${short[3]}`.toLowerCase();\n }\n if (/^#[0-9a-f]{6}$/i.test(hex)) {\n return hex.toLowerCase();\n }\n return hex;\n}\n","import { inject, ref, type Ref } from \"vue\";\nimport { POPOVER_ROOT_KEY } from \"../keys\";\n\n/**\n * Returns the editor's shared popover mount ref — the `<div\n * class=\"tpl-popover-root\" />` rendered at the top level of `Editor.vue` /\n * `CloudEditor.vue`. Every teleport target (RichTextLinkDialog, TitleEditor\n * toolbar, ParagraphToolbar, TplModal) injects this and teleports to\n * `popoverRoot.value` rather than `to=\"body\"`, so popups stay inside the\n * editor's effective DOM root (shadow-aware).\n *\n * Falls back to a never-resolving `ref(null)` when no provider is in scope.\n * Components must guard with `v-if=\"popoverRoot\"` before teleporting —\n * with the fallback, isolated component tests that don't mount the editor\n * shell simply render nothing rather than blow up.\n *\n * Internal — not exported from the package entry.\n */\nexport function usePopoverRoot(): Ref<HTMLElement | null> {\n return inject(POPOVER_ROOT_KEY, ref<HTMLElement | null>(null));\n}\n","import { usePopoverRoot } from \"./usePopoverRoot\";\n\n/**\n * Coordinate helper for popovers that teleport into the shared popover root\n * (`.tpl-popover-root`, `position: relative`) and position themselves with\n * `position: absolute`.\n *\n * Callers compute a target point in **viewport** space — from\n * `getBoundingClientRect()`, `useElementBounding`, or a TipTap caret rect —\n * and `toLocal` converts it to coordinates **local to the popover root** by\n * subtracting the root's own viewport rect.\n *\n * Why this exists: a `position: fixed` popover resolves its coordinates\n * against the nearest ancestor that establishes a containing block — and any\n * `transform` / `filter` / `will-change` on an ancestor of the editor (a\n * consumer's scroll-parallax wrapper, route-transition, reveal animation…)\n * does exactly that, even while its computed `transform` reads `none` (a\n * running/animated transform still promotes the element). The fixed popover\n * would then be offset by that ancestor's position. Anchoring `absolute`\n * inside the (positioned) popover root instead makes the placement immune:\n * both points are read in viewport space, so the subtraction cancels the\n * ancestor offset, and the popover tracks the editor if the ancestor moves.\n *\n * Read `toLocal` inside a `computed` for a reactive result (recomputes with\n * its viewport-coordinate dependencies), or call it once when a popover opens.\n * Falls back to the viewport coordinates unchanged when no popover root is in\n * scope (isolated component tests / headless callers).\n *\n * Internal — not exported from the package entry.\n */\nexport function usePopoverPosition(): {\n toLocal: (viewport: { top: number; left: number }) => {\n top: number;\n left: number;\n };\n} {\n const popoverRoot = usePopoverRoot();\n function toLocal(viewport: { top: number; left: number }): {\n top: number;\n left: number;\n } {\n const rect = popoverRoot.value?.getBoundingClientRect();\n if (!rect) return { top: viewport.top, left: viewport.left };\n return { top: viewport.top - rect.top, left: viewport.left - rect.left };\n }\n return { toLocal };\n}\n"],"mappings":";;;AAkCA,IAAa,IAA0C;CACrD,SAAS,CAAC;CACV,aAAa;CACb,oBAAoB;CACpB,gBAAgB,CAAC;AACnB,GASM,IAAmB;AAwBzB,SAAgB,EACd,GACA,IAA2B,GACX;CAIhB,IAAI,GACA;CACJ,IAAI,GAAQ,YAAY,KAAA,GAEtB,AADA,IAAU,EAAS,SACnB,IAAiB,CAAC;MACb;EAEL,AADA,IAAU,CAAC,GACX,IAAiB,CAAC;EAClB,KAAK,IAAM,KAAS,EAAO,SACzB,AAAI,EAAiB,KAAK,CAAK,IAC7B,EAAQ,KAAK,CAAK,IAElB,EAAe,KAAK,CAAK;CAG/B;CAEA,IAAM,IAAuB,GAAQ,eAAe,EAAS,aAEvD,IAAqB,CAAC,KAAwB,EAAQ,WAAW;CAGvE,OAAO;EAAE;EAAS,aAFE,IAAqB,KAAO;EAEjB;EAAoB;CAAe;AACpE;;;AC7FA,SAAgB,EAAoB,GAAuB;CACzD,IAAM,IAAI,4CAA4C,KAAK,EAAM,KAAK,CAAC;CACvE,IAAI,CAAC,GAAG,OAAO;CACf,IAAM,KAAS,MAAc,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,GAAG,GAAG;CACnE,OAAO,IAAI,EAAM,EAAE,EAAE,IAAI,EAAM,EAAE,EAAE,IAAI,EAAM,EAAE,EAAE;AACnD;AAiBA,SAAgB,EAAqB,GAAuB;CAC1D,IAAM,IAAM,EAAoB,CAAK,GAC/B,IAAQ,qCAAqC,KAAK,CAAG;CAO3D,OANI,IACK,IAAI,EAAM,KAAK,EAAM,KAAK,EAAM,KAAK,EAAM,KAAK,EAAM,KAAK,EAAM,KAAK,YAAY,IAEvF,kBAAkB,KAAK,CAAG,IACrB,EAAI,YAAY,IAElB;AACT;;;ACvBA,SAAgB,IAA0C;CACxD,OAAO,EAAO,GAAkB,EAAwB,IAAI,CAAC;AAC/D;;;ACUA,SAAgB,IAKd;CACA,IAAM,IAAc,EAAe;CACnC,SAAS,EAAQ,GAGf;EACA,IAAM,IAAO,EAAY,OAAO,sBAAsB;EAEtD,OADK,IACE;GAAE,KAAK,EAAS,MAAM,EAAK;GAAK,MAAM,EAAS,OAAO,EAAK;EAAK,IADrD;GAAE,KAAK,EAAS;GAAK,MAAM,EAAS;EAAK;CAE7D;CACA,OAAO,EAAE,WAAQ;AACnB"}
|
|
1
|
+
{"version":3,"file":"usePopoverPosition-C1N2kaiZ.js","names":[],"sources":["../../../src/utils/resolveColorsConfig.ts","../../../src/utils/color.ts","../../../src/composables/usePopoverRoot.ts","../../../src/composables/usePopoverPosition.ts"],"sourcesContent":["import type { ColorsConfig } from \"@templatical/types\";\n\n/**\n * Normalized color-picker configuration handed to the provide/inject layer and\n * to `ColorPicker`. `presets` defaults to an empty array and `allowCustom` to\n * `true`, so consumers never branch on `undefined`.\n *\n * `allowCustomIgnored` is a validation signal, not a rendered value: it is\n * `true` when `allowCustom: false` was requested but forced back to `true`\n * because there were no presets to fall back on. This util stays pure — it\n * never logs; the consumer that owns the config surface emits the warning\n * (today that is `useEditorCore` for the editor-level config), the same split\n * `resolvePaletteBlocks` / `Sidebar.vue` use.\n */\nexport interface ResolvedColors {\n presets: string[];\n allowCustom: boolean;\n allowCustomIgnored: boolean;\n /**\n * Preset entries dropped because they are not a valid `#rgb` / `#rrggbb` hex\n * string (see the validity rule on {@link resolveColorsConfig}). Collected —\n * not logged — so the config-owning consumer can warn once listing them,\n * exactly as `allowCustomIgnored` is surfaced. Reflects THIS resolution's\n * `colors.presets` input only: when a `fallback`'s already-resolved (already\n * filtered) presets are inherited, its invalids are never re-reported here.\n */\n invalidPresets: string[];\n}\n\n/**\n * The unconfigured baseline: no presets, free-form entry allowed — i.e. the\n * picker behaves exactly as it did before the `colors` option existed. Used as\n * the inject default and as the fallback for the top-level resolution.\n */\nexport const DEFAULT_RESOLVED_COLORS: ResolvedColors = {\n presets: [],\n allowCustom: true,\n allowCustomIgnored: false,\n invalidPresets: [],\n};\n\n/**\n * A valid preset is a `#rgb` or `#rrggbb` hex string. 4-/8-digit alpha hex is\n * deliberately rejected: the wheel (vanilla-colorful) is RGB-only,\n * `normalizeColorToHex` drops alpha on the DOM round-trip so a selected alpha\n * preset would never read back as selected, and alpha degrades unpredictably\n * across email clients.\n */\nconst VALID_PRESET_HEX = /^#([0-9a-f]{3}|[0-9a-f]{6})$/i;\n\n/**\n * Resolve a `ColorsConfig` against an already-resolved `fallback`, applying\n * precedence per property (`input` → `fallback` → default) plus the shared\n * validation rule.\n *\n * The editor-level call passes no `fallback` (it defaults to\n * {@link DEFAULT_RESOLVED_COLORS}) and its result is provided via `COLORS_KEY`.\n * The `fallback` parameter is the nested-resolution seam: a narrower config can\n * be resolved against a broader already-resolved one, inheriting whichever\n * property it does not set.\n *\n * Validation: entries in `colors.presets` that aren't valid hex\n * ({@link VALID_PRESET_HEX}) are dropped from `presets` and collected into\n * `invalidPresets` for the caller to warn about. Separately, `allowCustom:\n * false` with no presets anywhere in the chain is ignored — forced back to\n * `true`, with `allowCustomIgnored` set so the caller can warn — because\n * hiding the wheel and hex input without a preset grid would leave the picker\n * unable to set a color. Filtering runs BEFORE that guard, so an all-invalid\n * list with `allowCustom: false` cascades into the forced-true path. This\n * mirrors how `paletteBlocks` is resolved: `resolvePaletteBlocks` collects the\n * offending entries and the consumer warns; this util stays pure the same way.\n */\nexport function resolveColorsConfig(\n colors: ColorsConfig | undefined,\n fallback: ResolvedColors = DEFAULT_RESOLVED_COLORS,\n): ResolvedColors {\n // Validate only presets this resolution actually supplies. When it inherits\n // `fallback.presets`, those were already resolved (already filtered), so\n // re-validating would double-report an upstream invalid entry.\n let presets: string[];\n let invalidPresets: string[];\n if (colors?.presets === undefined) {\n presets = fallback.presets;\n invalidPresets = [];\n } else {\n presets = [];\n invalidPresets = [];\n for (const entry of colors.presets) {\n if (VALID_PRESET_HEX.test(entry)) {\n presets.push(entry);\n } else {\n invalidPresets.push(entry);\n }\n }\n }\n\n const requestedAllowCustom = colors?.allowCustom ?? fallback.allowCustom;\n\n const allowCustomIgnored = !requestedAllowCustom && presets.length === 0;\n const allowCustom = allowCustomIgnored ? true : requestedAllowCustom;\n\n return { presets, allowCustom, allowCustomIgnored, invalidPresets };\n}\n","/**\n * Normalize a browser-serialized `rgb()/rgba()` color to `#rrggbb`. The browser\n * serializes an inline `style=\"color:#hex\"` to `rgb(...)`, so reading a stored\n * color back via `element.style.color` (e.g. a TipTap textStyle/highlight mark,\n * or a saved link color) surfaces `rgb(...)` — mismatching the hex used\n * everywhere else, and unparseable by the hex-only picker (`vanilla-colorful`)\n * and the native `<input type=\"color\">`. Non-rgb input (already hex, a keyword,\n * or empty) is returned unchanged.\n */\nexport function normalizeColorToHex(value: string): string {\n const m = /^rgba?\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)/i.exec(value.trim());\n if (!m) return value;\n const toHex = (n: string) => Number(n).toString(16).padStart(2, \"0\");\n return `#${toHex(m[1])}${toHex(m[2])}${toHex(m[3])}`;\n}\n\n/**\n * Canonicalize a hex color to the lowercase 6-digit form used for preset\n * membership tests. Runs {@link normalizeColorToHex} first (so a\n * browser-serialized `rgb(...)` round-trip collapses to hex), then expands a\n * 3-digit shorthand (`#abc` → `#aabbcc`) and lowercases it. Non-hex input (a\n * keyword, or empty) is returned unchanged after that rgb normalization —\n * the caller decides whether that counts as a member.\n *\n * Kept separate from `normalizeColorToHex` (which is left untouched) because a\n * configured preset may be `#abc` while the browser round-trips the selected\n * value to `#aabbcc`, and a factory default may be `#FFFFFF` while the preset\n * is `#ffffff` — bare equality misses both. Preset-selection display\n * (`ColorPicker`) and the off-palette defaults audit (`collectOffPaletteDefaults`)\n * both compare through this one function so the two membership tests can't drift.\n */\nexport function canonicalizeHexColor(value: string): string {\n const hex = normalizeColorToHex(value);\n const short = /^#([0-9a-f])([0-9a-f])([0-9a-f])$/i.exec(hex);\n if (short) {\n return `#${short[1]}${short[1]}${short[2]}${short[2]}${short[3]}${short[3]}`.toLowerCase();\n }\n if (/^#[0-9a-f]{6}$/i.test(hex)) {\n return hex.toLowerCase();\n }\n return hex;\n}\n","import { inject, ref, type Ref } from \"vue\";\nimport { POPOVER_ROOT_KEY } from \"../keys\";\n\n/**\n * Returns the editor's shared popover mount ref — the `<div\n * class=\"tpl-popover-root\" />` rendered at the top level of `Editor.vue`.\n * Every teleport target (RichTextLinkDialog, TitleEditor\n * toolbar, ParagraphToolbar, TplModal) injects this and teleports to\n * `popoverRoot.value` rather than `to=\"body\"`, so popups stay inside the\n * editor's effective DOM root (shadow-aware).\n *\n * Falls back to a never-resolving `ref(null)` when no provider is in scope.\n * Components must guard with `v-if=\"popoverRoot\"` before teleporting —\n * with the fallback, isolated component tests that don't mount the editor\n * shell simply render nothing rather than blow up.\n *\n * Internal — not exported from the package entry.\n */\nexport function usePopoverRoot(): Ref<HTMLElement | null> {\n return inject(POPOVER_ROOT_KEY, ref<HTMLElement | null>(null));\n}\n","import { usePopoverRoot } from \"./usePopoverRoot\";\n\n/**\n * Coordinate helper for popovers that teleport into the shared popover root\n * (`.tpl-popover-root`, `position: relative`) and position themselves with\n * `position: absolute`.\n *\n * Callers compute a target point in **viewport** space — from\n * `getBoundingClientRect()`, `useElementBounding`, or a TipTap caret rect —\n * and `toLocal` converts it to coordinates **local to the popover root** by\n * subtracting the root's own viewport rect.\n *\n * Why this exists: a `position: fixed` popover resolves its coordinates\n * against the nearest ancestor that establishes a containing block — and any\n * `transform` / `filter` / `will-change` on an ancestor of the editor (a\n * consumer's scroll-parallax wrapper, route-transition, reveal animation…)\n * does exactly that, even while its computed `transform` reads `none` (a\n * running/animated transform still promotes the element). The fixed popover\n * would then be offset by that ancestor's position. Anchoring `absolute`\n * inside the (positioned) popover root instead makes the placement immune:\n * both points are read in viewport space, so the subtraction cancels the\n * ancestor offset, and the popover tracks the editor if the ancestor moves.\n *\n * Read `toLocal` inside a `computed` for a reactive result (recomputes with\n * its viewport-coordinate dependencies), or call it once when a popover opens.\n * Falls back to the viewport coordinates unchanged when no popover root is in\n * scope (isolated component tests / headless callers).\n *\n * Internal — not exported from the package entry.\n */\nexport function usePopoverPosition(): {\n toLocal: (viewport: { top: number; left: number }) => {\n top: number;\n left: number;\n };\n} {\n const popoverRoot = usePopoverRoot();\n function toLocal(viewport: { top: number; left: number }): {\n top: number;\n left: number;\n } {\n const rect = popoverRoot.value?.getBoundingClientRect();\n if (!rect) return { top: viewport.top, left: viewport.left };\n return { top: viewport.top - rect.top, left: viewport.left - rect.left };\n }\n return { toLocal };\n}\n"],"mappings":";;;AAkCA,IAAa,IAA0C;CACrD,SAAS,CAAC;CACV,aAAa;CACb,oBAAoB;CACpB,gBAAgB,CAAC;AACnB,GASM,IAAmB;AAwBzB,SAAgB,EACd,GACA,IAA2B,GACX;CAIhB,IAAI,GACA;CACJ,IAAI,GAAQ,YAAY,KAAA,GAEtB,AADA,IAAU,EAAS,SACnB,IAAiB,CAAC;MACb;EAEL,AADA,IAAU,CAAC,GACX,IAAiB,CAAC;EAClB,KAAK,IAAM,KAAS,EAAO,SACzB,AAAI,EAAiB,KAAK,CAAK,IAC7B,EAAQ,KAAK,CAAK,IAElB,EAAe,KAAK,CAAK;CAG/B;CAEA,IAAM,IAAuB,GAAQ,eAAe,EAAS,aAEvD,IAAqB,CAAC,KAAwB,EAAQ,WAAW;CAGvE,OAAO;EAAE;EAAS,aAFE,IAAqB,KAAO;EAEjB;EAAoB;CAAe;AACpE;;;AC7FA,SAAgB,EAAoB,GAAuB;CACzD,IAAM,IAAI,4CAA4C,KAAK,EAAM,KAAK,CAAC;CACvE,IAAI,CAAC,GAAG,OAAO;CACf,IAAM,KAAS,MAAc,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,GAAG,GAAG;CACnE,OAAO,IAAI,EAAM,EAAE,EAAE,IAAI,EAAM,EAAE,EAAE,IAAI,EAAM,EAAE,EAAE;AACnD;AAiBA,SAAgB,EAAqB,GAAuB;CAC1D,IAAM,IAAM,EAAoB,CAAK,GAC/B,IAAQ,qCAAqC,KAAK,CAAG;CAO3D,OANI,IACK,IAAI,EAAM,KAAK,EAAM,KAAK,EAAM,KAAK,EAAM,KAAK,EAAM,KAAK,EAAM,KAAK,YAAY,IAEvF,kBAAkB,KAAK,CAAG,IACrB,EAAI,YAAY,IAElB;AACT;;;ACvBA,SAAgB,IAA0C;CACxD,OAAO,EAAO,GAAkB,EAAwB,IAAI,CAAC;AAC/D;;;ACUA,SAAgB,IAKd;CACA,IAAM,IAAc,EAAe;CACnC,SAAS,EAAQ,GAGf;EACA,IAAM,IAAO,EAAY,OAAO,sBAAsB;EAEtD,OADK,IACE;GAAE,KAAK,EAAS,MAAM,EAAK;GAAK,MAAM,EAAS,OAAO,EAAK;EAAK,IADrD;GAAE,KAAK,EAAS;GAAK,MAAM,EAAS;EAAK;CAE7D;CACA,OAAO,EAAE,WAAQ;AACnB"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { k as e } from "./draggable-BfpsXFg7.js";
|
|
2
|
+
import { t } from "./useEditorRoot-Cxnmf5hM.js";
|
|
3
|
+
//#region src/composables/useScrollToBlock.ts
|
|
4
|
+
function n() {
|
|
5
|
+
let n = t();
|
|
6
|
+
return (t) => {
|
|
7
|
+
e(() => {
|
|
8
|
+
let e = n.querySelector(`[data-block-id="${t}"]`);
|
|
9
|
+
e && e.scrollIntoView({
|
|
10
|
+
block: "nearest",
|
|
11
|
+
behavior: r() ? "auto" : "smooth"
|
|
12
|
+
});
|
|
13
|
+
});
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
function r() {
|
|
17
|
+
return typeof matchMedia == "function" && matchMedia("(prefers-reduced-motion: reduce)").matches;
|
|
18
|
+
}
|
|
19
|
+
//#endregion
|
|
20
|
+
export { n as t };
|
|
21
|
+
|
|
22
|
+
//# sourceMappingURL=useScrollToBlock-BvWAfWd8.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useScrollToBlock-BvWAfWd8.js","names":[],"sources":["../../../src/composables/useScrollToBlock.ts"],"sourcesContent":["import { nextTick } from \"vue\";\nimport { useEditorRoot } from \"./useEditorRoot\";\n\n/**\n * Returns a function that brings a block into view on the canvas.\n *\n * Selecting a block is not by itself visible: on a long template the selected\n * block can sit far below the fold while the canvas stays exactly where it was,\n * so an insert or a jump reads as \"nothing happened\". This is what makes the\n * outcome visible at the user's position.\n *\n * Queries through `useEditorRoot()` rather than `document` — in the default\n * shadow-DOM mount the blocks live in the shadow tree, where a document-level\n * query matches nothing.\n *\n * Scrolling is deferred one tick so a block inserted in the same call has\n * rendered by the time it is looked up. `block: \"nearest\"` leaves an\n * already-visible block alone instead of yanking it to the top.\n */\nexport function useScrollToBlock(): (blockId: string) => void {\n const root = useEditorRoot();\n\n return (blockId: string) => {\n void nextTick(() => {\n const target = root.querySelector(`[data-block-id=\"${blockId}\"]`);\n if (!target) return;\n target.scrollIntoView({\n block: \"nearest\",\n behavior: prefersReducedMotion() ? \"auto\" : \"smooth\",\n });\n });\n };\n}\n\nfunction prefersReducedMotion(): boolean {\n // Absent in some embedding contexts; a throw here would break the insert\n // that asked for the scroll, so treat \"can't tell\" as motion allowed.\n if (typeof matchMedia !== \"function\") return false;\n return matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\n}\n"],"mappings":";;;AAmBA,SAAgB,IAA8C;CAC5D,IAAM,IAAO,EAAc;CAE3B,QAAQ,MAAoB;EAC1B,QAAoB;GAClB,IAAM,IAAS,EAAK,cAAc,mBAAmB,EAAQ,GAAG;GAC3D,KACL,EAAO,eAAe;IACpB,OAAO;IACP,UAAU,EAAqB,IAAI,SAAS;GAC9C,CAAC;EACH,CAAC;CACH;AACF;AAEA,SAAS,IAAgC;CAIvC,OADI,OAAO,cAAe,cACnB,WAAW,kCAAkC,CAAC,CAAC;AACxD"}
|
package/dist/cdn/editor.css
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
@import"https://fonts.bunny.net/css?family=geist:400,500,600";.tpl-loading-track[data-v-c3d50014]{height:3px;width:100%;border-radius:9999px;background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--tpl-primary) 10%,transparent) 15%,color-mix(in srgb,var(--tpl-primary) 30%,transparent) 30%,var(--tpl-primary) 50%,color-mix(in srgb,var(--tpl-primary) 30%,transparent) 70%,color-mix(in srgb,var(--tpl-primary) 10%,transparent) 85%,transparent 100%);background-size:200% 100%;animation:tpl-loading-flow-c3d50014 3s ease-in-out infinite}@keyframes tpl-loading-flow-c3d50014{0%{background-position:100% 0}to{background-position:-100% 0}}@media(prefers-reduced-motion:reduce){.tpl-loading-track-fill[data-v-c3d50014]{animation:none;background-position:50% 0}}.tpl-block--idle[data-v-096f1d37]{outline:1.5px dashed color-mix(in srgb,var(--tpl-primary) 30%,transparent);outline-offset:-1px;transition:outline .15s cubic-bezier(.16,1,.3,1),box-shadow .15s cubic-bezier(.16,1,.3,1)}.tpl-block--idle[data-v-096f1d37]:hover{outline:1.5px solid color-mix(in srgb,var(--tpl-primary) 50%,transparent);outline-offset:-1px;box-shadow:0 0 8px color-mix(in srgb,var(--tpl-primary) 8%,transparent)}.tpl-block--picked[data-v-096f1d37]{outline:2px solid var(--tpl-primary);outline-offset:-1px;box-shadow:0 0 0 4px color-mix(in srgb,var(--tpl-primary) 18%,transparent);transition:outline .15s cubic-bezier(.16,1,.3,1),box-shadow .15s cubic-bezier(.16,1,.3,1)}.tpl-block--selected[data-v-096f1d37]{outline:2px solid color-mix(in srgb,var(--tpl-primary) 60%,transparent);outline-offset:-1px;box-shadow:0 0 12px color-mix(in srgb,var(--tpl-primary) 15%,transparent);transition:outline .15s cubic-bezier(.16,1,.3,1),box-shadow .15s cubic-bezier(.16,1,.3,1)}.tpl-block-action-btn[data-v-096f1d37]{color:var(--tpl-chrome-text-muted);background-color:transparent}.tpl-block-action-btn[data-v-096f1d37]:hover{background-color:var(--tpl-bg-hover);color:var(--tpl-chrome-text)}.tpl-block-action-btn[data-v-096f1d37]:active{transform:scale(.9)}.tpl-block-delete-btn[data-v-096f1d37]:hover{background-color:var(--tpl-danger-light);color:var(--tpl-danger)}.tpl-condition-toggle[data-v-096f1d37]:hover{background-color:var(--tpl-bg-hover)!important}.tpl-condition-toggle[data-v-096f1d37]:active{transform:scale(.9)}.tpl-block-hidden-overlay[data-v-096f1d37]{background-color:color-mix(in srgb,var(--tpl-bg) 60%,transparent)}.tpl-table-editable[data-v-963ac422] th[contenteditable],.tpl-table-editable[data-v-963ac422] td[contenteditable]{outline:none;cursor:text;min-width:calc(2 * var(--tpl-base-size))}.tpl-table-editable[data-v-963ac422] th[contenteditable]:empty:before,.tpl-table-editable[data-v-963ac422] td[contenteditable]:empty:before{content:attr(data-placeholder);color:var(--tpl-text-dim);pointer-events:none}.tpl-table-editable[data-v-963ac422] th[contenteditable]:focus,.tpl-table-editable[data-v-963ac422] td[contenteditable]:focus{outline:2px solid var(--tpl-primary);outline-offset:-2px;border-radius:1px}hex-color-picker{--hcp-width: 200px}hex-color-picker::part(hue){border-radius:var(--tpl-radius-sm, 7px)}hex-color-picker::part(saturation){border-radius:var(--tpl-radius-sm, 7px) var(--tpl-radius-sm, 7px) 0 0}.tpl-color-swatch-empty{background-color:var(--tpl-bg);background-image:linear-gradient(to top right,transparent calc(50% - .75px),var(--tpl-text-dim) calc(50% - .75px),var(--tpl-text-dim) calc(50% + .75px),transparent calc(50% + .75px))}.tpl-canvas--dark-mode[data-v-da730df5] .tpl-block-content:not(.tpl-block-content *){filter:invert(1) hue-rotate(180deg)}[data-v-da730df5] .tpl-block-content{transition:filter .3s ease}.tpl-canvas--dark-mode[data-v-da730df5] .tpl-block-content img{filter:invert(1) hue-rotate(180deg)}.tpl-pulse-fill[data-v-c289916a]{animation:tpl-field-pulse-c289916a 1s ease-out}@keyframes tpl-field-pulse-c289916a{0%{box-shadow:0 0 color-mix(in srgb,var(--tpl-warning) 30%,transparent);background-color:color-mix(in srgb,var(--tpl-warning) 6%,transparent)}40%{box-shadow:0 0 0 3px color-mix(in srgb,var(--tpl-warning) 15%,transparent);background-color:color-mix(in srgb,var(--tpl-warning) 5%,transparent)}to{box-shadow:0 0 0 0 transparent;background-color:transparent}}@media(prefers-reduced-motion:reduce){.tpl-pulse-fill[data-v-c289916a]{animation:none}}input[type=number][data-v-69591c1e]::-webkit-outer-spin-button,input[type=number][data-v-69591c1e]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number][data-v-69591c1e]{-moz-appearance:textfield}.tpl-collapsible[data-v-417d1652]{display:grid;grid-template-rows:0fr;transition:grid-template-rows .2s cubic-bezier(.16,1,.3,1)}.tpl-collapsible--open[data-v-417d1652]{grid-template-rows:1fr}.tpl-collapsible>div[data-v-417d1652]{overflow:hidden}.tpl-icon-enter-active[data-v-632aa74f],.tpl-icon-leave-active[data-v-632aa74f]{transition:opacity .12s cubic-bezier(.16,1,.3,1),transform .12s cubic-bezier(.16,1,.3,1)}.tpl-icon-enter-from[data-v-632aa74f],.tpl-icon-leave-to[data-v-632aa74f]{opacity:0;transform:scale(.8)}.tpl-dark-mode-toggle[data-v-632aa74f]:hover{background-color:var(--tpl-bg-hover)}.tpl-dark-mode-toggle[data-v-632aa74f]:active{transform:scale(.92)}.tpl-icon-enter-active[data-v-eef7b2ca],.tpl-icon-leave-active[data-v-eef7b2ca]{transition:opacity .12s cubic-bezier(.16,1,.3,1),transform .12s cubic-bezier(.16,1,.3,1)}.tpl-icon-enter-from[data-v-eef7b2ca],.tpl-icon-leave-to[data-v-eef7b2ca]{opacity:0;transform:scale(.8)}.tpl-preview-toggle[data-v-eef7b2ca]:hover{background-color:var(--tpl-bg-hover)}.tpl-preview-toggle[data-v-eef7b2ca]:active{transform:scale(.92)}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tpl-comet-angle:0deg;--tpl-comet-start:100%}}}@layer theme{:root,:host{--tpl-radius-sm:calc(.25 * var(--tpl-base-size));--tpl-radius-md:calc(.375 * var(--tpl-base-size));--tpl-radius-lg:calc(.5 * var(--tpl-base-size));--tpl-shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--tpl-shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tpl-shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tpl-shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--tpl-radius:calc(.25 * var(--tpl-base-size))}}.tpl\:max-w-md{max-width:calc(28 * var(--tpl-base-size))}.tpl\:rounded-xl{border-radius:calc(.75 * var(--tpl-base-size))}.tpl\:text-4xl{font-size:calc(2.25 * var(--tpl-base-size));line-height:var(--tw-leading,calc(2.5 / 2.25))}.tpl\:text-base{font-size:var(--tpl-base-size);line-height:var(--tw-leading, 1.5 )}.tpl\:text-lg{font-size:calc(1.125 * var(--tpl-base-size));line-height:var(--tw-leading,calc(1.75 / 1.125))}.tpl\:transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,cubic-bezier(.16, 1, .3, 1));transition-duration:var(--tw-duration,.12s)}.tpl\:transition-all{transition-property:all;transition-timing-function:var(--tw-ease,cubic-bezier(.16, 1, .3, 1));transition-duration:var(--tw-duration,.12s)}.tpl\:transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,cubic-bezier(.16, 1, .3, 1));transition-duration:var(--tw-duration,.12s)}.tpl\:transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,cubic-bezier(.16, 1, .3, 1));transition-duration:var(--tw-duration,.12s)}.tpl\:transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,cubic-bezier(.16, 1, .3, 1));transition-duration:var(--tw-duration,.12s)}.tpl\:transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,cubic-bezier(.16, 1, .3, 1));transition-duration:var(--tw-duration,.12s)}@layer base,components;.tpl{--tpl-base-size:var(--tpl-user-base-size,16px);--tpl-bg:var(--tpl-user-bg,oklch(99.5% .002 60));--tpl-bg-elevated:var(--tpl-user-bg-elevated,oklch(98% .004 60));--tpl-bg-hover:var(--tpl-user-bg-hover,oklch(96% .006 60));--tpl-bg-active:var(--tpl-user-bg-active,oklch(93.5% .008 60));--tpl-border:var(--tpl-user-border,oklch(92% .006 60));--tpl-border-light:var(--tpl-user-border-light,oklch(86% .01 60));--tpl-text:var(--tpl-user-text,oklch(18% .01 60));--tpl-text-muted:var(--tpl-user-text-muted,oklch(50% .015 60));--tpl-text-dim:var(--tpl-user-text-dim,oklch(68% .012 60));--tpl-primary:var(--tpl-user-primary,oklch(70% .16 55));--tpl-primary-hover:var(--tpl-user-primary-hover,oklch(63% .17 55));--tpl-primary-light:var(--tpl-user-primary-light,oklch(95% .04 55));--tpl-on-primary:var(--tpl-user-on-primary,var(--tpl-bg));--tpl-secondary:var(--tpl-user-secondary,oklch(60% .118 184.71));--tpl-secondary-hover:var(--tpl-user-secondary-hover,oklch(53.2% .105 186.39));--tpl-secondary-light:var(--tpl-user-secondary-light,oklch(93.8% .03 186.82));--tpl-success:var(--tpl-user-success,oklch(62.8% .194 155.1));--tpl-success-light:var(--tpl-user-success-light,oklch(93.6% .043 163.51));--tpl-warning:var(--tpl-user-warning,oklch(76.9% .168 70.08));--tpl-warning-light:var(--tpl-user-warning-light,oklch(95% .038 73.59));--tpl-danger:var(--tpl-user-danger,oklch(63.7% .237 25.33));--tpl-danger-light:var(--tpl-user-danger-light,oklch(93.6% .032 17.72));--tpl-canvas-bg:var(--tpl-user-canvas-bg,oklch(97.5% .003 60));--tpl-chrome-bg-elevated:var(--tpl-bg-elevated);--tpl-chrome-border-light:var(--tpl-border-light);--tpl-chrome-text:var(--tpl-text);--tpl-chrome-text-muted:var(--tpl-text-muted);--tpl-chrome-text-dim:var(--tpl-text-dim);--tpl-chrome-primary-light:var(--tpl-primary-light);--tpl-chrome-primary-hover:var(--tpl-primary-hover);--tpl-radius:var(--tpl-user-radius,10px);--tpl-radius-sm:var(--tpl-user-radius-sm,7px);--tpl-radius-lg:var(--tpl-user-radius-lg,14px);--tpl-font-family:var(--tpl-user-font-family,"Geist", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");--tpl-shadow-sm:var(--tpl-user-shadow-sm,0 1px 2px #00000008);--tpl-shadow:var(--tpl-user-shadow,0 1px 2px #0000000a, 0 1px 3px #00000008);--tpl-shadow-md:var(--tpl-user-shadow-md,0 2px 8px #0000000f, 0 1px 3px #0000000a);--tpl-shadow-lg:var(--tpl-user-shadow-lg,0 4px 16px #00000014, 0 2px 6px #0000000a);--tpl-shadow-xl:var(--tpl-user-shadow-xl,0 8px 32px #0000001a, 0 4px 12px #0000000f);--tpl-overlay:var(--tpl-user-overlay,#00000080);--tpl-ring:var(--tpl-user-ring,0 0 0 3px var(--tpl-primary-light));--tpl-transition:var(--tpl-user-transition,.12s cubic-bezier(.16, 1, .3, 1))}.tpl[data-tpl-theme=dark]{--tpl-bg:var(--tpl-user-dark-bg,oklch(16% .005 60));--tpl-bg-elevated:var(--tpl-user-dark-bg-elevated,oklch(21% .006 60));--tpl-bg-hover:var(--tpl-user-dark-bg-hover,oklch(26% .007 60));--tpl-bg-active:var(--tpl-user-dark-bg-active,oklch(30% .008 60));--tpl-border:var(--tpl-user-dark-border,oklch(30% .006 60));--tpl-border-light:var(--tpl-user-dark-border-light,oklch(38% .008 60));--tpl-text:var(--tpl-user-dark-text,oklch(93% .005 60));--tpl-text-muted:var(--tpl-user-dark-text-muted,oklch(65% .01 60));--tpl-text-dim:var(--tpl-user-dark-text-dim,oklch(50% .008 60));--tpl-primary:var(--tpl-user-dark-primary,oklch(73% .15 55));--tpl-primary-hover:var(--tpl-user-dark-primary-hover,oklch(78% .14 55));--tpl-primary-light:var(--tpl-user-dark-primary-light,oklch(28% .05 55));--tpl-secondary:var(--tpl-user-dark-secondary,oklch(63% .11 184.71));--tpl-secondary-hover:var(--tpl-user-dark-secondary-hover,oklch(68% .1 186.39));--tpl-secondary-light:var(--tpl-user-dark-secondary-light,oklch(25% .03 186.82));--tpl-success:var(--tpl-user-dark-success,oklch(65% .18 155.1));--tpl-success-light:var(--tpl-user-dark-success-light,oklch(25% .04 163.51));--tpl-warning:var(--tpl-user-dark-warning,oklch(78% .16 70.08));--tpl-warning-light:var(--tpl-user-dark-warning-light,oklch(28% .04 73.59));--tpl-danger:var(--tpl-user-dark-danger,oklch(65% .22 25.33));--tpl-danger-light:var(--tpl-user-dark-danger-light,oklch(25% .04 17.72));--tpl-canvas-bg:var(--tpl-user-dark-canvas-bg,oklch(10% .003 60));--tpl-shadow-sm:var(--tpl-user-dark-shadow-sm,0 1px 2px #0003);--tpl-shadow:var(--tpl-user-dark-shadow,0 1px 2px #0000004d, 0 1px 3px #0003);--tpl-shadow-md:var(--tpl-user-dark-shadow-md,0 2px 8px #00000059, 0 1px 3px #00000040);--tpl-shadow-lg:var(--tpl-user-dark-shadow-lg,0 4px 16px #0006, 0 2px 6px #0000004d);--tpl-shadow-xl:var(--tpl-user-dark-shadow-xl,0 8px 32px #00000080, 0 4px 12px #00000059);--tpl-overlay:var(--tpl-user-dark-overlay,#000000b3);--tpl-ring:var(--tpl-user-dark-ring,0 0 0 3px var(--tpl-primary-light))}.tpl[data-tpl-theme=dark] .tpl-block-content{--tpl-bg-elevated:oklch(98% .004 60);--tpl-border-light:oklch(86% .01 60);--tpl-text:oklch(18% .01 60);--tpl-text-muted:oklch(50% .015 60);--tpl-text-dim:oklch(68% .012 60);--tpl-primary-light:oklch(95% .04 55);--tpl-primary-hover:oklch(60% .16 55);color:var(--tpl-text)}.tpl{height:100%;font-family:Geist,ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:calc(.875 * var(--tpl-base-size));line-height:var(--tw-leading,calc(1.25 / .875));--tw-leading:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--tpl-bg);min-height:320px;color:var(--tpl-text);line-height:1.5;font-family:var(--tpl-font-family);flex-direction:column;display:flex}:where(.tpl) button{cursor:pointer;background:0 0;border:none;margin:0;padding:0}:where(.tpl) .tpl-focus-ring-host:focus-within :is(input,select,textarea):focus-visible{box-shadow:none}.tpl-popover-root{z-index:10000;position:relative}.tpl-merge-tag-label{text-underline-offset:3px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}@supports (color:color-mix(in lab,red,red)){.tpl-merge-tag-label{-webkit-text-decoration-color:color-mix(in srgb,currentColor 55%,transparent);text-decoration-color:color-mix(in srgb,currentColor 55%,transparent)}}@keyframes tpl-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes tpl-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.tpl-fade-in{animation:.2s cubic-bezier(.16,1,.3,1) tpl-fade-in}.tpl-shimmer{background:linear-gradient(90deg,var(--tpl-bg-hover) 25%,var(--tpl-bg-active) 50%,var(--tpl-bg-hover) 75%);background-size:200% 100%;animation:1.5s linear infinite tpl-shimmer}.tpl-preview-mode .tpl-block--idle,.tpl-preview-mode .tpl-block--idle:hover,.tpl-preview-mode .tpl-block--selected{box-shadow:none!important;outline:none!important}.tpl-preview-mode .tpl-block{cursor:default;pointer-events:none}.tpl-preview-mode .tpl-block-actions,.tpl-preview-mode .tpl-block-hidden-overlay,.tpl-preview-mode .tpl-condition-toggle,.tpl-preview-mode .tpl-comment-indicator,.tpl-preview-mode .tpl-collab-lock{display:none}.tpl-ghost{border:none!important;border-top:2px dotted var(--tpl-primary)!important;background-color:#0000!important;justify-content:center!important;align-items:center!important;width:100%!important;height:0!important;min-height:0!important;max-height:0!important;margin:12px 0!important;padding:0!important;display:flex!important;position:relative!important;overflow:visible!important}@supports (color:color-mix(in lab,red,red)){.tpl-ghost{border-top:2px dotted color-mix(in srgb,var(--tpl-primary) 50%,transparent)!important}}.tpl-ghost{box-shadow:none!important;border-radius:0!important}.tpl-ghost>*{display:none!important}.tpl-ghost:before{content:var(--tpl-drop-text,"Drop here");white-space:nowrap!important;color:var(--tpl-primary)!important;background-color:var(--tpl-primary)!important;padding:2px 8px!important;font-size:12px!important;font-weight:500!important;position:absolute!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important}@supports (color:color-mix(in lab,red,red)){.tpl-ghost:before{background-color:color-mix(in srgb,var(--tpl-primary) 15%,var(--tpl-bg))!important}}.tpl-ghost:before{border-radius:var(--tpl-radius-sm)!important;box-shadow:none!important}.tpl-canvas-empty .tpl-ghost{display:none!important}.tpl-dragging{opacity:.8;box-shadow:var(--tpl-shadow-xl)}.sortable-fallback{transition:none!important;animation:none!important}.tpl-block--lifted{outline:2px dashed var(--tpl-primary)!important;outline-offset:2px!important;box-shadow:var(--tpl-shadow-xl),0 0 0 4px var(--tpl-primary)!important}@supports (color:color-mix(in lab,red,red)){.tpl-block--lifted{box-shadow:var(--tpl-shadow-xl),0 0 0 4px color-mix(in srgb,var(--tpl-primary) 20%,transparent)!important}}.tpl-block--lifted{transition:transform .15s cubic-bezier(.16,1,.3,1),box-shadow .15s cubic-bezier(.16,1,.3,1);transform:scale(1.01)}.tpl-sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tpl-text-toolbar-btn{width:calc(calc(var(--tpl-base-size) / 4) * 8);height:calc(calc(var(--tpl-base-size) / 4) * 8);cursor:pointer;border-radius:calc(.25 * var(--tpl-base-size));--tw-border-style:none;transition-property:all;transition-timing-function:var(--tw-ease,cubic-bezier(.16, 1, .3, 1));transition-duration:var(--tw-duration,.12s);color:var(--tpl-text);background-color:#0000;border-style:none;justify-content:center;align-items:center;padding:0;display:flex}.tpl-text-toolbar-btn:hover{background-color:var(--tpl-bg-active)}.tpl-text-toolbar-btn--active{box-shadow:inset 0 0 0 1.5px var(--tpl-primary-hover);background-color:var(--tpl-primary)!important;color:var(--tpl-bg)!important}.tpl-text-toolbar-btn--active svg{stroke-width:2.75px}.tpl-text-content,.tpl-text-editable .tiptap{--tw-outline-style:none;outline-style:none}.tpl-text-editable{border-radius:calc(.25 * var(--tpl-base-size));border-style:var(--tw-border-style);--tw-border-style:dashed;padding:calc(calc(var(--tpl-base-size) / 4) * 2);border-style:dashed;border-width:1px;border-color:var(--tpl-primary);min-height:1.5em}.tpl-text-content p,.tpl-text-editable .tiptap p{margin:0;margin-bottom:calc(calc(var(--tpl-base-size) / 4) * 2)}:is(.tpl-text-content p,.tpl-text-editable .tiptap p):last-child{margin-bottom:0}.tpl-text-content ul,.tpl-text-content ol,.tpl-text-editable .tiptap ul,.tpl-text-editable .tiptap ol{margin-block:calc(calc(var(--tpl-base-size) / 4) * 2);padding-left:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl-text-content li,.tpl-text-editable .tiptap li{margin-block:calc(var(--tpl-base-size) / 4)}.tpl-text-content s,.tpl-text-editable .tiptap s{text-decoration-line:line-through}.tpl-text-content sub,.tpl-text-editable .tiptap sub{vertical-align:sub;font-size:.75em}.tpl-text-content sup,.tpl-text-editable .tiptap sup{vertical-align:super;font-size:.75em}.tpl-text-content a,.tpl-text-editable a{color:var(--tpl-doc-link-color,inherit);-webkit-text-decoration:var(--tpl-doc-link-underline,none);text-decoration:var(--tpl-doc-link-underline,none)}.tpl-text-content span[data-merge-tag],.tpl-text-editable span[data-merge-tag]{margin-inline:calc(calc(var(--tpl-base-size) / 4) * .5);border-radius:calc(.25 * var(--tpl-base-size));padding-inline:calc(calc(var(--tpl-base-size) / 4) * 1.5);padding-block:calc(calc(var(--tpl-base-size) / 4) * .5);--tw-font-weight:500;background-color:var(--tpl-primary);align-items:center;font-size:.9em;font-weight:500;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.tpl-text-content span[data-merge-tag],.tpl-text-editable span[data-merge-tag]{background-color:color-mix(in srgb,var(--tpl-primary) 20%,transparent)}}.tpl-text-content span[data-merge-tag],.tpl-text-editable span[data-merge-tag]{color:var(--tpl-primary)}.tpl-text-content span[data-logic-merge-tag],.tpl-text-editable span[data-logic-merge-tag]{margin-inline:calc(calc(var(--tpl-base-size) / 4) * .5);border-radius:calc(.25 * var(--tpl-base-size));padding-inline:calc(calc(var(--tpl-base-size) / 4) * 1.5);padding-block:calc(calc(var(--tpl-base-size) / 4) * .5);--tw-font-weight:700;--tw-tracking:.025em;letter-spacing:.025em;text-transform:uppercase;border:1.5px solid var(--tpl-primary);background-color:#0000;align-items:center;font-size:.8em;font-weight:700;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.tpl-text-content span[data-logic-merge-tag],.tpl-text-editable span[data-logic-merge-tag]{border:1.5px solid color-mix(in srgb,var(--tpl-primary) 50%,transparent)}}.tpl-text-content span[data-logic-merge-tag],.tpl-text-editable span[data-logic-merge-tag]{color:var(--tpl-primary)}.tpl-tooltip{position:relative}.tpl-tooltip:after{content:attr(data-tooltip);border-radius:var(--tpl-radius-sm);background-color:var(--tpl-text);color:var(--tpl-bg);white-space:normal;text-align:center;pointer-events:none;opacity:0;text-transform:none;z-index:50;width:max-content;max-width:min(320px,90vw);padding:4px 10px;font-size:12px;font-weight:500;line-height:1.4;transition:opacity .15s;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}.tpl-tooltip:before{content:"";border:4px solid #0000;border-bottom-color:var(--tpl-text);pointer-events:none;opacity:0;z-index:50;transition:opacity .15s;position:absolute;top:calc(100% + 2px);left:50%;transform:translate(-50%)}.tpl-tooltip:hover:after,.tpl-tooltip:hover:before{opacity:1}.tpl.tpl-media-overlay{background-color:var(--tpl-overlay);-webkit-backdrop-filter:blur(8px);height:100%;min-height:0;color:var(--tpl-text);flex-direction:row;justify-content:center;align-items:center;display:flex}.tpl.tpl-text-toolbar{flex-direction:row;height:auto;min-height:0;display:flex}.tpl.tpl-link-dialog{background-color:var(--tpl-overlay);flex-direction:row;justify-content:center;align-items:center;height:100%;min-height:0;display:flex}.tpl-upload-zone-active{border-color:var(--tpl-primary)!important;background-color:var(--tpl-primary-light)!important}@property --tpl-comet-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@property --tpl-comet-start{syntax:"<percentage>";inherits:false;initial-value:100%}@keyframes tpl-ai-comet{0%{--tpl-comet-angle:0deg;--tpl-comet-start:100%}1%{--tpl-comet-angle:24deg;--tpl-comet-start:88%}5%{--tpl-comet-angle:120deg;--tpl-comet-start:60%}25%{--tpl-comet-angle:600deg;--tpl-comet-start:60%}33%{--tpl-comet-angle:720deg;--tpl-comet-start:100%}to{--tpl-comet-angle:720deg;--tpl-comet-start:100%}}.tpl-ai-btn--idle{background-color:var(--tpl-primary-light);color:var(--tpl-text);box-shadow:none;z-index:0;position:relative}.tpl-ai-btn--idle:before{content:"";border-radius:inherit;background:conic-gradient(from var(--tpl-comet-angle),transparent 0%,transparent var(--tpl-comet-start),var(--tpl-primary) 80%,var(--tpl-primary) 90%,var(--tpl-primary) 97%,transparent 100%);padding:2px;position:absolute;inset:-2px}@supports (color:color-mix(in lab,red,red)){.tpl-ai-btn--idle:before{background:conic-gradient(from var(--tpl-comet-angle),transparent 0%,transparent var(--tpl-comet-start),color-mix(in srgb,var(--tpl-primary) 40%,transparent) 80%,var(--tpl-primary) 90%,var(--tpl-primary) 97%,transparent 100%)}}.tpl-ai-btn--idle:before{z-index:-1;pointer-events:none;animation:20s linear 3s infinite tpl-ai-comet;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.tpl-ai-btn--idle:hover{background-color:var(--tpl-primary);color:var(--tpl-on-primary);transform:translateY(-1px);box-shadow:0 0 0 3px var(--tpl-primary),0 4px 16px var(--tpl-primary)!important}@supports (color:color-mix(in lab,red,red)){.tpl-ai-btn--idle:hover{box-shadow:0 0 0 3px color-mix(in srgb,var(--tpl-primary) 20%,transparent),0 4px 16px color-mix(in srgb,var(--tpl-primary) 30%,transparent)!important}}.tpl-ai-btn--idle:hover:before{animation:none}.tpl-ai-btn--active{background-color:var(--tpl-primary-light);color:var(--tpl-primary-hover);border:1px solid var(--tpl-primary)}.tpl-ai-btn--active .tpl-ai-btn-icon{fill:var(--tpl-primary)}@supports (color:color-mix(in lab,red,red)){.tpl-ai-btn--active .tpl-ai-btn-icon{fill:color-mix(in srgb,var(--tpl-primary) 25%,transparent)}}.tpl-ai-btn--active:hover{background-color:var(--tpl-primary-light)}@supports (color:color-mix(in lab,red,red)){.tpl-ai-btn--active:hover{background-color:color-mix(in srgb,var(--tpl-primary-light) 80%,var(--tpl-primary))}}.tpl-merge-tag-delete:hover{color:var(--tpl-danger)!important}@media(prefers-reduced-motion:reduce){.tpl-pulse,.tpl-shimmer,.tpl-fade-in,.tpl-scale-in,.tpl-ai-btn--idle:before{animation:none}.tpl-shimmer{background:var(--tpl-bg-hover)}.tpl *,.tpl :before,.tpl :after{transition-duration:.01ms!important}.tpl-spinner{animation:1s linear infinite tpl-spin}}.tpl-restore-btn-enter-active[data-v-6e722ffc]{transition:opacity .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1)}.tpl-restore-btn-leave-active[data-v-6e722ffc]{transition:opacity .15s ease-in,transform .15s ease-in}.tpl-restore-btn-enter-from[data-v-6e722ffc],.tpl-restore-btn-leave-to[data-v-6e722ffc]{opacity:0;transform:translateY(-8px) scale(.9)}.tpl-restore-btn-enter-to[data-v-6e722ffc],.tpl-restore-btn-leave-from[data-v-6e722ffc]{opacity:1;transform:translateY(0) scale(1)}.tpl-saved-block-skeleton{animation:tpl-saved-block-pulse 1.4s ease-in-out infinite}@keyframes tpl-saved-block-pulse{0%,to{opacity:1}50%{opacity:.55}}@media(prefers-reduced-motion:reduce){.tpl-saved-block-skeleton{animation:none}}.tpl-saved-block-delete-btn:hover{color:var(--tpl-danger)!important}.tpl-saved-block-rename-btn:hover{color:var(--tpl-primary)!important}.tpl-comments-slide-enter-active[data-v-40431726]{transition:transform .28s cubic-bezier(.16,1,.3,1)}.tpl-comments-slide-leave-active[data-v-40431726]{transition:transform .2s cubic-bezier(.16,1,.3,1)}.tpl-comments-input-wrapper[data-v-40431726]:focus-within{border-color:var(--tpl-primary);box-shadow:var(--tpl-ring)}.tpl-comments-send-btn[data-v-40431726]:not(:disabled):hover{transform:scale(1.05)}.tpl-comment-filter[data-v-40431726]{color:var(--tpl-text-muted);background-color:transparent}.tpl-comment-filter[data-v-40431726]:hover{background-color:var(--tpl-bg-hover);color:var(--tpl-text)}.tpl-comment-filter--active[data-v-40431726]{background-color:var(--tpl-primary-light);color:var(--tpl-primary)}.tpl-comment-action[data-v-40431726]{color:var(--tpl-text-dim);background-color:transparent}.tpl-comment-action[data-v-40431726]:hover{background-color:var(--tpl-bg-hover);color:var(--tpl-text)}.tpl-comment-delete[data-v-40431726]:hover{background-color:var(--tpl-danger-light);color:var(--tpl-danger)}.tpl-comment-card[data-v-40431726],.tpl-comment-reply-card[data-v-40431726]{border-color:var(--tpl-border);background-color:var(--tpl-bg)}.tpl-resolve-enter-active[data-v-40431726],.tpl-resolve-leave-active[data-v-40431726]{transition:opacity .3s ease,transform .3s ease}.tpl-resolve-enter-from[data-v-40431726],.tpl-resolve-leave-to[data-v-40431726]{opacity:0;transform:translateY(-4px)}.tpl-resolve-icon[data-v-40431726]{transition:color .3s ease,transform .2s ease}.tpl-resolve-icon[data-v-40431726]:active{transform:scale(1.3)}.tpl-replies-enter-active[data-v-40431726],.tpl-replies-leave-active[data-v-40431726]{transition:opacity .25s ease,transform .25s ease}.tpl-replies-enter-from[data-v-40431726],.tpl-replies-leave-to[data-v-40431726]{opacity:0;transform:translateY(-4px)}.tpl-ai-slide-enter-active[data-v-82649117]{transition:transform .28s cubic-bezier(.16,1,.3,1)}.tpl-ai-slide-leave-active[data-v-82649117]{transition:transform .2s cubic-bezier(.16,1,.3,1)}.tpl-ai-input-wrapper[data-v-82649117]:focus-within{border-color:var(--tpl-primary);box-shadow:var(--tpl-ring)}.tpl-ai-send-btn[data-v-82649117]:not(:disabled):hover{transform:scale(1.05)}.tpl-suggestion-btn[data-v-82649117]:hover{border-color:var(--tpl-primary)!important;background-color:var(--tpl-primary-light)!important}.tpl-design-slide-enter-active[data-v-9a44c153]{transition:transform .28s cubic-bezier(.16,1,.3,1)}.tpl-design-slide-leave-active[data-v-9a44c153]{transition:transform .2s cubic-bezier(.16,1,.3,1)}.tpl-design-prompt-input[data-v-9a44c153]:focus{border-color:var(--tpl-primary);box-shadow:var(--tpl-ring)}.tpl-design-dropzone[data-v-9a44c153]:hover{border-color:var(--tpl-primary)!important;background-color:var(--tpl-primary-light)!important}.tpl-scoring-slide-enter-active[data-v-7da30b57]{transition:transform .28s cubic-bezier(.16,1,.3,1)}.tpl-scoring-slide-leave-active[data-v-7da30b57]{transition:transform .2s cubic-bezier(.16,1,.3,1)}.tpl-scoring-fix-btn[data-v-7da30b57]:not(:disabled):hover{border-color:var(--tpl-primary)!important;background-color:var(--tpl-primary-light)!important}.vue-advanced-cropper{text-align:center;position:relative;user-select:none;max-height:100%;max-width:100%;direction:ltr}.vue-advanced-cropper__stretcher{pointer-events:none;position:relative;max-width:100%;max-height:100%}.vue-advanced-cropper__image{user-select:none;position:absolute;transform-origin:center;max-width:none!important}.vue-advanced-cropper__background,.vue-advanced-cropper__foreground{opacity:1;background:#000;transform:translate(-50%,-50%);position:absolute;top:50%;left:50%}.vue-advanced-cropper__foreground{opacity:.5}.vue-advanced-cropper__boundaries{opacity:1;transform:translate(-50%,-50%);position:absolute;left:50%;top:50%}.vue-advanced-cropper__cropper-wrapper{width:100%;height:100%}.vue-advanced-cropper__image-wrapper{overflow:hidden;position:absolute;width:100%;height:100%}.vue-advanced-cropper__stencil-wrapper{position:absolute}.vue-simple-handler{display:block;background:#fff;height:10px;width:10px}.vue-handler-wrapper{position:absolute;transform:translate(-50%,-50%);width:30px;height:30px}.vue-handler-wrapper__draggable{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.vue-handler-wrapper--west-north{cursor:nw-resize}.vue-handler-wrapper--north{cursor:n-resize}.vue-handler-wrapper--east-north{cursor:ne-resize}.vue-handler-wrapper--east{cursor:e-resize}.vue-handler-wrapper--east-south{cursor:se-resize}.vue-handler-wrapper--south{cursor:s-resize}.vue-handler-wrapper--west-south{cursor:sw-resize}.vue-handler-wrapper--west{cursor:w-resize}.vue-handler-wrapper--disabled{cursor:auto}.vue-line-wrapper{background:none;position:absolute;display:flex;align-items:center;justify-content:center}.vue-line-wrapper--north,.vue-line-wrapper--south{height:12px;width:100%;left:0;transform:translateY(-50%)}.vue-line-wrapper--north{top:0;cursor:n-resize}.vue-line-wrapper--south{top:100%;cursor:s-resize}.vue-line-wrapper--east,.vue-line-wrapper--west{width:12px;height:100%;transform:translate(-50%);top:0}.vue-line-wrapper--east{left:100%;cursor:e-resize}.vue-line-wrapper--west{left:0;cursor:w-resize}.vue-line-wrapper--disabled{cursor:auto}.vue-bounding-box{position:relative;height:100%;width:100%}.vue-bounding-box__handler{position:absolute}.vue-bounding-box__handler--west-north{left:0;top:0}.vue-bounding-box__handler--north{left:50%;top:0}.vue-bounding-box__handler--east-north{left:100%;top:0}.vue-bounding-box__handler--east{left:100%;top:50%}.vue-bounding-box__handler--east-south{left:100%;top:100%}.vue-bounding-box__handler--south{left:50%;top:100%}.vue-bounding-box__handler--west-south{left:0;top:100%}.vue-bounding-box__handler--west{left:0;top:50%}.vue-draggable-area{position:relative}.vue-preview-result{overflow:hidden;box-sizing:border-box;position:absolute;height:100%;width:100%}.vue-preview-result__wrapper{position:absolute}.vue-preview-result__image{pointer-events:none;position:relative;user-select:none;transform-origin:center;max-width:none!important}.vue-rectangle-stencil{position:absolute;height:100%;width:100%;box-sizing:border-box}.vue-rectangle-stencil__preview{position:absolute;width:100%;height:100%}.vue-rectangle-stencil--movable{cursor:move}.vue-circle-stencil{position:absolute;height:100%;width:100%;box-sizing:content-box;cursor:move}.vue-circle-stencil__preview{border-radius:50%;position:absolute;width:100%;height:100%}.vue-circle-stencil--movable{cursor:move}.vue-preview{overflow:hidden;box-sizing:border-box;position:relative}.vue-preview--fill{width:100%;height:100%;position:absolute}.vue-preview__wrapper{position:absolute;height:100%;width:100%}.vue-preview__image{pointer-events:none;position:absolute;user-select:none;transform-origin:center;max-width:none!important}.vue-simple-line{background:none;transition:border .5s;border-color:#ffffff4d;border-width:0;border-style:solid}.vue-simple-line--south,.vue-simple-line--north{height:0;width:100%}.vue-simple-line--east,.vue-simple-line--west{height:100%;width:0}.vue-simple-line--east{border-right-width:1px}.vue-simple-line--west{border-left-width:1px}.vue-simple-line--south{border-bottom-width:1px}.vue-simple-line--north{border-top-width:1px}.vue-simple-line--hover{opacity:1;border-color:#fff}[data-v-267faa45] .tpl-cropper-background{background-color:var(--tpl-bg)!important}[data-v-267faa45] .vue-advanced-cropper{background-color:transparent!important}[data-v-267faa45] .vue-advanced-cropper__background{background-color:var(--tpl-bg)!important}[data-v-267faa45] .vue-advanced-cropper__foreground{background-color:var(--tpl-overlay)!important}.tpl-media-item[data-v-78d7ed75]:not(.tpl-media-item--selected):hover{border-color:var(--tpl-border)!important}.tpl-media-list-item[data-v-78d7ed75]:hover{background-color:var(--tpl-bg-hover)!important}.tpl-list-icon[data-v-78d7ed75]{transform:scale(.35);transform-origin:center}.tpl-preview-icon[data-v-56be5670]{transform:scale(.45);transform-origin:center}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--tpl-radius-sm:calc(.25 * var(--tpl-base-size));--tpl-radius-md:calc(.375 * var(--tpl-base-size));--tpl-radius-lg:calc(.5 * var(--tpl-base-size));--tpl-shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--tpl-shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tpl-shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tpl-shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--tpl-radius:calc(.25 * var(--tpl-base-size))}}.tpl\:pointer-events-auto{pointer-events:auto}.tpl\:pointer-events-none{pointer-events:none}.tpl\:invisible{visibility:hidden}.tpl\:sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tpl\:absolute{position:absolute}.tpl\:fixed{position:fixed}.tpl\:relative{position:relative}.tpl\:sticky{position:sticky}.tpl\:inset-0{inset:0}.tpl\:inset-x-0{inset-inline:0}.tpl\:inset-y-1{inset-block:calc(var(--tpl-base-size) / 4)}.tpl\:-top-0\.5{top:calc(calc(var(--tpl-base-size) / 4) * -.5)}.tpl\:-top-1{top:calc(calc(var(--tpl-base-size) / 4) * -1)}.tpl\:top-0{top:0}.tpl\:top-1{top:calc(var(--tpl-base-size) / 4)}.tpl\:top-1\.5{top:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:top-1\/2{top:50%}.tpl\:top-2{top:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:top-14{top:calc(calc(var(--tpl-base-size) / 4) * 14)}.tpl\:top-16{top:calc(calc(var(--tpl-base-size) / 4) * 16)}.tpl\:top-\[104px\]{top:104px}.tpl\:top-full{top:100%}.tpl\:-right-1{right:calc(calc(var(--tpl-base-size) / 4) * -1)}.tpl\:-right-2{right:calc(calc(var(--tpl-base-size) / 4) * -2)}.tpl\:right-0{right:0}.tpl\:right-1{right:calc(var(--tpl-base-size) / 4)}.tpl\:right-1\.5{right:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:right-2{right:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:right-2\.5{right:calc(calc(var(--tpl-base-size) / 4) * 2.5)}.tpl\:right-\[320px\]{right:320px}.tpl\:right-\[360px\]{right:360px}.tpl\:right-\[680px\]{right:680px}.tpl\:bottom-0{bottom:0}.tpl\:bottom-1{bottom:calc(var(--tpl-base-size) / 4)}.tpl\:bottom-10{bottom:calc(calc(var(--tpl-base-size) / 4) * 10)}.tpl\:bottom-full{bottom:100%}.tpl\:-left-1{left:calc(calc(var(--tpl-base-size) / 4) * -1)}.tpl\:left-0{left:0}.tpl\:left-1\.5{left:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:left-1\/2{left:50%}.tpl\:left-2\.5{left:calc(calc(var(--tpl-base-size) / 4) * 2.5)}.tpl\:left-3{left:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:left-5{left:calc(calc(var(--tpl-base-size) / 4) * 5)}.tpl\:left-12{left:calc(calc(var(--tpl-base-size) / 4) * 12)}.tpl\:z-10{z-index:10}.tpl\:z-40{z-index:40}.tpl\:z-50{z-index:50}.tpl\:z-\[4\]{z-index:4}.tpl\:z-\[5\]{z-index:5}.tpl\:z-\[9999\]{z-index:9999}.tpl\:z-\[10000\]{z-index:10000}.tpl\:m-0{margin:0}.tpl\:m-6{margin:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:mx-0\.5{margin-inline:calc(calc(var(--tpl-base-size) / 4) * .5)}.tpl\:mx-1{margin-inline:calc(var(--tpl-base-size) / 4)}.tpl\:mx-1\.5{margin-inline:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:mx-3{margin-inline:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:mx-4{margin-inline:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:mx-6{margin-inline:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:mx-auto{margin-inline:auto}.tpl\:mt-0\.5{margin-top:calc(calc(var(--tpl-base-size) / 4) * .5)}.tpl\:mt-1{margin-top:calc(var(--tpl-base-size) / 4)}.tpl\:mt-1\.5{margin-top:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:mt-2{margin-top:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:mt-3{margin-top:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:mt-4{margin-top:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:\!mb-0{margin-bottom:0!important}.tpl\:mb-1{margin-bottom:calc(var(--tpl-base-size) / 4)}.tpl\:mb-1\.5{margin-bottom:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:mb-2{margin-bottom:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:mb-2\.5{margin-bottom:calc(calc(var(--tpl-base-size) / 4) * 2.5)}.tpl\:mb-3{margin-bottom:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:mb-3\.5{margin-bottom:calc(calc(var(--tpl-base-size) / 4) * 3.5)}.tpl\:mb-4{margin-bottom:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:mb-px{margin-bottom:1px}.tpl\:-ml-48{margin-left:calc(calc(var(--tpl-base-size) / 4) * -48)}.tpl\:ml-0{margin-left:0}.tpl\:ml-0\.5{margin-left:calc(calc(var(--tpl-base-size) / 4) * .5)}.tpl\:ml-1{margin-left:calc(var(--tpl-base-size) / 4)}.tpl\:ml-5{margin-left:calc(calc(var(--tpl-base-size) / 4) * 5)}.tpl\:ml-auto{margin-left:auto}.tpl\:line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.tpl\:line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.tpl\:\!flex{display:flex!important}.tpl\:block{display:block}.tpl\:flex{display:flex}.tpl\:grid{display:grid}.tpl\:hidden{display:none}.tpl\:inline{display:inline}.tpl\:inline-block{display:inline-block}.tpl\:inline-flex{display:inline-flex}.tpl\:aspect-square{aspect-ratio:1}.tpl\:size-1\.5{width:calc(calc(var(--tpl-base-size) / 4) * 1.5);height:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:size-2{width:calc(calc(var(--tpl-base-size) / 4) * 2);height:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:size-3{width:calc(calc(var(--tpl-base-size) / 4) * 3);height:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:size-4{width:calc(calc(var(--tpl-base-size) / 4) * 4);height:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:size-4\.5{width:calc(calc(var(--tpl-base-size) / 4) * 4.5);height:calc(calc(var(--tpl-base-size) / 4) * 4.5)}.tpl\:size-5{width:calc(calc(var(--tpl-base-size) / 4) * 5);height:calc(calc(var(--tpl-base-size) / 4) * 5)}.tpl\:size-6{width:calc(calc(var(--tpl-base-size) / 4) * 6);height:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:size-7{width:calc(calc(var(--tpl-base-size) / 4) * 7);height:calc(calc(var(--tpl-base-size) / 4) * 7)}.tpl\:size-8{width:calc(calc(var(--tpl-base-size) / 4) * 8);height:calc(calc(var(--tpl-base-size) / 4) * 8)}.tpl\:size-10{width:calc(calc(var(--tpl-base-size) / 4) * 10);height:calc(calc(var(--tpl-base-size) / 4) * 10)}.tpl\:size-16{width:calc(calc(var(--tpl-base-size) / 4) * 16);height:calc(calc(var(--tpl-base-size) / 4) * 16)}.tpl\:size-full{width:100%;height:100%}.tpl\:h-0{height:0}.tpl\:h-2\.5{height:calc(calc(var(--tpl-base-size) / 4) * 2.5)}.tpl\:h-3{height:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:h-4{height:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:h-5{height:calc(calc(var(--tpl-base-size) / 4) * 5)}.tpl\:h-6{height:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:h-7{height:calc(calc(var(--tpl-base-size) / 4) * 7)}.tpl\:h-8{height:calc(calc(var(--tpl-base-size) / 4) * 8)}.tpl\:h-9{height:calc(calc(var(--tpl-base-size) / 4) * 9)}.tpl\:h-10{height:calc(calc(var(--tpl-base-size) / 4) * 10)}.tpl\:h-12{height:calc(calc(var(--tpl-base-size) / 4) * 12)}.tpl\:h-14{height:calc(calc(var(--tpl-base-size) / 4) * 14)}.tpl\:h-16{height:calc(calc(var(--tpl-base-size) / 4) * 16)}.tpl\:h-32{height:calc(calc(var(--tpl-base-size) / 4) * 32)}.tpl\:h-44{height:calc(calc(var(--tpl-base-size) / 4) * 44)}.tpl\:h-\[32px\]{height:32px}.tpl\:h-auto{height:auto}.tpl\:h-full{height:100%}.tpl\:max-h-24{max-height:calc(calc(var(--tpl-base-size) / 4) * 24)}.tpl\:max-h-32{max-height:calc(calc(var(--tpl-base-size) / 4) * 32)}.tpl\:max-h-48{max-height:calc(calc(var(--tpl-base-size) / 4) * 48)}.tpl\:max-h-56{max-height:calc(calc(var(--tpl-base-size) / 4) * 56)}.tpl\:max-h-64{max-height:calc(calc(var(--tpl-base-size) / 4) * 64)}.tpl\:max-h-\[50vh\]{max-height:50vh}.tpl\:max-h-\[60vh\]{max-height:60vh}.tpl\:max-h-\[80vh\]{max-height:80vh}.tpl\:max-h-\[90vh\]{max-height:90vh}.tpl\:min-h-0{min-height:0}.tpl\:min-h-6{min-height:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:min-h-10{min-height:calc(calc(var(--tpl-base-size) / 4) * 10)}.tpl\:min-h-20{min-height:calc(calc(var(--tpl-base-size) / 4) * 20)}.tpl\:min-h-\[1\.5em\]{min-height:1.5em}.tpl\:min-h-\[1em\]{min-height:1em}.tpl\:min-h-\[48px\]{min-height:48px}.tpl\:min-h-\[60px\]{min-height:60px}.tpl\:min-h-\[64px\]{min-height:64px}.tpl\:min-h-\[68px\]{min-height:68px}.tpl\:min-h-\[72px\]{min-height:72px}.tpl\:min-h-\[80px\]{min-height:80px}.tpl\:min-h-\[100px\]{min-height:100px}.tpl\:min-h-\[120px\]{min-height:120px}.tpl\:min-h-\[150px\]{min-height:150px}.tpl\:min-h-\[400px\]{min-height:400px}.tpl\:w-1\/2{width:50%}.tpl\:w-1\/3{width:33.3333%}.tpl\:w-1\/4{width:25%}.tpl\:w-2\/3{width:66.6667%}.tpl\:w-3\/4{width:75%}.tpl\:w-5\/6{width:83.3333%}.tpl\:w-7{width:calc(calc(var(--tpl-base-size) / 4) * 7)}.tpl\:w-8{width:calc(calc(var(--tpl-base-size) / 4) * 8)}.tpl\:w-9{width:calc(calc(var(--tpl-base-size) / 4) * 9)}.tpl\:w-10{width:calc(calc(var(--tpl-base-size) / 4) * 10)}.tpl\:w-12{width:calc(calc(var(--tpl-base-size) / 4) * 12)}.tpl\:w-16{width:calc(calc(var(--tpl-base-size) / 4) * 16)}.tpl\:w-20{width:calc(calc(var(--tpl-base-size) / 4) * 20)}.tpl\:w-28{width:calc(calc(var(--tpl-base-size) / 4) * 28)}.tpl\:w-32{width:calc(calc(var(--tpl-base-size) / 4) * 32)}.tpl\:w-36{width:calc(calc(var(--tpl-base-size) / 4) * 36)}.tpl\:w-40{width:calc(calc(var(--tpl-base-size) / 4) * 40)}.tpl\:w-48{width:calc(calc(var(--tpl-base-size) / 4) * 48)}.tpl\:w-52{width:calc(calc(var(--tpl-base-size) / 4) * 52)}.tpl\:w-56{width:calc(calc(var(--tpl-base-size) / 4) * 56)}.tpl\:w-72{width:calc(calc(var(--tpl-base-size) / 4) * 72)}.tpl\:w-\[280px\]{width:280px}.tpl\:w-\[300px\]{width:300px}.tpl\:w-\[320px\]{width:320px}.tpl\:w-\[360px\]{width:360px}.tpl\:w-\[400px\]{width:400px}.tpl\:w-\[1000px\]{width:1000px}.tpl\:w-\[min\(420px\,92vw\)\]{width:min(420px,92vw)}.tpl\:w-full{width:100%}.tpl\:w-px{width:1px}.tpl\:max-w-2xl{max-width:calc(42 * var(--tpl-base-size))}.tpl\:max-w-\[220px\]{max-width:220px}.tpl\:max-w-\[240px\]{max-width:240px}.tpl\:max-w-\[260px\]{max-width:260px}.tpl\:max-w-\[320px\]{max-width:320px}.tpl\:max-w-\[600px\]{max-width:600px}.tpl\:max-w-\[calc\(100vw_-_2\*var\(--tpl-base-size\)\)\]{max-width:calc(100vw - 2 * var(--tpl-base-size))}.tpl\:max-w-full{max-width:100%}.tpl\:max-w-md{max-width:28rem}.tpl\:max-w-sm{max-width:calc(24 * var(--tpl-base-size))}.tpl\:min-w-0{min-width:0}.tpl\:min-w-6{min-width:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:min-w-\[20px\]{min-width:20px}.tpl\:min-w-\[200px\]{min-width:200px}.tpl\:flex-1{flex:1}.tpl\:flex-shrink-0,.tpl\:shrink-0{flex-shrink:0}.tpl\:origin-top-right{transform-origin:100% 0}.tpl\:-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:-translate-x-full{--tw-translate-x:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:translate-x-0{--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:translate-x-4{--tw-translate-x:calc(calc(var(--tpl-base-size) / 4) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:translate-x-full{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:-translate-y-2{--tw-translate-y:calc(calc(var(--tpl-base-size) / 4) * -2);translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:-translate-y-full{--tw-translate-y:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:translate-y-0{--tw-translate-y:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:translate-y-1{--tw-translate-y:calc(var(--tpl-base-size) / 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:translate-y-\[-8px\]{--tw-translate-y:-8px;translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:scale-95{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.tpl\:scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.tpl\:-rotate-90{rotate:-90deg}.tpl\:rotate-0{rotate:0deg}.tpl\:rotate-45{rotate:45deg}.tpl\:rotate-90{rotate:90deg}.tpl\:rotate-180{rotate:180deg}.tpl\:animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.tpl\:animate-spin{animation:1s linear infinite spin}.tpl\:cursor-default{cursor:default}.tpl\:cursor-grab{cursor:grab}.tpl\:cursor-help{cursor:help}.tpl\:cursor-not-allowed{cursor:not-allowed}.tpl\:cursor-pointer{cursor:pointer}.tpl\:resize-none{resize:none}.tpl\:resize-y{resize:vertical}.tpl\:list-none{list-style-type:none}.tpl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.tpl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.tpl\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.tpl\:grid-cols-\[1fr_auto_1fr\]{grid-template-columns:1fr auto 1fr}.tpl\:flex-col{flex-direction:column}.tpl\:flex-wrap{flex-wrap:wrap}.tpl\:items-center{align-items:center}.tpl\:items-end{align-items:flex-end}.tpl\:items-start{align-items:flex-start}.tpl\:items-stretch{align-items:stretch}.tpl\:justify-between{justify-content:space-between}.tpl\:justify-center{justify-content:center}.tpl\:justify-end{justify-content:flex-end}.tpl\:gap-0{gap:0}.tpl\:gap-0\.5{gap:calc(calc(var(--tpl-base-size) / 4) * .5)}.tpl\:gap-1{gap:calc(var(--tpl-base-size) / 4)}.tpl\:gap-1\.5{gap:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:gap-2{gap:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:gap-2\.5{gap:calc(calc(var(--tpl-base-size) / 4) * 2.5)}.tpl\:gap-3{gap:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:gap-4{gap:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:gap-5{gap:calc(calc(var(--tpl-base-size) / 4) * 5)}.tpl\:gap-6{gap:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:gap-10{gap:calc(calc(var(--tpl-base-size) / 4) * 10)}:where(.tpl\:space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--tpl-base-size) / 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--tpl-base-size) / 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.tpl\:space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(calc(var(--tpl-base-size) / 4) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(calc(var(--tpl-base-size) / 4) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.tpl\:space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(calc(var(--tpl-base-size) / 4) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(calc(var(--tpl-base-size) / 4) * 3) * calc(1 - var(--tw-space-y-reverse)))}.tpl\:gap-x-1{column-gap:calc(var(--tpl-base-size) / 4)}.tpl\:gap-x-3{column-gap:calc(calc(var(--tpl-base-size) / 4) * 3)}:where(.tpl\:-space-x-1\.5>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(calc(var(--tpl-base-size) / 4) * -1.5) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(calc(var(--tpl-base-size) / 4) * -1.5) * calc(1 - var(--tw-space-x-reverse)))}.tpl\:gap-y-0\.5{row-gap:calc(calc(var(--tpl-base-size) / 4) * .5)}.tpl\:gap-y-1\.5{row-gap:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:self-end{align-self:flex-end}.tpl\:self-start{align-self:flex-start}.tpl\:truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tpl\:overflow-auto{overflow:auto}.tpl\:overflow-hidden{overflow:hidden}.tpl\:overflow-x-auto{overflow-x:auto}.tpl\:overflow-y-auto{overflow-y:auto}.tpl\:rounded{border-radius:calc(.25 * var(--tpl-base-size))}.tpl\:rounded-\[calc\(var\(--tpl-radius-sm\)-2px\)\]{border-radius:calc(var(--tpl-radius-sm) - 2px)}.tpl\:rounded-\[var\(--tpl-radius\)\]{border-radius:var(--tpl-radius)}.tpl\:rounded-\[var\(--tpl-radius-lg\)\]{border-radius:var(--tpl-radius-lg)}.tpl\:rounded-\[var\(--tpl-radius-md\)\]{border-radius:var(--tpl-radius-md)}.tpl\:rounded-\[var\(--tpl-radius-sm\)\]{border-radius:var(--tpl-radius-sm)}.tpl\:rounded-full{border-radius:3.40282e38px}.tpl\:rounded-lg{border-radius:calc(.5 * var(--tpl-base-size))}.tpl\:rounded-md{border-radius:calc(.375 * var(--tpl-base-size))}.tpl\:rounded-sm{border-radius:calc(.25 * var(--tpl-base-size))}.tpl\:rounded-xl{border-radius:.75rem}.tpl\:rounded-l-\[var\(--tpl-radius-sm\)\]{border-top-left-radius:var(--tpl-radius-sm);border-bottom-left-radius:var(--tpl-radius-sm)}.tpl\:rounded-tl-lg{border-top-left-radius:calc(.5 * var(--tpl-base-size))}.tpl\:rounded-r-\[var\(--tpl-radius-sm\)\]{border-top-right-radius:var(--tpl-radius-sm);border-bottom-right-radius:var(--tpl-radius-sm)}.tpl\:rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.tpl\:border{border-style:var(--tw-border-style);border-width:1px}.tpl\:border-0{border-style:var(--tw-border-style);border-width:0}.tpl\:border-2{border-style:var(--tw-border-style);border-width:2px}.tpl\:border-x-0{border-inline-style:var(--tw-border-style);border-inline-width:0}.tpl\:border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.tpl\:border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.tpl\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.tpl\:border-r-0{border-right-style:var(--tw-border-style);border-right-width:0}.tpl\:border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.tpl\:border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.tpl\:border-l-0{border-left-style:var(--tw-border-style);border-left-width:0}.tpl\:border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.tpl\:border-dashed{--tw-border-style:dashed;border-style:dashed}.tpl\:border-none{--tw-border-style:none;border-style:none}.tpl\:border-\[var\(--tpl-bg\)\]{border-color:var(--tpl-bg)}.tpl\:border-\[var\(--tpl-border\)\]{border-color:var(--tpl-border)}.tpl\:border-\[var\(--tpl-border-light\)\]{border-color:var(--tpl-border-light)}.tpl\:border-\[var\(--tpl-danger\)\]{border-color:var(--tpl-danger)}.tpl\:border-\[var\(--tpl-primary\)\]{border-color:var(--tpl-primary)}.tpl\:border-\[var\(--tpl-primary-hover\)\]{border-color:var(--tpl-primary-hover)}.tpl\:border-\[var\(--tpl-warning\)\]{border-color:var(--tpl-warning)}.tpl\:border-transparent{border-color:#0000}.tpl\:border-l-\[var\(--tpl-primary\)\]{border-left-color:var(--tpl-primary)}.tpl\:border-l-transparent{border-left-color:#0000}.tpl\:bg-\[color-mix\(in_srgb\,var\(--tpl-bg\)_90\%\,transparent\)\]{background-color:var(--tpl-bg)}@supports (color:color-mix(in lab,red,red)){.tpl\:bg-\[color-mix\(in_srgb\,var\(--tpl-bg\)_90\%\,transparent\)\]{background-color:color-mix(in srgb,var(--tpl-bg) 90%,transparent)}}.tpl\:bg-\[var\(--tpl-bg\)\]{background-color:var(--tpl-bg)}.tpl\:bg-\[var\(--tpl-bg-active\)\]{background-color:var(--tpl-bg-active)}.tpl\:bg-\[var\(--tpl-bg-elevated\)\]{background-color:var(--tpl-bg-elevated)}.tpl\:bg-\[var\(--tpl-bg-hover\)\]{background-color:var(--tpl-bg-hover)}.tpl\:bg-\[var\(--tpl-border\)\]{background-color:var(--tpl-border)}.tpl\:bg-\[var\(--tpl-canvas-bg\)\]{background-color:var(--tpl-canvas-bg)}.tpl\:bg-\[var\(--tpl-chrome-bg-elevated\)\]{background-color:var(--tpl-chrome-bg-elevated)}.tpl\:bg-\[var\(--tpl-chrome-primary-light\)\]{background-color:var(--tpl-chrome-primary-light)}.tpl\:bg-\[var\(--tpl-danger\)\]{background-color:var(--tpl-danger)}.tpl\:bg-\[var\(--tpl-danger-light\)\]{background-color:var(--tpl-danger-light)}.tpl\:bg-\[var\(--tpl-primary\)\]{background-color:var(--tpl-primary)}.tpl\:bg-\[var\(--tpl-primary-light\)\]{background-color:var(--tpl-primary-light)}.tpl\:bg-\[var\(--tpl-warning-light\)\]{background-color:var(--tpl-warning-light)}.tpl\:bg-black\/30{background-color:oklab(0% none none/.3)}.tpl\:bg-black\/40{background-color:oklab(0% none none/.4)}.tpl\:bg-transparent{background-color:#0000}.tpl\:object-contain{object-fit:contain}.tpl\:object-cover{object-fit:cover}.tpl\:p-0{padding:0}.tpl\:p-0\.5{padding:calc(calc(var(--tpl-base-size) / 4) * .5)}.tpl\:p-1{padding:calc(var(--tpl-base-size) / 4)}.tpl\:p-1\.5{padding:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:p-2{padding:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:p-3{padding:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:p-4{padding:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:p-5{padding:calc(calc(var(--tpl-base-size) / 4) * 5)}.tpl\:p-6{padding:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:p-8{padding:calc(calc(var(--tpl-base-size) / 4) * 8)}.tpl\:px-0\.5{padding-inline:calc(calc(var(--tpl-base-size) / 4) * .5)}.tpl\:px-1{padding-inline:calc(var(--tpl-base-size) / 4)}.tpl\:px-1\.5{padding-inline:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:px-2{padding-inline:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:px-2\.5{padding-inline:calc(calc(var(--tpl-base-size) / 4) * 2.5)}.tpl\:px-3{padding-inline:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:px-3\.5{padding-inline:calc(calc(var(--tpl-base-size) / 4) * 3.5)}.tpl\:px-4{padding-inline:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:px-5{padding-inline:calc(calc(var(--tpl-base-size) / 4) * 5)}.tpl\:px-6{padding-inline:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:px-8{padding-inline:calc(calc(var(--tpl-base-size) / 4) * 8)}.tpl\:px-10{padding-inline:calc(calc(var(--tpl-base-size) / 4) * 10)}.tpl\:py-0{padding-block:0}.tpl\:py-0\.5{padding-block:calc(calc(var(--tpl-base-size) / 4) * .5)}.tpl\:py-1{padding-block:calc(var(--tpl-base-size) / 4)}.tpl\:py-1\.5{padding-block:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:py-2{padding-block:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:py-2\.5{padding-block:calc(calc(var(--tpl-base-size) / 4) * 2.5)}.tpl\:py-3{padding-block:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:py-3\.5{padding-block:calc(calc(var(--tpl-base-size) / 4) * 3.5)}.tpl\:py-4{padding-block:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:py-5{padding-block:calc(calc(var(--tpl-base-size) / 4) * 5)}.tpl\:py-6{padding-block:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:py-8{padding-block:calc(calc(var(--tpl-base-size) / 4) * 8)}.tpl\:py-10{padding-block:calc(calc(var(--tpl-base-size) / 4) * 10)}.tpl\:py-12{padding-block:calc(calc(var(--tpl-base-size) / 4) * 12)}.tpl\:py-16{padding-block:calc(calc(var(--tpl-base-size) / 4) * 16)}.tpl\:py-\[5px\]{padding-block:5px}.tpl\:py-\[7px\]{padding-block:7px}.tpl\:py-px{padding-block:1px}.tpl\:pt-1{padding-top:calc(var(--tpl-base-size) / 4)}.tpl\:pt-2{padding-top:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:pt-2\.5{padding-top:calc(calc(var(--tpl-base-size) / 4) * 2.5)}.tpl\:pt-3{padding-top:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:pt-4{padding-top:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:pr-2{padding-right:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:pr-3{padding-right:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:pr-4{padding-right:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:pr-6{padding-right:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:pr-7{padding-right:calc(calc(var(--tpl-base-size) / 4) * 7)}.tpl\:pr-8{padding-right:calc(calc(var(--tpl-base-size) / 4) * 8)}.tpl\:pb-1{padding-bottom:calc(var(--tpl-base-size) / 4)}.tpl\:pb-1\.5{padding-bottom:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:pb-2{padding-bottom:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:pb-3{padding-bottom:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:pb-4{padding-bottom:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:pl-2{padding-left:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:pl-2\.5{padding-left:calc(calc(var(--tpl-base-size) / 4) * 2.5)}.tpl\:pl-3{padding-left:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:pl-4{padding-left:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:pl-8{padding-left:calc(calc(var(--tpl-base-size) / 4) * 8)}.tpl\:pl-9{padding-left:calc(calc(var(--tpl-base-size) / 4) * 9)}.tpl\:pl-\[18px\]{padding-left:18px}.tpl\:text-center{text-align:center}.tpl\:text-left{text-align:left}.tpl\:font-\[inherit\]{font-family:inherit}.tpl\:font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.tpl\:font-sans{font-family:Geist,ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.tpl\:text-4xl{font-size:2.25rem;line-height:var(--tw-leading,calc(2.5 / 2.25))}.tpl\:text-base{font-size:1rem;line-height:var(--tw-leading, 1.5 )}.tpl\:text-lg{font-size:1.125rem;line-height:var(--tw-leading,calc(1.75 / 1.125))}.tpl\:text-sm{font-size:calc(.875 * var(--tpl-base-size));line-height:var(--tw-leading,calc(1.25 / .875))}.tpl\:text-xs{font-size:calc(.75 * var(--tpl-base-size));line-height:var(--tw-leading,calc(1 / .75))}.tpl\:text-\[0\.8em\]{font-size:.8em}.tpl\:text-\[0\.9em\]{font-size:.9em}.tpl\:text-\[1em\]{font-size:1em}.tpl\:text-\[8px\]{font-size:8px}.tpl\:text-\[9px\]{font-size:9px}.tpl\:text-\[10px\]{font-size:10px}.tpl\:text-\[11px\]{font-size:11px}.tpl\:text-\[12px\]{font-size:12px}.tpl\:text-\[13px\]{font-size:13px}.tpl\:text-\[length\:inherit\]{font-size:inherit}.tpl\:leading-none{--tw-leading:1;line-height:1}.tpl\:leading-normal{--tw-leading:1.5;line-height:1.5}.tpl\:leading-relaxed{--tw-leading:1.625;line-height:1.625}.tpl\:leading-snug{--tw-leading:1.375;line-height:1.375}.tpl\:leading-tight{--tw-leading:1.25;line-height:1.25}.tpl\:font-\[var\(--tpl-font-family\)\]{--tw-font-weight:var(--tpl-font-family);font-weight:var(--tpl-font-family)}.tpl\:font-bold{--tw-font-weight:700;font-weight:700}.tpl\:font-medium{--tw-font-weight:500;font-weight:500}.tpl\:font-normal{--tw-font-weight:400;font-weight:400}.tpl\:font-semibold{--tw-font-weight:600;font-weight:600}.tpl\:tracking-wide{--tw-tracking:.025em;letter-spacing:.025em}.tpl\:tracking-wider{--tw-tracking:.05em;letter-spacing:.05em}.tpl\:break-all{word-break:break-all}.tpl\:text-ellipsis{text-overflow:ellipsis}.tpl\:whitespace-nowrap{white-space:nowrap}.tpl\:whitespace-pre-wrap{white-space:pre-wrap}.tpl\:text-\[var\(--tpl-bg\)\]{color:var(--tpl-bg)}.tpl\:text-\[var\(--tpl-border\)\]{color:var(--tpl-border)}.tpl\:text-\[var\(--tpl-border-light\)\]{color:var(--tpl-border-light)}.tpl\:text-\[var\(--tpl-chrome-text-dim\)\]{color:var(--tpl-chrome-text-dim)}.tpl\:text-\[var\(--tpl-chrome-text-muted\)\]{color:var(--tpl-chrome-text-muted)}.tpl\:text-\[var\(--tpl-danger\)\]{color:var(--tpl-danger)}.tpl\:text-\[var\(--tpl-on-primary\)\]{color:var(--tpl-on-primary)}.tpl\:text-\[var\(--tpl-primary\)\]{color:var(--tpl-primary)}.tpl\:text-\[var\(--tpl-primary-hover\)\]{color:var(--tpl-primary-hover)}.tpl\:text-\[var\(--tpl-success\)\]{color:var(--tpl-success)}.tpl\:text-\[var\(--tpl-success\,var\(--tpl-primary\)\)\]{color:var(--tpl-success,var(--tpl-primary))}.tpl\:text-\[var\(--tpl-text\)\]{color:var(--tpl-text)}.tpl\:text-\[var\(--tpl-text-dim\)\]{color:var(--tpl-text-dim)}.tpl\:text-\[var\(--tpl-text-muted\)\]{color:var(--tpl-text-muted)}.tpl\:text-\[var\(--tpl-warning\)\]{color:var(--tpl-warning)}.tpl\:text-white{color:#fff}.tpl\:normal-case{text-transform:none}.tpl\:uppercase{text-transform:uppercase}.tpl\:italic{font-style:italic}.tpl\:tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tpl\:no-underline{text-decoration-line:none}.tpl\:underline{text-decoration-line:underline}.tpl\:accent-\[var\(--tpl-primary\)\]{accent-color:var(--tpl-primary)}.tpl\:opacity-0{opacity:0}.tpl\:opacity-50{opacity:.5}.tpl\:opacity-60{opacity:.6}.tpl\:opacity-70{opacity:.7}.tpl\:opacity-90{opacity:.9}.tpl\:opacity-100{opacity:1}.tpl\:shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:shadow-\[var\(--tpl-ring\)\]{--tw-shadow:var(--tpl-ring);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:shadow-\[var\(--tpl-shadow\)\]{--tw-shadow:var(--tpl-shadow);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:shadow-\[var\(--tpl-shadow-lg\)\]{--tw-shadow:var(--tpl-shadow-lg);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:shadow-\[var\(--tpl-shadow-md\)\]{--tw-shadow:var(--tpl-shadow-md);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:shadow-\[var\(--tpl-shadow-sm\)\]{--tw-shadow:var(--tpl-shadow-sm);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:ring-\[var\(--tpl-border\)\]{--tw-ring-color:var(--tpl-border)}.tpl\:ring-\[var\(--tpl-primary\)\]{--tw-ring-color:var(--tpl-primary)}.tpl\:ring-offset-1{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.tpl\:ring-offset-\[var\(--tpl-bg-elevated\)\]{--tw-ring-offset-color:var(--tpl-bg-elevated)}.tpl\:backdrop-blur-\[2px\]{--tw-backdrop-blur:blur(2px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.tpl\:transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}.tpl\:transition-all{transition-property:all;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}.tpl\:transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}.tpl\:transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}.tpl\:transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}.tpl\:transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}.tpl\:duration-100{--tw-duration:.1s;transition-duration:.1s}.tpl\:duration-150{--tw-duration:.15s;transition-duration:.15s}.tpl\:duration-200{--tw-duration:.2s;transition-duration:.2s}.tpl\:duration-300{--tw-duration:.3s;transition-duration:.3s}.tpl\:duration-\[80ms\]{--tw-duration:80ms;transition-duration:80ms}.tpl\:duration-\[120ms\]{--tw-duration:.12s;transition-duration:.12s}.tpl\:ease-\[cubic-bezier\(0\.16\,1\,0\.3\,1\)\]{--tw-ease:cubic-bezier(.16,1,.3,1);transition-timing-function:cubic-bezier(.16,1,.3,1)}.tpl\:ease-in{--tw-ease:cubic-bezier(.4, 0, 1, 1);transition-timing-function:cubic-bezier(.4,0,1,1)}.tpl\:ease-out{--tw-ease:cubic-bezier(0, 0, .2, 1);transition-timing-function:cubic-bezier(0,0,.2,1)}.tpl\:outline-none{--tw-outline-style:none;outline-style:none}.tpl\:select-none{-webkit-user-select:none;user-select:none}@media(hover:hover){.tpl\:group-hover\:bg-black\/40:is(:where(.tpl\:group):hover *){background-color:oklab(0% none none/.4)}.tpl\:group-hover\:opacity-100:is(:where(.tpl\:group):hover *){opacity:1}}.tpl\:placeholder\:text-\[var\(--tpl-text-dim\)\]::placeholder{color:var(--tpl-text-dim)}.tpl\:first\:border-t-0:first-child{border-top-style:var(--tw-border-style);border-top-width:0}.tpl\:last\:mb-0:last-child{margin-bottom:0}@media(hover:hover){.tpl\:hover\:z-10:hover{z-index:10}.tpl\:hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.tpl\:hover\:scale-110:hover{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.tpl\:hover\:scale-125:hover{--tw-scale-x:125%;--tw-scale-y:125%;--tw-scale-z:125%;scale:var(--tw-scale-x) var(--tw-scale-y)}.tpl\:hover\:border-\[var\(--tpl-border\)\]:hover{border-color:var(--tpl-border)}.tpl\:hover\:border-\[var\(--tpl-danger\)\]:hover{border-color:var(--tpl-danger)}.tpl\:hover\:border-\[var\(--tpl-primary\)\]:hover{border-color:var(--tpl-primary)}.tpl\:hover\:border-\[var\(--tpl-text-dim\)\]:hover{border-color:var(--tpl-text-dim)}.tpl\:hover\:border-l-\[var\(--tpl-primary\)\]:hover{border-left-color:var(--tpl-primary)}.tpl\:hover\:bg-\[color-mix\(in_srgb\,var\(--tpl-text\)_8\%\,transparent\)\]:hover{background-color:var(--tpl-text)}@supports (color:color-mix(in lab,red,red)){.tpl\:hover\:bg-\[color-mix\(in_srgb\,var\(--tpl-text\)_8\%\,transparent\)\]:hover{background-color:color-mix(in srgb,var(--tpl-text) 8%,transparent)}}.tpl\:hover\:bg-\[var\(--tpl-bg-active\)\]:hover{background-color:var(--tpl-bg-active)}.tpl\:hover\:bg-\[var\(--tpl-bg-hover\)\]:hover{background-color:var(--tpl-bg-hover)}.tpl\:hover\:bg-\[var\(--tpl-danger-light\)\]:hover{background-color:var(--tpl-danger-light)}.tpl\:hover\:bg-\[var\(--tpl-primary-hover\)\]:hover{background-color:var(--tpl-primary-hover)}.tpl\:hover\:bg-\[var\(--tpl-primary-light\)\]:hover{background-color:var(--tpl-primary-light)}.tpl\:hover\:text-\[var\(--tpl-danger\)\]:hover{color:var(--tpl-danger)}.tpl\:hover\:text-\[var\(--tpl-primary\)\]:hover{color:var(--tpl-primary)}.tpl\:hover\:text-\[var\(--tpl-text\)\]:hover{color:var(--tpl-text)}.tpl\:hover\:underline:hover{text-decoration-line:underline}.tpl\:hover\:opacity-80:hover{opacity:.8}.tpl\:hover\:opacity-90:hover{opacity:.9}.tpl\:hover\:opacity-100:hover{opacity:1}.tpl\:hover\:shadow-\[var\(--tpl-shadow-md\)\]:hover{--tw-shadow:var(--tpl-shadow-md);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:hover\:shadow-\[var\(--tpl-shadow-sm\)\]:hover{--tw-shadow:var(--tpl-shadow-sm);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.tpl\:focus\:border-\[var\(--tpl-primary\)\]:focus{border-color:var(--tpl-primary)}.tpl\:focus\:shadow-\[0_0_0_3px_var\(--tpl-primary-light\)\]:focus{--tw-shadow:0 0 0 3px var(--tw-shadow-color,var(--tpl-primary-light));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:focus\:shadow-\[var\(--tpl-ring\)\]:focus,.tpl\:focus-visible\:shadow-\[var\(--tpl-ring\)\]:focus-visible{--tw-shadow:var(--tpl-ring);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:focus-visible\:ring-\[var\(--tpl-primary\)\]:focus-visible{--tw-ring-color:var(--tpl-primary)}.tpl\:focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.tpl\:focus-visible\:ring-offset-\[var\(--tpl-bg-elevated\)\]:focus-visible{--tw-ring-offset-color:var(--tpl-bg-elevated)}.tpl\:focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.tpl\:active\:cursor-grabbing:active{cursor:grabbing}.tpl\:active\:bg-\[var\(--tpl-bg-active\)\]:active{background-color:var(--tpl-bg-active)}.tpl\:disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.tpl\:disabled\:opacity-30:disabled{opacity:.3}.tpl\:disabled\:opacity-40:disabled{opacity:.4}.tpl\:disabled\:opacity-50:disabled{opacity:.5}@media(hover:hover){.tpl\:disabled\:hover\:bg-transparent:disabled:hover{background-color:#0000}}@layer base,components;.tpl{--tpl-base-size:var(--tpl-user-base-size,16px);--tpl-bg:oklch(99.5% .002 60);--tpl-bg-elevated:oklch(98% .004 60);--tpl-bg-hover:oklch(96% .006 60);--tpl-bg-active:oklch(93.5% .008 60);--tpl-border:oklch(92% .006 60);--tpl-border-light:oklch(86% .01 60);--tpl-text:oklch(18% .01 60);--tpl-text-muted:oklch(50% .015 60);--tpl-text-dim:oklch(68% .012 60);--tpl-primary:oklch(70% .16 55);--tpl-primary-hover:oklch(63% .17 55);--tpl-primary-light:oklch(95% .04 55);--tpl-secondary:oklch(60% .118 184.71);--tpl-secondary-hover:oklch(53.2% .105 186.39);--tpl-secondary-light:oklch(93.8% .03 186.82);--tpl-success:oklch(62.8% .194 155.1);--tpl-success-light:oklch(93.6% .043 163.51);--tpl-warning:oklch(76.9% .168 70.08);--tpl-warning-light:oklch(95% .038 73.59);--tpl-danger:oklch(63.7% .237 25.33);--tpl-danger-light:oklch(93.6% .032 17.72);--tpl-radius:10px;--tpl-radius-sm:7px;--tpl-radius-lg:14px;--tpl-font-family:"Geist", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--tpl-shadow:0 1px 2px #0000000a, 0 1px 3px #00000008;--tpl-shadow-md:0 2px 8px #0000000f, 0 1px 3px #0000000a;--tpl-shadow-lg:0 4px 16px #00000014, 0 2px 6px #0000000a;--tpl-shadow-xl:0 8px 32px #0000001a, 0 4px 12px #0000000f;--tpl-ring:0 0 0 3px var(--tpl-primary-light);--tpl-transition:.12s cubic-bezier(.16, 1, .3, 1)}.tpl[data-tpl-theme=dark]{--tpl-bg:oklch(16% .005 60);--tpl-bg-elevated:oklch(21% .006 60);--tpl-bg-hover:oklch(26% .007 60);--tpl-bg-active:oklch(30% .008 60);--tpl-border:oklch(30% .006 60);--tpl-border-light:oklch(38% .008 60);--tpl-text:oklch(93% .005 60);--tpl-text-muted:oklch(65% .01 60);--tpl-text-dim:oklch(50% .008 60);--tpl-primary:oklch(73% .15 55);--tpl-primary-hover:oklch(78% .14 55);--tpl-primary-light:oklch(28% .05 55);--tpl-secondary:oklch(63% .11 184.71);--tpl-secondary-hover:oklch(68% .1 186.39);--tpl-secondary-light:oklch(25% .03 186.82);--tpl-success:oklch(65% .18 155.1);--tpl-success-light:oklch(25% .04 163.51);--tpl-warning:oklch(78% .16 70.08);--tpl-warning-light:oklch(28% .04 73.59);--tpl-danger:oklch(65% .22 25.33);--tpl-danger-light:oklch(25% .04 17.72);--tpl-shadow:0 1px 2px #0000004d, 0 1px 3px #0003;--tpl-shadow-md:0 2px 8px #00000059, 0 1px 3px #00000040;--tpl-shadow-lg:0 4px 16px #0006, 0 2px 6px #0000004d;--tpl-shadow-xl:0 8px 32px #00000080, 0 4px 12px #00000059;--tpl-ring:0 0 0 3px var(--tpl-primary-light)}.tpl{font-family:Geist,ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:calc(.875 * var(--tpl-base-size));line-height:var(--tw-leading,calc(1.25 / .875));--tw-leading:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--tpl-bg);color:var(--tpl-text);line-height:1.5;font-family:var(--tpl-font-family)}:where(.tpl) button,:where(.tpl) input,:where(.tpl) select,:where(.tpl) textarea{box-sizing:border-box;font-family:inherit}:where(.tpl) button{cursor:pointer;background:0 0;border:none}:where(.tpl) button:focus-visible,:where(.tpl) input:focus-visible,:where(.tpl) select:focus-visible,:where(.tpl) textarea:focus-visible{box-shadow:var(--tpl-ring);outline:none}.tpl ::-webkit-scrollbar{width:6px;height:6px}.tpl ::-webkit-scrollbar-track{background:0 0}.tpl ::-webkit-scrollbar-thumb{background-color:var(--tpl-border-light)}@supports (color:color-mix(in lab,red,red)){.tpl ::-webkit-scrollbar-thumb{background-color:color-mix(in srgb,var(--tpl-border-light) 60%,transparent)}}.tpl ::-webkit-scrollbar-thumb{border-radius:calc(.25 * var(--tpl-base-size))}.tpl ::-webkit-scrollbar-thumb:hover{background-color:var(--tpl-border-light)}@keyframes tpl-pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes tpl-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes tpl-scale-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.tpl-pulse{animation:2s infinite tpl-pulse}.tpl-spinner{animation:1s linear infinite tpl-spin}.tpl-scale-in{animation:.15s cubic-bezier(.16,1,.3,1) tpl-scale-in}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}.tpl-ai-feature-menu-item[data-v-bf59b787]:hover{background-color:var(--tpl-bg-hover)!important}
|
|
1
|
+
@import"https://fonts.bunny.net/css?family=geist:400,500,600";.tpl-loading-track[data-v-c3d50014]{height:3px;width:100%;border-radius:9999px;background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--tpl-primary) 10%,transparent) 15%,color-mix(in srgb,var(--tpl-primary) 30%,transparent) 30%,var(--tpl-primary) 50%,color-mix(in srgb,var(--tpl-primary) 30%,transparent) 70%,color-mix(in srgb,var(--tpl-primary) 10%,transparent) 85%,transparent 100%);background-size:200% 100%;animation:tpl-loading-flow-c3d50014 3s ease-in-out infinite}@keyframes tpl-loading-flow-c3d50014{0%{background-position:100% 0}to{background-position:-100% 0}}@media(prefers-reduced-motion:reduce){.tpl-loading-track-fill[data-v-c3d50014]{animation:none;background-position:50% 0}}.tpl-block--idle[data-v-096f1d37]{outline:1.5px dashed color-mix(in srgb,var(--tpl-primary) 30%,transparent);outline-offset:-1px;transition:outline .15s cubic-bezier(.16,1,.3,1),box-shadow .15s cubic-bezier(.16,1,.3,1)}.tpl-block--idle[data-v-096f1d37]:hover{outline:1.5px solid color-mix(in srgb,var(--tpl-primary) 50%,transparent);outline-offset:-1px;box-shadow:0 0 8px color-mix(in srgb,var(--tpl-primary) 8%,transparent)}.tpl-block--picked[data-v-096f1d37]{outline:2px solid var(--tpl-primary);outline-offset:-1px;box-shadow:0 0 0 4px color-mix(in srgb,var(--tpl-primary) 18%,transparent);transition:outline .15s cubic-bezier(.16,1,.3,1),box-shadow .15s cubic-bezier(.16,1,.3,1)}.tpl-block--selected[data-v-096f1d37]{outline:2px solid color-mix(in srgb,var(--tpl-primary) 60%,transparent);outline-offset:-1px;box-shadow:0 0 12px color-mix(in srgb,var(--tpl-primary) 15%,transparent);transition:outline .15s cubic-bezier(.16,1,.3,1),box-shadow .15s cubic-bezier(.16,1,.3,1)}.tpl-block-action-btn[data-v-096f1d37]{color:var(--tpl-chrome-text-muted);background-color:transparent}.tpl-block-action-btn[data-v-096f1d37]:hover{background-color:var(--tpl-bg-hover);color:var(--tpl-chrome-text)}.tpl-block-action-btn[data-v-096f1d37]:active{transform:scale(.9)}.tpl-block-delete-btn[data-v-096f1d37]:hover{background-color:var(--tpl-danger-light);color:var(--tpl-danger)}.tpl-condition-toggle[data-v-096f1d37]:hover{background-color:var(--tpl-bg-hover)!important}.tpl-condition-toggle[data-v-096f1d37]:active{transform:scale(.9)}.tpl-block-hidden-overlay[data-v-096f1d37]{background-color:color-mix(in srgb,var(--tpl-bg) 60%,transparent)}.tpl-table-editable[data-v-963ac422] th[contenteditable],.tpl-table-editable[data-v-963ac422] td[contenteditable]{outline:none;cursor:text;min-width:calc(2 * var(--tpl-base-size))}.tpl-table-editable[data-v-963ac422] th[contenteditable]:empty:before,.tpl-table-editable[data-v-963ac422] td[contenteditable]:empty:before{content:attr(data-placeholder);color:var(--tpl-text-dim);pointer-events:none}.tpl-table-editable[data-v-963ac422] th[contenteditable]:focus,.tpl-table-editable[data-v-963ac422] td[contenteditable]:focus{outline:2px solid var(--tpl-primary);outline-offset:-2px;border-radius:1px}hex-color-picker{--hcp-width: 200px}hex-color-picker::part(hue){border-radius:var(--tpl-radius-sm, 7px)}hex-color-picker::part(saturation){border-radius:var(--tpl-radius-sm, 7px) var(--tpl-radius-sm, 7px) 0 0}.tpl-color-swatch-empty{background-color:var(--tpl-bg);background-image:linear-gradient(to top right,transparent calc(50% - .75px),var(--tpl-text-dim) calc(50% - .75px),var(--tpl-text-dim) calc(50% + .75px),transparent calc(50% + .75px))}.tpl-canvas--dark-mode[data-v-da730df5] .tpl-block-content:not(.tpl-block-content *){filter:invert(1) hue-rotate(180deg)}[data-v-da730df5] .tpl-block-content{transition:filter .3s ease}.tpl-canvas--dark-mode[data-v-da730df5] .tpl-block-content img{filter:invert(1) hue-rotate(180deg)}.tpl-pulse-fill[data-v-c289916a]{animation:tpl-field-pulse-c289916a 1s ease-out}@keyframes tpl-field-pulse-c289916a{0%{box-shadow:0 0 color-mix(in srgb,var(--tpl-warning) 30%,transparent);background-color:color-mix(in srgb,var(--tpl-warning) 6%,transparent)}40%{box-shadow:0 0 0 3px color-mix(in srgb,var(--tpl-warning) 15%,transparent);background-color:color-mix(in srgb,var(--tpl-warning) 5%,transparent)}to{box-shadow:0 0 0 0 transparent;background-color:transparent}}@media(prefers-reduced-motion:reduce){.tpl-pulse-fill[data-v-c289916a]{animation:none}}input[type=number][data-v-69591c1e]::-webkit-outer-spin-button,input[type=number][data-v-69591c1e]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number][data-v-69591c1e]{-moz-appearance:textfield}.tpl-collapsible[data-v-c0ea5f03]{display:grid;grid-template-rows:0fr;transition:grid-template-rows .2s cubic-bezier(.16,1,.3,1)}.tpl-collapsible--open[data-v-c0ea5f03]{grid-template-rows:1fr}.tpl-collapsible>div[data-v-c0ea5f03]{overflow:hidden}.tpl-icon-enter-active[data-v-632aa74f],.tpl-icon-leave-active[data-v-632aa74f]{transition:opacity .12s cubic-bezier(.16,1,.3,1),transform .12s cubic-bezier(.16,1,.3,1)}.tpl-icon-enter-from[data-v-632aa74f],.tpl-icon-leave-to[data-v-632aa74f]{opacity:0;transform:scale(.8)}.tpl-dark-mode-toggle[data-v-632aa74f]:hover{background-color:var(--tpl-bg-hover)}.tpl-dark-mode-toggle[data-v-632aa74f]:active{transform:scale(.92)}.tpl-icon-enter-active[data-v-eef7b2ca],.tpl-icon-leave-active[data-v-eef7b2ca]{transition:opacity .12s cubic-bezier(.16,1,.3,1),transform .12s cubic-bezier(.16,1,.3,1)}.tpl-icon-enter-from[data-v-eef7b2ca],.tpl-icon-leave-to[data-v-eef7b2ca]{opacity:0;transform:scale(.8)}.tpl-preview-toggle[data-v-eef7b2ca]:hover{background-color:var(--tpl-bg-hover)}.tpl-preview-toggle[data-v-eef7b2ca]:active{transform:scale(.92)}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tpl-comet-angle:0deg;--tpl-comet-start:100%}}}@layer theme{:root,:host{--tpl-radius-sm:calc(.25 * var(--tpl-base-size));--tpl-radius-md:calc(.375 * var(--tpl-base-size));--tpl-radius-lg:calc(.5 * var(--tpl-base-size));--tpl-shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--tpl-shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tpl-shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tpl-shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--tpl-radius:calc(.25 * var(--tpl-base-size))}}.tpl\:max-w-md{max-width:calc(28 * var(--tpl-base-size))}.tpl\:rounded-xl{border-radius:calc(.75 * var(--tpl-base-size))}.tpl\:text-4xl{font-size:calc(2.25 * var(--tpl-base-size));line-height:var(--tw-leading,calc(2.5 / 2.25))}.tpl\:text-base{font-size:var(--tpl-base-size);line-height:var(--tw-leading, 1.5 )}.tpl\:text-lg{font-size:calc(1.125 * var(--tpl-base-size));line-height:var(--tw-leading,calc(1.75 / 1.125))}.tpl\:transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,cubic-bezier(.16, 1, .3, 1));transition-duration:var(--tw-duration,.12s)}.tpl\:transition-all{transition-property:all;transition-timing-function:var(--tw-ease,cubic-bezier(.16, 1, .3, 1));transition-duration:var(--tw-duration,.12s)}.tpl\:transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,cubic-bezier(.16, 1, .3, 1));transition-duration:var(--tw-duration,.12s)}.tpl\:transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,cubic-bezier(.16, 1, .3, 1));transition-duration:var(--tw-duration,.12s)}.tpl\:transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,cubic-bezier(.16, 1, .3, 1));transition-duration:var(--tw-duration,.12s)}.tpl\:transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,cubic-bezier(.16, 1, .3, 1));transition-duration:var(--tw-duration,.12s)}@layer base,components;.tpl{--tpl-base-size:var(--tpl-user-base-size,16px);--tpl-bg:var(--tpl-user-bg,oklch(99.5% .002 60));--tpl-bg-elevated:var(--tpl-user-bg-elevated,oklch(98% .004 60));--tpl-bg-hover:var(--tpl-user-bg-hover,oklch(96% .006 60));--tpl-bg-active:var(--tpl-user-bg-active,oklch(93.5% .008 60));--tpl-border:var(--tpl-user-border,oklch(92% .006 60));--tpl-border-light:var(--tpl-user-border-light,oklch(86% .01 60));--tpl-text:var(--tpl-user-text,oklch(18% .01 60));--tpl-text-muted:var(--tpl-user-text-muted,oklch(50% .015 60));--tpl-text-dim:var(--tpl-user-text-dim,oklch(68% .012 60));--tpl-primary:var(--tpl-user-primary,oklch(70% .16 55));--tpl-primary-hover:var(--tpl-user-primary-hover,oklch(63% .17 55));--tpl-primary-light:var(--tpl-user-primary-light,oklch(95% .04 55));--tpl-on-primary:var(--tpl-user-on-primary,var(--tpl-bg));--tpl-secondary:var(--tpl-user-secondary,oklch(60% .118 184.71));--tpl-secondary-hover:var(--tpl-user-secondary-hover,oklch(53.2% .105 186.39));--tpl-secondary-light:var(--tpl-user-secondary-light,oklch(93.8% .03 186.82));--tpl-success:var(--tpl-user-success,oklch(62.8% .194 155.1));--tpl-success-light:var(--tpl-user-success-light,oklch(93.6% .043 163.51));--tpl-warning:var(--tpl-user-warning,oklch(76.9% .168 70.08));--tpl-warning-light:var(--tpl-user-warning-light,oklch(95% .038 73.59));--tpl-danger:var(--tpl-user-danger,oklch(63.7% .237 25.33));--tpl-danger-light:var(--tpl-user-danger-light,oklch(93.6% .032 17.72));--tpl-canvas-bg:var(--tpl-user-canvas-bg,oklch(97.5% .003 60));--tpl-chrome-bg-elevated:var(--tpl-bg-elevated);--tpl-chrome-border-light:var(--tpl-border-light);--tpl-chrome-text:var(--tpl-text);--tpl-chrome-text-muted:var(--tpl-text-muted);--tpl-chrome-text-dim:var(--tpl-text-dim);--tpl-chrome-primary-light:var(--tpl-primary-light);--tpl-chrome-primary-hover:var(--tpl-primary-hover);--tpl-radius:var(--tpl-user-radius,10px);--tpl-radius-sm:var(--tpl-user-radius-sm,7px);--tpl-radius-lg:var(--tpl-user-radius-lg,14px);--tpl-font-family:var(--tpl-user-font-family,"Geist", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");--tpl-shadow-sm:var(--tpl-user-shadow-sm,0 1px 2px #00000008);--tpl-shadow:var(--tpl-user-shadow,0 1px 2px #0000000a, 0 1px 3px #00000008);--tpl-shadow-md:var(--tpl-user-shadow-md,0 2px 8px #0000000f, 0 1px 3px #0000000a);--tpl-shadow-lg:var(--tpl-user-shadow-lg,0 4px 16px #00000014, 0 2px 6px #0000000a);--tpl-shadow-xl:var(--tpl-user-shadow-xl,0 8px 32px #0000001a, 0 4px 12px #0000000f);--tpl-overlay:var(--tpl-user-overlay,#00000080);--tpl-ring:var(--tpl-user-ring,0 0 0 3px var(--tpl-primary-light));--tpl-transition:var(--tpl-user-transition,.12s cubic-bezier(.16, 1, .3, 1))}.tpl[data-tpl-theme=dark]{--tpl-bg:var(--tpl-user-dark-bg,oklch(16% .005 60));--tpl-bg-elevated:var(--tpl-user-dark-bg-elevated,oklch(21% .006 60));--tpl-bg-hover:var(--tpl-user-dark-bg-hover,oklch(26% .007 60));--tpl-bg-active:var(--tpl-user-dark-bg-active,oklch(30% .008 60));--tpl-border:var(--tpl-user-dark-border,oklch(30% .006 60));--tpl-border-light:var(--tpl-user-dark-border-light,oklch(38% .008 60));--tpl-text:var(--tpl-user-dark-text,oklch(93% .005 60));--tpl-text-muted:var(--tpl-user-dark-text-muted,oklch(65% .01 60));--tpl-text-dim:var(--tpl-user-dark-text-dim,oklch(50% .008 60));--tpl-primary:var(--tpl-user-dark-primary,oklch(73% .15 55));--tpl-primary-hover:var(--tpl-user-dark-primary-hover,oklch(78% .14 55));--tpl-primary-light:var(--tpl-user-dark-primary-light,oklch(28% .05 55));--tpl-secondary:var(--tpl-user-dark-secondary,oklch(63% .11 184.71));--tpl-secondary-hover:var(--tpl-user-dark-secondary-hover,oklch(68% .1 186.39));--tpl-secondary-light:var(--tpl-user-dark-secondary-light,oklch(25% .03 186.82));--tpl-success:var(--tpl-user-dark-success,oklch(65% .18 155.1));--tpl-success-light:var(--tpl-user-dark-success-light,oklch(25% .04 163.51));--tpl-warning:var(--tpl-user-dark-warning,oklch(78% .16 70.08));--tpl-warning-light:var(--tpl-user-dark-warning-light,oklch(28% .04 73.59));--tpl-danger:var(--tpl-user-dark-danger,oklch(65% .22 25.33));--tpl-danger-light:var(--tpl-user-dark-danger-light,oklch(25% .04 17.72));--tpl-canvas-bg:var(--tpl-user-dark-canvas-bg,oklch(10% .003 60));--tpl-shadow-sm:var(--tpl-user-dark-shadow-sm,0 1px 2px #0003);--tpl-shadow:var(--tpl-user-dark-shadow,0 1px 2px #0000004d, 0 1px 3px #0003);--tpl-shadow-md:var(--tpl-user-dark-shadow-md,0 2px 8px #00000059, 0 1px 3px #00000040);--tpl-shadow-lg:var(--tpl-user-dark-shadow-lg,0 4px 16px #0006, 0 2px 6px #0000004d);--tpl-shadow-xl:var(--tpl-user-dark-shadow-xl,0 8px 32px #00000080, 0 4px 12px #00000059);--tpl-overlay:var(--tpl-user-dark-overlay,#000000b3);--tpl-ring:var(--tpl-user-dark-ring,0 0 0 3px var(--tpl-primary-light))}.tpl[data-tpl-theme=dark] .tpl-block-content{--tpl-bg-elevated:oklch(98% .004 60);--tpl-border-light:oklch(86% .01 60);--tpl-text:oklch(18% .01 60);--tpl-text-muted:oklch(50% .015 60);--tpl-text-dim:oklch(68% .012 60);--tpl-primary-light:oklch(95% .04 55);--tpl-primary-hover:oklch(60% .16 55);color:var(--tpl-text)}.tpl{height:100%;font-family:Geist,ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:calc(.875 * var(--tpl-base-size));line-height:var(--tw-leading,calc(1.25 / .875));--tw-leading:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--tpl-bg);min-height:320px;color:var(--tpl-text);line-height:1.5;font-family:var(--tpl-font-family);flex-direction:column;display:flex}:where(.tpl) button{cursor:pointer;background:0 0;border:none;margin:0;padding:0}:where(.tpl) .tpl-focus-ring-host:focus-within :is(input,select,textarea):focus-visible{box-shadow:none}.tpl-popover-root{z-index:10000;position:relative}.tpl-merge-tag-label{text-underline-offset:3px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}@supports (color:color-mix(in lab,red,red)){.tpl-merge-tag-label{-webkit-text-decoration-color:color-mix(in srgb,currentColor 55%,transparent);text-decoration-color:color-mix(in srgb,currentColor 55%,transparent)}}@keyframes tpl-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes tpl-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.tpl-fade-in{animation:.2s cubic-bezier(.16,1,.3,1) tpl-fade-in}.tpl-shimmer{background:linear-gradient(90deg,var(--tpl-bg-hover) 25%,var(--tpl-bg-active) 50%,var(--tpl-bg-hover) 75%);background-size:200% 100%;animation:1.5s linear infinite tpl-shimmer}.tpl-preview-mode .tpl-block--idle,.tpl-preview-mode .tpl-block--idle:hover,.tpl-preview-mode .tpl-block--selected{box-shadow:none!important;outline:none!important}.tpl-preview-mode .tpl-block{cursor:default;pointer-events:none}.tpl-preview-mode .tpl-block-actions,.tpl-preview-mode .tpl-block-hidden-overlay,.tpl-preview-mode .tpl-condition-toggle,.tpl-preview-mode .tpl-comment-indicator,.tpl-preview-mode .tpl-collab-lock{display:none}.tpl-ghost{border:none!important;border-top:2px dotted var(--tpl-primary)!important;background-color:#0000!important;justify-content:center!important;align-items:center!important;width:100%!important;height:0!important;min-height:0!important;max-height:0!important;margin:12px 0!important;padding:0!important;display:flex!important;position:relative!important;overflow:visible!important}@supports (color:color-mix(in lab,red,red)){.tpl-ghost{border-top:2px dotted color-mix(in srgb,var(--tpl-primary) 50%,transparent)!important}}.tpl-ghost{box-shadow:none!important;border-radius:0!important}.tpl-ghost>*{display:none!important}.tpl-ghost:before{content:var(--tpl-drop-text,"Drop here");white-space:nowrap!important;color:var(--tpl-primary)!important;background-color:var(--tpl-primary)!important;padding:2px 8px!important;font-size:12px!important;font-weight:500!important;position:absolute!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important}@supports (color:color-mix(in lab,red,red)){.tpl-ghost:before{background-color:color-mix(in srgb,var(--tpl-primary) 15%,var(--tpl-bg))!important}}.tpl-ghost:before{border-radius:var(--tpl-radius-sm)!important;box-shadow:none!important}.tpl-canvas-empty .tpl-ghost{display:none!important}.tpl-dragging{opacity:.8;box-shadow:var(--tpl-shadow-xl)}.sortable-fallback{transition:none!important;animation:none!important}.tpl-block--lifted{outline:2px dashed var(--tpl-primary)!important;outline-offset:2px!important;box-shadow:var(--tpl-shadow-xl),0 0 0 4px var(--tpl-primary)!important}@supports (color:color-mix(in lab,red,red)){.tpl-block--lifted{box-shadow:var(--tpl-shadow-xl),0 0 0 4px color-mix(in srgb,var(--tpl-primary) 20%,transparent)!important}}.tpl-block--lifted{transition:transform .15s cubic-bezier(.16,1,.3,1),box-shadow .15s cubic-bezier(.16,1,.3,1);transform:scale(1.01)}.tpl-sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tpl-text-toolbar-btn{width:calc(calc(var(--tpl-base-size) / 4) * 8);height:calc(calc(var(--tpl-base-size) / 4) * 8);cursor:pointer;border-radius:calc(.25 * var(--tpl-base-size));--tw-border-style:none;transition-property:all;transition-timing-function:var(--tw-ease,cubic-bezier(.16, 1, .3, 1));transition-duration:var(--tw-duration,.12s);color:var(--tpl-text);background-color:#0000;border-style:none;justify-content:center;align-items:center;padding:0;display:flex}.tpl-text-toolbar-btn:hover{background-color:var(--tpl-bg-active)}.tpl-text-toolbar-btn--active{box-shadow:inset 0 0 0 1.5px var(--tpl-primary-hover);background-color:var(--tpl-primary)!important;color:var(--tpl-bg)!important}.tpl-text-toolbar-btn--active svg{stroke-width:2.75px}.tpl-text-content,.tpl-text-editable .tiptap{--tw-outline-style:none;outline-style:none}.tpl-text-editable{border-radius:calc(.25 * var(--tpl-base-size));border-style:var(--tw-border-style);--tw-border-style:dashed;padding:calc(calc(var(--tpl-base-size) / 4) * 2);border-style:dashed;border-width:1px;border-color:var(--tpl-primary);min-height:1.5em}.tpl-text-content p,.tpl-text-editable .tiptap p{margin:0;margin-bottom:calc(calc(var(--tpl-base-size) / 4) * 2)}:is(.tpl-text-content p,.tpl-text-editable .tiptap p):last-child{margin-bottom:0}.tpl-text-content ul,.tpl-text-content ol,.tpl-text-editable .tiptap ul,.tpl-text-editable .tiptap ol{margin-block:calc(calc(var(--tpl-base-size) / 4) * 2);padding-left:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl-text-content li,.tpl-text-editable .tiptap li{margin-block:calc(var(--tpl-base-size) / 4)}.tpl-text-content s,.tpl-text-editable .tiptap s{text-decoration-line:line-through}.tpl-text-content sub,.tpl-text-editable .tiptap sub{vertical-align:sub;font-size:.75em}.tpl-text-content sup,.tpl-text-editable .tiptap sup{vertical-align:super;font-size:.75em}.tpl-text-content a,.tpl-text-editable a{color:var(--tpl-doc-link-color,inherit);-webkit-text-decoration:var(--tpl-doc-link-underline,none);text-decoration:var(--tpl-doc-link-underline,none)}.tpl-text-content span[data-merge-tag],.tpl-text-editable span[data-merge-tag]{margin-inline:calc(calc(var(--tpl-base-size) / 4) * .5);border-radius:calc(.25 * var(--tpl-base-size));padding-inline:calc(calc(var(--tpl-base-size) / 4) * 1.5);padding-block:calc(calc(var(--tpl-base-size) / 4) * .5);--tw-font-weight:500;background-color:var(--tpl-primary);align-items:center;font-size:.9em;font-weight:500;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.tpl-text-content span[data-merge-tag],.tpl-text-editable span[data-merge-tag]{background-color:color-mix(in srgb,var(--tpl-primary) 20%,transparent)}}.tpl-text-content span[data-merge-tag],.tpl-text-editable span[data-merge-tag]{color:var(--tpl-primary)}.tpl-text-content span[data-logic-merge-tag],.tpl-text-editable span[data-logic-merge-tag]{margin-inline:calc(calc(var(--tpl-base-size) / 4) * .5);border-radius:calc(.25 * var(--tpl-base-size));padding-inline:calc(calc(var(--tpl-base-size) / 4) * 1.5);padding-block:calc(calc(var(--tpl-base-size) / 4) * .5);--tw-font-weight:700;--tw-tracking:.025em;letter-spacing:.025em;text-transform:uppercase;border:1.5px solid var(--tpl-primary);background-color:#0000;align-items:center;font-size:.8em;font-weight:700;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.tpl-text-content span[data-logic-merge-tag],.tpl-text-editable span[data-logic-merge-tag]{border:1.5px solid color-mix(in srgb,var(--tpl-primary) 50%,transparent)}}.tpl-text-content span[data-logic-merge-tag],.tpl-text-editable span[data-logic-merge-tag]{color:var(--tpl-primary)}.tpl-tooltip{position:relative}.tpl-tooltip:after{content:attr(data-tooltip);border-radius:var(--tpl-radius-sm);background-color:var(--tpl-text);color:var(--tpl-bg);white-space:normal;text-align:center;pointer-events:none;opacity:0;text-transform:none;z-index:50;width:max-content;max-width:min(320px,90vw);padding:4px 10px;font-size:12px;font-weight:500;line-height:1.4;transition:opacity .15s;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}.tpl-tooltip:before{content:"";border:4px solid #0000;border-bottom-color:var(--tpl-text);pointer-events:none;opacity:0;z-index:50;transition:opacity .15s;position:absolute;top:calc(100% + 2px);left:50%;transform:translate(-50%)}.tpl-tooltip:hover:after,.tpl-tooltip:hover:before{opacity:1}.tpl.tpl-media-overlay{background-color:var(--tpl-overlay);-webkit-backdrop-filter:blur(8px);height:100%;min-height:0;color:var(--tpl-text);flex-direction:row;justify-content:center;align-items:center;display:flex}.tpl.tpl-text-toolbar{flex-direction:row;height:auto;min-height:0;display:flex}.tpl.tpl-link-dialog{background-color:var(--tpl-overlay);flex-direction:row;justify-content:center;align-items:center;height:100%;min-height:0;display:flex}.tpl-upload-zone-active{border-color:var(--tpl-primary)!important;background-color:var(--tpl-primary-light)!important}@property --tpl-comet-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@property --tpl-comet-start{syntax:"<percentage>";inherits:false;initial-value:100%}@keyframes tpl-ai-comet{0%{--tpl-comet-angle:0deg;--tpl-comet-start:100%}1%{--tpl-comet-angle:24deg;--tpl-comet-start:88%}5%{--tpl-comet-angle:120deg;--tpl-comet-start:60%}25%{--tpl-comet-angle:600deg;--tpl-comet-start:60%}33%{--tpl-comet-angle:720deg;--tpl-comet-start:100%}to{--tpl-comet-angle:720deg;--tpl-comet-start:100%}}.tpl-ai-btn--idle{background-color:var(--tpl-primary-light);color:var(--tpl-text);box-shadow:none;z-index:0;position:relative}.tpl-ai-btn--idle:before{content:"";border-radius:inherit;background:conic-gradient(from var(--tpl-comet-angle),transparent 0%,transparent var(--tpl-comet-start),var(--tpl-primary) 80%,var(--tpl-primary) 90%,var(--tpl-primary) 97%,transparent 100%);padding:2px;position:absolute;inset:-2px}@supports (color:color-mix(in lab,red,red)){.tpl-ai-btn--idle:before{background:conic-gradient(from var(--tpl-comet-angle),transparent 0%,transparent var(--tpl-comet-start),color-mix(in srgb,var(--tpl-primary) 40%,transparent) 80%,var(--tpl-primary) 90%,var(--tpl-primary) 97%,transparent 100%)}}.tpl-ai-btn--idle:before{z-index:-1;pointer-events:none;animation:20s linear 3s infinite tpl-ai-comet;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.tpl-ai-btn--idle:hover{background-color:var(--tpl-primary);color:var(--tpl-on-primary);transform:translateY(-1px);box-shadow:0 0 0 3px var(--tpl-primary),0 4px 16px var(--tpl-primary)!important}@supports (color:color-mix(in lab,red,red)){.tpl-ai-btn--idle:hover{box-shadow:0 0 0 3px color-mix(in srgb,var(--tpl-primary) 20%,transparent),0 4px 16px color-mix(in srgb,var(--tpl-primary) 30%,transparent)!important}}.tpl-ai-btn--idle:hover:before{animation:none}.tpl-ai-btn--active{background-color:var(--tpl-primary-light);color:var(--tpl-primary-hover);border:1px solid var(--tpl-primary)}.tpl-ai-btn--active .tpl-ai-btn-icon{fill:var(--tpl-primary)}@supports (color:color-mix(in lab,red,red)){.tpl-ai-btn--active .tpl-ai-btn-icon{fill:color-mix(in srgb,var(--tpl-primary) 25%,transparent)}}.tpl-ai-btn--active:hover{background-color:var(--tpl-primary-light)}@supports (color:color-mix(in lab,red,red)){.tpl-ai-btn--active:hover{background-color:color-mix(in srgb,var(--tpl-primary-light) 80%,var(--tpl-primary))}}.tpl-merge-tag-delete:hover{color:var(--tpl-danger)!important}@media(prefers-reduced-motion:reduce){.tpl-pulse,.tpl-shimmer,.tpl-fade-in,.tpl-scale-in,.tpl-ai-btn--idle:before{animation:none}.tpl-shimmer{background:var(--tpl-bg-hover)}.tpl *,.tpl :before,.tpl :after{transition-duration:.01ms!important}.tpl-spinner{animation:1s linear infinite tpl-spin}}.tpl-restore-btn-enter-active[data-v-9b8b235c]{transition:opacity .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1)}.tpl-restore-btn-leave-active[data-v-9b8b235c]{transition:opacity .15s ease-in,transform .15s ease-in}.tpl-restore-btn-enter-from[data-v-9b8b235c],.tpl-restore-btn-leave-to[data-v-9b8b235c]{opacity:0;transform:translateY(-8px) scale(.9)}.tpl-restore-btn-enter-to[data-v-9b8b235c],.tpl-restore-btn-leave-from[data-v-9b8b235c]{opacity:1;transform:translateY(0) scale(1)}.tpl-saved-block-skeleton{animation:tpl-saved-block-pulse 1.4s ease-in-out infinite}@keyframes tpl-saved-block-pulse{0%,to{opacity:1}50%{opacity:.55}}@media(prefers-reduced-motion:reduce){.tpl-saved-block-skeleton{animation:none}}.tpl-saved-block-delete-btn:hover{color:var(--tpl-danger)!important}.tpl-saved-block-rename-btn:hover{color:var(--tpl-primary)!important}.tpl-comments-slide-enter-active[data-v-40431726]{transition:transform .28s cubic-bezier(.16,1,.3,1)}.tpl-comments-slide-leave-active[data-v-40431726]{transition:transform .2s cubic-bezier(.16,1,.3,1)}.tpl-comments-input-wrapper[data-v-40431726]:focus-within{border-color:var(--tpl-primary);box-shadow:var(--tpl-ring)}.tpl-comments-send-btn[data-v-40431726]:not(:disabled):hover{transform:scale(1.05)}.tpl-comment-filter[data-v-40431726]{color:var(--tpl-text-muted);background-color:transparent}.tpl-comment-filter[data-v-40431726]:hover{background-color:var(--tpl-bg-hover);color:var(--tpl-text)}.tpl-comment-filter--active[data-v-40431726]{background-color:var(--tpl-primary-light);color:var(--tpl-primary)}.tpl-comment-action[data-v-40431726]{color:var(--tpl-text-dim);background-color:transparent}.tpl-comment-action[data-v-40431726]:hover{background-color:var(--tpl-bg-hover);color:var(--tpl-text)}.tpl-comment-delete[data-v-40431726]:hover{background-color:var(--tpl-danger-light);color:var(--tpl-danger)}.tpl-comment-card[data-v-40431726],.tpl-comment-reply-card[data-v-40431726]{border-color:var(--tpl-border);background-color:var(--tpl-bg)}.tpl-resolve-enter-active[data-v-40431726],.tpl-resolve-leave-active[data-v-40431726]{transition:opacity .3s ease,transform .3s ease}.tpl-resolve-enter-from[data-v-40431726],.tpl-resolve-leave-to[data-v-40431726]{opacity:0;transform:translateY(-4px)}.tpl-resolve-icon[data-v-40431726]{transition:color .3s ease,transform .2s ease}.tpl-resolve-icon[data-v-40431726]:active{transform:scale(1.3)}.tpl-replies-enter-active[data-v-40431726],.tpl-replies-leave-active[data-v-40431726]{transition:opacity .25s ease,transform .25s ease}.tpl-replies-enter-from[data-v-40431726],.tpl-replies-leave-to[data-v-40431726]{opacity:0;transform:translateY(-4px)}.tpl-ai-slide-enter-active[data-v-82649117]{transition:transform .28s cubic-bezier(.16,1,.3,1)}.tpl-ai-slide-leave-active[data-v-82649117]{transition:transform .2s cubic-bezier(.16,1,.3,1)}.tpl-ai-input-wrapper[data-v-82649117]:focus-within{border-color:var(--tpl-primary);box-shadow:var(--tpl-ring)}.tpl-ai-send-btn[data-v-82649117]:not(:disabled):hover{transform:scale(1.05)}.tpl-suggestion-btn[data-v-82649117]:hover{border-color:var(--tpl-primary)!important;background-color:var(--tpl-primary-light)!important}.tpl-design-slide-enter-active[data-v-9a44c153]{transition:transform .28s cubic-bezier(.16,1,.3,1)}.tpl-design-slide-leave-active[data-v-9a44c153]{transition:transform .2s cubic-bezier(.16,1,.3,1)}.tpl-design-prompt-input[data-v-9a44c153]:focus{border-color:var(--tpl-primary);box-shadow:var(--tpl-ring)}.tpl-design-dropzone[data-v-9a44c153]:hover{border-color:var(--tpl-primary)!important;background-color:var(--tpl-primary-light)!important}.tpl-scoring-slide-enter-active[data-v-7da30b57]{transition:transform .28s cubic-bezier(.16,1,.3,1)}.tpl-scoring-slide-leave-active[data-v-7da30b57]{transition:transform .2s cubic-bezier(.16,1,.3,1)}.tpl-scoring-fix-btn[data-v-7da30b57]:not(:disabled):hover{border-color:var(--tpl-primary)!important;background-color:var(--tpl-primary-light)!important}.vue-advanced-cropper{text-align:center;position:relative;user-select:none;max-height:100%;max-width:100%;direction:ltr}.vue-advanced-cropper__stretcher{pointer-events:none;position:relative;max-width:100%;max-height:100%}.vue-advanced-cropper__image{user-select:none;position:absolute;transform-origin:center;max-width:none!important}.vue-advanced-cropper__background,.vue-advanced-cropper__foreground{opacity:1;background:#000;transform:translate(-50%,-50%);position:absolute;top:50%;left:50%}.vue-advanced-cropper__foreground{opacity:.5}.vue-advanced-cropper__boundaries{opacity:1;transform:translate(-50%,-50%);position:absolute;left:50%;top:50%}.vue-advanced-cropper__cropper-wrapper{width:100%;height:100%}.vue-advanced-cropper__image-wrapper{overflow:hidden;position:absolute;width:100%;height:100%}.vue-advanced-cropper__stencil-wrapper{position:absolute}.vue-simple-handler{display:block;background:#fff;height:10px;width:10px}.vue-handler-wrapper{position:absolute;transform:translate(-50%,-50%);width:30px;height:30px}.vue-handler-wrapper__draggable{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.vue-handler-wrapper--west-north{cursor:nw-resize}.vue-handler-wrapper--north{cursor:n-resize}.vue-handler-wrapper--east-north{cursor:ne-resize}.vue-handler-wrapper--east{cursor:e-resize}.vue-handler-wrapper--east-south{cursor:se-resize}.vue-handler-wrapper--south{cursor:s-resize}.vue-handler-wrapper--west-south{cursor:sw-resize}.vue-handler-wrapper--west{cursor:w-resize}.vue-handler-wrapper--disabled{cursor:auto}.vue-line-wrapper{background:none;position:absolute;display:flex;align-items:center;justify-content:center}.vue-line-wrapper--north,.vue-line-wrapper--south{height:12px;width:100%;left:0;transform:translateY(-50%)}.vue-line-wrapper--north{top:0;cursor:n-resize}.vue-line-wrapper--south{top:100%;cursor:s-resize}.vue-line-wrapper--east,.vue-line-wrapper--west{width:12px;height:100%;transform:translate(-50%);top:0}.vue-line-wrapper--east{left:100%;cursor:e-resize}.vue-line-wrapper--west{left:0;cursor:w-resize}.vue-line-wrapper--disabled{cursor:auto}.vue-bounding-box{position:relative;height:100%;width:100%}.vue-bounding-box__handler{position:absolute}.vue-bounding-box__handler--west-north{left:0;top:0}.vue-bounding-box__handler--north{left:50%;top:0}.vue-bounding-box__handler--east-north{left:100%;top:0}.vue-bounding-box__handler--east{left:100%;top:50%}.vue-bounding-box__handler--east-south{left:100%;top:100%}.vue-bounding-box__handler--south{left:50%;top:100%}.vue-bounding-box__handler--west-south{left:0;top:100%}.vue-bounding-box__handler--west{left:0;top:50%}.vue-draggable-area{position:relative}.vue-preview-result{overflow:hidden;box-sizing:border-box;position:absolute;height:100%;width:100%}.vue-preview-result__wrapper{position:absolute}.vue-preview-result__image{pointer-events:none;position:relative;user-select:none;transform-origin:center;max-width:none!important}.vue-rectangle-stencil{position:absolute;height:100%;width:100%;box-sizing:border-box}.vue-rectangle-stencil__preview{position:absolute;width:100%;height:100%}.vue-rectangle-stencil--movable{cursor:move}.vue-circle-stencil{position:absolute;height:100%;width:100%;box-sizing:content-box;cursor:move}.vue-circle-stencil__preview{border-radius:50%;position:absolute;width:100%;height:100%}.vue-circle-stencil--movable{cursor:move}.vue-preview{overflow:hidden;box-sizing:border-box;position:relative}.vue-preview--fill{width:100%;height:100%;position:absolute}.vue-preview__wrapper{position:absolute;height:100%;width:100%}.vue-preview__image{pointer-events:none;position:absolute;user-select:none;transform-origin:center;max-width:none!important}.vue-simple-line{background:none;transition:border .5s;border-color:#ffffff4d;border-width:0;border-style:solid}.vue-simple-line--south,.vue-simple-line--north{height:0;width:100%}.vue-simple-line--east,.vue-simple-line--west{height:100%;width:0}.vue-simple-line--east{border-right-width:1px}.vue-simple-line--west{border-left-width:1px}.vue-simple-line--south{border-bottom-width:1px}.vue-simple-line--north{border-top-width:1px}.vue-simple-line--hover{opacity:1;border-color:#fff}[data-v-267faa45] .tpl-cropper-background{background-color:var(--tpl-bg)!important}[data-v-267faa45] .vue-advanced-cropper{background-color:transparent!important}[data-v-267faa45] .vue-advanced-cropper__background{background-color:var(--tpl-bg)!important}[data-v-267faa45] .vue-advanced-cropper__foreground{background-color:var(--tpl-overlay)!important}.tpl-media-item[data-v-78d7ed75]:not(.tpl-media-item--selected):hover{border-color:var(--tpl-border)!important}.tpl-media-list-item[data-v-78d7ed75]:hover{background-color:var(--tpl-bg-hover)!important}.tpl-list-icon[data-v-78d7ed75]{transform:scale(.35);transform-origin:center}.tpl-preview-icon[data-v-56be5670]{transform:scale(.45);transform-origin:center}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--tpl-radius-sm:calc(.25 * var(--tpl-base-size));--tpl-radius-md:calc(.375 * var(--tpl-base-size));--tpl-radius-lg:calc(.5 * var(--tpl-base-size));--tpl-shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--tpl-shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tpl-shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tpl-shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--tpl-radius:calc(.25 * var(--tpl-base-size))}}.tpl\:pointer-events-auto{pointer-events:auto}.tpl\:pointer-events-none{pointer-events:none}.tpl\:invisible{visibility:hidden}.tpl\:sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tpl\:absolute{position:absolute}.tpl\:fixed{position:fixed}.tpl\:relative{position:relative}.tpl\:sticky{position:sticky}.tpl\:inset-0{inset:0}.tpl\:inset-x-0{inset-inline:0}.tpl\:inset-y-1{inset-block:calc(var(--tpl-base-size) / 4)}.tpl\:-top-0\.5{top:calc(calc(var(--tpl-base-size) / 4) * -.5)}.tpl\:-top-1{top:calc(calc(var(--tpl-base-size) / 4) * -1)}.tpl\:top-0{top:0}.tpl\:top-1{top:calc(var(--tpl-base-size) / 4)}.tpl\:top-1\.5{top:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:top-1\/2{top:50%}.tpl\:top-2{top:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:top-14{top:calc(calc(var(--tpl-base-size) / 4) * 14)}.tpl\:top-16{top:calc(calc(var(--tpl-base-size) / 4) * 16)}.tpl\:top-\[104px\]{top:104px}.tpl\:top-full{top:100%}.tpl\:-right-1{right:calc(calc(var(--tpl-base-size) / 4) * -1)}.tpl\:-right-2{right:calc(calc(var(--tpl-base-size) / 4) * -2)}.tpl\:right-0{right:0}.tpl\:right-1{right:calc(var(--tpl-base-size) / 4)}.tpl\:right-1\.5{right:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:right-2{right:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:right-2\.5{right:calc(calc(var(--tpl-base-size) / 4) * 2.5)}.tpl\:right-\[320px\]{right:320px}.tpl\:right-\[360px\]{right:360px}.tpl\:right-\[680px\]{right:680px}.tpl\:bottom-0{bottom:0}.tpl\:bottom-1{bottom:calc(var(--tpl-base-size) / 4)}.tpl\:bottom-10{bottom:calc(calc(var(--tpl-base-size) / 4) * 10)}.tpl\:bottom-full{bottom:100%}.tpl\:-left-1{left:calc(calc(var(--tpl-base-size) / 4) * -1)}.tpl\:left-0{left:0}.tpl\:left-1\.5{left:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:left-1\/2{left:50%}.tpl\:left-2\.5{left:calc(calc(var(--tpl-base-size) / 4) * 2.5)}.tpl\:left-3{left:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:left-5{left:calc(calc(var(--tpl-base-size) / 4) * 5)}.tpl\:left-12{left:calc(calc(var(--tpl-base-size) / 4) * 12)}.tpl\:z-10{z-index:10}.tpl\:z-40{z-index:40}.tpl\:z-50{z-index:50}.tpl\:z-\[4\]{z-index:4}.tpl\:z-\[5\]{z-index:5}.tpl\:z-\[9999\]{z-index:9999}.tpl\:z-\[10000\]{z-index:10000}.tpl\:m-0{margin:0}.tpl\:m-6{margin:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:mx-0\.5{margin-inline:calc(calc(var(--tpl-base-size) / 4) * .5)}.tpl\:mx-1{margin-inline:calc(var(--tpl-base-size) / 4)}.tpl\:mx-1\.5{margin-inline:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:mx-3{margin-inline:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:mx-4{margin-inline:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:mx-6{margin-inline:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:mx-auto{margin-inline:auto}.tpl\:mt-0\.5{margin-top:calc(calc(var(--tpl-base-size) / 4) * .5)}.tpl\:mt-1{margin-top:calc(var(--tpl-base-size) / 4)}.tpl\:mt-1\.5{margin-top:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:mt-2{margin-top:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:mt-3{margin-top:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:mt-4{margin-top:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:\!mb-0{margin-bottom:0!important}.tpl\:mb-1{margin-bottom:calc(var(--tpl-base-size) / 4)}.tpl\:mb-1\.5{margin-bottom:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:mb-2{margin-bottom:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:mb-2\.5{margin-bottom:calc(calc(var(--tpl-base-size) / 4) * 2.5)}.tpl\:mb-3{margin-bottom:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:mb-3\.5{margin-bottom:calc(calc(var(--tpl-base-size) / 4) * 3.5)}.tpl\:mb-4{margin-bottom:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:mb-px{margin-bottom:1px}.tpl\:-ml-48{margin-left:calc(calc(var(--tpl-base-size) / 4) * -48)}.tpl\:ml-0{margin-left:0}.tpl\:ml-0\.5{margin-left:calc(calc(var(--tpl-base-size) / 4) * .5)}.tpl\:ml-1{margin-left:calc(var(--tpl-base-size) / 4)}.tpl\:ml-5{margin-left:calc(calc(var(--tpl-base-size) / 4) * 5)}.tpl\:ml-auto{margin-left:auto}.tpl\:line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.tpl\:line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.tpl\:\!flex{display:flex!important}.tpl\:block{display:block}.tpl\:flex{display:flex}.tpl\:grid{display:grid}.tpl\:hidden{display:none}.tpl\:inline{display:inline}.tpl\:inline-block{display:inline-block}.tpl\:inline-flex{display:inline-flex}.tpl\:aspect-square{aspect-ratio:1}.tpl\:size-1\.5{width:calc(calc(var(--tpl-base-size) / 4) * 1.5);height:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:size-2{width:calc(calc(var(--tpl-base-size) / 4) * 2);height:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:size-3{width:calc(calc(var(--tpl-base-size) / 4) * 3);height:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:size-4{width:calc(calc(var(--tpl-base-size) / 4) * 4);height:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:size-4\.5{width:calc(calc(var(--tpl-base-size) / 4) * 4.5);height:calc(calc(var(--tpl-base-size) / 4) * 4.5)}.tpl\:size-5{width:calc(calc(var(--tpl-base-size) / 4) * 5);height:calc(calc(var(--tpl-base-size) / 4) * 5)}.tpl\:size-6{width:calc(calc(var(--tpl-base-size) / 4) * 6);height:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:size-7{width:calc(calc(var(--tpl-base-size) / 4) * 7);height:calc(calc(var(--tpl-base-size) / 4) * 7)}.tpl\:size-8{width:calc(calc(var(--tpl-base-size) / 4) * 8);height:calc(calc(var(--tpl-base-size) / 4) * 8)}.tpl\:size-10{width:calc(calc(var(--tpl-base-size) / 4) * 10);height:calc(calc(var(--tpl-base-size) / 4) * 10)}.tpl\:size-16{width:calc(calc(var(--tpl-base-size) / 4) * 16);height:calc(calc(var(--tpl-base-size) / 4) * 16)}.tpl\:size-full{width:100%;height:100%}.tpl\:h-0{height:0}.tpl\:h-2\.5{height:calc(calc(var(--tpl-base-size) / 4) * 2.5)}.tpl\:h-3{height:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:h-4{height:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:h-5{height:calc(calc(var(--tpl-base-size) / 4) * 5)}.tpl\:h-6{height:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:h-7{height:calc(calc(var(--tpl-base-size) / 4) * 7)}.tpl\:h-8{height:calc(calc(var(--tpl-base-size) / 4) * 8)}.tpl\:h-9{height:calc(calc(var(--tpl-base-size) / 4) * 9)}.tpl\:h-10{height:calc(calc(var(--tpl-base-size) / 4) * 10)}.tpl\:h-12{height:calc(calc(var(--tpl-base-size) / 4) * 12)}.tpl\:h-14{height:calc(calc(var(--tpl-base-size) / 4) * 14)}.tpl\:h-16{height:calc(calc(var(--tpl-base-size) / 4) * 16)}.tpl\:h-32{height:calc(calc(var(--tpl-base-size) / 4) * 32)}.tpl\:h-44{height:calc(calc(var(--tpl-base-size) / 4) * 44)}.tpl\:h-\[32px\]{height:32px}.tpl\:h-auto{height:auto}.tpl\:h-full{height:100%}.tpl\:max-h-24{max-height:calc(calc(var(--tpl-base-size) / 4) * 24)}.tpl\:max-h-32{max-height:calc(calc(var(--tpl-base-size) / 4) * 32)}.tpl\:max-h-48{max-height:calc(calc(var(--tpl-base-size) / 4) * 48)}.tpl\:max-h-56{max-height:calc(calc(var(--tpl-base-size) / 4) * 56)}.tpl\:max-h-64{max-height:calc(calc(var(--tpl-base-size) / 4) * 64)}.tpl\:max-h-\[50vh\]{max-height:50vh}.tpl\:max-h-\[60vh\]{max-height:60vh}.tpl\:max-h-\[80vh\]{max-height:80vh}.tpl\:max-h-\[90vh\]{max-height:90vh}.tpl\:min-h-0{min-height:0}.tpl\:min-h-6{min-height:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:min-h-10{min-height:calc(calc(var(--tpl-base-size) / 4) * 10)}.tpl\:min-h-20{min-height:calc(calc(var(--tpl-base-size) / 4) * 20)}.tpl\:min-h-\[1\.5em\]{min-height:1.5em}.tpl\:min-h-\[1em\]{min-height:1em}.tpl\:min-h-\[48px\]{min-height:48px}.tpl\:min-h-\[60px\]{min-height:60px}.tpl\:min-h-\[64px\]{min-height:64px}.tpl\:min-h-\[68px\]{min-height:68px}.tpl\:min-h-\[72px\]{min-height:72px}.tpl\:min-h-\[80px\]{min-height:80px}.tpl\:min-h-\[100px\]{min-height:100px}.tpl\:min-h-\[120px\]{min-height:120px}.tpl\:min-h-\[150px\]{min-height:150px}.tpl\:min-h-\[400px\]{min-height:400px}.tpl\:w-1\/2{width:50%}.tpl\:w-1\/3{width:33.3333%}.tpl\:w-1\/4{width:25%}.tpl\:w-2\/3{width:66.6667%}.tpl\:w-3\/4{width:75%}.tpl\:w-5\/6{width:83.3333%}.tpl\:w-7{width:calc(calc(var(--tpl-base-size) / 4) * 7)}.tpl\:w-8{width:calc(calc(var(--tpl-base-size) / 4) * 8)}.tpl\:w-9{width:calc(calc(var(--tpl-base-size) / 4) * 9)}.tpl\:w-10{width:calc(calc(var(--tpl-base-size) / 4) * 10)}.tpl\:w-12{width:calc(calc(var(--tpl-base-size) / 4) * 12)}.tpl\:w-16{width:calc(calc(var(--tpl-base-size) / 4) * 16)}.tpl\:w-20{width:calc(calc(var(--tpl-base-size) / 4) * 20)}.tpl\:w-28{width:calc(calc(var(--tpl-base-size) / 4) * 28)}.tpl\:w-32{width:calc(calc(var(--tpl-base-size) / 4) * 32)}.tpl\:w-36{width:calc(calc(var(--tpl-base-size) / 4) * 36)}.tpl\:w-40{width:calc(calc(var(--tpl-base-size) / 4) * 40)}.tpl\:w-48{width:calc(calc(var(--tpl-base-size) / 4) * 48)}.tpl\:w-52{width:calc(calc(var(--tpl-base-size) / 4) * 52)}.tpl\:w-56{width:calc(calc(var(--tpl-base-size) / 4) * 56)}.tpl\:w-72{width:calc(calc(var(--tpl-base-size) / 4) * 72)}.tpl\:w-\[280px\]{width:280px}.tpl\:w-\[300px\]{width:300px}.tpl\:w-\[320px\]{width:320px}.tpl\:w-\[360px\]{width:360px}.tpl\:w-\[400px\]{width:400px}.tpl\:w-\[1000px\]{width:1000px}.tpl\:w-\[min\(420px\,92vw\)\]{width:min(420px,92vw)}.tpl\:w-full{width:100%}.tpl\:w-px{width:1px}.tpl\:max-w-2xl{max-width:calc(42 * var(--tpl-base-size))}.tpl\:max-w-\[220px\]{max-width:220px}.tpl\:max-w-\[240px\]{max-width:240px}.tpl\:max-w-\[260px\]{max-width:260px}.tpl\:max-w-\[320px\]{max-width:320px}.tpl\:max-w-\[600px\]{max-width:600px}.tpl\:max-w-\[calc\(100vw_-_2\*var\(--tpl-base-size\)\)\]{max-width:calc(100vw - 2 * var(--tpl-base-size))}.tpl\:max-w-full{max-width:100%}.tpl\:max-w-md{max-width:28rem}.tpl\:max-w-sm{max-width:calc(24 * var(--tpl-base-size))}.tpl\:min-w-0{min-width:0}.tpl\:min-w-6{min-width:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:min-w-\[20px\]{min-width:20px}.tpl\:min-w-\[200px\]{min-width:200px}.tpl\:flex-1{flex:1}.tpl\:flex-shrink-0,.tpl\:shrink-0{flex-shrink:0}.tpl\:origin-top-right{transform-origin:100% 0}.tpl\:-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:-translate-x-full{--tw-translate-x:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:translate-x-0{--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:translate-x-4{--tw-translate-x:calc(calc(var(--tpl-base-size) / 4) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:translate-x-full{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:-translate-y-2{--tw-translate-y:calc(calc(var(--tpl-base-size) / 4) * -2);translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:-translate-y-full{--tw-translate-y:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:translate-y-0{--tw-translate-y:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:translate-y-1{--tw-translate-y:calc(var(--tpl-base-size) / 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:translate-y-\[-8px\]{--tw-translate-y:-8px;translate:var(--tw-translate-x) var(--tw-translate-y)}.tpl\:scale-95{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.tpl\:scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.tpl\:-rotate-90{rotate:-90deg}.tpl\:rotate-0{rotate:0deg}.tpl\:rotate-45{rotate:45deg}.tpl\:rotate-90{rotate:90deg}.tpl\:rotate-180{rotate:180deg}.tpl\:animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.tpl\:animate-spin{animation:1s linear infinite spin}.tpl\:cursor-default{cursor:default}.tpl\:cursor-grab{cursor:grab}.tpl\:cursor-help{cursor:help}.tpl\:cursor-not-allowed{cursor:not-allowed}.tpl\:cursor-pointer{cursor:pointer}.tpl\:resize-none{resize:none}.tpl\:resize-y{resize:vertical}.tpl\:list-none{list-style-type:none}.tpl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.tpl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.tpl\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.tpl\:grid-cols-\[1fr_auto_1fr\]{grid-template-columns:1fr auto 1fr}.tpl\:flex-col{flex-direction:column}.tpl\:flex-wrap{flex-wrap:wrap}.tpl\:items-center{align-items:center}.tpl\:items-end{align-items:flex-end}.tpl\:items-start{align-items:flex-start}.tpl\:items-stretch{align-items:stretch}.tpl\:justify-between{justify-content:space-between}.tpl\:justify-center{justify-content:center}.tpl\:justify-end{justify-content:flex-end}.tpl\:gap-0{gap:0}.tpl\:gap-0\.5{gap:calc(calc(var(--tpl-base-size) / 4) * .5)}.tpl\:gap-1{gap:calc(var(--tpl-base-size) / 4)}.tpl\:gap-1\.5{gap:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:gap-2{gap:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:gap-2\.5{gap:calc(calc(var(--tpl-base-size) / 4) * 2.5)}.tpl\:gap-3{gap:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:gap-4{gap:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:gap-5{gap:calc(calc(var(--tpl-base-size) / 4) * 5)}.tpl\:gap-6{gap:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:gap-10{gap:calc(calc(var(--tpl-base-size) / 4) * 10)}:where(.tpl\:space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--tpl-base-size) / 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--tpl-base-size) / 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.tpl\:space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(calc(var(--tpl-base-size) / 4) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(calc(var(--tpl-base-size) / 4) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.tpl\:space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(calc(var(--tpl-base-size) / 4) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(calc(var(--tpl-base-size) / 4) * 3) * calc(1 - var(--tw-space-y-reverse)))}.tpl\:gap-x-1{column-gap:calc(var(--tpl-base-size) / 4)}.tpl\:gap-x-3{column-gap:calc(calc(var(--tpl-base-size) / 4) * 3)}:where(.tpl\:-space-x-1\.5>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(calc(var(--tpl-base-size) / 4) * -1.5) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(calc(var(--tpl-base-size) / 4) * -1.5) * calc(1 - var(--tw-space-x-reverse)))}.tpl\:gap-y-0\.5{row-gap:calc(calc(var(--tpl-base-size) / 4) * .5)}.tpl\:gap-y-1\.5{row-gap:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:self-end{align-self:flex-end}.tpl\:self-start{align-self:flex-start}.tpl\:truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tpl\:overflow-auto{overflow:auto}.tpl\:overflow-hidden{overflow:hidden}.tpl\:overflow-x-auto{overflow-x:auto}.tpl\:overflow-y-auto{overflow-y:auto}.tpl\:rounded{border-radius:calc(.25 * var(--tpl-base-size))}.tpl\:rounded-\[calc\(var\(--tpl-radius-sm\)-2px\)\]{border-radius:calc(var(--tpl-radius-sm) - 2px)}.tpl\:rounded-\[var\(--tpl-radius\)\]{border-radius:var(--tpl-radius)}.tpl\:rounded-\[var\(--tpl-radius-lg\)\]{border-radius:var(--tpl-radius-lg)}.tpl\:rounded-\[var\(--tpl-radius-md\)\]{border-radius:var(--tpl-radius-md)}.tpl\:rounded-\[var\(--tpl-radius-sm\)\]{border-radius:var(--tpl-radius-sm)}.tpl\:rounded-full{border-radius:3.40282e38px}.tpl\:rounded-lg{border-radius:calc(.5 * var(--tpl-base-size))}.tpl\:rounded-md{border-radius:calc(.375 * var(--tpl-base-size))}.tpl\:rounded-sm{border-radius:calc(.25 * var(--tpl-base-size))}.tpl\:rounded-xl{border-radius:.75rem}.tpl\:rounded-l-\[var\(--tpl-radius-sm\)\]{border-top-left-radius:var(--tpl-radius-sm);border-bottom-left-radius:var(--tpl-radius-sm)}.tpl\:rounded-tl-lg{border-top-left-radius:calc(.5 * var(--tpl-base-size))}.tpl\:rounded-r-\[var\(--tpl-radius-sm\)\]{border-top-right-radius:var(--tpl-radius-sm);border-bottom-right-radius:var(--tpl-radius-sm)}.tpl\:rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.tpl\:border{border-style:var(--tw-border-style);border-width:1px}.tpl\:border-0{border-style:var(--tw-border-style);border-width:0}.tpl\:border-2{border-style:var(--tw-border-style);border-width:2px}.tpl\:border-x-0{border-inline-style:var(--tw-border-style);border-inline-width:0}.tpl\:border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.tpl\:border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.tpl\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.tpl\:border-r-0{border-right-style:var(--tw-border-style);border-right-width:0}.tpl\:border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.tpl\:border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.tpl\:border-l-0{border-left-style:var(--tw-border-style);border-left-width:0}.tpl\:border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.tpl\:border-dashed{--tw-border-style:dashed;border-style:dashed}.tpl\:border-none{--tw-border-style:none;border-style:none}.tpl\:border-\[var\(--tpl-bg\)\]{border-color:var(--tpl-bg)}.tpl\:border-\[var\(--tpl-border\)\]{border-color:var(--tpl-border)}.tpl\:border-\[var\(--tpl-border-light\)\]{border-color:var(--tpl-border-light)}.tpl\:border-\[var\(--tpl-danger\)\]{border-color:var(--tpl-danger)}.tpl\:border-\[var\(--tpl-primary\)\]{border-color:var(--tpl-primary)}.tpl\:border-\[var\(--tpl-primary-hover\)\]{border-color:var(--tpl-primary-hover)}.tpl\:border-\[var\(--tpl-warning\)\]{border-color:var(--tpl-warning)}.tpl\:border-transparent{border-color:#0000}.tpl\:border-l-\[var\(--tpl-primary\)\]{border-left-color:var(--tpl-primary)}.tpl\:border-l-transparent{border-left-color:#0000}.tpl\:bg-\[color-mix\(in_srgb\,var\(--tpl-bg\)_90\%\,transparent\)\]{background-color:var(--tpl-bg)}@supports (color:color-mix(in lab,red,red)){.tpl\:bg-\[color-mix\(in_srgb\,var\(--tpl-bg\)_90\%\,transparent\)\]{background-color:color-mix(in srgb,var(--tpl-bg) 90%,transparent)}}.tpl\:bg-\[var\(--tpl-bg\)\]{background-color:var(--tpl-bg)}.tpl\:bg-\[var\(--tpl-bg-active\)\]{background-color:var(--tpl-bg-active)}.tpl\:bg-\[var\(--tpl-bg-elevated\)\]{background-color:var(--tpl-bg-elevated)}.tpl\:bg-\[var\(--tpl-bg-hover\)\]{background-color:var(--tpl-bg-hover)}.tpl\:bg-\[var\(--tpl-border\)\]{background-color:var(--tpl-border)}.tpl\:bg-\[var\(--tpl-canvas-bg\)\]{background-color:var(--tpl-canvas-bg)}.tpl\:bg-\[var\(--tpl-chrome-bg-elevated\)\]{background-color:var(--tpl-chrome-bg-elevated)}.tpl\:bg-\[var\(--tpl-chrome-primary-light\)\]{background-color:var(--tpl-chrome-primary-light)}.tpl\:bg-\[var\(--tpl-danger\)\]{background-color:var(--tpl-danger)}.tpl\:bg-\[var\(--tpl-danger-light\)\]{background-color:var(--tpl-danger-light)}.tpl\:bg-\[var\(--tpl-primary\)\]{background-color:var(--tpl-primary)}.tpl\:bg-\[var\(--tpl-primary-light\)\]{background-color:var(--tpl-primary-light)}.tpl\:bg-\[var\(--tpl-warning-light\)\]{background-color:var(--tpl-warning-light)}.tpl\:bg-black\/30{background-color:oklab(0% none none/.3)}.tpl\:bg-black\/40{background-color:oklab(0% none none/.4)}.tpl\:bg-transparent{background-color:#0000}.tpl\:object-contain{object-fit:contain}.tpl\:object-cover{object-fit:cover}.tpl\:p-0{padding:0}.tpl\:p-0\.5{padding:calc(calc(var(--tpl-base-size) / 4) * .5)}.tpl\:p-1{padding:calc(var(--tpl-base-size) / 4)}.tpl\:p-1\.5{padding:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:p-2{padding:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:p-3{padding:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:p-4{padding:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:p-5{padding:calc(calc(var(--tpl-base-size) / 4) * 5)}.tpl\:p-6{padding:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:p-8{padding:calc(calc(var(--tpl-base-size) / 4) * 8)}.tpl\:px-0\.5{padding-inline:calc(calc(var(--tpl-base-size) / 4) * .5)}.tpl\:px-1{padding-inline:calc(var(--tpl-base-size) / 4)}.tpl\:px-1\.5{padding-inline:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:px-2{padding-inline:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:px-2\.5{padding-inline:calc(calc(var(--tpl-base-size) / 4) * 2.5)}.tpl\:px-3{padding-inline:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:px-3\.5{padding-inline:calc(calc(var(--tpl-base-size) / 4) * 3.5)}.tpl\:px-4{padding-inline:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:px-5{padding-inline:calc(calc(var(--tpl-base-size) / 4) * 5)}.tpl\:px-6{padding-inline:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:px-8{padding-inline:calc(calc(var(--tpl-base-size) / 4) * 8)}.tpl\:px-10{padding-inline:calc(calc(var(--tpl-base-size) / 4) * 10)}.tpl\:py-0{padding-block:0}.tpl\:py-0\.5{padding-block:calc(calc(var(--tpl-base-size) / 4) * .5)}.tpl\:py-1{padding-block:calc(var(--tpl-base-size) / 4)}.tpl\:py-1\.5{padding-block:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:py-2{padding-block:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:py-2\.5{padding-block:calc(calc(var(--tpl-base-size) / 4) * 2.5)}.tpl\:py-3{padding-block:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:py-3\.5{padding-block:calc(calc(var(--tpl-base-size) / 4) * 3.5)}.tpl\:py-4{padding-block:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:py-5{padding-block:calc(calc(var(--tpl-base-size) / 4) * 5)}.tpl\:py-6{padding-block:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:py-8{padding-block:calc(calc(var(--tpl-base-size) / 4) * 8)}.tpl\:py-10{padding-block:calc(calc(var(--tpl-base-size) / 4) * 10)}.tpl\:py-12{padding-block:calc(calc(var(--tpl-base-size) / 4) * 12)}.tpl\:py-16{padding-block:calc(calc(var(--tpl-base-size) / 4) * 16)}.tpl\:py-\[5px\]{padding-block:5px}.tpl\:py-\[7px\]{padding-block:7px}.tpl\:py-px{padding-block:1px}.tpl\:pt-1{padding-top:calc(var(--tpl-base-size) / 4)}.tpl\:pt-2{padding-top:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:pt-2\.5{padding-top:calc(calc(var(--tpl-base-size) / 4) * 2.5)}.tpl\:pt-3{padding-top:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:pt-4{padding-top:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:pr-2{padding-right:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:pr-3{padding-right:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:pr-4{padding-right:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:pr-6{padding-right:calc(calc(var(--tpl-base-size) / 4) * 6)}.tpl\:pr-7{padding-right:calc(calc(var(--tpl-base-size) / 4) * 7)}.tpl\:pr-8{padding-right:calc(calc(var(--tpl-base-size) / 4) * 8)}.tpl\:pb-1{padding-bottom:calc(var(--tpl-base-size) / 4)}.tpl\:pb-1\.5{padding-bottom:calc(calc(var(--tpl-base-size) / 4) * 1.5)}.tpl\:pb-2{padding-bottom:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:pb-3{padding-bottom:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:pb-4{padding-bottom:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:pl-2{padding-left:calc(calc(var(--tpl-base-size) / 4) * 2)}.tpl\:pl-2\.5{padding-left:calc(calc(var(--tpl-base-size) / 4) * 2.5)}.tpl\:pl-3{padding-left:calc(calc(var(--tpl-base-size) / 4) * 3)}.tpl\:pl-4{padding-left:calc(calc(var(--tpl-base-size) / 4) * 4)}.tpl\:pl-8{padding-left:calc(calc(var(--tpl-base-size) / 4) * 8)}.tpl\:pl-9{padding-left:calc(calc(var(--tpl-base-size) / 4) * 9)}.tpl\:pl-\[18px\]{padding-left:18px}.tpl\:text-center{text-align:center}.tpl\:text-left{text-align:left}.tpl\:font-\[inherit\]{font-family:inherit}.tpl\:font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.tpl\:font-sans{font-family:Geist,ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.tpl\:text-4xl{font-size:2.25rem;line-height:var(--tw-leading,calc(2.5 / 2.25))}.tpl\:text-base{font-size:1rem;line-height:var(--tw-leading, 1.5 )}.tpl\:text-lg{font-size:1.125rem;line-height:var(--tw-leading,calc(1.75 / 1.125))}.tpl\:text-sm{font-size:calc(.875 * var(--tpl-base-size));line-height:var(--tw-leading,calc(1.25 / .875))}.tpl\:text-xs{font-size:calc(.75 * var(--tpl-base-size));line-height:var(--tw-leading,calc(1 / .75))}.tpl\:text-\[0\.8em\]{font-size:.8em}.tpl\:text-\[0\.9em\]{font-size:.9em}.tpl\:text-\[1em\]{font-size:1em}.tpl\:text-\[8px\]{font-size:8px}.tpl\:text-\[9px\]{font-size:9px}.tpl\:text-\[10px\]{font-size:10px}.tpl\:text-\[11px\]{font-size:11px}.tpl\:text-\[12px\]{font-size:12px}.tpl\:text-\[13px\]{font-size:13px}.tpl\:text-\[length\:inherit\]{font-size:inherit}.tpl\:leading-none{--tw-leading:1;line-height:1}.tpl\:leading-normal{--tw-leading:1.5;line-height:1.5}.tpl\:leading-relaxed{--tw-leading:1.625;line-height:1.625}.tpl\:leading-snug{--tw-leading:1.375;line-height:1.375}.tpl\:leading-tight{--tw-leading:1.25;line-height:1.25}.tpl\:font-\[var\(--tpl-font-family\)\]{--tw-font-weight:var(--tpl-font-family);font-weight:var(--tpl-font-family)}.tpl\:font-bold{--tw-font-weight:700;font-weight:700}.tpl\:font-medium{--tw-font-weight:500;font-weight:500}.tpl\:font-normal{--tw-font-weight:400;font-weight:400}.tpl\:font-semibold{--tw-font-weight:600;font-weight:600}.tpl\:tracking-wide{--tw-tracking:.025em;letter-spacing:.025em}.tpl\:tracking-wider{--tw-tracking:.05em;letter-spacing:.05em}.tpl\:break-all{word-break:break-all}.tpl\:text-ellipsis{text-overflow:ellipsis}.tpl\:whitespace-nowrap{white-space:nowrap}.tpl\:whitespace-pre-wrap{white-space:pre-wrap}.tpl\:text-\[var\(--tpl-bg\)\]{color:var(--tpl-bg)}.tpl\:text-\[var\(--tpl-border\)\]{color:var(--tpl-border)}.tpl\:text-\[var\(--tpl-border-light\)\]{color:var(--tpl-border-light)}.tpl\:text-\[var\(--tpl-chrome-text-dim\)\]{color:var(--tpl-chrome-text-dim)}.tpl\:text-\[var\(--tpl-chrome-text-muted\)\]{color:var(--tpl-chrome-text-muted)}.tpl\:text-\[var\(--tpl-danger\)\]{color:var(--tpl-danger)}.tpl\:text-\[var\(--tpl-on-primary\)\]{color:var(--tpl-on-primary)}.tpl\:text-\[var\(--tpl-primary\)\]{color:var(--tpl-primary)}.tpl\:text-\[var\(--tpl-primary-hover\)\]{color:var(--tpl-primary-hover)}.tpl\:text-\[var\(--tpl-success\)\]{color:var(--tpl-success)}.tpl\:text-\[var\(--tpl-success\,var\(--tpl-primary\)\)\]{color:var(--tpl-success,var(--tpl-primary))}.tpl\:text-\[var\(--tpl-text\)\]{color:var(--tpl-text)}.tpl\:text-\[var\(--tpl-text-dim\)\]{color:var(--tpl-text-dim)}.tpl\:text-\[var\(--tpl-text-muted\)\]{color:var(--tpl-text-muted)}.tpl\:text-\[var\(--tpl-warning\)\]{color:var(--tpl-warning)}.tpl\:text-white{color:#fff}.tpl\:normal-case{text-transform:none}.tpl\:uppercase{text-transform:uppercase}.tpl\:italic{font-style:italic}.tpl\:tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tpl\:no-underline{text-decoration-line:none}.tpl\:underline{text-decoration-line:underline}.tpl\:accent-\[var\(--tpl-primary\)\]{accent-color:var(--tpl-primary)}.tpl\:opacity-0{opacity:0}.tpl\:opacity-50{opacity:.5}.tpl\:opacity-60{opacity:.6}.tpl\:opacity-70{opacity:.7}.tpl\:opacity-90{opacity:.9}.tpl\:opacity-100{opacity:1}.tpl\:shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:shadow-\[var\(--tpl-ring\)\]{--tw-shadow:var(--tpl-ring);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:shadow-\[var\(--tpl-shadow\)\]{--tw-shadow:var(--tpl-shadow);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:shadow-\[var\(--tpl-shadow-lg\)\]{--tw-shadow:var(--tpl-shadow-lg);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:shadow-\[var\(--tpl-shadow-md\)\]{--tw-shadow:var(--tpl-shadow-md);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:shadow-\[var\(--tpl-shadow-sm\)\]{--tw-shadow:var(--tpl-shadow-sm);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:ring-\[var\(--tpl-border\)\]{--tw-ring-color:var(--tpl-border)}.tpl\:ring-\[var\(--tpl-primary\)\]{--tw-ring-color:var(--tpl-primary)}.tpl\:ring-offset-1{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.tpl\:ring-offset-\[var\(--tpl-bg-elevated\)\]{--tw-ring-offset-color:var(--tpl-bg-elevated)}.tpl\:backdrop-blur-\[2px\]{--tw-backdrop-blur:blur(2px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.tpl\:transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}.tpl\:transition-all{transition-property:all;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}.tpl\:transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}.tpl\:transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}.tpl\:transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}.tpl\:transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}.tpl\:duration-100{--tw-duration:.1s;transition-duration:.1s}.tpl\:duration-150{--tw-duration:.15s;transition-duration:.15s}.tpl\:duration-200{--tw-duration:.2s;transition-duration:.2s}.tpl\:duration-300{--tw-duration:.3s;transition-duration:.3s}.tpl\:duration-\[80ms\]{--tw-duration:80ms;transition-duration:80ms}.tpl\:duration-\[120ms\]{--tw-duration:.12s;transition-duration:.12s}.tpl\:ease-\[cubic-bezier\(0\.16\,1\,0\.3\,1\)\]{--tw-ease:cubic-bezier(.16,1,.3,1);transition-timing-function:cubic-bezier(.16,1,.3,1)}.tpl\:ease-in{--tw-ease:cubic-bezier(.4, 0, 1, 1);transition-timing-function:cubic-bezier(.4,0,1,1)}.tpl\:ease-out{--tw-ease:cubic-bezier(0, 0, .2, 1);transition-timing-function:cubic-bezier(0,0,.2,1)}.tpl\:outline-none{--tw-outline-style:none;outline-style:none}.tpl\:select-none{-webkit-user-select:none;user-select:none}@media(hover:hover){.tpl\:group-hover\:bg-black\/40:is(:where(.tpl\:group):hover *){background-color:oklab(0% none none/.4)}.tpl\:group-hover\:opacity-100:is(:where(.tpl\:group):hover *){opacity:1}}.tpl\:placeholder\:text-\[var\(--tpl-text-dim\)\]::placeholder{color:var(--tpl-text-dim)}.tpl\:first\:border-t-0:first-child{border-top-style:var(--tw-border-style);border-top-width:0}.tpl\:last\:mb-0:last-child{margin-bottom:0}@media(hover:hover){.tpl\:hover\:z-10:hover{z-index:10}.tpl\:hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.tpl\:hover\:scale-110:hover{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.tpl\:hover\:scale-125:hover{--tw-scale-x:125%;--tw-scale-y:125%;--tw-scale-z:125%;scale:var(--tw-scale-x) var(--tw-scale-y)}.tpl\:hover\:border-\[var\(--tpl-border\)\]:hover{border-color:var(--tpl-border)}.tpl\:hover\:border-\[var\(--tpl-danger\)\]:hover{border-color:var(--tpl-danger)}.tpl\:hover\:border-\[var\(--tpl-primary\)\]:hover{border-color:var(--tpl-primary)}.tpl\:hover\:border-\[var\(--tpl-text-dim\)\]:hover{border-color:var(--tpl-text-dim)}.tpl\:hover\:border-l-\[var\(--tpl-primary\)\]:hover{border-left-color:var(--tpl-primary)}.tpl\:hover\:bg-\[color-mix\(in_srgb\,var\(--tpl-text\)_8\%\,transparent\)\]:hover{background-color:var(--tpl-text)}@supports (color:color-mix(in lab,red,red)){.tpl\:hover\:bg-\[color-mix\(in_srgb\,var\(--tpl-text\)_8\%\,transparent\)\]:hover{background-color:color-mix(in srgb,var(--tpl-text) 8%,transparent)}}.tpl\:hover\:bg-\[var\(--tpl-bg-active\)\]:hover{background-color:var(--tpl-bg-active)}.tpl\:hover\:bg-\[var\(--tpl-bg-hover\)\]:hover{background-color:var(--tpl-bg-hover)}.tpl\:hover\:bg-\[var\(--tpl-danger-light\)\]:hover{background-color:var(--tpl-danger-light)}.tpl\:hover\:bg-\[var\(--tpl-primary-hover\)\]:hover{background-color:var(--tpl-primary-hover)}.tpl\:hover\:bg-\[var\(--tpl-primary-light\)\]:hover{background-color:var(--tpl-primary-light)}.tpl\:hover\:text-\[var\(--tpl-danger\)\]:hover{color:var(--tpl-danger)}.tpl\:hover\:text-\[var\(--tpl-primary\)\]:hover{color:var(--tpl-primary)}.tpl\:hover\:text-\[var\(--tpl-text\)\]:hover{color:var(--tpl-text)}.tpl\:hover\:underline:hover{text-decoration-line:underline}.tpl\:hover\:opacity-80:hover{opacity:.8}.tpl\:hover\:opacity-90:hover{opacity:.9}.tpl\:hover\:opacity-100:hover{opacity:1}.tpl\:hover\:shadow-\[var\(--tpl-shadow-md\)\]:hover{--tw-shadow:var(--tpl-shadow-md);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:hover\:shadow-\[var\(--tpl-shadow-sm\)\]:hover{--tw-shadow:var(--tpl-shadow-sm);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.tpl\:focus\:border-\[var\(--tpl-primary\)\]:focus{border-color:var(--tpl-primary)}.tpl\:focus\:shadow-\[0_0_0_3px_var\(--tpl-primary-light\)\]:focus{--tw-shadow:0 0 0 3px var(--tw-shadow-color,var(--tpl-primary-light));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:focus\:shadow-\[var\(--tpl-ring\)\]:focus,.tpl\:focus-visible\:shadow-\[var\(--tpl-ring\)\]:focus-visible{--tw-shadow:var(--tpl-ring);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.tpl\:focus-visible\:ring-\[var\(--tpl-primary\)\]:focus-visible{--tw-ring-color:var(--tpl-primary)}.tpl\:focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.tpl\:focus-visible\:ring-offset-\[var\(--tpl-bg-elevated\)\]:focus-visible{--tw-ring-offset-color:var(--tpl-bg-elevated)}.tpl\:focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.tpl\:active\:cursor-grabbing:active{cursor:grabbing}.tpl\:active\:bg-\[var\(--tpl-bg-active\)\]:active{background-color:var(--tpl-bg-active)}.tpl\:disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.tpl\:disabled\:opacity-30:disabled{opacity:.3}.tpl\:disabled\:opacity-40:disabled{opacity:.4}.tpl\:disabled\:opacity-50:disabled{opacity:.5}@media(hover:hover){.tpl\:disabled\:hover\:bg-transparent:disabled:hover{background-color:#0000}}@layer base,components;.tpl{--tpl-base-size:var(--tpl-user-base-size,16px);--tpl-bg:oklch(99.5% .002 60);--tpl-bg-elevated:oklch(98% .004 60);--tpl-bg-hover:oklch(96% .006 60);--tpl-bg-active:oklch(93.5% .008 60);--tpl-border:oklch(92% .006 60);--tpl-border-light:oklch(86% .01 60);--tpl-text:oklch(18% .01 60);--tpl-text-muted:oklch(50% .015 60);--tpl-text-dim:oklch(68% .012 60);--tpl-primary:oklch(70% .16 55);--tpl-primary-hover:oklch(63% .17 55);--tpl-primary-light:oklch(95% .04 55);--tpl-secondary:oklch(60% .118 184.71);--tpl-secondary-hover:oklch(53.2% .105 186.39);--tpl-secondary-light:oklch(93.8% .03 186.82);--tpl-success:oklch(62.8% .194 155.1);--tpl-success-light:oklch(93.6% .043 163.51);--tpl-warning:oklch(76.9% .168 70.08);--tpl-warning-light:oklch(95% .038 73.59);--tpl-danger:oklch(63.7% .237 25.33);--tpl-danger-light:oklch(93.6% .032 17.72);--tpl-radius:10px;--tpl-radius-sm:7px;--tpl-radius-lg:14px;--tpl-font-family:"Geist", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--tpl-shadow:0 1px 2px #0000000a, 0 1px 3px #00000008;--tpl-shadow-md:0 2px 8px #0000000f, 0 1px 3px #0000000a;--tpl-shadow-lg:0 4px 16px #00000014, 0 2px 6px #0000000a;--tpl-shadow-xl:0 8px 32px #0000001a, 0 4px 12px #0000000f;--tpl-ring:0 0 0 3px var(--tpl-primary-light);--tpl-transition:.12s cubic-bezier(.16, 1, .3, 1)}.tpl[data-tpl-theme=dark]{--tpl-bg:oklch(16% .005 60);--tpl-bg-elevated:oklch(21% .006 60);--tpl-bg-hover:oklch(26% .007 60);--tpl-bg-active:oklch(30% .008 60);--tpl-border:oklch(30% .006 60);--tpl-border-light:oklch(38% .008 60);--tpl-text:oklch(93% .005 60);--tpl-text-muted:oklch(65% .01 60);--tpl-text-dim:oklch(50% .008 60);--tpl-primary:oklch(73% .15 55);--tpl-primary-hover:oklch(78% .14 55);--tpl-primary-light:oklch(28% .05 55);--tpl-secondary:oklch(63% .11 184.71);--tpl-secondary-hover:oklch(68% .1 186.39);--tpl-secondary-light:oklch(25% .03 186.82);--tpl-success:oklch(65% .18 155.1);--tpl-success-light:oklch(25% .04 163.51);--tpl-warning:oklch(78% .16 70.08);--tpl-warning-light:oklch(28% .04 73.59);--tpl-danger:oklch(65% .22 25.33);--tpl-danger-light:oklch(25% .04 17.72);--tpl-shadow:0 1px 2px #0000004d, 0 1px 3px #0003;--tpl-shadow-md:0 2px 8px #00000059, 0 1px 3px #00000040;--tpl-shadow-lg:0 4px 16px #0006, 0 2px 6px #0000004d;--tpl-shadow-xl:0 8px 32px #00000080, 0 4px 12px #00000059;--tpl-ring:0 0 0 3px var(--tpl-primary-light)}.tpl{font-family:Geist,ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:calc(.875 * var(--tpl-base-size));line-height:var(--tw-leading,calc(1.25 / .875));--tw-leading:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--tpl-bg);color:var(--tpl-text);line-height:1.5;font-family:var(--tpl-font-family)}:where(.tpl) button,:where(.tpl) input,:where(.tpl) select,:where(.tpl) textarea{box-sizing:border-box;font-family:inherit}:where(.tpl) button{cursor:pointer;background:0 0;border:none}:where(.tpl) button:focus-visible,:where(.tpl) input:focus-visible,:where(.tpl) select:focus-visible,:where(.tpl) textarea:focus-visible{box-shadow:var(--tpl-ring);outline:none}.tpl ::-webkit-scrollbar{width:6px;height:6px}.tpl ::-webkit-scrollbar-track{background:0 0}.tpl ::-webkit-scrollbar-thumb{background-color:var(--tpl-border-light)}@supports (color:color-mix(in lab,red,red)){.tpl ::-webkit-scrollbar-thumb{background-color:color-mix(in srgb,var(--tpl-border-light) 60%,transparent)}}.tpl ::-webkit-scrollbar-thumb{border-radius:calc(.25 * var(--tpl-base-size))}.tpl ::-webkit-scrollbar-thumb:hover{background-color:var(--tpl-border-light)}@keyframes tpl-pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes tpl-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes tpl-scale-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.tpl-pulse{animation:2s infinite tpl-pulse}.tpl-spinner{animation:1s linear infinite tpl-spin}.tpl-scale-in{animation:.15s cubic-bezier(.16,1,.3,1) tpl-scale-in}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}.tpl-ai-feature-menu-item[data-v-bf59b787]:hover{background-color:var(--tpl-bg-hover)!important}
|
|
2
2
|
/*$vite$:1*/
|