bridgerte 0.9.23 → 0.9.25

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/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index-GaS65GL0.cjs"),a=require("./bridge.cjs"),e=require("./native-spec.cjs"),n=require("./index-TJ1HUDJO.cjs"),o=require("./index-N9gbDsDi.cjs"),r=require("./core.cjs"),i=require("./index-DF8OhKI4.cjs");exports.BRIDGERTE_CONTENT_VERSION=t.BRIDGERTE_CONTENT_VERSION;exports.BRIDGERTE_TABLE_INSERT_MAX_COLS=t.BRIDGERTE_TABLE_INSERT_MAX_COLS;exports.BRIDGERTE_TABLE_INSERT_MAX_ROWS=t.BRIDGERTE_TABLE_INSERT_MAX_ROWS;exports.BRIDGE_CONTENT_CHANGE_DEBOUNCE_MS=a.BRIDGE_CONTENT_CHANGE_DEBOUNCE_MS;exports.BRIDGE_HEIGHT_CHANGE_THROTTLE_MS=a.BRIDGE_HEIGHT_CHANGE_THROTTLE_MS;exports.defaultBridgeEventTiming=a.defaultBridgeEventTiming;exports.isBridgeMessage=a.isBridgeMessage;exports.codeBlockLanguagePanel=e.codeBlockLanguagePanel;exports.codeBlockLanguagePayloadPanel=e.codeBlockLanguagePayloadPanel;exports.createDisabledCommandStates=e.createDisabledCommandStates;exports.defaultMenuSchema=e.defaultMenuSchema;exports.defaultToolbarConfig=e.defaultToolbarConfig;exports.getCommandStateMatchValue=e.getCommandStateMatchValue;exports.isCommandStateForCommand=e.isCommandStateForCommand;exports.isMenuItemCommandState=e.isMenuItemCommandState;exports.resolveToolbarMenu=e.resolveToolbarMenu;exports.tableHeaderMenuItems=e.tableHeaderMenuItems;exports.createFloatingLayer=n.createFloatingLayer;exports.createRichTextEditor=n.createRichTextEditor;exports.createWebViewBridgeRuntime=n.createWebViewBridgeRuntime;exports.createRichTextToolbar=o.createRichTextToolbar;exports.hasMeaningfulHtmlContent=o.hasMeaningfulHtmlContent;exports.isEditorContentEmpty=r.isEditorContentEmpty;exports.resolvePayloadPanelSchema=i.resolvePayloadPanelSchema;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index-GaS65GL0.cjs"),a=require("./bridge.cjs"),e=require("./native-spec.cjs"),n=require("./index-ko4JB2sx.cjs"),o=require("./index-Ci8kMkAD.cjs"),r=require("./core.cjs"),i=require("./index-DF8OhKI4.cjs");exports.BRIDGERTE_CONTENT_VERSION=t.BRIDGERTE_CONTENT_VERSION;exports.BRIDGERTE_TABLE_INSERT_MAX_COLS=t.BRIDGERTE_TABLE_INSERT_MAX_COLS;exports.BRIDGERTE_TABLE_INSERT_MAX_ROWS=t.BRIDGERTE_TABLE_INSERT_MAX_ROWS;exports.BRIDGE_CONTENT_CHANGE_DEBOUNCE_MS=a.BRIDGE_CONTENT_CHANGE_DEBOUNCE_MS;exports.BRIDGE_HEIGHT_CHANGE_THROTTLE_MS=a.BRIDGE_HEIGHT_CHANGE_THROTTLE_MS;exports.defaultBridgeEventTiming=a.defaultBridgeEventTiming;exports.isBridgeMessage=a.isBridgeMessage;exports.codeBlockLanguagePanel=e.codeBlockLanguagePanel;exports.codeBlockLanguagePayloadPanel=e.codeBlockLanguagePayloadPanel;exports.createDisabledCommandStates=e.createDisabledCommandStates;exports.defaultMenuSchema=e.defaultMenuSchema;exports.defaultToolbarConfig=e.defaultToolbarConfig;exports.getCommandStateMatchValue=e.getCommandStateMatchValue;exports.isCommandStateForCommand=e.isCommandStateForCommand;exports.isMenuItemCommandState=e.isMenuItemCommandState;exports.resolveToolbarMenu=e.resolveToolbarMenu;exports.tableHeaderMenuItems=e.tableHeaderMenuItems;exports.createFloatingLayer=n.createFloatingLayer;exports.createRichTextEditor=n.createRichTextEditor;exports.createWebViewBridgeRuntime=n.createWebViewBridgeRuntime;exports.createRichTextToolbar=o.createRichTextToolbar;exports.hasMeaningfulHtmlContent=o.hasMeaningfulHtmlContent;exports.isEditorContentEmpty=r.isEditorContentEmpty;exports.resolvePayloadPanelSchema=i.resolvePayloadPanelSchema;
2
2
  //# sourceMappingURL=index.cjs.map
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import { B as t, a as o, b as r } from "./index-CuNKUHed.js";
2
2
  import { BRIDGE_CONTENT_CHANGE_DEBOUNCE_MS as n, BRIDGE_HEIGHT_CHANGE_THROTTLE_MS as E, defaultBridgeEventTiming as l, isBridgeMessage as s } from "./bridge.js";
3
3
  import { codeBlockLanguagePanel as d, codeBlockLanguagePayloadPanel as i, createDisabledCommandStates as _, defaultMenuSchema as c, defaultToolbarConfig as R, getCommandStateMatchValue as B, isCommandStateForCommand as C, isMenuItemCommandState as g, resolveToolbarMenu as S, tableHeaderMenuItems as f } from "./native-spec.js";
4
- import { c as I, a as M, b as N } from "./index-CBjqWsRZ.js";
5
- import { c as b, h as p } from "./index-DqIXwEPo.js";
4
+ import { c as I, a as M, b as N } from "./index-BpboHt6q.js";
5
+ import { c as b, h as p } from "./index-CzyXQTY_.js";
6
6
  import { isEditorContentEmpty as h } from "./core.js";
7
7
  import { r as H } from "./index-sbZNOcCB.js";
8
8
  export {
@@ -0,0 +1,2 @@
1
+ "use strict";const g="one-light",t={keyword:"#a626a4",function:"#4078f2",operator:"#0184bc",tag:"#c18401",property:"#e45649",string:"#50a14f",attrName:"#986801"},i={[t.keyword]:"keyword",[t.function]:"function",[t.operator]:"operator",[t.tag]:"tag",[t.property]:"property",[t.string]:"string",[t.attrName]:"attr-name"},h=e=>e?i[e.toLowerCase()]:void 0,n=e=>{let o=0;for(let r=0;r<e.length;r+=1)o=Math.imul(o^e.charCodeAt(r),16777619);return(o>>>0).toString(36)};exports.bridgeCodeHighlightTheme=g;exports.getCodeHighlightCodeHash=n;exports.getHighlightTypeFromColor=h;
2
+ //# sourceMappingURL=shikiHighlightData-DU78Iupf.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shikiHighlightData-DU78Iupf.cjs","sources":["../../dom/src/codeHighlight/shikiHighlightData.ts"],"sourcesContent":["export const bridgeCodeHighlightTheme = 'one-light';\n\n/*\n * Shiki one-light 输出的是主题色 inline style;这里把色值集中为语义常量,\n * 避免导出 HTML 时把主题色 inline style 当成内容协议持久化。\n */\nconst oneLightColorByHighlightType = {\n keyword: '#a626a4',\n function: '#4078f2',\n operator: '#0184bc',\n tag: '#c18401',\n property: '#e45649',\n string: '#50a14f',\n attrName: '#986801'\n} as const;\n\nconst codeHighlightTypeByOneLightColor: Record<string, string | undefined> = {\n [oneLightColorByHighlightType.keyword]: 'keyword',\n [oneLightColorByHighlightType.function]: 'function',\n [oneLightColorByHighlightType.operator]: 'operator',\n [oneLightColorByHighlightType.tag]: 'tag',\n [oneLightColorByHighlightType.property]: 'property',\n [oneLightColorByHighlightType.string]: 'string',\n [oneLightColorByHighlightType.attrName]: 'attr-name'\n};\n\nexport const getHighlightTypeFromColor = (color: string | undefined) => (\n color ? codeHighlightTypeByOneLightColor[color.toLowerCase()] : undefined\n);\n\nexport const getHighlightTypeFromStyle = (style: string) => {\n const [, color] = style.match(/(?:^|;)color:\\s*(#[0-9a-f]{3,8})/i) ?? [];\n\n return getHighlightTypeFromColor(color);\n};\n\n/*\n * code hash 只用于长代码任务签名去重,不承担安全用途。这里用稳定的 32 位滚动 hash,\n * 避免把完整 code 拼进 pending task signature 造成重复大字符串分配。\n */\nexport const getCodeHighlightCodeHash = (code: string) => {\n let hash = 0;\n\n for (let index = 0; index < code.length; index += 1) {\n hash = Math.imul(hash ^ code.charCodeAt(index), 16777619);\n }\n\n return (hash >>> 0).toString(36);\n};\n"],"names":["bridgeCodeHighlightTheme","oneLightColorByHighlightType","codeHighlightTypeByOneLightColor","getHighlightTypeFromColor","color","getCodeHighlightCodeHash","code","hash","index"],"mappings":"aAAO,MAAMA,EAA2B,YAMlCC,EAA+B,CACnC,QAAS,UACT,SAAU,UACV,SAAU,UACV,IAAK,UACL,SAAU,UACV,OAAQ,UACR,SAAU,SACZ,EAEMC,EAAuE,CAC3E,CAACD,EAA6B,OAAO,EAAG,UACxC,CAACA,EAA6B,QAAQ,EAAG,WACzC,CAACA,EAA6B,QAAQ,EAAG,WACzC,CAACA,EAA6B,GAAG,EAAG,MACpC,CAACA,EAA6B,QAAQ,EAAG,WACzC,CAACA,EAA6B,MAAM,EAAG,SACvC,CAACA,EAA6B,QAAQ,EAAG,WAC3C,EAEaE,EAA6BC,GACxCA,EAAQF,EAAiCE,EAAM,YAAA,CAAa,EAAI,OAarDC,EAA4BC,GAAiB,CACxD,IAAIC,EAAO,EAEX,QAASC,EAAQ,EAAGA,EAAQF,EAAK,OAAQE,GAAS,EAChDD,EAAO,KAAK,KAAKA,EAAOD,EAAK,WAAWE,CAAK,EAAG,QAAQ,EAG1D,OAAQD,IAAS,GAAG,SAAS,EAAE,CACjC"}
@@ -0,0 +1,28 @@
1
+ const a = "one-light", t = {
2
+ keyword: "#a626a4",
3
+ function: "#4078f2",
4
+ operator: "#0184bc",
5
+ tag: "#c18401",
6
+ property: "#e45649",
7
+ string: "#50a14f",
8
+ attrName: "#986801"
9
+ }, g = {
10
+ [t.keyword]: "keyword",
11
+ [t.function]: "function",
12
+ [t.operator]: "operator",
13
+ [t.tag]: "tag",
14
+ [t.property]: "property",
15
+ [t.string]: "string",
16
+ [t.attrName]: "attr-name"
17
+ }, i = (o) => o ? g[o.toLowerCase()] : void 0, n = (o) => {
18
+ let e = 0;
19
+ for (let r = 0; r < o.length; r += 1)
20
+ e = Math.imul(e ^ o.charCodeAt(r), 16777619);
21
+ return (e >>> 0).toString(36);
22
+ };
23
+ export {
24
+ n as a,
25
+ a as b,
26
+ i as g
27
+ };
28
+ //# sourceMappingURL=shikiHighlightData-Dn-hlfiF.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shikiHighlightData-Dn-hlfiF.js","sources":["../../dom/src/codeHighlight/shikiHighlightData.ts"],"sourcesContent":["export const bridgeCodeHighlightTheme = 'one-light';\n\n/*\n * Shiki one-light 输出的是主题色 inline style;这里把色值集中为语义常量,\n * 避免导出 HTML 时把主题色 inline style 当成内容协议持久化。\n */\nconst oneLightColorByHighlightType = {\n keyword: '#a626a4',\n function: '#4078f2',\n operator: '#0184bc',\n tag: '#c18401',\n property: '#e45649',\n string: '#50a14f',\n attrName: '#986801'\n} as const;\n\nconst codeHighlightTypeByOneLightColor: Record<string, string | undefined> = {\n [oneLightColorByHighlightType.keyword]: 'keyword',\n [oneLightColorByHighlightType.function]: 'function',\n [oneLightColorByHighlightType.operator]: 'operator',\n [oneLightColorByHighlightType.tag]: 'tag',\n [oneLightColorByHighlightType.property]: 'property',\n [oneLightColorByHighlightType.string]: 'string',\n [oneLightColorByHighlightType.attrName]: 'attr-name'\n};\n\nexport const getHighlightTypeFromColor = (color: string | undefined) => (\n color ? codeHighlightTypeByOneLightColor[color.toLowerCase()] : undefined\n);\n\nexport const getHighlightTypeFromStyle = (style: string) => {\n const [, color] = style.match(/(?:^|;)color:\\s*(#[0-9a-f]{3,8})/i) ?? [];\n\n return getHighlightTypeFromColor(color);\n};\n\n/*\n * code hash 只用于长代码任务签名去重,不承担安全用途。这里用稳定的 32 位滚动 hash,\n * 避免把完整 code 拼进 pending task signature 造成重复大字符串分配。\n */\nexport const getCodeHighlightCodeHash = (code: string) => {\n let hash = 0;\n\n for (let index = 0; index < code.length; index += 1) {\n hash = Math.imul(hash ^ code.charCodeAt(index), 16777619);\n }\n\n return (hash >>> 0).toString(36);\n};\n"],"names":["bridgeCodeHighlightTheme","oneLightColorByHighlightType","codeHighlightTypeByOneLightColor","getHighlightTypeFromColor","color","getCodeHighlightCodeHash","code","hash","index"],"mappings":"AAAO,MAAMA,IAA2B,aAMlCC,IAA+B;AAAA,EACnC,SAAS;AAAA,EACT,UAAU;AAAA,EACV,UAAU;AAAA,EACV,KAAK;AAAA,EACL,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,UAAU;AACZ,GAEMC,IAAuE;AAAA,EAC3E,CAACD,EAA6B,OAAO,GAAG;AAAA,EACxC,CAACA,EAA6B,QAAQ,GAAG;AAAA,EACzC,CAACA,EAA6B,QAAQ,GAAG;AAAA,EACzC,CAACA,EAA6B,GAAG,GAAG;AAAA,EACpC,CAACA,EAA6B,QAAQ,GAAG;AAAA,EACzC,CAACA,EAA6B,MAAM,GAAG;AAAA,EACvC,CAACA,EAA6B,QAAQ,GAAG;AAC3C,GAEaE,IAA4B,CAACC,MACxCA,IAAQF,EAAiCE,EAAM,YAAA,CAAa,IAAI,QAarDC,IAA2B,CAACC,MAAiB;AACxD,MAAIC,IAAO;AAEX,WAASC,IAAQ,GAAGA,IAAQF,EAAK,QAAQE,KAAS;AAChD,IAAAD,IAAO,KAAK,KAAKA,IAAOD,EAAK,WAAWE,CAAK,GAAG,QAAQ;AAG1D,UAAQD,MAAS,GAAG,SAAS,EAAE;AACjC;"}
@@ -0,0 +1,3 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("@shikijs/core"),m=require("@shikijs/engine-javascript"),w=require("shiki/langs"),x=require("shiki/themes"),y=require("./shikiHighlightData-DU78Iupf.cjs"),L=/^diff-([\w-]+)/i;let r=null;const g=new Set,u=new Set,c=()=>(r||(r=f.createHighlighterCoreSync({engine:m.createJavaScriptRegexEngine(),langs:[],themes:[]})),r),p=e=>{var i;const n=(i=L.exec(e))==null?void 0:i[1];return{isDiff:n!==void 0,languageId:n??e}},I=async e=>{if(u.has(e))return;const n=x.bundledThemesInfo.find(t=>t.id===e);if(!n)throw new Error(`Unsupported Shiki theme: ${e}`);await c().loadTheme(n.import()),u.add(e)},S=async e=>{const{languageId:n}=p(e);if(g.has(n)||f.isSpecialLang(n)){g.add(n);return}const t=w.bundledLanguagesInfo.find(i=>{var s;return i.id===n||((s=i.aliases)==null?void 0:s.includes(n))});if(!t)throw new Error(`Unsupported Shiki language: ${e}`);await c().loadLanguage(t.import()),g.add(n)},k=e=>e===""?[]:[{text:e}],q=(e,n)=>{const t=[];return e.forEach((i,s)=>{let o=i.content;if(n&&s===0&&o.length>0){const d=["+","-",">","<"," "],T=["inserted","deleted","inserted","deleted","unchanged"],a=d.indexOf(o.slice(0,1));if(a!==-1){const l=d[a],h=T[a];if(!l||!h)return;t.push({highlightType:h,text:l}),o=o.slice(1)}}o!==""&&t.push({highlightType:y.getHighlightTypeFromColor(i.color),text:o})}),t},H=async({code:e,language:n,theme:t})=>{if(!n)return e.split(`
2
+ `).map(k);const{isDiff:i,languageId:s}=p(n);return await I(t),await S(n),c().codeToTokens(e,{lang:s,theme:t}).tokens.map(o=>q(o,i))};exports.tokenizeCodeHighlightRequest=H;
3
+ //# sourceMappingURL=shikiTokenizerRuntime.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shikiTokenizerRuntime.cjs","sources":["../../dom/src/codeHighlight/shikiTokenizerRuntime.ts"],"sourcesContent":["import {\n createHighlighterCoreSync,\n isSpecialLang,\n type HighlighterCore\n} from '@shikijs/core';\nimport { createJavaScriptRegexEngine } from '@shikijs/engine-javascript';\nimport { bundledLanguagesInfo } from 'shiki/langs';\nimport { bundledThemesInfo } from 'shiki/themes';\nimport type { ThemedToken } from '@shikijs/types';\nimport type {\n CodeHighlightWorkerLine,\n CodeHighlightWorkerRequest\n} from './runtime/type';\nimport { getHighlightTypeFromColor } from './shikiHighlightData';\n\nconst diffLanguageRegex = /^diff-([\\w-]+)/i;\n\nlet highlighter: HighlighterCore | null = null;\nconst loadedLanguages = new Set<string>();\nconst loadedThemes = new Set<string>();\n\nconst getHighlighter = () => {\n if (!highlighter) {\n /*\n * Shiki runtime 可以在 worker 或 worker 失败后的 fallback chunk 中运行。\n * 主编辑器入口不静态 import 这个模块,避免普通编辑器初始化就拉 grammar/theme 运行时。\n */\n highlighter = createHighlighterCoreSync({\n engine: createJavaScriptRegexEngine(),\n langs: [],\n themes: []\n });\n }\n\n return highlighter;\n};\n\nconst resolveLanguage = (language: string) => {\n const diffedLanguage = diffLanguageRegex.exec(language)?.[1];\n const languageId = diffedLanguage ?? language;\n\n return {\n isDiff: diffedLanguage !== undefined,\n languageId\n };\n};\n\nconst loadTheme = async (theme: string) => {\n if (loadedThemes.has(theme)) return;\n\n const themeInfo = bundledThemesInfo.find((info) => info.id === theme);\n if (!themeInfo) throw new Error(`Unsupported Shiki theme: ${theme}`);\n\n await getHighlighter().loadTheme(themeInfo.import());\n loadedThemes.add(theme);\n};\n\nconst loadLanguage = async (language: string) => {\n const { languageId } = resolveLanguage(language);\n\n if (loadedLanguages.has(languageId) || isSpecialLang(languageId)) {\n loadedLanguages.add(languageId);\n return;\n }\n\n const languageInfo = bundledLanguagesInfo.find((info) => (\n info.id === languageId || info.aliases?.includes(languageId)\n ));\n\n if (!languageInfo) throw new Error(`Unsupported Shiki language: ${language}`);\n\n await getHighlighter().loadLanguage(languageInfo.import());\n loadedLanguages.add(languageId);\n};\n\nconst createPlainTokenLine = (text: string): CodeHighlightWorkerLine => (\n text === '' ? [] : [{ text }]\n);\n\nconst mapTokenLine = (\n line: ThemedToken[],\n isDiff: boolean\n): CodeHighlightWorkerLine => {\n const result: CodeHighlightWorkerLine = [];\n\n line.forEach((token, tokenIndex) => {\n let text = token.content;\n\n if (isDiff && tokenIndex === 0 && text.length > 0) {\n const prefixes = ['+', '-', '>', '<', ' '];\n const prefixTypes = ['inserted', 'deleted', 'inserted', 'deleted', 'unchanged'];\n const prefixIndex = prefixes.indexOf(text.slice(0, 1));\n\n if (prefixIndex !== -1) {\n const prefix = prefixes[prefixIndex];\n const highlightType = prefixTypes[prefixIndex];\n\n if (!prefix || !highlightType) return;\n\n result.push({\n highlightType,\n text: prefix\n });\n text = text.slice(1);\n }\n }\n\n if (text !== '') {\n result.push({\n highlightType: getHighlightTypeFromColor(token.color),\n text\n });\n }\n });\n\n return result;\n};\n\nexport const tokenizeCodeHighlightRequest = async ({\n code,\n language,\n theme\n}: CodeHighlightWorkerRequest): Promise<CodeHighlightWorkerLine[]> => {\n if (!language) return code.split('\\n').map(createPlainTokenLine);\n\n const { isDiff, languageId } = resolveLanguage(language);\n\n await loadTheme(theme);\n await loadLanguage(language);\n\n return getHighlighter().codeToTokens(code, {\n lang: languageId,\n theme\n }).tokens.map((line) => mapTokenLine(line, isDiff));\n};\n"],"names":["diffLanguageRegex","highlighter","loadedLanguages","loadedThemes","getHighlighter","createHighlighterCoreSync","createJavaScriptRegexEngine","resolveLanguage","language","diffedLanguage","_a","loadTheme","theme","themeInfo","bundledThemesInfo","info","loadLanguage","languageId","isSpecialLang","languageInfo","bundledLanguagesInfo","createPlainTokenLine","text","mapTokenLine","line","isDiff","result","token","tokenIndex","prefixes","prefixTypes","prefixIndex","prefix","highlightType","getHighlightTypeFromColor","tokenizeCodeHighlightRequest","code"],"mappings":"2PAeMA,EAAoB,kBAE1B,IAAIC,EAAsC,KAC1C,MAAMC,MAAsB,IACtBC,MAAmB,IAEnBC,EAAiB,KAChBH,IAKHA,EAAcI,EAAAA,0BAA0B,CACtC,OAAQC,EAAAA,4BAAA,EACR,MAAO,CAAA,EACP,OAAQ,CAAA,CAAC,CACV,GAGIL,GAGHM,EAAmBC,GAAqB,OAC5C,MAAMC,GAAiBC,EAAAV,EAAkB,KAAKQ,CAAQ,IAA/B,YAAAE,EAAmC,GAG1D,MAAO,CACL,OAAQD,IAAmB,OAC3B,WAJiBA,GAAkBD,CAInC,CAEJ,EAEMG,EAAY,MAAOC,GAAkB,CACzC,GAAIT,EAAa,IAAIS,CAAK,EAAG,OAE7B,MAAMC,EAAYC,EAAAA,kBAAkB,KAAMC,GAASA,EAAK,KAAOH,CAAK,EACpE,GAAI,CAACC,EAAW,MAAM,IAAI,MAAM,4BAA4BD,CAAK,EAAE,EAEnE,MAAMR,EAAA,EAAiB,UAAUS,EAAU,QAAQ,EACnDV,EAAa,IAAIS,CAAK,CACxB,EAEMI,EAAe,MAAOR,GAAqB,CAC/C,KAAM,CAAE,WAAAS,CAAA,EAAeV,EAAgBC,CAAQ,EAE/C,GAAIN,EAAgB,IAAIe,CAAU,GAAKC,EAAAA,cAAcD,CAAU,EAAG,CAChEf,EAAgB,IAAIe,CAAU,EAC9B,MACF,CAEA,MAAME,EAAeC,EAAAA,qBAAqB,KAAML,GAAA,OAC9C,OAAAA,EAAK,KAAOE,KAAcP,EAAAK,EAAK,UAAL,YAAAL,EAAc,SAASO,IAClD,EAED,GAAI,CAACE,EAAc,MAAM,IAAI,MAAM,+BAA+BX,CAAQ,EAAE,EAE5E,MAAMJ,EAAA,EAAiB,aAAae,EAAa,QAAQ,EACzDjB,EAAgB,IAAIe,CAAU,CAChC,EAEMI,EAAwBC,GAC5BA,IAAS,GAAK,GAAK,CAAC,CAAE,KAAAA,EAAM,EAGxBC,EAAe,CACnBC,EACAC,IAC4B,CAC5B,MAAMC,EAAkC,CAAA,EAExC,OAAAF,EAAK,QAAQ,CAACG,EAAOC,IAAe,CAClC,IAAIN,EAAOK,EAAM,QAEjB,GAAIF,GAAUG,IAAe,GAAKN,EAAK,OAAS,EAAG,CACjD,MAAMO,EAAW,CAAC,IAAK,IAAK,IAAK,IAAK,GAAG,EACnCC,EAAc,CAAC,WAAY,UAAW,WAAY,UAAW,WAAW,EACxEC,EAAcF,EAAS,QAAQP,EAAK,MAAM,EAAG,CAAC,CAAC,EAErD,GAAIS,IAAgB,GAAI,CACtB,MAAMC,EAASH,EAASE,CAAW,EAC7BE,EAAgBH,EAAYC,CAAW,EAE7C,GAAI,CAACC,GAAU,CAACC,EAAe,OAE/BP,EAAO,KAAK,CACV,cAAAO,EACA,KAAMD,CAAA,CACP,EACDV,EAAOA,EAAK,MAAM,CAAC,CACrB,CACF,CAEIA,IAAS,IACXI,EAAO,KAAK,CACV,cAAeQ,EAAAA,0BAA0BP,EAAM,KAAK,EACpD,KAAAL,CAAA,CACD,CAEL,CAAC,EAEMI,CACT,EAEaS,EAA+B,MAAO,CACjD,KAAAC,EACA,SAAA5B,EACA,MAAAI,CACF,IAAsE,CACpE,GAAI,CAACJ,EAAU,OAAO4B,EAAK,MAAM;AAAA,CAAI,EAAE,IAAIf,CAAoB,EAE/D,KAAM,CAAE,OAAAI,EAAQ,WAAAR,GAAeV,EAAgBC,CAAQ,EAEvD,aAAMG,EAAUC,CAAK,EACrB,MAAMI,EAAaR,CAAQ,EAEpBJ,EAAA,EAAiB,aAAagC,EAAM,CACzC,KAAMnB,EACN,MAAAL,CAAA,CACD,EAAE,OAAO,IAAKY,GAASD,EAAaC,EAAMC,CAAM,CAAC,CACpD"}
@@ -0,0 +1,72 @@
1
+ import { isSpecialLang as m, createHighlighterCoreSync as T } from "@shikijs/core";
2
+ import { createJavaScriptRegexEngine as w } from "@shikijs/engine-javascript";
3
+ import { bundledLanguagesInfo as x } from "shiki/langs";
4
+ import { bundledThemesInfo as L } from "shiki/themes";
5
+ import { g as I } from "./shikiHighlightData-Dn-hlfiF.js";
6
+ const y = /^diff-([\w-]+)/i;
7
+ let s = null;
8
+ const d = /* @__PURE__ */ new Set(), h = /* @__PURE__ */ new Set(), g = () => (s || (s = T({
9
+ engine: w(),
10
+ langs: [],
11
+ themes: []
12
+ })), s), p = (e) => {
13
+ var i;
14
+ const n = (i = y.exec(e)) == null ? void 0 : i[1];
15
+ return {
16
+ isDiff: n !== void 0,
17
+ languageId: n ?? e
18
+ };
19
+ }, S = async (e) => {
20
+ if (h.has(e)) return;
21
+ const n = L.find((t) => t.id === e);
22
+ if (!n) throw new Error(`Unsupported Shiki theme: ${e}`);
23
+ await g().loadTheme(n.import()), h.add(e);
24
+ }, k = async (e) => {
25
+ const { languageId: n } = p(e);
26
+ if (d.has(n) || m(n)) {
27
+ d.add(n);
28
+ return;
29
+ }
30
+ const t = x.find((i) => {
31
+ var r;
32
+ return i.id === n || ((r = i.aliases) == null ? void 0 : r.includes(n));
33
+ });
34
+ if (!t) throw new Error(`Unsupported Shiki language: ${e}`);
35
+ await g().loadLanguage(t.import()), d.add(n);
36
+ }, E = (e) => e === "" ? [] : [{ text: e }], H = (e, n) => {
37
+ const t = [];
38
+ return e.forEach((i, r) => {
39
+ let o = i.content;
40
+ if (n && r === 0 && o.length > 0) {
41
+ const c = ["+", "-", ">", "<", " "], u = ["inserted", "deleted", "inserted", "deleted", "unchanged"], a = c.indexOf(o.slice(0, 1));
42
+ if (a !== -1) {
43
+ const l = c[a], f = u[a];
44
+ if (!l || !f) return;
45
+ t.push({
46
+ highlightType: f,
47
+ text: l
48
+ }), o = o.slice(1);
49
+ }
50
+ }
51
+ o !== "" && t.push({
52
+ highlightType: I(i.color),
53
+ text: o
54
+ });
55
+ }), t;
56
+ }, U = async ({
57
+ code: e,
58
+ language: n,
59
+ theme: t
60
+ }) => {
61
+ if (!n) return e.split(`
62
+ `).map(E);
63
+ const { isDiff: i, languageId: r } = p(n);
64
+ return await S(t), await k(n), g().codeToTokens(e, {
65
+ lang: r,
66
+ theme: t
67
+ }).tokens.map((o) => H(o, i));
68
+ };
69
+ export {
70
+ U as tokenizeCodeHighlightRequest
71
+ };
72
+ //# sourceMappingURL=shikiTokenizerRuntime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shikiTokenizerRuntime.js","sources":["../../dom/src/codeHighlight/shikiTokenizerRuntime.ts"],"sourcesContent":["import {\n createHighlighterCoreSync,\n isSpecialLang,\n type HighlighterCore\n} from '@shikijs/core';\nimport { createJavaScriptRegexEngine } from '@shikijs/engine-javascript';\nimport { bundledLanguagesInfo } from 'shiki/langs';\nimport { bundledThemesInfo } from 'shiki/themes';\nimport type { ThemedToken } from '@shikijs/types';\nimport type {\n CodeHighlightWorkerLine,\n CodeHighlightWorkerRequest\n} from './runtime/type';\nimport { getHighlightTypeFromColor } from './shikiHighlightData';\n\nconst diffLanguageRegex = /^diff-([\\w-]+)/i;\n\nlet highlighter: HighlighterCore | null = null;\nconst loadedLanguages = new Set<string>();\nconst loadedThemes = new Set<string>();\n\nconst getHighlighter = () => {\n if (!highlighter) {\n /*\n * Shiki runtime 可以在 worker 或 worker 失败后的 fallback chunk 中运行。\n * 主编辑器入口不静态 import 这个模块,避免普通编辑器初始化就拉 grammar/theme 运行时。\n */\n highlighter = createHighlighterCoreSync({\n engine: createJavaScriptRegexEngine(),\n langs: [],\n themes: []\n });\n }\n\n return highlighter;\n};\n\nconst resolveLanguage = (language: string) => {\n const diffedLanguage = diffLanguageRegex.exec(language)?.[1];\n const languageId = diffedLanguage ?? language;\n\n return {\n isDiff: diffedLanguage !== undefined,\n languageId\n };\n};\n\nconst loadTheme = async (theme: string) => {\n if (loadedThemes.has(theme)) return;\n\n const themeInfo = bundledThemesInfo.find((info) => info.id === theme);\n if (!themeInfo) throw new Error(`Unsupported Shiki theme: ${theme}`);\n\n await getHighlighter().loadTheme(themeInfo.import());\n loadedThemes.add(theme);\n};\n\nconst loadLanguage = async (language: string) => {\n const { languageId } = resolveLanguage(language);\n\n if (loadedLanguages.has(languageId) || isSpecialLang(languageId)) {\n loadedLanguages.add(languageId);\n return;\n }\n\n const languageInfo = bundledLanguagesInfo.find((info) => (\n info.id === languageId || info.aliases?.includes(languageId)\n ));\n\n if (!languageInfo) throw new Error(`Unsupported Shiki language: ${language}`);\n\n await getHighlighter().loadLanguage(languageInfo.import());\n loadedLanguages.add(languageId);\n};\n\nconst createPlainTokenLine = (text: string): CodeHighlightWorkerLine => (\n text === '' ? [] : [{ text }]\n);\n\nconst mapTokenLine = (\n line: ThemedToken[],\n isDiff: boolean\n): CodeHighlightWorkerLine => {\n const result: CodeHighlightWorkerLine = [];\n\n line.forEach((token, tokenIndex) => {\n let text = token.content;\n\n if (isDiff && tokenIndex === 0 && text.length > 0) {\n const prefixes = ['+', '-', '>', '<', ' '];\n const prefixTypes = ['inserted', 'deleted', 'inserted', 'deleted', 'unchanged'];\n const prefixIndex = prefixes.indexOf(text.slice(0, 1));\n\n if (prefixIndex !== -1) {\n const prefix = prefixes[prefixIndex];\n const highlightType = prefixTypes[prefixIndex];\n\n if (!prefix || !highlightType) return;\n\n result.push({\n highlightType,\n text: prefix\n });\n text = text.slice(1);\n }\n }\n\n if (text !== '') {\n result.push({\n highlightType: getHighlightTypeFromColor(token.color),\n text\n });\n }\n });\n\n return result;\n};\n\nexport const tokenizeCodeHighlightRequest = async ({\n code,\n language,\n theme\n}: CodeHighlightWorkerRequest): Promise<CodeHighlightWorkerLine[]> => {\n if (!language) return code.split('\\n').map(createPlainTokenLine);\n\n const { isDiff, languageId } = resolveLanguage(language);\n\n await loadTheme(theme);\n await loadLanguage(language);\n\n return getHighlighter().codeToTokens(code, {\n lang: languageId,\n theme\n }).tokens.map((line) => mapTokenLine(line, isDiff));\n};\n"],"names":["diffLanguageRegex","highlighter","loadedLanguages","loadedThemes","getHighlighter","createHighlighterCoreSync","createJavaScriptRegexEngine","resolveLanguage","language","diffedLanguage","_a","loadTheme","theme","themeInfo","bundledThemesInfo","info","loadLanguage","languageId","isSpecialLang","languageInfo","bundledLanguagesInfo","createPlainTokenLine","text","mapTokenLine","line","isDiff","result","token","tokenIndex","prefixes","prefixTypes","prefixIndex","prefix","highlightType","getHighlightTypeFromColor","tokenizeCodeHighlightRequest","code"],"mappings":";;;;;AAeA,MAAMA,IAAoB;AAE1B,IAAIC,IAAsC;AAC1C,MAAMC,wBAAsB,IAAA,GACtBC,wBAAmB,IAAA,GAEnBC,IAAiB,OAChBH,MAKHA,IAAcI,EAA0B;AAAA,EACtC,QAAQC,EAAA;AAAA,EACR,OAAO,CAAA;AAAA,EACP,QAAQ,CAAA;AAAC,CACV,IAGIL,IAGHM,IAAkB,CAACC,MAAqB;;AAC5C,QAAMC,KAAiBC,IAAAV,EAAkB,KAAKQ,CAAQ,MAA/B,gBAAAE,EAAmC;AAG1D,SAAO;AAAA,IACL,QAAQD,MAAmB;AAAA,IAC3B,YAJiBA,KAAkBD;AAAA,EAInC;AAEJ,GAEMG,IAAY,OAAOC,MAAkB;AACzC,MAAIT,EAAa,IAAIS,CAAK,EAAG;AAE7B,QAAMC,IAAYC,EAAkB,KAAK,CAACC,MAASA,EAAK,OAAOH,CAAK;AACpE,MAAI,CAACC,EAAW,OAAM,IAAI,MAAM,4BAA4BD,CAAK,EAAE;AAEnE,QAAMR,EAAA,EAAiB,UAAUS,EAAU,QAAQ,GACnDV,EAAa,IAAIS,CAAK;AACxB,GAEMI,IAAe,OAAOR,MAAqB;AAC/C,QAAM,EAAE,YAAAS,EAAA,IAAeV,EAAgBC,CAAQ;AAE/C,MAAIN,EAAgB,IAAIe,CAAU,KAAKC,EAAcD,CAAU,GAAG;AAChE,IAAAf,EAAgB,IAAIe,CAAU;AAC9B;AAAA,EACF;AAEA,QAAME,IAAeC,EAAqB,KAAK,CAACL,MAAA;;AAC9C,WAAAA,EAAK,OAAOE,OAAcP,IAAAK,EAAK,YAAL,gBAAAL,EAAc,SAASO;AAAA,GAClD;AAED,MAAI,CAACE,EAAc,OAAM,IAAI,MAAM,+BAA+BX,CAAQ,EAAE;AAE5E,QAAMJ,EAAA,EAAiB,aAAae,EAAa,QAAQ,GACzDjB,EAAgB,IAAIe,CAAU;AAChC,GAEMI,IAAuB,CAACC,MAC5BA,MAAS,KAAK,KAAK,CAAC,EAAE,MAAAA,GAAM,GAGxBC,IAAe,CACnBC,GACAC,MAC4B;AAC5B,QAAMC,IAAkC,CAAA;AAExC,SAAAF,EAAK,QAAQ,CAACG,GAAOC,MAAe;AAClC,QAAIN,IAAOK,EAAM;AAEjB,QAAIF,KAAUG,MAAe,KAAKN,EAAK,SAAS,GAAG;AACjD,YAAMO,IAAW,CAAC,KAAK,KAAK,KAAK,KAAK,GAAG,GACnCC,IAAc,CAAC,YAAY,WAAW,YAAY,WAAW,WAAW,GACxEC,IAAcF,EAAS,QAAQP,EAAK,MAAM,GAAG,CAAC,CAAC;AAErD,UAAIS,MAAgB,IAAI;AACtB,cAAMC,IAASH,EAASE,CAAW,GAC7BE,IAAgBH,EAAYC,CAAW;AAE7C,YAAI,CAACC,KAAU,CAACC,EAAe;AAE/B,QAAAP,EAAO,KAAK;AAAA,UACV,eAAAO;AAAA,UACA,MAAMD;AAAA,QAAA,CACP,GACDV,IAAOA,EAAK,MAAM,CAAC;AAAA,MACrB;AAAA,IACF;AAEA,IAAIA,MAAS,MACXI,EAAO,KAAK;AAAA,MACV,eAAeQ,EAA0BP,EAAM,KAAK;AAAA,MACpD,MAAAL;AAAA,IAAA,CACD;AAAA,EAEL,CAAC,GAEMI;AACT,GAEaS,IAA+B,OAAO;AAAA,EACjD,MAAAC;AAAA,EACA,UAAA5B;AAAA,EACA,OAAAI;AACF,MAAsE;AACpE,MAAI,CAACJ,EAAU,QAAO4B,EAAK,MAAM;AAAA,CAAI,EAAE,IAAIf,CAAoB;AAE/D,QAAM,EAAE,QAAAI,GAAQ,YAAAR,MAAeV,EAAgBC,CAAQ;AAEvD,eAAMG,EAAUC,CAAK,GACrB,MAAMI,EAAaR,CAAQ,GAEpBJ,EAAA,EAAiB,aAAagC,GAAM;AAAA,IACzC,MAAMnB;AAAA,IACN,OAAAL;AAAA,EAAA,CACD,EAAE,OAAO,IAAI,CAACY,MAASD,EAAaC,GAAMC,CAAM,CAAC;AACpD;"}
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- :root,.bridgerte{--bridgerte-color-primary:#1677ff;--bridgerte-color-text:#1f2329;--bridgerte-color-text-muted:#86909c;--bridgerte-color-bg:#fff;--bridgerte-color-panel:#fff;--bridgerte-color-border:#e5e6eb;--bridgerte-color-active-bg:#e8f3ff;--bridgerte-color-code-bg:#f3f4f6;--bridgerte-color-placeholder:#b7bcc5;--bridgerte-color-disabled:#c9cdd4;--bridgerte-color-danger:#f53f3f;--bridgerte-shadow-panel:0 12px 32px #0f172a24;--bridgerte-shadow-popup:0 10px 24px #0f172a1a;--bridgerte-font-size:15px;--bridgerte-line-height:1.7;--bridgerte-radius:8px;--bridgerte-radius-large:12px;--bridgerte-toolbar-height:42px;--bridgerte-control-height:32px;--bridgerte-control-height-small:28px;--bridgerte-touch-target-size:32px;--bridgerte-hoverbar-button-size:28px;--bridgerte-safe-area-bottom:env(safe-area-inset-bottom,0px);--bridgerte-editor-padding:12px;--bridgerte-z-index-toolbar:20;--bridgerte-code-font-family:"JetBrains Mono", Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace;--bridgerte-code-block-control-height:32px;--bridgerte-code-token-text:#000;--bridgerte-code-token-comment:#708090;--bridgerte-code-token-keyword:#a626a4;--bridgerte-code-token-operator:#0184bc;--bridgerte-code-token-function:#4078f2;--bridgerte-code-token-string:#50a14f;--bridgerte-code-token-number:#986801;--bridgerte-code-token-class:#4078f2;--bridgerte-code-token-builtin:#50a14f;--bridgerte-code-token-property:#e45649;--bridgerte-code-token-variable:#e90;--bridgerte-code-token-tag:#c18401;--bridgerte-code-token-punctuation:#999;--bridgerte-code-token-regex:#e90;--bridgerte-code-token-inserted:#690;--bridgerte-code-token-deleted:#905;--bridgerte-media-controls-button-height:28px;--bridgerte-table-controls-button-height:28px;--bridgerte-payload-panel-color-wheel-size:136px;--bridgerte-payload-panel-color-handle-size:14px;--bridgerte-payload-panel-color-swatch-width:22px;--bridgerte-payload-panel-color-swatch-height:40px;--bridgerte-payload-panel-table-cell-size:16px;--bridgerte-payload-panel-title-height:28px;--bridgerte-payload-panel-option-height:28px;--bridgerte-payload-panel-field-height:32px;--bridgerte-todo-marker-hit-size:32px;--bridgerte-todo-marker-size:16px}.bridgerte{width:100%;height:100%;min-height:0;color:var(--bridgerte-color-text);background:var(--bridgerte-color-bg);font-family:inherit;font-size:var(--bridgerte-font-size);line-height:var(--bridgerte-line-height);overflow-wrap:anywhere;outline:none;transition:background-color .16s,color .16s;position:relative}.bridgerte[data-readonly=true]{color:var(--bridgerte-color-text-muted);background:var(--bridgerte-color-panel);cursor:default}.bridgerte__editor{flex-direction:column;width:100%;height:100%;min-height:0;display:flex}.bridgerte__body{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.bridgerte__content{min-height:0;padding:var(--bridgerte-editor-padding);-webkit-tap-highlight-color:transparent;outline:none;flex:1;position:relative;overflow-y:auto}.bridgerte__content[data-empty=true] .bridgerte__paragraph:first-child{margin-top:0}.bridgerte__placeholder{box-sizing:border-box;padding:var(--bridgerte-editor-padding);color:var(--bridgerte-color-placeholder);text-overflow:ellipsis;white-space:nowrap;pointer-events:none;display:none;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.bridgerte__content[data-empty=true]+.bridgerte__placeholder{display:block}.bridgerte__paragraph{margin:0 0 .75em}.bridgerte__heading{color:var(--bridgerte-color-text);margin:.75em 0;font-weight:700;line-height:1.25}.bridgerte__heading--h1{font-size:32px}.bridgerte__heading--h2{font-size:28px}.bridgerte__heading--h3{font-size:24px}.bridgerte__heading--h4{font-size:21px}.bridgerte__heading--h5{font-size:18px}.bridgerte__heading--h6{font-size:16px}.bridgerte__list{margin:0 0 .75em;padding-left:1.5em}.bridgerte__list-item{margin:.25em 0}.bridgerte__quote{border-left:3px solid var(--bridgerte-color-primary);border-radius:calc(var(--bridgerte-radius) - 2px);color:var(--bridgerte-color-text);background:var(--bridgerte-color-code-bg);margin:.85em 0;padding:.45em .85em}.bridgerte__quote>:last-child{margin-bottom:0}.bridgerte__divider{background:var(--bridgerte-color-border);border:0;height:1px;margin:1em 0}.bridgerte__link{color:var(--bridgerte-color-primary);text-underline-offset:.18em;text-decoration:underline}.bridgerte__text--bold{font-weight:700}.bridgerte__text--italic{font-style:italic}.bridgerte__text--underline{text-underline-offset:.18em;text-decoration-line:underline}.bridgerte__text--strike{text-decoration-line:line-through}.bridgerte__text--underline-strike,.bridgerte__text--underline.bridgerte__text--strike{text-underline-offset:.18em;text-decoration-line:underline line-through}.bridgerte__list--todo{padding-left:0;list-style:none}.bridgerte__list-item--checked,.bridgerte__list-item--unchecked{outline:none;margin-left:.15em;padding-left:2em;list-style:none;position:relative}.bridgerte__list-item--checked:before,.bridgerte__list-item--unchecked:before{top:calc(var(--bridgerte-line-height) * .5em);width:var(--bridgerte-todo-marker-hit-size);height:var(--bridgerte-todo-marker-hit-size);box-sizing:border-box;content:"";border-radius:999px;position:absolute;left:0;transform:translateY(-50%)}.bridgerte__list-item--checked:after,.bridgerte__list-item--unchecked:after{top:calc(var(--bridgerte-line-height) * .5em);width:var(--bridgerte-todo-marker-size);height:var(--bridgerte-todo-marker-size);box-sizing:border-box;border:1px solid var(--bridgerte-color-border);content:"";pointer-events:none;border-radius:999px;position:absolute;left:0;transform:translateY(-50%)}.bridgerte__list-item--checked:focus-visible:after,.bridgerte__list-item--unchecked:focus-visible:after{border-color:var(--bridgerte-color-primary);box-shadow:0 0 0 2px var(--bridgerte-color-active-bg)}.bridgerte__list-item--checked{color:var(--bridgerte-color-text-muted);text-decoration:line-through}.bridgerte__list-item--checked:after{border-color:var(--bridgerte-color-primary);background:radial-gradient(circle at center,var(--bridgerte-color-bg) 0 4px,transparent 4.5px),var(--bridgerte-color-primary)}.bridgerte__code{border-radius:var(--bridgerte-radius);color:var(--bridgerte-color-text);background:var(--bridgerte-color-code-bg);font-family:var(--bridgerte-code-font-family);padding:.12em .3em;font-size:.92em}.bridgerte__code-block{border:1px solid var(--bridgerte-color-border);border-radius:var(--bridgerte-radius-large);color:var(--bridgerte-code-token-text);background:var(--bridgerte-color-code-bg);font-family:var(--bridgerte-code-font-family);line-height:var(--bridgerte-line-height);white-space:pre;margin:12px 0;padding:12px;display:block;overflow:auto}.bridgerte__code-token{color:var(--bridgerte-code-token-text)}.bridgerte__code-token--comment{color:var(--bridgerte-code-token-comment);font-style:italic}.bridgerte__code-token--keyword{color:var(--bridgerte-code-token-keyword)}.bridgerte__code-token--operator{color:var(--bridgerte-code-token-operator)}.bridgerte__code-token--function{color:var(--bridgerte-code-token-function)}.bridgerte__code-token--string,.bridgerte__code-token--attr-value{color:var(--bridgerte-code-token-string)}.bridgerte__code-token--number,.bridgerte__code-token--boolean,.bridgerte__code-token--constant{color:var(--bridgerte-code-token-number)}.bridgerte__code-token--class-name{color:var(--bridgerte-code-token-class)}.bridgerte__code-token--builtin{color:var(--bridgerte-code-token-builtin)}.bridgerte__code-token--property,.bridgerte__code-token--attr,.bridgerte__code-token--attr-name{color:var(--bridgerte-code-token-property)}.bridgerte__code-token--variable{color:var(--bridgerte-code-token-variable)}.bridgerte__code-token--tag,.bridgerte__code-token--selector,.bridgerte__code-token--namespace{color:var(--bridgerte-code-token-tag)}.bridgerte__code-token--punctuation,.bridgerte__code-token--prefix,.bridgerte__code-token--unchanged{color:var(--bridgerte-code-token-punctuation)}.bridgerte__code-token--regex,.bridgerte__code-token--url{color:var(--bridgerte-code-token-regex)}.bridgerte__code-token--inserted{color:var(--bridgerte-code-token-inserted)}.bridgerte__code-token--deleted{color:var(--bridgerte-code-token-deleted)}.bridgerte__code-block-controls-layer{z-index:calc(var(--bridgerte-z-index-toolbar) - 1);pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}.bridgerte__code-block-controls{border:1px solid var(--bridgerte-color-border);border-radius:var(--bridgerte-radius);color:var(--bridgerte-color-text);background:var(--bridgerte-color-panel);box-shadow:var(--bridgerte-shadow-popup);pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent;align-items:center;gap:2px;padding:4px;display:inline-flex;position:absolute;top:0;left:0}.bridgerte__code-block-control-button{min-height:var(--bridgerte-code-block-control-height);border-radius:calc(var(--bridgerte-radius) - 2px);color:var(--bridgerte-color-text);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-items:center;gap:8px;padding:0 8px;font-size:12px;line-height:1;display:inline-flex}.bridgerte__code-block-control-button:focus-visible{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg);box-shadow:0 0 0 2px var(--bridgerte-color-active-bg);outline:none}.bridgerte__code-block-control-arrow{border-top:5px solid var(--bridgerte-color-text-muted);border-left:5px solid #0000;border-right:5px solid #0000;flex:none;width:0;height:0}.bridgerte__code-block-control-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bridgerte__media{width:var(--bridgerte-media-display-width,50%);border:1px solid var(--bridgerte-color-border);border-radius:var(--bridgerte-radius-large);background:var(--bridgerte-color-panel);max-width:100%;margin:12px 0;display:block;overflow:hidden}.bridgerte__media-placeholder{min-height:160px;aspect-ratio:var(--bridgerte-media-aspect-ratio,16 / 9);color:var(--bridgerte-color-text-muted);background:var(--bridgerte-color-code-bg);justify-content:center;align-items:center;gap:8px;font-size:13px;display:flex}.bridgerte__media-placeholder-icon{border:1px solid var(--bridgerte-color-border);border-radius:calc(var(--bridgerte-radius) - 2px);color:var(--bridgerte-color-text-muted);background:var(--bridgerte-color-bg);padding:2px 6px;font-size:11px;line-height:1.4}.bridgerte__media[data-load-state=loaded] .bridgerte__media-placeholder{display:none}.bridgerte__media[data-load-state=error] .bridgerte__media-placeholder{color:var(--bridgerte-color-danger)}.bridgerte__media[data-align=center]{margin-left:auto;margin-right:auto}.bridgerte__media[data-align=right]{margin-left:auto;margin-right:0}.bridgerte__media-element{width:100%;max-width:100%;height:auto;display:block}.bridgerte__media[data-load-state=loading] .bridgerte__media-element,.bridgerte__media[data-load-state=error] .bridgerte__media-element{opacity:0;width:1px;height:1px}.bridgerte__media[data-load-state=loaded] .bridgerte__media-element,.bridgerte__media:not([data-load-state]) .bridgerte__media-element{opacity:1}.bridgerte__media-status{border-top:1px solid var(--bridgerte-color-border);color:var(--bridgerte-color-text-muted);background:var(--bridgerte-color-bg);padding:8px 10px;font-size:13px}.bridgerte__media[data-status=error] .bridgerte__media-status{color:var(--bridgerte-color-danger)}.bridgerte__media-controls-layer{z-index:calc(var(--bridgerte-z-index-toolbar) - 1);pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}.bridgerte__media-controls{border:1px solid var(--bridgerte-color-border);border-radius:var(--bridgerte-radius);color:var(--bridgerte-color-text);background:var(--bridgerte-color-panel);box-shadow:var(--bridgerte-shadow-popup);pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent;align-items:center;gap:2px;padding:3px;display:inline-flex;position:absolute;top:0;left:0}.bridgerte__media-controls-button{min-height:var(--bridgerte-media-controls-button-height);border-radius:calc(var(--bridgerte-radius) - 2px);color:var(--bridgerte-color-text);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-items:center;padding:0 8px;font-size:12px;line-height:1;display:inline-flex}.bridgerte__media-controls-button:focus-visible{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg);box-shadow:0 0 0 2px var(--bridgerte-color-active-bg);outline:none}.bridgerte__media-controls-button[data-active=true]{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte[data-readonly=true] .bridgerte__media-controls-button{color:var(--bridgerte-color-disabled);cursor:not-allowed}.bridgerte[data-readonly=true] .bridgerte__media-controls-button[data-menu-item-id=media-view]{color:var(--bridgerte-color-text);cursor:pointer}.bridgerte__media-viewer-dialog-backdrop[data-visible=true]{background:#000000a3}.bridgerte__dialog.bridgerte__media-viewer-dialog{width:calc(var(--bridgerte-media-viewer-width,960px) + 8px);max-width:calc(100vw - 24px);height:calc(var(--bridgerte-media-viewer-height,540px) + 8px);max-height:calc(var(--bridgerte-dialog-visible-height,100vh) - 24px);border-radius:var(--bridgerte-radius-large);background:var(--bridgerte-color-panel);box-shadow:var(--bridgerte-shadow-panel);border:0;padding:4px;overflow:hidden;transform:translate(-50%,-50%)scale(.98);top:50%!important;left:50%!important}.bridgerte__dialog.bridgerte__media-viewer-dialog[data-visible=true]{transform:translate(-50%,-50%)scale(1)}.bridgerte__media-viewer-dialog .bridgerte__dialog-content{width:var(--bridgerte-media-viewer-width,960px);height:var(--bridgerte-media-viewer-height,540px);min-height:0;overflow:hidden}.bridgerte__media-viewer{background:0 0;place-items:center;width:100%;height:100%;min-height:0;display:grid}.bridgerte__media-viewer-element{width:var(--bridgerte-media-viewer-width,960px);height:var(--bridgerte-media-viewer-height,540px);border-radius:calc(var(--bridgerte-radius-large) - 2px);object-fit:contain;background:0 0;display:block}.bridgerte__table-wrapper{box-sizing:border-box;border:1px solid var(--bridgerte-color-border);border-radius:var(--bridgerte-radius-large);background:var(--bridgerte-color-panel);scrollbar-width:thin;margin:12px 0;position:relative;overflow-x:auto}.bridgerte__table{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;color:var(--bridgerte-color-text);background:var(--bridgerte-color-bg)}.bridgerte__table-cell{border:0;border-top:1px solid var(--bridgerte-color-border);border-left:1px solid var(--bridgerte-color-border);text-align:center;vertical-align:middle;padding:8px}.bridgerte__table-cell>:first-child{margin-top:0}.bridgerte__table-cell>:last-child{margin-bottom:0}.bridgerte__table-cell:first-child{border-left:0}.bridgerte__table-row:first-of-type .bridgerte__table-cell{border-top:0}.bridgerte__table-cell--header{background:var(--bridgerte-color-code-bg);font-weight:700}.bridgerte__table-controls-layer{z-index:calc(var(--bridgerte-z-index-toolbar) - 1);pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}.bridgerte__table-controls{border:1px solid var(--bridgerte-color-border);border-radius:var(--bridgerte-radius);color:var(--bridgerte-color-text);background:var(--bridgerte-color-panel);box-shadow:var(--bridgerte-shadow-popup);pointer-events:auto;scrollbar-width:none;touch-action:pan-x;-webkit-tap-highlight-color:transparent;align-items:center;gap:2px;padding:4px;display:inline-flex;position:absolute;top:0;left:0;overflow-x:auto}.bridgerte__table-controls::-webkit-scrollbar{display:none}.bridgerte__table-controls-button{min-height:var(--bridgerte-table-controls-button-height);border-radius:calc(var(--bridgerte-radius) - 2px);color:var(--bridgerte-color-text);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex:none;align-items:center;padding:0 8px;font-size:12px;line-height:1;display:inline-flex}.bridgerte__table-controls-button:focus-visible{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg);box-shadow:0 0 0 2px var(--bridgerte-color-active-bg);outline:none}.bridgerte[data-readonly=true] .bridgerte__table-controls-button{color:var(--bridgerte-color-disabled);cursor:not-allowed}.bridgerte__toolbar{z-index:var(--bridgerte-z-index-toolbar);min-height:var(--bridgerte-toolbar-height);border-bottom:1px solid var(--bridgerte-color-border);padding:5px calc(var(--bridgerte-editor-padding) - 2px);color:var(--bridgerte-color-text);background:var(--bridgerte-color-panel);-webkit-tap-highlight-color:transparent;flex-wrap:wrap;align-items:center;gap:4px;display:flex;position:sticky;top:0}.bridgerte__toolbar[data-placement=bottom]{min-height:calc(var(--bridgerte-toolbar-height) + var(--bridgerte-safe-area-bottom));border-top:1px solid var(--bridgerte-color-border);padding-top:5px;padding-bottom:calc(5px + var(--bridgerte-safe-area-bottom));border-bottom:0;top:auto;bottom:0}.bridgerte__toolbar-group{flex:none;align-items:center;gap:2px;display:inline-flex}.bridgerte__toolbar-separator{background:var(--bridgerte-color-border);flex:none;width:1px;height:22px;margin:0 6px}.bridgerte__toolbar-button{border-radius:calc(var(--bridgerte-radius) - 2px);min-width:30px;height:30px;color:var(--bridgerte-color-text);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0 7px;font-family:inherit;font-size:13px;font-weight:600;line-height:1;transition:border-color .12s,background-color .12s,color .12s;display:inline-flex;position:relative}.bridgerte__toolbar-button:focus-visible{border-color:var(--bridgerte-color-primary);box-shadow:0 0 0 2px var(--bridgerte-color-active-bg);outline:none}.bridgerte__toolbar-button[aria-pressed=true],.bridgerte__toolbar-button[data-active=true]{border-color:var(--bridgerte-color-active-bg);color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__toolbar-button:disabled,.bridgerte__toolbar-button[aria-disabled=true]{color:var(--bridgerte-color-disabled);cursor:not-allowed;background:0 0}.bridgerte__toolbar-button>svg,.bridgerte__toolbar-group-indicator>svg{flex:none;display:block}.bridgerte__toolbar-group-button{gap:4px}.bridgerte__toolbar-group-button[data-open=true]{border-color:var(--bridgerte-color-primary);color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__toolbar-group-indicator{justify-content:center;align-items:center;width:12px;height:12px;font-size:11px;line-height:1;display:inline-flex}.bridgerte__toolbar-group-menu{opacity:0;pointer-events:none;gap:2px;min-width:128px;max-height:min(320px,100vh - 24px);padding:4px;transition:opacity .12s,transform .12s;display:grid;position:fixed;overflow:hidden auto;transform:translateY(-2px)}.bridgerte__toolbar-group-menu[data-visible=true]{opacity:1;pointer-events:auto;transform:translateY(0)}.bridgerte__menu-item.bridgerte__toolbar-group-menu-item{border-radius:calc(var(--bridgerte-radius) - 2px);gap:6px;min-height:30px;padding:0 7px;font-size:13px;font-weight:500;line-height:1.15}.bridgerte__toolbar-group-menu-item>svg,.bridgerte__toolbar-group-menu-item>.bridgerte__menu-icon-text{flex:none;width:16px;height:16px}.bridgerte__toolbar-group-menu-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bridgerte__toolbar-tooltip{z-index:calc(var(--bridgerte-z-index-toolbar) + 2);opacity:0;border-radius:calc(var(--bridgerte-radius) - 2px);color:var(--bridgerte-color-bg);background:var(--bridgerte-color-text);box-shadow:var(--bridgerte-shadow-panel);pointer-events:none;white-space:nowrap;padding:5px 7px;font-size:12px;font-weight:500;line-height:1;transition:opacity .12s,transform .12s;position:fixed;transform:translate(-50%,-100%)translateY(2px)}.bridgerte__toolbar-tooltip[data-visible=true]{opacity:1;transform:translate(-50%,-100%)translateY(0)}.bridgerte__panel,.bridgerte__floating-menu{border:1px solid var(--bridgerte-color-border);border-radius:var(--bridgerte-radius);color:var(--bridgerte-color-text);background:var(--bridgerte-color-panel);box-shadow:var(--bridgerte-shadow-panel)}.bridgerte__floating-menu{z-index:calc(var(--bridgerte-z-index-toolbar) + 1);min-width:180px;padding:6px}.bridgerte__menu-item{border-radius:var(--bridgerte-radius);width:100%;min-height:34px;color:var(--bridgerte-color-text);font:inherit;text-align:left;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-items:center;gap:8px;padding:0 8px;display:flex}.bridgerte__menu-item:focus-visible{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg);outline:none}.bridgerte__menu-item[data-active=true]{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__menu-item:disabled,.bridgerte__menu-item[aria-disabled=true]{color:var(--bridgerte-color-disabled);cursor:not-allowed}.bridgerte__menu-icon-text{text-overflow:ellipsis;white-space:nowrap;flex:none;display:inline-block;overflow:hidden}.bridgerte__slash-command-menu{overscroll-behavior:contain;scrollbar-width:thin;touch-action:pan-y;-webkit-overflow-scrolling:touch;gap:2px;width:min(120px,100vw - 24px);min-width:0;max-height:min(232px,100vh - 24px);padding:4px;display:grid;overflow-y:auto}.bridgerte__slash-command-menu[hidden]{display:none}.bridgerte__slash-command-anchor{pointer-events:none;width:1px;position:fixed}.bridgerte__slash-command-item{text-align:left;flex-direction:row;justify-content:flex-start;align-items:center;gap:4px;min-height:30px;padding:0 8px}.bridgerte__slash-command-item-icon{width:18px;height:18px;color:var(--bridgerte-color-text-muted);flex:none;place-items:center;display:inline-grid}.bridgerte__slash-command-item-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:700;line-height:1.2;overflow:hidden}.bridgerte__slash-command-item-description{color:var(--bridgerte-color-text-muted);font-size:12px;line-height:1.2;display:none}.bridgerte__slash-command-status{color:var(--bridgerte-color-text-muted);text-align:center;padding:8px;font-size:13px;line-height:1.3}.bridgerte__mention{border-radius:calc(var(--bridgerte-radius) - 2px);max-width:100%;color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg);white-space:nowrap;align-items:center;padding:0 3px;display:inline-flex}.bridgerte__mention-menu{overscroll-behavior:contain;scrollbar-width:thin;touch-action:pan-y;-webkit-overflow-scrolling:touch;gap:2px;width:min(120px,100vw - 24px);min-width:0;max-height:min(232px,100vh - 24px);padding:4px;display:grid;overflow-y:auto}.bridgerte__mention-menu[hidden]{display:none}.bridgerte__mention-anchor{pointer-events:none;width:1px;position:fixed}.bridgerte__mention-item{text-align:left;flex-direction:row;justify-content:flex-start;align-items:center;gap:4px;min-height:30px;padding:0 8px}.bridgerte__mention-item-avatar,.bridgerte__mention-item-icon{border-radius:50%;flex:none;width:18px;height:18px}.bridgerte__mention-item-avatar{object-fit:cover;background:var(--bridgerte-color-active-bg)}.bridgerte__mention-item-icon{color:var(--bridgerte-color-text-muted);background:var(--bridgerte-color-active-bg);place-items:center;font-size:12px;line-height:1;display:inline-grid}.bridgerte__mention-item-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:700;line-height:1.2;overflow:hidden}.bridgerte__mention-item-description{color:var(--bridgerte-color-text-muted);font-size:12px;line-height:1.2;display:none}.bridgerte__mention-status{color:var(--bridgerte-color-text-muted);text-align:center;padding:8px;font-size:13px;line-height:1.3}.bridgerte__hoverbar{gap:2px;width:max-content;min-width:0;max-width:calc(100vw - 24px);padding:4px;display:flex}.bridgerte__hoverbar[hidden]{display:none}.bridgerte__hoverbar-anchor{pointer-events:none;position:fixed}.bridgerte__hoverbar-separator{width:1px;height:var(--bridgerte-hoverbar-button-size);background:var(--bridgerte-color-border);margin:0 2px}.bridgerte__hoverbar-button{width:var(--bridgerte-hoverbar-button-size);min-width:var(--bridgerte-hoverbar-button-size);height:var(--bridgerte-hoverbar-button-size);border-radius:calc(var(--bridgerte-radius) - 2px);color:var(--bridgerte-color-text-muted);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;line-height:1;display:inline-flex;overflow:hidden}.bridgerte__hoverbar-button[data-active=true]{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__hoverbar-button:disabled{color:var(--bridgerte-color-disabled);cursor:not-allowed}.bridgerte__hoverbar-button:focus-visible{box-shadow:0 0 0 2px var(--bridgerte-color-active-bg);outline:none}.bridgerte__hoverbar-button>svg,.bridgerte__hoverbar-button>.bridgerte__menu-icon-text{width:calc(var(--bridgerte-hoverbar-button-size) - 12px);height:calc(var(--bridgerte-hoverbar-button-size) - 12px);flex:none}.bridgerte__dialog-backdrop{z-index:var(--bridgerte-z-index-toolbar);opacity:0;pointer-events:none;background:0 0;position:fixed;top:0;right:0;bottom:0;left:0}.bridgerte__dialog-backdrop[data-visible=true]{opacity:1;pointer-events:auto}.bridgerte__dialog{z-index:calc(var(--bridgerte-z-index-toolbar) + 2);width:min(220px,100vw - 24px);max-height:calc(var(--bridgerte-dialog-visible-height,100vh) - 32px);opacity:0;border:1px solid var(--bridgerte-color-border);border-radius:var(--bridgerte-radius);color:var(--bridgerte-color-text);background:var(--bridgerte-color-panel);box-shadow:var(--bridgerte-shadow-panel);font:inherit;pointer-events:none;transition:opacity .12s,transform .12s;display:grid;position:fixed;top:0;left:0;transform:translateY(-4px)scale(.98)}.bridgerte__dialog[data-visible=true]{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.bridgerte__code-block-menu{width:min(var(--bridgerte-dialog-anchor-width),calc(100vw - 24px));max-height:min(360px,calc(var(--bridgerte-dialog-visible-height,100vh) - 32px));border-color:var(--bridgerte-color-border);background:var(--bridgerte-color-panel);box-shadow:var(--bridgerte-shadow-popup)}.bridgerte__code-block-menu .bridgerte__dialog-content{min-height:0;max-height:inherit;overflow:hidden}.bridgerte__code-block-menu-list{max-height:min(340px,calc(var(--bridgerte-dialog-visible-height,100vh) - 48px));overscroll-behavior:contain;scrollbar-width:thin;touch-action:pan-y;-webkit-overflow-scrolling:touch;gap:2px;padding:8px;display:grid;overflow-y:auto}.bridgerte__code-block-menu-item{min-height:var(--bridgerte-payload-panel-field-height);border-radius:calc(var(--bridgerte-radius) - 2px);padding:0 12px}.bridgerte__payload-panel{padding:6px}.bridgerte__payload-panel-title{min-height:var(--bridgerte-payload-panel-title-height);color:var(--bridgerte-color-text);justify-content:space-between;align-items:center;gap:8px;padding:2px 4px 6px;font-size:13px;font-weight:700;line-height:1.2;display:flex}.bridgerte__payload-panel-clear{color:var(--bridgerte-color-text-muted);font:inherit;text-align:right;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex:none;padding:0;font-size:12px;font-weight:600;line-height:1}.bridgerte__payload-panel-clear:focus-visible{color:var(--bridgerte-color-primary);text-underline-offset:.18em;outline:none;text-decoration:underline}.bridgerte__payload-panel-field{gap:7px;display:grid}.bridgerte__payload-panel-option-list{gap:2px;display:grid}.bridgerte__payload-panel-color-picker{width:calc(var(--bridgerte-payload-panel-color-wheel-size) + var(--bridgerte-payload-panel-color-swatch-width) * 2 + 20px);justify-self:center;place-items:center;max-width:100%;display:grid;position:relative}.bridgerte__payload-panel-color-wheel{width:var(--bridgerte-payload-panel-color-wheel-size);aspect-ratio:1;border:1px solid var(--bridgerte-color-border);background:radial-gradient(circle,var(--bridgerte-color-bg) 0%,transparent 68%),conic-gradient(from 90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red);cursor:crosshair;touch-action:none;border-radius:999px;position:relative}.bridgerte__payload-panel-color-wheel:focus-visible{box-shadow:0 0 0 3px var(--bridgerte-color-active-bg);outline:none}.bridgerte__payload-panel-color-wheel-handle{width:var(--bridgerte-payload-panel-color-handle-size);height:var(--bridgerte-payload-panel-color-handle-size);border:2px solid var(--bridgerte-color-bg);box-shadow:0 0 0 1px var(--bridgerte-color-border),var(--bridgerte-shadow-panel);opacity:0;pointer-events:none;border-radius:999px;position:absolute;transform:translate(-50%,-50%)}.bridgerte__payload-panel-color-wheel[data-active=true] .bridgerte__payload-panel-color-wheel-handle{opacity:1}.bridgerte__payload-panel-color-preview{border:1px solid var(--bridgerte-color-border);border-radius:calc(var(--bridgerte-radius) - 2px);min-height:24px;box-shadow:inset 0 0 0 1px var(--bridgerte-color-panel)}.bridgerte__payload-panel-color-preview[data-empty=true]{background:linear-gradient(45deg,transparent 45%,var(--bridgerte-color-border) 45%,var(--bridgerte-color-border) 55%,transparent 55%),linear-gradient(-45deg,transparent 45%,var(--bridgerte-color-border) 45%,var(--bridgerte-color-border) 55%,transparent 55%),var(--bridgerte-color-bg);background-position:50%;background-size:12px 12px}.bridgerte__payload-panel-color-actions{align-items:center;gap:6px;display:flex}.bridgerte__payload-panel-color-actions[data-layout=sides]{pointer-events:none;justify-content:space-between;position:absolute;top:0;right:0;bottom:0;left:0}.bridgerte__payload-panel-color-actions[data-layout=grid]{flex-wrap:wrap;justify-content:center;margin-top:6px}.bridgerte__payload-panel-color-swatch{width:var(--bridgerte-payload-panel-color-swatch-width);height:var(--bridgerte-payload-panel-color-swatch-height);border:1px solid var(--bridgerte-color-border);border-radius:calc(var(--bridgerte-radius) - 2px);background:var(--bridgerte-color-bg);box-shadow:inset 0 0 0 1px var(--bridgerte-color-panel);cursor:pointer;pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent;padding:0}.bridgerte__payload-panel-color-swatch:focus-visible{border-color:var(--bridgerte-color-primary);box-shadow:inset 0 0 0 1px var(--bridgerte-color-bg),0 0 0 2px var(--bridgerte-color-active-bg);outline:none}.bridgerte__payload-panel-text-field{color:var(--bridgerte-color-text-muted);gap:5px;font-size:12px;font-weight:600;line-height:1.2;display:grid}.bridgerte__payload-panel-text-input{width:100%;min-height:var(--bridgerte-payload-panel-field-height);border:1px solid var(--bridgerte-color-border);border-radius:calc(var(--bridgerte-radius) - 2px);color:var(--bridgerte-color-text);background:var(--bridgerte-color-bg);font:inherit;-webkit-tap-highlight-color:transparent;padding:0 10px;font-size:13px}.bridgerte__payload-panel-text-input:focus-visible{border-color:var(--bridgerte-color-active-bg);box-shadow:0 0 0 2px var(--bridgerte-color-active-bg);outline:none}.bridgerte__payload-panel-table-grid{grid-template-columns:repeat(var(--bridgerte-payload-panel-table-cols),var(--bridgerte-payload-panel-table-cell-size));touch-action:none;-webkit-tap-highlight-color:transparent;justify-content:center;gap:2px;max-width:100%;padding:2px;display:grid}.bridgerte__payload-panel-table-cell{width:var(--bridgerte-payload-panel-table-cell-size);height:var(--bridgerte-payload-panel-table-cell-size);border:1px solid var(--bridgerte-color-border);border-radius:calc(var(--bridgerte-radius) - 4px);background:var(--bridgerte-color-bg);cursor:pointer;-webkit-tap-highlight-color:transparent;padding:0}.bridgerte__payload-panel-table-cell[data-active=true]{border-color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__payload-panel-table-cell:focus-visible{border-color:var(--bridgerte-color-primary);box-shadow:0 0 0 2px var(--bridgerte-color-active-bg);outline:none}.bridgerte__payload-panel-table-status{min-height:18px;color:var(--bridgerte-color-text-muted);text-align:center;font-size:12px;font-weight:600;line-height:1.5}.bridgerte__payload-panel-submit{min-height:var(--bridgerte-payload-panel-field-height);border:1px solid var(--bridgerte-color-border);border-radius:calc(var(--bridgerte-radius) - 2px);color:var(--bridgerte-color-bg);background:var(--bridgerte-color-primary);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;padding:0 10px;font-size:13px;font-weight:700}.bridgerte__payload-panel-submit:focus-visible{box-shadow:0 0 0 2px var(--bridgerte-color-active-bg);outline:none}.bridgerte__payload-panel-option{min-height:var(--bridgerte-payload-panel-option-height);border-radius:calc(var(--bridgerte-radius) - 2px);color:var(--bridgerte-color-text);font:inherit;text-align:left;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-items:center;padding:0 7px;display:flex}.bridgerte__payload-panel-option[data-active=true]{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__payload-panel-option:focus-visible{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg);box-shadow:0 0 0 2px var(--bridgerte-color-active-bg);outline:none}@media(hover:hover)and (pointer:fine){.bridgerte__toolbar-button:hover{border-color:var(--bridgerte-color-active-bg);color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__code-block-control-button:hover,.bridgerte__code-block-menu-item:hover,.bridgerte__media-controls-button:hover,.bridgerte__table-controls-button:hover,.bridgerte__hoverbar-button:hover,.bridgerte__payload-panel-option:hover,.bridgerte__mention-item:hover,.bridgerte__slash-command-item:hover,.bridgerte__menu-item:hover{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__payload-panel-clear:hover{color:var(--bridgerte-color-primary)}.bridgerte__payload-panel-color-wheel:hover{box-shadow:0 0 0 3px var(--bridgerte-color-active-bg)}.bridgerte__payload-panel-table-cell:hover{border-color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__payload-panel-color-swatch:hover{border-color:var(--bridgerte-color-primary);box-shadow:inset 0 0 0 1px var(--bridgerte-color-bg),0 0 0 2px var(--bridgerte-color-active-bg)}.bridgerte__payload-panel-submit:hover{border-color:var(--bridgerte-color-primary);box-shadow:0 0 0 2px var(--bridgerte-color-active-bg)}}@media(hover:none),(pointer:coarse){.bridgerte__toolbar-button:active,.bridgerte__toolbar-button[data-pressed=true]{border-color:var(--bridgerte-color-active-bg);color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__code-block-control-button:active,.bridgerte__code-block-control-button[data-pressed=true],.bridgerte__code-block-menu-item:active,.bridgerte__code-block-menu-item[data-pressed=true],.bridgerte__media-controls-button:active,.bridgerte__media-controls-button[data-pressed=true],.bridgerte__table-controls-button:active,.bridgerte__table-controls-button[data-pressed=true],.bridgerte__hoverbar-button:active,.bridgerte__hoverbar-button[data-pressed=true],.bridgerte__payload-panel-option:active,.bridgerte__payload-panel-option[data-pressed=true],.bridgerte__mention-item:active,.bridgerte__mention-item[data-pressed=true],.bridgerte__slash-command-item:active,.bridgerte__slash-command-item[data-pressed=true],.bridgerte__menu-item[data-pressed=true],.bridgerte__menu-item:active{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__payload-panel-clear:active,.bridgerte__payload-panel-clear[data-pressed=true]{color:var(--bridgerte-color-primary)}.bridgerte__payload-panel-color-wheel:active,.bridgerte__payload-panel-color-wheel[data-pressed=true]{box-shadow:0 0 0 3px var(--bridgerte-color-active-bg)}.bridgerte__payload-panel-table-cell:active,.bridgerte__payload-panel-table-cell[data-pressed=true]{border-color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__payload-panel-color-swatch:active,.bridgerte__payload-panel-color-swatch[data-pressed=true]{border-color:var(--bridgerte-color-primary);box-shadow:inset 0 0 0 1px var(--bridgerte-color-bg),0 0 0 2px var(--bridgerte-color-active-bg)}.bridgerte__payload-panel-submit:active,.bridgerte__payload-panel-submit[data-pressed=true]{border-color:var(--bridgerte-color-primary);box-shadow:0 0 0 2px var(--bridgerte-color-active-bg)}}@media(max-width:760px){.bridgerte{min-height:220px}.bridgerte__toolbar-button{min-width:38px;height:38px}}
1
+ :root,.bridgerte{--bridgerte-color-primary:#1677ff;--bridgerte-color-text:#1f2329;--bridgerte-color-text-muted:#86909c;--bridgerte-color-bg:#fff;--bridgerte-color-panel:#fff;--bridgerte-color-border:#e5e6eb;--bridgerte-color-active-bg:#e8f3ff;--bridgerte-color-code-bg:#f3f4f6;--bridgerte-color-placeholder:#b7bcc5;--bridgerte-color-disabled:#c9cdd4;--bridgerte-color-danger:#f53f3f;--bridgerte-shadow-panel:0 12px 32px #0f172a24;--bridgerte-shadow-popup:0 10px 24px #0f172a1a;--bridgerte-font-size:15px;--bridgerte-line-height:1.7;--bridgerte-radius:8px;--bridgerte-radius-large:12px;--bridgerte-toolbar-height:42px;--bridgerte-control-height:32px;--bridgerte-control-height-small:28px;--bridgerte-touch-target-size:32px;--bridgerte-hoverbar-button-size:28px;--bridgerte-safe-area-bottom:env(safe-area-inset-bottom,0px);--bridgerte-editor-padding:12px;--bridgerte-z-index-toolbar:20;--bridgerte-code-font-family:"JetBrains Mono", Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace;--bridgerte-code-block-control-height:32px;--bridgerte-code-token-text:#000;--bridgerte-code-token-comment:#708090;--bridgerte-code-token-keyword:#a626a4;--bridgerte-code-token-operator:#0184bc;--bridgerte-code-token-function:#4078f2;--bridgerte-code-token-string:#50a14f;--bridgerte-code-token-number:#986801;--bridgerte-code-token-class:#4078f2;--bridgerte-code-token-builtin:#50a14f;--bridgerte-code-token-property:#e45649;--bridgerte-code-token-variable:#e90;--bridgerte-code-token-tag:#c18401;--bridgerte-code-token-punctuation:#999;--bridgerte-code-token-regex:#e90;--bridgerte-code-token-inserted:#690;--bridgerte-code-token-deleted:#905;--bridgerte-media-controls-button-height:28px;--bridgerte-table-controls-button-height:28px;--bridgerte-payload-panel-color-wheel-size:136px;--bridgerte-payload-panel-color-handle-size:14px;--bridgerte-payload-panel-color-swatch-width:22px;--bridgerte-payload-panel-color-swatch-height:40px;--bridgerte-payload-panel-table-cell-size:16px;--bridgerte-payload-panel-title-height:28px;--bridgerte-payload-panel-option-height:28px;--bridgerte-payload-panel-field-height:32px;--bridgerte-todo-marker-hit-size:32px;--bridgerte-todo-marker-size:16px}.bridgerte{width:100%;height:100%;min-height:0;color:var(--bridgerte-color-text);background:var(--bridgerte-color-bg);font-family:inherit;font-size:var(--bridgerte-font-size);line-height:var(--bridgerte-line-height);overflow-wrap:anywhere;outline:none;transition:background-color .16s,color .16s;position:relative}.bridgerte[data-readonly=true]{color:var(--bridgerte-color-text-muted);background:var(--bridgerte-color-panel);cursor:default}.bridgerte__editor{flex-direction:column;width:100%;height:100%;min-height:0;display:flex}.bridgerte__body{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.bridgerte__content{min-height:0;padding:var(--bridgerte-editor-padding);-webkit-tap-highlight-color:transparent;outline:none;flex:1;position:relative;overflow-y:auto}.bridgerte__content[data-empty=true] .bridgerte__paragraph:first-child{margin-top:0}.bridgerte__placeholder{box-sizing:border-box;padding:var(--bridgerte-editor-padding);color:var(--bridgerte-color-placeholder);text-overflow:ellipsis;white-space:nowrap;pointer-events:none;display:none;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.bridgerte__content[data-empty=true]+.bridgerte__placeholder{display:block}.bridgerte__paragraph{margin:0 0 .75em}.bridgerte__heading{color:var(--bridgerte-color-text);margin:.75em 0;font-weight:700;line-height:1.25}.bridgerte__heading--h1{font-size:32px}.bridgerte__heading--h2{font-size:28px}.bridgerte__heading--h3{font-size:24px}.bridgerte__heading--h4{font-size:21px}.bridgerte__heading--h5{font-size:18px}.bridgerte__heading--h6{font-size:16px}.bridgerte__list{margin:0 0 .75em;padding-left:1.5em}.bridgerte__list-item{margin:.25em 0}.bridgerte__quote{border-left:3px solid var(--bridgerte-color-primary);border-radius:calc(var(--bridgerte-radius) - 2px);color:var(--bridgerte-color-text);background:var(--bridgerte-color-code-bg);margin:.85em 0;padding:.45em .85em}.bridgerte__quote>:last-child{margin-bottom:0}.bridgerte__divider{background:var(--bridgerte-color-border);border:0;height:1px;margin:1em 0}.bridgerte__link{color:var(--bridgerte-color-primary);text-underline-offset:.18em;text-decoration:underline}.bridgerte__text--bold{font-weight:700}.bridgerte__text--italic{font-style:italic}.bridgerte__text--underline{text-underline-offset:.18em;text-decoration-line:underline}.bridgerte__text--strike{text-decoration-line:line-through}.bridgerte__text--underline-strike,.bridgerte__text--underline.bridgerte__text--strike{text-underline-offset:.18em;text-decoration-line:underline line-through}.bridgerte__list--todo{padding-left:0;list-style:none}.bridgerte__list-item--checked,.bridgerte__list-item--unchecked{outline:none;margin-left:.15em;padding-left:2em;list-style:none;position:relative}.bridgerte__list-item--checked:before,.bridgerte__list-item--unchecked:before{top:calc(var(--bridgerte-line-height) * .5em);width:var(--bridgerte-todo-marker-hit-size);height:var(--bridgerte-todo-marker-hit-size);box-sizing:border-box;content:"";border-radius:999px;position:absolute;left:0;transform:translateY(-50%)}.bridgerte__list-item--checked:after,.bridgerte__list-item--unchecked:after{top:calc(var(--bridgerte-line-height) * .5em);width:var(--bridgerte-todo-marker-size);height:var(--bridgerte-todo-marker-size);box-sizing:border-box;border:1px solid var(--bridgerte-color-border);content:"";pointer-events:none;border-radius:999px;position:absolute;left:0;transform:translateY(-50%)}.bridgerte__list-item--checked:focus-visible:after,.bridgerte__list-item--unchecked:focus-visible:after{border-color:var(--bridgerte-color-primary);box-shadow:0 0 0 2px var(--bridgerte-color-active-bg)}.bridgerte__list-item--checked{color:var(--bridgerte-color-text-muted);text-decoration:line-through}.bridgerte__list-item--checked:after{border-color:var(--bridgerte-color-primary);background:radial-gradient(circle at center,var(--bridgerte-color-bg) 0 4px,transparent 4.5px),var(--bridgerte-color-primary)}.bridgerte__code{border-radius:var(--bridgerte-radius);color:var(--bridgerte-color-text);background:var(--bridgerte-color-code-bg);font-family:var(--bridgerte-code-font-family);padding:.12em .3em;font-size:.92em}.bridgerte__code-block{border:1px solid var(--bridgerte-color-border);border-radius:var(--bridgerte-radius-large);color:var(--bridgerte-code-token-text);background:var(--bridgerte-color-code-bg);font-family:var(--bridgerte-code-font-family);line-height:var(--bridgerte-line-height);white-space:pre;margin:12px 0;padding:12px;display:block;overflow:auto}.bridgerte__code-token{color:var(--bridgerte-code-token-text)}.bridgerte__code-token--comment{color:var(--bridgerte-code-token-comment);font-style:italic}.bridgerte__code-token--keyword{color:var(--bridgerte-code-token-keyword)}.bridgerte__code-token--operator{color:var(--bridgerte-code-token-operator)}.bridgerte__code-token--function{color:var(--bridgerte-code-token-function)}.bridgerte__code-token--string,.bridgerte__code-token--attr-value{color:var(--bridgerte-code-token-string)}.bridgerte__code-token--number,.bridgerte__code-token--boolean,.bridgerte__code-token--constant{color:var(--bridgerte-code-token-number)}.bridgerte__code-token--class-name{color:var(--bridgerte-code-token-class)}.bridgerte__code-token--builtin{color:var(--bridgerte-code-token-builtin)}.bridgerte__code-token--property,.bridgerte__code-token--attr,.bridgerte__code-token--attr-name{color:var(--bridgerte-code-token-property)}.bridgerte__code-token--variable{color:var(--bridgerte-code-token-variable)}.bridgerte__code-token--tag,.bridgerte__code-token--selector,.bridgerte__code-token--namespace{color:var(--bridgerte-code-token-tag)}.bridgerte__code-token--punctuation,.bridgerte__code-token--prefix,.bridgerte__code-token--unchanged{color:var(--bridgerte-code-token-punctuation)}.bridgerte__code-token--regex,.bridgerte__code-token--url{color:var(--bridgerte-code-token-regex)}.bridgerte__code-token--inserted{color:var(--bridgerte-code-token-inserted)}.bridgerte__code-token--deleted{color:var(--bridgerte-code-token-deleted)}.bridgerte__code-block-controls-layer{z-index:calc(var(--bridgerte-z-index-toolbar) - 1);pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}.bridgerte__code-block-controls{border:1px solid var(--bridgerte-color-border);border-radius:var(--bridgerte-radius);color:var(--bridgerte-color-text);background:var(--bridgerte-color-panel);box-shadow:var(--bridgerte-shadow-popup);pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent;align-items:center;gap:2px;padding:4px;display:inline-flex;position:absolute;top:0;left:0}.bridgerte__code-block-control-button{min-height:var(--bridgerte-code-block-control-height);border-radius:calc(var(--bridgerte-radius) - 2px);color:var(--bridgerte-color-text);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-items:center;gap:8px;padding:0 8px;font-size:12px;line-height:1;display:inline-flex}.bridgerte__code-block-control-button:focus-visible{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg);box-shadow:0 0 0 2px var(--bridgerte-color-active-bg);outline:none}.bridgerte__code-block-control-arrow{border-top:5px solid var(--bridgerte-color-text-muted);border-left:5px solid #0000;border-right:5px solid #0000;flex:none;width:0;height:0}.bridgerte__code-block-control-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bridgerte__media{width:var(--bridgerte-media-display-width,50%);border:1px solid var(--bridgerte-color-border);border-radius:var(--bridgerte-radius-large);background:var(--bridgerte-color-panel);max-width:100%;margin:12px 0;display:block;overflow:hidden}.bridgerte__media-placeholder{min-height:160px;aspect-ratio:var(--bridgerte-media-aspect-ratio,16 / 9);box-sizing:border-box;color:var(--bridgerte-color-text-muted);background:var(--bridgerte-color-code-bg);text-align:center;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:13px;display:flex}.bridgerte__media-placeholder:before{content:attr(data-media-label);border:1px solid var(--bridgerte-color-border);border-radius:calc(var(--bridgerte-radius) - 2px);color:var(--bridgerte-color-text-muted);background:var(--bridgerte-color-bg);padding:2px 6px;font-size:11px;line-height:1.4}.bridgerte__media-placeholder:after{content:attr(data-status-text)}.bridgerte__media[data-load-state=loaded] .bridgerte__media-placeholder{display:none}.bridgerte__media[data-load-state=error] .bridgerte__media-placeholder{color:var(--bridgerte-color-danger)}.bridgerte__media[data-align=center]{margin-left:auto;margin-right:auto}.bridgerte__media[data-align=right]{margin-left:auto;margin-right:0}.bridgerte__media-element{width:100%;max-width:100%;height:auto;display:block}.bridgerte__media[data-load-state=loading] .bridgerte__media-element,.bridgerte__media[data-load-state=error] .bridgerte__media-element{opacity:0;width:1px;height:1px}.bridgerte__media[data-load-state=loaded] .bridgerte__media-element,.bridgerte__media:not([data-load-state]) .bridgerte__media-element{opacity:1}.bridgerte__media-status{border-top:1px solid var(--bridgerte-color-border);color:var(--bridgerte-color-text-muted);background:var(--bridgerte-color-bg);text-align:center;justify-content:center;align-items:center;padding:8px 10px;font-size:13px;display:flex}.bridgerte__media-status:before{content:attr(data-status-text)}.bridgerte__media[data-status=error] .bridgerte__media-status{color:var(--bridgerte-color-danger)}.bridgerte__media-controls-layer{z-index:calc(var(--bridgerte-z-index-toolbar) - 1);pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}.bridgerte__media-controls{border:1px solid var(--bridgerte-color-border);border-radius:var(--bridgerte-radius);color:var(--bridgerte-color-text);background:var(--bridgerte-color-panel);box-shadow:var(--bridgerte-shadow-popup);pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent;align-items:center;gap:2px;padding:3px;display:inline-flex;position:absolute;top:0;left:0}.bridgerte__media-controls-button{min-height:var(--bridgerte-media-controls-button-height);border-radius:calc(var(--bridgerte-radius) - 2px);color:var(--bridgerte-color-text);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-items:center;padding:0 8px;font-size:12px;line-height:1;display:inline-flex}.bridgerte__media-controls-button:focus-visible{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg);box-shadow:0 0 0 2px var(--bridgerte-color-active-bg);outline:none}.bridgerte__media-controls-button[data-active=true]{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte[data-readonly=true] .bridgerte__media-controls-button{color:var(--bridgerte-color-disabled);cursor:not-allowed}.bridgerte[data-readonly=true] .bridgerte__media-controls-button[data-menu-item-id=media-view]{color:var(--bridgerte-color-text);cursor:pointer}.bridgerte__media-viewer-dialog-backdrop[data-visible=true]{background:#000000a3}.bridgerte__dialog.bridgerte__media-viewer-dialog{width:calc(var(--bridgerte-media-viewer-width,960px) + 8px);max-width:calc(100vw - 24px);height:calc(var(--bridgerte-media-viewer-height,540px) + 8px);max-height:calc(var(--bridgerte-dialog-visible-height,100vh) - 24px);border-radius:var(--bridgerte-radius-large);background:var(--bridgerte-color-panel);box-shadow:var(--bridgerte-shadow-panel);border:0;padding:4px;overflow:hidden;transform:translate(-50%,-50%)scale(.98);top:50%!important;left:50%!important}.bridgerte__dialog.bridgerte__media-viewer-dialog[data-visible=true]{transform:translate(-50%,-50%)scale(1)}.bridgerte__media-viewer-dialog .bridgerte__dialog-content{width:var(--bridgerte-media-viewer-width,960px);height:var(--bridgerte-media-viewer-height,540px);min-height:0;overflow:hidden}.bridgerte__media-viewer{background:0 0;place-items:center;width:100%;height:100%;min-height:0;display:grid}.bridgerte__media-viewer-element{width:var(--bridgerte-media-viewer-width,960px);height:var(--bridgerte-media-viewer-height,540px);border-radius:calc(var(--bridgerte-radius-large) - 2px);object-fit:contain;object-position:center center;background:0 0;display:block}.bridgerte__table-wrapper{box-sizing:border-box;border:1px solid var(--bridgerte-color-border);border-radius:var(--bridgerte-radius-large);background:var(--bridgerte-color-panel);scrollbar-width:thin;margin:12px 0;position:relative;overflow-x:auto}.bridgerte__table{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;color:var(--bridgerte-color-text);background:var(--bridgerte-color-bg)}.bridgerte__table-cell{border:0;border-top:1px solid var(--bridgerte-color-border);border-left:1px solid var(--bridgerte-color-border);text-align:center;vertical-align:middle;padding:8px}.bridgerte__table-cell>:first-child{margin-top:0}.bridgerte__table-cell>:last-child{margin-bottom:0}.bridgerte__table-cell:first-child{border-left:0}.bridgerte__table-row:first-of-type .bridgerte__table-cell{border-top:0}.bridgerte__table-cell--header{background:var(--bridgerte-color-code-bg);font-weight:700}.bridgerte__table-controls-layer{z-index:calc(var(--bridgerte-z-index-toolbar) - 1);pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}.bridgerte__table-controls{border:1px solid var(--bridgerte-color-border);border-radius:var(--bridgerte-radius);color:var(--bridgerte-color-text);background:var(--bridgerte-color-panel);box-shadow:var(--bridgerte-shadow-popup);pointer-events:auto;scrollbar-width:none;touch-action:pan-x;-webkit-tap-highlight-color:transparent;align-items:center;gap:2px;padding:4px;display:inline-flex;position:absolute;top:0;left:0;overflow-x:auto}.bridgerte__table-controls::-webkit-scrollbar{display:none}.bridgerte__table-controls-button{min-height:var(--bridgerte-table-controls-button-height);border-radius:calc(var(--bridgerte-radius) - 2px);color:var(--bridgerte-color-text);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex:none;align-items:center;padding:0 8px;font-size:12px;line-height:1;display:inline-flex}.bridgerte__table-controls-button:focus-visible{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg);box-shadow:0 0 0 2px var(--bridgerte-color-active-bg);outline:none}.bridgerte[data-readonly=true] .bridgerte__table-controls-button{color:var(--bridgerte-color-disabled);cursor:not-allowed}.bridgerte__toolbar{z-index:var(--bridgerte-z-index-toolbar);min-height:var(--bridgerte-toolbar-height);border-bottom:1px solid var(--bridgerte-color-border);padding:5px calc(var(--bridgerte-editor-padding) - 2px);color:var(--bridgerte-color-text);background:var(--bridgerte-color-panel);-webkit-tap-highlight-color:transparent;flex-wrap:wrap;align-items:center;gap:4px;display:flex;position:sticky;top:0}.bridgerte__toolbar[data-placement=bottom]{min-height:calc(var(--bridgerte-toolbar-height) + var(--bridgerte-safe-area-bottom));border-top:1px solid var(--bridgerte-color-border);padding-top:5px;padding-bottom:calc(5px + var(--bridgerte-safe-area-bottom));border-bottom:0;top:auto;bottom:0}.bridgerte__toolbar-group{flex:none;align-items:center;gap:2px;display:inline-flex}.bridgerte__toolbar-separator{background:var(--bridgerte-color-border);flex:none;width:1px;height:22px;margin:0 6px}.bridgerte__toolbar-button{border-radius:calc(var(--bridgerte-radius) - 2px);min-width:30px;height:30px;color:var(--bridgerte-color-text);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0 7px;font-family:inherit;font-size:13px;font-weight:600;line-height:1;transition:border-color .12s,background-color .12s,color .12s;display:inline-flex;position:relative}.bridgerte__toolbar-button:focus-visible{border-color:var(--bridgerte-color-primary);box-shadow:0 0 0 2px var(--bridgerte-color-active-bg);outline:none}.bridgerte__toolbar-button[aria-pressed=true],.bridgerte__toolbar-button[data-active=true]{border-color:var(--bridgerte-color-active-bg);color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__toolbar-button:disabled,.bridgerte__toolbar-button[aria-disabled=true]{color:var(--bridgerte-color-disabled);cursor:not-allowed;background:0 0}.bridgerte__toolbar-button>svg,.bridgerte__toolbar-group-indicator>svg{flex:none;display:block}.bridgerte__toolbar-group-button{gap:4px}.bridgerte__toolbar-group-button[data-open=true]{border-color:var(--bridgerte-color-primary);color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__toolbar-group-indicator{justify-content:center;align-items:center;width:12px;height:12px;font-size:11px;line-height:1;display:inline-flex}.bridgerte__toolbar-group-menu{opacity:0;pointer-events:none;gap:2px;min-width:128px;max-height:min(320px,100vh - 24px);padding:4px;transition:opacity .12s,transform .12s;display:grid;position:fixed;overflow:hidden auto;transform:translateY(-2px)}.bridgerte__toolbar-group-menu[data-visible=true]{opacity:1;pointer-events:auto;transform:translateY(0)}.bridgerte__menu-item.bridgerte__toolbar-group-menu-item{border-radius:calc(var(--bridgerte-radius) - 2px);gap:6px;min-height:30px;padding:0 7px;font-size:13px;font-weight:500;line-height:1.15}.bridgerte__toolbar-group-menu-item>svg,.bridgerte__toolbar-group-menu-item>.bridgerte__menu-icon-text{flex:none;width:16px;height:16px}.bridgerte__toolbar-group-menu-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bridgerte__toolbar-tooltip{z-index:calc(var(--bridgerte-z-index-toolbar) + 2);opacity:0;border-radius:calc(var(--bridgerte-radius) - 2px);color:var(--bridgerte-color-bg);background:var(--bridgerte-color-text);box-shadow:var(--bridgerte-shadow-panel);pointer-events:none;white-space:nowrap;padding:5px 7px;font-size:12px;font-weight:500;line-height:1;transition:opacity .12s,transform .12s;position:fixed;transform:translate(-50%,-100%)translateY(2px)}.bridgerte__toolbar-tooltip[data-visible=true]{opacity:1;transform:translate(-50%,-100%)translateY(0)}.bridgerte__panel,.bridgerte__floating-menu{border:1px solid var(--bridgerte-color-border);border-radius:var(--bridgerte-radius);color:var(--bridgerte-color-text);background:var(--bridgerte-color-panel);box-shadow:var(--bridgerte-shadow-panel)}.bridgerte__floating-menu{z-index:calc(var(--bridgerte-z-index-toolbar) + 1);min-width:180px;padding:6px}.bridgerte__menu-item{border-radius:var(--bridgerte-radius);width:100%;min-height:34px;color:var(--bridgerte-color-text);font:inherit;text-align:left;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-items:center;gap:8px;padding:0 8px;display:flex}.bridgerte__menu-item:focus-visible{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg);outline:none}.bridgerte__menu-item[data-active=true]{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__menu-item:disabled,.bridgerte__menu-item[aria-disabled=true]{color:var(--bridgerte-color-disabled);cursor:not-allowed}.bridgerte__menu-icon-text{text-overflow:ellipsis;white-space:nowrap;flex:none;display:inline-block;overflow:hidden}.bridgerte__slash-command-menu{overscroll-behavior:contain;scrollbar-width:thin;touch-action:pan-y;-webkit-overflow-scrolling:touch;gap:2px;width:min(120px,100vw - 24px);min-width:0;max-height:min(232px,100vh - 24px);padding:4px;display:grid;overflow-y:auto}.bridgerte__slash-command-menu[hidden]{display:none}.bridgerte__slash-command-anchor{pointer-events:none;width:1px;position:fixed}.bridgerte__slash-command-item{text-align:left;flex-direction:row;justify-content:flex-start;align-items:center;gap:4px;min-height:30px;padding:0 8px}.bridgerte__slash-command-item-icon{width:18px;height:18px;color:var(--bridgerte-color-text-muted);flex:none;place-items:center;display:inline-grid}.bridgerte__slash-command-item-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:700;line-height:1.2;overflow:hidden}.bridgerte__slash-command-item-description{color:var(--bridgerte-color-text-muted);font-size:12px;line-height:1.2;display:none}.bridgerte__slash-command-status{color:var(--bridgerte-color-text-muted);text-align:center;padding:8px;font-size:13px;line-height:1.3}.bridgerte__mention{border-radius:calc(var(--bridgerte-radius) - 2px);max-width:100%;color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg);white-space:nowrap;align-items:center;padding:0 3px;display:inline-flex}.bridgerte__mention-menu{overscroll-behavior:contain;scrollbar-width:thin;touch-action:pan-y;-webkit-overflow-scrolling:touch;gap:2px;width:min(120px,100vw - 24px);min-width:0;max-height:min(232px,100vh - 24px);padding:4px;display:grid;overflow-y:auto}.bridgerte__mention-menu[hidden]{display:none}.bridgerte__mention-anchor{pointer-events:none;width:1px;position:fixed}.bridgerte__mention-item{text-align:left;flex-direction:row;justify-content:flex-start;align-items:center;gap:4px;min-height:30px;padding:0 8px}.bridgerte__mention-item-avatar,.bridgerte__mention-item-icon{border-radius:50%;flex:none;width:18px;height:18px}.bridgerte__mention-item-avatar{object-fit:cover;background:var(--bridgerte-color-active-bg)}.bridgerte__mention-item-icon{color:var(--bridgerte-color-text-muted);background:var(--bridgerte-color-active-bg);place-items:center;font-size:12px;line-height:1;display:inline-grid}.bridgerte__mention-item-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:700;line-height:1.2;overflow:hidden}.bridgerte__mention-item-description{color:var(--bridgerte-color-text-muted);font-size:12px;line-height:1.2;display:none}.bridgerte__mention-status{color:var(--bridgerte-color-text-muted);text-align:center;padding:8px;font-size:13px;line-height:1.3}.bridgerte__hoverbar{gap:2px;width:max-content;min-width:0;max-width:calc(100vw - 24px);padding:4px;display:flex}.bridgerte__hoverbar[hidden]{display:none}.bridgerte__hoverbar-anchor{pointer-events:none;position:fixed}.bridgerte__hoverbar-separator{width:1px;height:var(--bridgerte-hoverbar-button-size);background:var(--bridgerte-color-border);margin:0 2px}.bridgerte__hoverbar-button{width:var(--bridgerte-hoverbar-button-size);min-width:var(--bridgerte-hoverbar-button-size);height:var(--bridgerte-hoverbar-button-size);border-radius:calc(var(--bridgerte-radius) - 2px);color:var(--bridgerte-color-text-muted);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;line-height:1;display:inline-flex;overflow:hidden}.bridgerte__hoverbar-button[data-active=true]{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__hoverbar-button:disabled{color:var(--bridgerte-color-disabled);cursor:not-allowed}.bridgerte__hoverbar-button:focus-visible{box-shadow:0 0 0 2px var(--bridgerte-color-active-bg);outline:none}.bridgerte__hoverbar-button>svg,.bridgerte__hoverbar-button>.bridgerte__menu-icon-text{width:calc(var(--bridgerte-hoverbar-button-size) - 12px);height:calc(var(--bridgerte-hoverbar-button-size) - 12px);flex:none}.bridgerte__dialog-backdrop{z-index:var(--bridgerte-z-index-toolbar);opacity:0;pointer-events:none;background:0 0;position:fixed;top:0;right:0;bottom:0;left:0}.bridgerte__dialog-backdrop[data-visible=true]{opacity:1;pointer-events:auto}.bridgerte__dialog{z-index:calc(var(--bridgerte-z-index-toolbar) + 2);width:min(220px,100vw - 24px);max-height:calc(var(--bridgerte-dialog-visible-height,100vh) - 32px);opacity:0;border:1px solid var(--bridgerte-color-border);border-radius:var(--bridgerte-radius);color:var(--bridgerte-color-text);background:var(--bridgerte-color-panel);box-shadow:var(--bridgerte-shadow-panel);font:inherit;pointer-events:none;transition:opacity .12s,transform .12s;display:grid;position:fixed;top:0;left:0;transform:translateY(-4px)scale(.98)}.bridgerte__dialog[data-visible=true]{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.bridgerte__code-block-menu{width:min(var(--bridgerte-dialog-anchor-width),calc(100vw - 24px));max-height:min(360px,calc(var(--bridgerte-dialog-visible-height,100vh) - 32px));border-color:var(--bridgerte-color-border);background:var(--bridgerte-color-panel);box-shadow:var(--bridgerte-shadow-popup)}.bridgerte__code-block-menu .bridgerte__dialog-content{min-height:0;max-height:inherit;overflow:hidden}.bridgerte__code-block-menu-list{max-height:min(340px,calc(var(--bridgerte-dialog-visible-height,100vh) - 48px));overscroll-behavior:contain;scrollbar-width:thin;touch-action:pan-y;-webkit-overflow-scrolling:touch;gap:2px;padding:8px;display:grid;overflow-y:auto}.bridgerte__code-block-menu-item{min-height:var(--bridgerte-payload-panel-field-height);border-radius:calc(var(--bridgerte-radius) - 2px);padding:0 12px}.bridgerte__payload-panel{padding:6px}.bridgerte__payload-panel-title{min-height:var(--bridgerte-payload-panel-title-height);color:var(--bridgerte-color-text);justify-content:space-between;align-items:center;gap:8px;padding:2px 4px 6px;font-size:13px;font-weight:700;line-height:1.2;display:flex}.bridgerte__payload-panel-clear{color:var(--bridgerte-color-text-muted);font:inherit;text-align:right;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex:none;padding:0;font-size:12px;font-weight:600;line-height:1}.bridgerte__payload-panel-clear:focus-visible{color:var(--bridgerte-color-primary);text-underline-offset:.18em;outline:none;text-decoration:underline}.bridgerte__payload-panel-field{gap:7px;display:grid}.bridgerte__payload-panel-option-list{gap:2px;display:grid}.bridgerte__payload-panel-color-picker{width:calc(var(--bridgerte-payload-panel-color-wheel-size) + var(--bridgerte-payload-panel-color-swatch-width) * 2 + 20px);justify-self:center;place-items:center;max-width:100%;display:grid;position:relative}.bridgerte__payload-panel-color-wheel{width:var(--bridgerte-payload-panel-color-wheel-size);aspect-ratio:1;border:1px solid var(--bridgerte-color-border);background:radial-gradient(circle,var(--bridgerte-color-bg) 0%,transparent 68%),conic-gradient(from 90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red);cursor:crosshair;touch-action:none;border-radius:999px;position:relative}.bridgerte__payload-panel-color-wheel:focus-visible{box-shadow:0 0 0 3px var(--bridgerte-color-active-bg);outline:none}.bridgerte__payload-panel-color-wheel-handle{width:var(--bridgerte-payload-panel-color-handle-size);height:var(--bridgerte-payload-panel-color-handle-size);border:2px solid var(--bridgerte-color-bg);box-shadow:0 0 0 1px var(--bridgerte-color-border),var(--bridgerte-shadow-panel);opacity:0;pointer-events:none;border-radius:999px;position:absolute;transform:translate(-50%,-50%)}.bridgerte__payload-panel-color-wheel[data-active=true] .bridgerte__payload-panel-color-wheel-handle{opacity:1}.bridgerte__payload-panel-color-preview{border:1px solid var(--bridgerte-color-border);border-radius:calc(var(--bridgerte-radius) - 2px);min-height:24px;box-shadow:inset 0 0 0 1px var(--bridgerte-color-panel)}.bridgerte__payload-panel-color-preview[data-empty=true]{background:linear-gradient(45deg,transparent 45%,var(--bridgerte-color-border) 45%,var(--bridgerte-color-border) 55%,transparent 55%),linear-gradient(-45deg,transparent 45%,var(--bridgerte-color-border) 45%,var(--bridgerte-color-border) 55%,transparent 55%),var(--bridgerte-color-bg);background-position:50%;background-size:12px 12px}.bridgerte__payload-panel-color-actions{align-items:center;gap:6px;display:flex}.bridgerte__payload-panel-color-actions[data-layout=sides]{pointer-events:none;justify-content:space-between;position:absolute;top:0;right:0;bottom:0;left:0}.bridgerte__payload-panel-color-actions[data-layout=grid]{flex-wrap:wrap;justify-content:center;margin-top:6px}.bridgerte__payload-panel-color-swatch{width:var(--bridgerte-payload-panel-color-swatch-width);height:var(--bridgerte-payload-panel-color-swatch-height);border:1px solid var(--bridgerte-color-border);border-radius:calc(var(--bridgerte-radius) - 2px);background:var(--bridgerte-color-bg);box-shadow:inset 0 0 0 1px var(--bridgerte-color-panel);cursor:pointer;pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent;padding:0}.bridgerte__payload-panel-color-swatch:focus-visible{border-color:var(--bridgerte-color-primary);box-shadow:inset 0 0 0 1px var(--bridgerte-color-bg),0 0 0 2px var(--bridgerte-color-active-bg);outline:none}.bridgerte__payload-panel-text-field{color:var(--bridgerte-color-text-muted);gap:5px;font-size:12px;font-weight:600;line-height:1.2;display:grid}.bridgerte__payload-panel-text-input{width:100%;min-height:var(--bridgerte-payload-panel-field-height);border:1px solid var(--bridgerte-color-border);border-radius:calc(var(--bridgerte-radius) - 2px);color:var(--bridgerte-color-text);background:var(--bridgerte-color-bg);font:inherit;-webkit-tap-highlight-color:transparent;padding:0 10px;font-size:13px}.bridgerte__payload-panel-text-input:focus-visible{border-color:var(--bridgerte-color-active-bg);box-shadow:0 0 0 2px var(--bridgerte-color-active-bg);outline:none}.bridgerte__payload-panel-table-grid{grid-template-columns:repeat(var(--bridgerte-payload-panel-table-cols),var(--bridgerte-payload-panel-table-cell-size));touch-action:none;-webkit-tap-highlight-color:transparent;justify-content:center;gap:2px;max-width:100%;padding:2px;display:grid}.bridgerte__payload-panel-table-cell{width:var(--bridgerte-payload-panel-table-cell-size);height:var(--bridgerte-payload-panel-table-cell-size);border:1px solid var(--bridgerte-color-border);border-radius:calc(var(--bridgerte-radius) - 4px);background:var(--bridgerte-color-bg);cursor:pointer;-webkit-tap-highlight-color:transparent;padding:0}.bridgerte__payload-panel-table-cell[data-active=true]{border-color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__payload-panel-table-cell:focus-visible{border-color:var(--bridgerte-color-primary);box-shadow:0 0 0 2px var(--bridgerte-color-active-bg);outline:none}.bridgerte__payload-panel-table-status{min-height:18px;color:var(--bridgerte-color-text-muted);text-align:center;font-size:12px;font-weight:600;line-height:1.5}.bridgerte__payload-panel-submit{min-height:var(--bridgerte-payload-panel-field-height);border:1px solid var(--bridgerte-color-border);border-radius:calc(var(--bridgerte-radius) - 2px);color:var(--bridgerte-color-bg);background:var(--bridgerte-color-primary);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;padding:0 10px;font-size:13px;font-weight:700}.bridgerte__payload-panel-submit:focus-visible{box-shadow:0 0 0 2px var(--bridgerte-color-active-bg);outline:none}.bridgerte__payload-panel-option{min-height:var(--bridgerte-payload-panel-option-height);border-radius:calc(var(--bridgerte-radius) - 2px);color:var(--bridgerte-color-text);font:inherit;text-align:left;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-items:center;padding:0 7px;display:flex}.bridgerte__payload-panel-option[data-active=true]{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__payload-panel-option:focus-visible{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg);box-shadow:0 0 0 2px var(--bridgerte-color-active-bg);outline:none}@media(hover:hover)and (pointer:fine){.bridgerte__toolbar-button:hover{border-color:var(--bridgerte-color-active-bg);color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__code-block-control-button:hover,.bridgerte__code-block-menu-item:hover,.bridgerte__media-controls-button:hover,.bridgerte__table-controls-button:hover,.bridgerte__hoverbar-button:hover,.bridgerte__payload-panel-option:hover,.bridgerte__mention-item:hover,.bridgerte__slash-command-item:hover,.bridgerte__menu-item:hover{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__payload-panel-clear:hover{color:var(--bridgerte-color-primary)}.bridgerte__payload-panel-color-wheel:hover{box-shadow:0 0 0 3px var(--bridgerte-color-active-bg)}.bridgerte__payload-panel-table-cell:hover{border-color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__payload-panel-color-swatch:hover{border-color:var(--bridgerte-color-primary);box-shadow:inset 0 0 0 1px var(--bridgerte-color-bg),0 0 0 2px var(--bridgerte-color-active-bg)}.bridgerte__payload-panel-submit:hover{border-color:var(--bridgerte-color-primary);box-shadow:0 0 0 2px var(--bridgerte-color-active-bg)}}@media(hover:none),(pointer:coarse){.bridgerte__toolbar-button:active,.bridgerte__toolbar-button[data-pressed=true]{border-color:var(--bridgerte-color-active-bg);color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__code-block-control-button:active,.bridgerte__code-block-control-button[data-pressed=true],.bridgerte__code-block-menu-item:active,.bridgerte__code-block-menu-item[data-pressed=true],.bridgerte__media-controls-button:active,.bridgerte__media-controls-button[data-pressed=true],.bridgerte__table-controls-button:active,.bridgerte__table-controls-button[data-pressed=true],.bridgerte__hoverbar-button:active,.bridgerte__hoverbar-button[data-pressed=true],.bridgerte__payload-panel-option:active,.bridgerte__payload-panel-option[data-pressed=true],.bridgerte__mention-item:active,.bridgerte__mention-item[data-pressed=true],.bridgerte__slash-command-item:active,.bridgerte__slash-command-item[data-pressed=true],.bridgerte__menu-item[data-pressed=true],.bridgerte__menu-item:active{color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__payload-panel-clear:active,.bridgerte__payload-panel-clear[data-pressed=true]{color:var(--bridgerte-color-primary)}.bridgerte__payload-panel-color-wheel:active,.bridgerte__payload-panel-color-wheel[data-pressed=true]{box-shadow:0 0 0 3px var(--bridgerte-color-active-bg)}.bridgerte__payload-panel-table-cell:active,.bridgerte__payload-panel-table-cell[data-pressed=true]{border-color:var(--bridgerte-color-primary);background:var(--bridgerte-color-active-bg)}.bridgerte__payload-panel-color-swatch:active,.bridgerte__payload-panel-color-swatch[data-pressed=true]{border-color:var(--bridgerte-color-primary);box-shadow:inset 0 0 0 1px var(--bridgerte-color-bg),0 0 0 2px var(--bridgerte-color-active-bg)}.bridgerte__payload-panel-submit:active,.bridgerte__payload-panel-submit[data-pressed=true]{border-color:var(--bridgerte-color-primary);box-shadow:0 0 0 2px var(--bridgerte-color-active-bg)}}@media(max-width:760px){.bridgerte{min-height:220px}.bridgerte__toolbar-button{min-width:38px;height:38px}}
package/dist/webview.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-TJ1HUDJO.cjs");exports.createWebViewBridgeRuntime=e.createWebViewBridgeRuntime;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-ko4JB2sx.cjs");exports.createWebViewBridgeRuntime=e.createWebViewBridgeRuntime;
2
2
  //# sourceMappingURL=webview.cjs.map
package/dist/webview.js CHANGED
@@ -1,4 +1,4 @@
1
- import { b as i } from "./index-CBjqWsRZ.js";
1
+ import { b as i } from "./index-BpboHt6q.js";
2
2
  export {
3
3
  i as createWebViewBridgeRuntime
4
4
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bridgerte",
3
- "version": "0.9.23",
3
+ "version": "0.9.25",
4
4
  "description": "Cross-platform rich text editor with WebView bridge support.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",