popupStyle: "\n:host {\n position: fixed;\n top: 0;\n left: 0;\n width: 0;\n height: 0;\n z-index: 2147483647;\n}\n\n.mr-theme {\n --popup-bg: #fff;\n --popup-text: #111;\n --popup-border: #222;\n --popup-shadow: 0 6px 18px rgba(0, 0, 0, 0.15);\n --popup-muted: #555;\n --popup-button-bg: #fff;\n --popup-button-text: #111;\n --popup-button-border: #222;\n --popup-icon-filter: none;\n --popup-tab-active-bg: #fff;\n --popup-tab-inactive-bg: #f2f2f2;\n --popup-tab-active-text: #111;\n --popup-tab-inactive-text: #333;\n --popup-input-bg: #fff;\n --popup-input-text: #111;\n --popup-input-border: #222;\n --spinner-border: #c7c7c7;\n --spinner-top: #555;\n}\n\n.mr-theme[data-theme='dark'] {\n --popup-bg: #1c1c1c;\n --popup-text: #f2f2f2;\n --popup-border: #3a3a3a;\n --popup-shadow: 0 6px 18px rgba(0, 0, 0, 0.4);\n --popup-muted: #cfcfcf;\n --popup-button-bg: #2a2a2a;\n --popup-button-text: #f2f2f2;\n --popup-button-border: #3a3a3a;\n --popup-icon-filter: invert(1);\n --popup-tab-active-bg: #2a2a2a;\n --popup-tab-inactive-bg: #242424;\n --popup-tab-active-text: #f2f2f2;\n --popup-tab-inactive-text: #cfcfcf;\n --popup-input-bg: #151515;\n --popup-input-text: #f2f2f2;\n --popup-input-border: #3a3a3a;\n --spinner-border: #555;\n --spinner-top: #cfcfcf;\n}\n\n@keyframes mermaid-spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\n\n.mr-action-wrapper {\n position: fixed;\n z-index: 2147483647;\n}\n\n.mr-action-button {\n width: 35px;\n height: 35px;\n border-radius: 6px;\n border: 1px solid #222;\n background: #fff;\n color: #111;\n font-size: 12px;\n line-height: 26px;\n text-align: center;\n padding: 0;\n cursor: pointer;\n user-select: none;\n}\n\n.mr-action-icon {\n display: block;\n width: 22px;\n height: 22px;\n margin: 0 auto;\n}\n\n.mr-tooltip {\n position: absolute;\n bottom: 36px;\n left: 50%;\n transform: translate(-50%, 4px);\n opacity: 0;\n transition: opacity 140ms ease, transform 140ms ease;\n padding: 6px 8px;\n border-radius: 6px;\n background: #111;\n color: #fff;\n font-size: 12px;\n line-height: 16px;\n white-space: nowrap;\n pointer-events: none;\n z-index: 2147483647;\n}\n\n.mr-tooltip.is-visible {\n opacity: 1;\n transform: translate(-50%, 0);\n}\n\n.mr-tooltip-arrow {\n position: absolute;\n bottom: -4px;\n left: 50%;\n width: 8px;\n height: 8px;\n transform: translateX(-50%) rotate(45deg);\n background: #111;\n}\n\n.mr-popup {\n position: fixed;\n background: var(--popup-bg);\n color: var(--popup-text);\n border: 1px solid var(--popup-border);\n border-radius: 8px;\n box-shadow: var(--popup-shadow);\n padding: 12px 12px 10px;\n z-index: 2147483647;\n}\n\n.mr-popup-arrow {\n position: absolute;\n top: -6px;\n left: 16px;\n width: 10px;\n height: 10px;\n background: var(--popup-bg);\n border-left: 1px solid var(--popup-border);\n border-top: 1px solid var(--popup-border);\n transform: rotate(45deg);\n}\n\n.mr-popup-header {\n padding-top: 4px;\n display: flex;\n align-items: center;\n}\n\n.mr-popup-actions {\n flex: 1;\n}\n\n.mr-tab-bar {\n display: none;\n gap: 6px;\n margin-top: 8px;\n}\n\n.mr-tab {\n height: 28px;\n flex: 1;\n border: 1px solid var(--popup-border);\n border-radius: 6px;\n background: var(--popup-tab-inactive-bg);\n color: var(--popup-tab-inactive-text);\n cursor: pointer;\n font-size: 12px;\n}\n\n.mr-tab.is-active {\n background: var(--popup-tab-active-bg);\n color: var(--popup-tab-active-text);\n}\n\n.mr-popup-message {\n margin-top: 8px;\n font-size: 12px;\n color: #b00020;\n display: none;\n}\n\n.mr-popup-loading {\n margin-top: 8px;\n display: none;\n align-items: center;\n gap: 8px;\n font-size: 12px;\n color: var(--popup-muted);\n}\n\n.mr-spinner {\n width: 14px;\n height: 14px;\n border-radius: 999px;\n border: 2px solid var(--spinner-border);\n border-top-color: var(--spinner-top);\n animation: mermaid-spin 0.9s linear infinite;\n}\n\n.mr-popup-content-wrapper {\n position: relative;\n}\n\n.mr-popup-content {\n overflow: hidden;\n padding-top: 8px;\n position: relative;\n cursor: grab;\n z-index: 0;\n}\n\n.mr-popup-diagram {\n transform-origin: 0 0;\n will-change: transform;\n}\n\n.mr-button-reset {\n padding: 0;\n border: 1px solid var(--popup-button-border);\n background: var(--popup-button-bg);\n color: var(--popup-button-text);\n}\n\n.mr-floating-button {\n position: absolute;\n width: 28px;\n height: 28px;\n border-radius: 6px;\n display: none;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n transition: transform 120ms ease, background 120ms ease;\n z-index: 2;\n}\n\n.mr-floating-button:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.mr-floating-icon {\n width: 14px;\n height: 14px;\n filter: var(--popup-icon-filter);\n}\n\n.mr-floating-tooltip {\n position: absolute;\n transform: translate(0, calc(-100% - 2px));\n opacity: 0;\n transition: opacity 140ms ease, transform 140ms ease;\n padding: 6px 8px;\n border-radius: 6px;\n background: #111;\n color: #fff;\n font-size: 12px;\n line-height: 16px;\n white-space: nowrap;\n pointer-events: none;\n z-index: 3;\n}\n\n.mr-floating-tooltip.is-visible {\n opacity: 1;\n transform: translate(0, calc(-100% - 6px));\n}\n\n.mr-copy-button {\n right: 8px;\n}\n\n.mr-copy-tooltip {\n right: 8px;\n}\n\n.mr-split-button {\n right: 42px;\n}\n\n.mr-split-tooltip {\n right: 42px;\n}\n\n.mr-zoom-controls {\n position: absolute;\n right: 8px;\n bottom: 8px;\n display: flex;\n gap: 6px;\n z-index: 2;\n}\n\n.mr-zoom-button {\n width: 28px;\n height: 28px;\n border-radius: 6px;\n border: 1px solid var(--popup-button-border);\n background: var(--popup-button-bg);\n color: var(--popup-button-text);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n}\n\n.mr-zoom-icon {\n width: 14px;\n height: 14px;\n filter: var(--popup-icon-filter);\n}\n\n.mr-editor-panel {\n display: none;\n padding-top: 8px;\n}\n\n.mr-editor-textarea {\n width: 100%;\n resize: none;\n font-family: monospace;\n font-size: 12px;\n line-height: 1.4;\n padding: 8px;\n box-sizing: border-box;\n border: 1px solid var(--popup-input-border);\n background: var(--popup-input-bg);\n color: var(--popup-input-text);\n}\n\n.mr-resize-handle {\n position: absolute;\n width: 14px;\n height: 14px;\n right: 6px;\n bottom: 6px;\n cursor: nwse-resize;\n display: none;\n}\n\n.mr-resize-handle.is-visible {\n display: block;\n}\n\n.mr-popup-actions-bar {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 12px;\n}\n\n.mr-popup-actions-group {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.mr-popup-actions-theme-group {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n}\n\n.mr-popup-actions-select {\n height: 28px;\n border: 1px solid var(--popup-button-border);\n border-radius: 6px;\n background: var(--popup-button-bg);\n color: var(--popup-button-text);\n font-size: 12px;\n padding: 0 8px;\n}\n\n.mr-popup-actions-icon {\n display: block;\n width: 14px;\n height: 14px;\n filter: var(--popup-icon-filter);\n}\n\n.mr-popup-actions-app-icon {\n display: block;\n width: 18px;\n height: 18px;\n}\n\n.mr-tooltip-button-wrapper {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n}\n\n.mr-tooltip-button {\n height: 28px;\n border: 1px solid var(--popup-button-border);\n border-radius: 6px;\n background: var(--popup-button-bg);\n color: var(--popup-button-text);\n font-size: 12px;\n cursor: pointer;\n padding: 0 8px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 6px;\n}\n\n.mr-tooltip-button.is-icon {\n padding: 0 6px;\n}\n\n.mr-tooltip-button:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.mr-theme-select-wrapper {\n position: relative;\n display: inline-flex;\n}\n\n.mr-editor-popup {\n position: fixed;\n z-index: 2147483647;\n border-radius: 8px;\n padding: 12px 12px 10px;\n display: flex;\n flex-direction: column;\n gap: 8px;\n background: var(--popup-bg);\n color: var(--popup-text);\n border: 1px solid var(--popup-border);\n box-shadow: var(--popup-shadow);\n}\n\n.mr-editor-popup-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n cursor: move;\n}\n\n.mr-editor-popup-header-left {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.mr-editor-popup-title {\n font-size: 12px;\n font-weight: 600;\n}\n\n.mr-editor-popup-close {\n width: 28px;\n height: 28px;\n border-radius: 6px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n border: 1px solid var(--popup-button-border);\n background: var(--popup-button-bg);\n color: var(--popup-button-text);\n}\n\n.mr-editor-popup-close-icon {\n width: 14px;\n height: 14px;\n filter: var(--popup-icon-filter);\n}\n\n.mr-editor-popup-content {\n flex: 1;\n min-height: 0;\n}\n" = ...