erl-mathtextx-editor 0.1.10 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +32 -0
- package/README.md +36 -6
- package/dist/{CellPropertiesDialogImpl-Cl0pxbeQ.js → CellPropertiesDialogImpl-5BptFKaE.js} +1 -1
- package/dist/{ImageInsertDialog-BVBl1y36.js → ImageInsertDialog-Cc7wpIjM.js} +1 -1
- package/dist/{InsertTableDialogImpl-Cx3ShX7u.js → InsertTableDialogImpl-BJFXRnQX.js} +1 -1
- package/dist/{LinkDialogImpl-gMjoZVma.js → LinkDialogImpl-Cu032Nc7.js} +1 -1
- package/dist/{TablePropertiesDialogImpl-CrTTV3Zr.js → TablePropertiesDialogImpl-YBNdKM7k.js} +1 -1
- package/dist/{TableTemplatesDialogImpl-DTcom8H5.js → TableTemplatesDialogImpl-P54y5q-u.js} +1 -1
- package/dist/assets/erl-mathtextx-editor.css +1 -1
- package/dist/erl-mathtextx-editor.js +1 -1
- package/dist/erl-mathtextx-editor.umd.cjs +169 -169
- package/dist/{index-QMz8TDH0.js → index-C9scFI1r.js} +1 -1
- package/dist/{index-CakccgVO.js → index-D0Rzm7Tg.js} +3503 -3604
- package/dist/{index-Djb9MY7m.js → index-DJrUW7HG.js} +1 -1
- package/dist/toolbar/MainToolbar.d.ts +1 -0
- package/dist/toolbar/MathToolbar.d.ts +3 -1
- package/dist/types/index.d.ts +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,38 @@ All notable changes to `erl-mathtextx-editor` will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.2.0] - 2026-05-13
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- **🏆 Olimpiade Toolbar Mode** — Toolbar khusus untuk olimpiade/kompetisi matematika
|
|
13
|
+
- Mode switch 3 opsi: Basic / Advanced / Olimpiade
|
|
14
|
+
- Toolbar minimal: Undo/Redo, Bold/Italic/Underline, Paragraph/H1/H2, Lists, Math Formula, Block Math
|
|
15
|
+
- Math Toolbar khusus olimpiade: Basic, Relation, Set (extended), Greek, Structure
|
|
16
|
+
- Block Math button untuk insert display-style math node langsung
|
|
17
|
+
- **Block Math Direct Insert** — Prop `onInsertBlockMath` untuk insert block math tanpa dialog
|
|
18
|
+
- **Empty Inline Math Visibility** — Empty math fields sekarang terlihat sebagai kotak dashed abu-abu
|
|
19
|
+
- `min-width: 50px`, `min-height: 26px` untuk empty math inline
|
|
20
|
+
|
|
21
|
+
### Fixed
|
|
22
|
+
|
|
23
|
+
- **Math Node Serialization** — Perbaikan kritis: DOMPurify strip `latex` attribute
|
|
24
|
+
- `addAttributes` sekarang render sebagai `data-latex` / `data-display` (bukan `latex` / `display`)
|
|
25
|
+
- `data-display` ditambahkan ke `ALLOWED_ATTR` di DOMPurify
|
|
26
|
+
- Math nodes persist saat tab switch editor ↔ viewer
|
|
27
|
+
- **MathTypeDialog Enter Conflict** — Enter tidak lagi submit dialog
|
|
28
|
+
- Solusi: `\sqrt` + Enter → MathLive auto-convert ke √, dialog tetap terbuka
|
|
29
|
+
- Submit hanya via klik tombol "Sisipkan"
|
|
30
|
+
- **ESLint Cleanup** — Fixed `let` → `const` di MathFieldView, fixed regex escape di MathTypeDialog
|
|
31
|
+
- **Edit Button Overlap** — Tombol Edit pada math node hanya muncul saat hover, hilang saat focus
|
|
32
|
+
|
|
33
|
+
### Changed
|
|
34
|
+
|
|
35
|
+
- **Toolbar Cleanup** — Advanced mode jadi lebih ringkas
|
|
36
|
+
- Image editing (Edit, Wrap) dipindah ke right-click context menu
|
|
37
|
+
- Table operation buttons dipindah ke Table Operations dropdown
|
|
38
|
+
- **Ctrl+M** — Insert inline math langsung (tanpa dialog MathType)
|
|
39
|
+
|
|
8
40
|
## [0.1.9] - 2026-04-01
|
|
9
41
|
|
|
10
42
|
### Fixed
|
package/README.md
CHANGED
|
@@ -11,10 +11,11 @@ Embeddable visual math editor widget untuk CMS dan platform edukasi. User tidak
|
|
|
11
11
|
|
|
12
12
|
## ✨ Fitur Utama
|
|
13
13
|
|
|
14
|
-
- 🎯 **Visual Math
|
|
14
|
+
- 🎯 **Visual Math Input** — Insert math langsung inline tanpa dialog (Ctrl+M)
|
|
15
15
|
- 📝 **Rich Text Editor** — Bold, italic, tables, lists, links, images
|
|
16
|
-
- 🧮 **Equation Editor** — Dialog MathType-style dengan tab, grid, KaTeX preview
|
|
16
|
+
- 🧮 **Equation Editor** — Dialog MathType-style dengan tab, grid, KaTeX preview (Edit existing math)
|
|
17
17
|
- 📋 **100+ Formula Templates** — Algebra, calculus, trigonometry, chemistry, matrix
|
|
18
|
+
- 🏆 **Mode Olimpiade** — Toolbar khusus untuk kompetisi matematika dengan simbol set, Greek letters, NT/Combo
|
|
18
19
|
- 🖼️ **Free-form Image Drag** — Drag gambar ke posisi bebas (pixel-perfect)
|
|
19
20
|
- 📄 **DOCX Import** — Import file .docx via mammoth.js (toolbar + drag-drop)
|
|
20
21
|
- 🗂️ **Google Docs Paste** — Paste dari Google Docs (equations + document) auto-cleaned
|
|
@@ -187,6 +188,35 @@ export default App
|
|
|
187
188
|
|
|
188
189
|
---
|
|
189
190
|
|
|
191
|
+
## 🎛️ Toolbar Modes
|
|
192
|
+
|
|
193
|
+
Editor menyediakan 3 preset toolbar yang bisa dipilih via prop `toolbarMode`:
|
|
194
|
+
|
|
195
|
+
### Basic
|
|
196
|
+
Toolbar standar dengan tombol format teks dasar, insert media, dan math formula.
|
|
197
|
+
|
|
198
|
+
### Advanced
|
|
199
|
+
Toolbar lengkap dengan font family, text color, alignment, table operations, superscript/subscript, chemistry formula, dan formatting lanjutan.
|
|
200
|
+
|
|
201
|
+
### Olimpiade
|
|
202
|
+
Toolbar minimal untuk kompetisi matematika — hanya tombol esensial:
|
|
203
|
+
|
|
204
|
+
| Grup | Tombol |
|
|
205
|
+
|---|---|
|
|
206
|
+
| **Undo/Redo** | Undo, Redo |
|
|
207
|
+
| **Format** | Bold, Italic, Underline |
|
|
208
|
+
| **Structure** | Paragraph, H1, H2 |
|
|
209
|
+
| **Lists** | Bullet List, Ordered List, Outdent, Indent |
|
|
210
|
+
| **Math** | Math Formula (inline), Block Math |
|
|
211
|
+
| **Actions** | Remove Format |
|
|
212
|
+
|
|
213
|
+
**Math Toolbar** di mode Olimpiade menampilkan section khusus: Basic, Relation, Set, Greek, Structure — tanpa section Calc yang kurang relevan untuk olimpiade.
|
|
214
|
+
|
|
215
|
+
### Custom Mode
|
|
216
|
+
Jika preset tidak sesuai, Anda bisa atur sendiri via `internalToolbarMode` state atau kontrol toolbar secara manual menggunakan komponen terpisah (`MainToolbar`, `MathToolbar`, `MathTypeDialog`).
|
|
217
|
+
|
|
218
|
+
---
|
|
219
|
+
|
|
190
220
|
## 🧰 Image Upload
|
|
191
221
|
|
|
192
222
|
Editor mendukung upload gambar dari: **Insert dialog**, **drag-drop**, **paste dari clipboard**, dan **DOCX import**. Semuanya melalui satu callback `onImageUpload`.
|
|
@@ -292,7 +322,8 @@ const handleImageUpload = async (file: File): Promise<string> => {
|
|
|
292
322
|
| `minHeight` | `string` | `'200px'` | Minimum editor height |
|
|
293
323
|
| `maxHeight` | `string` | — | Maximum editor height |
|
|
294
324
|
| `autoFocus` | `boolean` | `false` | Auto-focus editor on mount |
|
|
295
|
-
| `toolbarMode` | `'basic' \| 'advanced'` | `'basic'` | Toolbar preset |
|
|
325
|
+
| `toolbarMode` | `'basic' \| 'advanced' \| 'olimpiade'` | `'basic'` | Toolbar preset |
|
|
326
|
+
| `onInsertBlockMath` | `() => void` | — | Callback to insert a block-level math node directly |
|
|
296
327
|
| `editable` | `boolean` | `true` | Set false for read-only mode |
|
|
297
328
|
| `className` | `string` | — | Additional CSS class |
|
|
298
329
|
|
|
@@ -362,12 +393,11 @@ import 'erl-mathtextx-editor/viewer/styles'
|
|
|
362
393
|
| `Ctrl+I` | Italic |
|
|
363
394
|
| `Ctrl+U` | Underline |
|
|
364
395
|
| `Ctrl+K` | Insert/edit link |
|
|
365
|
-
| `Ctrl+M` | Insert inline math |
|
|
396
|
+
| `Ctrl+M` | Insert inline math directly (without dialog) |
|
|
366
397
|
| `Ctrl+Shift+T` | Insert table |
|
|
367
398
|
| `Ctrl+S` | Save document |
|
|
368
399
|
| `Shift+Ctrl+V` | Paste as plain text |
|
|
369
|
-
| `
|
|
370
|
-
| `Esc` (equation editor) | Close dialog |
|
|
400
|
+
| `Esc` (equation editor dialog) | Close dialog |
|
|
371
401
|
|
|
372
402
|
---
|
|
373
403
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as t, jsxs as l } from "react/jsx-runtime";
|
|
2
2
|
import z, { useId as H, useRef as A, useCallback as b, useState as d, useEffect as V } from "react";
|
|
3
|
-
import { u as B } from "./index-
|
|
3
|
+
import { u as B } from "./index-D0Rzm7Tg.js";
|
|
4
4
|
const M = z.memo(({
|
|
5
5
|
isOpen: s,
|
|
6
6
|
initialData: i = {},
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsxs as i, Fragment as J, jsx as e } from "react/jsx-runtime";
|
|
2
2
|
import { useId as V, useRef as y, useState as d, useCallback as s } from "react";
|
|
3
|
-
import { u as q } from "./index-
|
|
3
|
+
import { u as q } from "./index-D0Rzm7Tg.js";
|
|
4
4
|
function Z({
|
|
5
5
|
isOpen: U,
|
|
6
6
|
onClose: w,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as e, jsxs as t } from "react/jsx-runtime";
|
|
2
2
|
import N, { useId as v, useRef as f, useState as c, useEffect as g, useCallback as w } from "react";
|
|
3
|
-
import { u as y } from "./index-
|
|
3
|
+
import { u as y } from "./index-D0Rzm7Tg.js";
|
|
4
4
|
const k = N.memo(({ isOpen: i, onInsert: d, onClose: m }) => {
|
|
5
5
|
const b = v(), u = f(null), [l, n] = c(3), [a, s] = c(3), [o, h] = c(!0);
|
|
6
6
|
g(() => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as e, jsxs as a } from "react/jsx-runtime";
|
|
2
2
|
import D, { useId as _, useRef as j, useState as n, useEffect as F, useCallback as d } from "react";
|
|
3
|
-
import { u as E } from "./index-
|
|
3
|
+
import { u as E } from "./index-D0Rzm7Tg.js";
|
|
4
4
|
const S = D.memo(({
|
|
5
5
|
isOpen: s,
|
|
6
6
|
currentUrl: o = "",
|
package/dist/{TablePropertiesDialogImpl-CrTTV3Zr.js → TablePropertiesDialogImpl-YBNdKM7k.js}
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as t, jsxs as l } from "react/jsx-runtime";
|
|
2
2
|
import u, { useId as v, useRef as g, useState as x, useEffect as p, useCallback as d } from "react";
|
|
3
|
-
import { u as f } from "./index-
|
|
3
|
+
import { u as f } from "./index-D0Rzm7Tg.js";
|
|
4
4
|
const N = u.memo(({
|
|
5
5
|
isOpen: r,
|
|
6
6
|
initialData: n = {},
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as e, jsxs as t } from "react/jsx-runtime";
|
|
2
2
|
import o, { useId as c, useRef as n, useCallback as p } from "react";
|
|
3
|
-
import { u as h } from "./index-
|
|
3
|
+
import { u as h } from "./index-D0Rzm7Tg.js";
|
|
4
4
|
const x = [
|
|
5
5
|
{ id: "plain", name: "Plain", description: "Simple table without styling", headerStyle: "none", borderStyle: "all", stripeRows: !1 },
|
|
6
6
|
{ id: "light", name: "Light", description: "Light gray header", headerStyle: "light", borderStyle: "all", stripeRows: !1 },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.mtx-graph-component{border:1px solid var(--mtx-border, #e2e8f0);border-radius:12px;padding:16px;background:#fff;display:inline-block;margin:16px 0;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;max-width:100%}.mtx-graph-controls{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.mtx-graph-input{width:100%;padding:10px 14px;border:1px solid #cbd5e1;border-radius:8px;font-family:JetBrains Mono,Consolas,monospace;font-size:14px;transition:all .2s ease;background:#f8fafc}.mtx-graph-input:focus{border-color:#3b82f6;background:#fff;outline:none;box-shadow:0 0 0 3px #3b82f626}.mtx-graph-domains{display:flex;flex-wrap:wrap;gap:16px;align-items:center}.mtx-graph-domain-group{display:flex;align-items:center;gap:8px;background:#f1f5f9;padding:6px 10px;border-radius:6px;border:1px solid #e2e8f0}.mtx-graph-domain-label{font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-right:4px}.mtx-graph-domain-separator{font-size:12px;color:#94a3b8}.mtx-graph-domain-input{width:60px;padding:4px 8px;border:1px solid #cbd5e1;border-radius:4px;font-size:13px;text-align:center;transition:border-color .2s}.mtx-graph-domain-input:focus{border-color:#3b82f6;outline:none}.mtx-graph-render text{font-family:ui-sans-serif,system-ui,sans-serif;font-size:10px;fill:#64748b}.mtx-graph-render .domain{stroke:#cbd5e1}.mtx-graph-render{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;background:#fff}.mtx-matrix-grid-selector{display:flex;flex-direction:column;align-items:center;padding:10px;background:#f8f9fa;border:1px solid #ddd;border-radius:4px;margin-bottom:10px;width:fit-content}.mtx-matrix-grid-label{font-size:12px;margin-bottom:5px;font-weight:600;color:#555;min-height:1.5em}.mtx-matrix-grid-squares{display:flex;flex-direction:column;gap:2px}.mtx-matrix-grid-row{display:flex;gap:2px}.mtx-matrix-grid-cell{width:12px;height:12px;background:#fff;border:1px solid #ccc;cursor:pointer}.mtx-matrix-grid-cell.is-active{background:#3b82f6;border-color:#2563eb}:root{--mtx-primary: #3b82f6;--mtx-primary-hover: #2563eb;--mtx-primary-dark: #1e40af;--mtx-primary-light: #eff6ff;--mtx-bg: #ffffff;--mtx-toolbar-bg: #fafbfc;--mtx-border: #d4d4d8;--mtx-hover: #f4f4f5;--mtx-text: #18181b;--mtx-text-secondary: #52525b;--mtx-text-muted: #a1a1aa;--mtx-success: #22c55e;--mtx-warning: #f59e0b;--mtx-danger: #ef4444;--mtx-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mtx-font-mono: "JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--mtx-min-height: 200px;--mtx-max-height: none;--mtx-radius: 6px;--mtx-radius-sm: 4px}.mtx-editor{position:relative;border:1px solid var(--mtx-border);border-radius:6px;background:var(--mtx-bg);box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;overflow:hidden;font-family:var(--mtx-font);transition:box-shadow .15s ease,border-color .15s ease}.mtx-editor:focus-within{border-color:var(--mtx-primary);box-shadow:0 0 0 2px #3b82f626,0 1px 3px #0000000f}.mtx-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:1px;padding:4px 6px;background:var(--mtx-toolbar-bg);border-bottom:1px solid var(--mtx-border);user-select:none;min-height:40px}.mtx-toolbar-group{display:flex;align-items:center;gap:1px}.mtx-toolbar-mode-switch{display:inline-flex;align-items:center;padding:2px;border:1px solid var(--mtx-border);border-radius:999px;background:#fff;gap:2px}.mtx-toolbar-mode-btn{border:none;background:transparent;color:var(--mtx-text-secondary);font-size:12px;font-weight:600;line-height:1;padding:7px 10px;border-radius:999px;cursor:pointer;transition:all .12s ease}.mtx-toolbar-mode-btn:hover{background:var(--mtx-hover);color:var(--mtx-text)}.mtx-toolbar-mode-btn.is-active{background:var(--mtx-primary-light);color:var(--mtx-primary)}.mtx-toolbar-divider{width:1px;height:20px;background:var(--mtx-border);margin:0 4px;flex-shrink:0}.mtx-toolbar-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:none;border-radius:4px;background:transparent;color:var(--mtx-text-secondary);cursor:pointer;transition:all .12s ease;position:relative}.mtx-toolbar-btn:hover{background:var(--mtx-hover);color:var(--mtx-text)}.mtx-toolbar-btn.is-active{background:var(--mtx-primary-light);color:var(--mtx-primary)}.mtx-toolbar-btn:disabled{opacity:.35;cursor:not-allowed}.mtx-toolbar-btn:disabled:hover{background:transparent}.mtx-toolbar-btn:active:not(:disabled){transform:scale(.96)}.mtx-toolbar-btn[data-tooltip]{position:relative}.mtx-toolbar-btn[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px);padding:6px 10px;background:#1e293b;color:#fff;font-size:12px;font-weight:500;white-space:nowrap;border-radius:6px;opacity:0;visibility:hidden;transition:all .15s ease;pointer-events:none;z-index:1000;box-shadow:0 4px 12px #00000026}.mtx-toolbar-btn[data-tooltip]:before{content:"";position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%) translateY(4px);border-width:4px;border-style:solid;border-color:#1e293b transparent transparent transparent;opacity:0;visibility:hidden;transition:all .15s ease;pointer-events:none;z-index:1000}.mtx-toolbar-btn[data-tooltip]:hover:after,.mtx-toolbar-btn[data-tooltip]:hover:before{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.mtx-toolbar-btn:focus-visible,.mtx-toolbar-mode-btn:focus-visible,.mtx-toolbar-select:focus-visible,.mtx-math-toolbar__action-btn:focus-visible,.mtx-symbol-palette__close:focus-visible,.mtx-symbol-palette__item:focus-visible,.mtx-template-card:focus-visible,.mtx-modal-close:focus-visible,.mtx-btn:focus-visible,.mtx-width-unit:focus-visible,.mtx-color-picker-input:focus-visible,.mtx-align-btn:focus-visible,.mtx-btn-sm:focus-visible,.mtx-image-dialog__tab:focus-visible,.mtx-image-dialog__close:focus-visible,.mtx-image-edit-dialog__btn:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.mtx-toolbar-btn--wide{width:34px}.mtx-toolbar-btn--accent{color:var(--mtx-primary)}.mtx-toolbar-btn--accent:hover{background:var(--mtx-primary-light);color:var(--mtx-primary)}.mtx-toolbar-btn--accent-secondary{color:#8b5cf6}.mtx-toolbar-btn--accent-secondary:hover{background:#f5f3ff;color:#7c3aed}.mtx-toolbar-btn svg{flex-shrink:0}.mtx-toolbar-select{height:30px;padding:0 8px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--mtx-text-secondary);font-size:13px;font-family:inherit;cursor:pointer;transition:all .12s ease;outline:none}.mtx-toolbar-select:hover{background:var(--mtx-hover);color:var(--mtx-text)}.mtx-toolbar-select:focus{background:#fff;border-color:var(--mtx-primary);color:var(--mtx-text)}.mtx-font-select{min-width:130px}.mtx-font-size-select{min-width:70px}.mtx-color-btn{padding:4px}.mtx-color-picker{width:0;height:0;opacity:0;position:absolute;pointer-events:none}.mtx-highlight{background-color:#fef08a;padding:2px 4px;border-radius:2px;transition:background-color .15s ease}p[data-indent],h1[data-indent],h2[data-indent],h3[data-indent],h4[data-indent],p.tt-indent,h1.tt-indent,h2.tt-indent,h3.tt-indent,h4.tt-indent,li[data-indent]{margin-left:0}p[data-indent="1"],h1[data-indent="1"],h2[data-indent="1"],h3[data-indent="1"],h4[data-indent="1"],li[data-indent="1"]{margin-left:24px}p[data-indent="2"],h1[data-indent="2"],h2[data-indent="2"],h3[data-indent="2"],h4[data-indent="2"],p.tt-indent-2,h1.tt-indent-2,h2.tt-indent-2,h3.tt-indent-2,h4.tt-indent-2,li.tt-indent-2,li[data-indent="2"]{margin-left:48px}p[data-indent="3"],h1[data-indent="3"],h2[data-indent="3"],h3[data-indent="3"],h4[data-indent="3"],p.tt-indent-3,h1.tt-indent-3,h2.tt-indent-3,h3.tt-indent-3,h4.tt-indent-3,li.tt-indent-3,li[data-indent="3"]{margin-left:72px}p[data-indent="4"],h1[data-indent="4"],h2[data-indent="4"],h3[data-indent="4"],h4[data-indent="4"],li[data-indent="4"]{margin-left:96px}p[data-indent="5"],h1[data-indent="5"],h2[data-indent="5"],h3[data-indent="5"],h4[data-indent="5"],li[data-indent="5"]{margin-left:120px}p[data-indent="6"],h1[data-indent="6"],h2[data-indent="6"],h3[data-indent="6"],h4[data-indent="6"],li[data-indent="6"]{margin-left:144px}p[data-indent="7"],h1[data-indent="7"],h2[data-indent="7"],h3[data-indent="7"],h4[data-indent="7"],li[data-indent="7"]{margin-left:168px}p[data-indent="8"],h1[data-indent="8"],h2[data-indent="8"],h3[data-indent="8"],h4[data-indent="8"],li[data-indent="8"]{margin-left:192px}p[data-indent="9"],h1[data-indent="9"],h2[data-indent="9"],h3[data-indent="9"],h4[data-indent="9"],li[data-indent="9"]{margin-left:216px}p[data-indent="10"],h1[data-indent="10"],h2[data-indent="10"],h3[data-indent="10"],h4[data-indent="10"],li[data-indent="10"]{margin-left:240px}p[data-indent],p.tt-indent{margin-left:0;text-indent:0}p[data-indent="1"]{margin-left:0;text-indent:24px}p[data-indent="2"],p.tt-indent-2{margin-left:0;text-indent:48px}p[data-indent="3"],p.tt-indent-3{margin-left:0;text-indent:72px}p[data-indent="4"]{margin-left:0;text-indent:96px}p[data-indent="5"]{margin-left:0;text-indent:120px}p[data-indent="6"]{margin-left:0;text-indent:144px}p[data-indent="7"]{margin-left:0;text-indent:168px}p[data-indent="8"]{margin-left:0;text-indent:192px}p[data-indent="9"]{margin-left:0;text-indent:216px}p[data-indent="10"]{margin-left:0;text-indent:240px}ul[data-type=taskList],.mtx-task-list{list-style:none;padding-left:0;margin:.6em 0}.mtx-task-item{display:flex;align-items:flex-start;gap:8px;margin:.3em 0}.mtx-task-item>label{display:inline-flex;align-items:center;padding-top:2px}.mtx-task-item>div{flex:1;min-width:0}.mtx-task-item input[type=checkbox]{width:14px;height:14px}.mtx-word-count{display:flex;gap:16px;padding:6px 12px;font-size:11px;color:#64748b;border-top:1px solid #e2e8f0;background:#f8fafc;font-family:Segoe UI,system-ui,sans-serif}.mtx-word-count span{font-weight:500}.mtx-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:mtx-fade-in .15s ease}@keyframes mtx-fade-in{0%{opacity:0}to{opacity:1}}.mtx-modal-dialog{background:#fff;border-radius:8px;box-shadow:0 10px 40px #0003;min-width:400px;max-width:90vw;max-height:90vh;overflow:hidden;animation:mtx-slide-up .2s ease}@keyframes mtx-slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.mtx-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.mtx-modal-title{margin:0;font-size:16px;font-weight:600;color:#1e293b;font-family:Segoe UI,system-ui,sans-serif}.mtx-modal-close{width:28px;height:28px;border:none;background:transparent;border-radius:4px;cursor:pointer;color:#64748b;display:flex;align-items:center;justify-content:center;transition:all .12s ease}.mtx-modal-close:hover{background:#e2e8f0;color:#1e293b}.mtx-modal-dialog:focus-visible,.mtx-image-dialog:focus-visible,.mtx-image-edit-dialog:focus-visible{outline:2px solid rgba(37,99,235,.6);outline-offset:2px}.mtx-modal-body{padding:20px;max-height:calc(90vh - 140px);overflow-y:auto}.mtx-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:16px 20px;border-top:1px solid #e2e8f0;background:#f8fafc}.mtx-form-group{margin-bottom:16px}.mtx-form-group:last-child{margin-bottom:0}.mtx-form-label{display:block;margin-bottom:6px;font-size:13px;font-weight:500;color:#475569;font-family:Segoe UI,system-ui,sans-serif}.mtx-required{color:#ef4444}.mtx-form-hint{font-weight:400;color:#94a3b8;font-size:11px;margin-left:4px}.mtx-form-input{width:100%;padding:10px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:14px;font-family:inherit;color:#1e293b;background:#fff;transition:all .12s ease;outline:none}.mtx-form-input:hover{border-color:#94a3b8}.mtx-form-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.mtx-form-input::placeholder{color:#94a3b8}.mtx-input-error{border-color:#ef4444!important}.mtx-input-error:focus{box-shadow:0 0 0 3px #ef44441a!important}.mtx-form-error{margin-top:6px;font-size:12px;color:#ef4444;font-family:Segoe UI,system-ui,sans-serif}.mtx-form-checkbox{margin-top:8px}.mtx-checkbox-label{display:flex;align-items:center;gap:8px;font-size:13px;color:#475569;cursor:pointer;user-select:none}.mtx-checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#3b82f6}.mtx-btn{padding:8px 16px;border:none;border-radius:6px;font-size:13px;font-weight:500;font-family:Segoe UI,system-ui,sans-serif;cursor:pointer;transition:all .12s ease;outline:none}.mtx-btn-primary{background:#3b82f6;color:#fff}.mtx-btn-primary:hover{background:#2563eb;box-shadow:0 2px 8px #3b82f64d}.mtx-btn-primary:active{transform:scale(.98);box-shadow:0 1px 4px #3b82f633}.mtx-btn-secondary{background:#e2e8f0;color:#475569}.mtx-btn-secondary:hover{background:#cbd5e1;color:#1e293b}.mtx-btn-secondary:active{transform:scale(.98)}.mtx-btn-danger{background:#fee2e2;color:#dc2626}.mtx-btn-danger:hover{background:#fecaca;color:#b91c1c}.mtx-btn-danger:active{transform:scale(.98)}.mtx-link-dialog{min-width:450px}.mtx-insert-table-dialog{min-width:400px}.mtx-table-templates-dialog{min-width:600px;max-width:800px}.mtx-templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;max-height:400px;overflow-y:auto;padding:8px}.mtx-template-dialog-hint{margin:0 0 12px;font-size:13px;color:#64748b}.mtx-table-template-card{appearance:none;width:100%;padding:0;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .15s ease;overflow:hidden;background:#fff;text-align:left}.mtx-table-template-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f633;transform:translateY(-2px)}.mtx-template-preview{padding:12px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.mtx-template-table{display:table;width:100%;border-collapse:collapse;font-size:8px}.mtx-template-row{display:table-row}.mtx-template-cell{display:table-cell;width:33%;height:20px;background:#fff;padding:4px}.mtx-template-header{background:#e2e8f0}.mtx-template-light .mtx-template-header{background:#f1f5f9}.mtx-template-dark .mtx-template-header{background:#1e293b;color:#fff}.mtx-template-blue .mtx-template-header{background:#3b82f6;color:#fff}.mtx-template-striped .mtx-template-row:nth-child(2n) .mtx-template-cell{background:#f8fafc}.mtx-template-minimal .mtx-template-cell{border:none;border-bottom:1px solid #cbd5e1}.mtx-template-info{padding:12px}.mtx-template-name{margin:0 0 4px;font-size:14px;font-weight:600;color:#1e293b}.mtx-template-description{margin:0;font-size:12px;color:#64748b}.mtx-number-input-wrapper{display:flex;align-items:center;gap:0}.mtx-number-btn{width:36px;height:38px;border:1px solid #cbd5e1;background:#f8fafc;color:#475569;font-size:18px;font-weight:600;cursor:pointer;transition:all .12s ease;display:flex;align-items:center;justify-content:center}.mtx-number-btn:first-child{border-radius:6px 0 0 6px;border-right:none}.mtx-number-btn:last-child{border-radius:0 6px 6px 0;border-left:none}.mtx-number-btn:hover:not(:disabled){background:#e2e8f0;color:#1e293b}.mtx-number-btn:disabled{opacity:.4;cursor:not-allowed}.mtx-number-input{width:60px!important;text-align:center;border-radius:0!important;border-left:none!important;border-right:none!important;-moz-appearance:textfield}.mtx-number-input::-webkit-outer-spin-button,.mtx-number-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.mtx-table-preview{margin-top:16px;padding:16px;background:#f1f5f9;border-radius:6px}.mtx-table-preview-label{font-size:12px;font-weight:600;color:#64748b;margin-bottom:12px;text-align:center}.mtx-table-preview-grid{display:grid;gap:2px;max-width:200px;margin:0 auto}.mtx-preview-cell{aspect-ratio:1;background:#cbd5e1;border:1px solid #94a3b8;border-radius:2px}.mtx-preview-header{background:#3b82f6;border-color:#2563eb}.mtx-cell-properties-dialog{min-width:400px}.mtx-width-input-wrapper{display:flex;gap:8px}.mtx-width-input{flex:1}.mtx-width-unit{width:70px;padding:10px 8px;border:1px solid #cbd5e1;border-radius:6px;font-size:14px;background:#fff;cursor:pointer;outline:none}.mtx-width-unit:hover{border-color:#94a3b8}.mtx-width-unit:focus{border-color:#3b82f6}.mtx-color-input-wrapper{display:flex;gap:8px}.mtx-color-picker-input{width:50px;height:38px;border:1px solid #cbd5e1;border-radius:6px;cursor:pointer;background:#fff}.mtx-color-text-input{flex:1}.mtx-align-buttons{display:flex;gap:4px}.mtx-table-menu-overlay{position:fixed;inset:0;width:100vw;height:100vh;border:none;padding:0;z-index:1000;background:transparent;cursor:default}.mtx-table-menu-dropdown{position:fixed;z-index:1000;left:var(--mtx-dropdown-x, 0);top:var(--mtx-dropdown-y, 0)}.mtx-toolbar-btn--dropdown{width:20px;padding:0 2px}.mtx-toolbar-btn--dropdown svg{width:12px;height:12px}.mtx-table-menu{position:absolute;background:#fff;border-radius:8px;box-shadow:0 10px 40px #0003;min-width:220px;padding:8px 0;animation:mtx-slide-down .15s ease;overflow:hidden}@keyframes mtx-slide-down{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.mtx-table-menu-group{padding:4px 0;border-bottom:1px solid #e2e8f0}.mtx-table-menu-label{padding:6px 16px 4px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#94a3b8}.mtx-table-menu-group:last-child{border-bottom:none}.mtx-table-menu-item{width:100%;padding:10px 16px;border:none;background:transparent;display:flex;align-items:center;gap:12px;font-size:13px;color:#475569;cursor:pointer;transition:all .12s ease;text-align:left}.mtx-table-menu-item:hover{background:#f1f5f9;color:#1e293b}.mtx-table-menu-item.is-active{background:#eff6ff;color:#1d4ed8;font-weight:600}.mtx-table-menu-item--danger{color:#dc2626}.mtx-table-menu-item--danger:hover{background:#fee2e2;color:#b91c1c}.mtx-table-menu-icon{font-size:16px;width:20px;display:flex;align-items:center;justify-content:center}.mtx-table{border-collapse:collapse;width:100%;margin:12px 0;table-layout:fixed;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 0 0 1px #dbe4ef}.mtx-table td,.mtx-table th{border:1px solid #cbd5e1;padding:8px 12px;min-width:50px;position:relative;vertical-align:top;transition:background-color .12s ease,box-shadow .12s ease}.mtx-table th{background:#f1f5f9;font-weight:600;text-align:left}.mtx-table td:first-child,.mtx-table th:first-child{border-left-width:1px}.mtx-table tr:first-child td,.mtx-table tr:first-child th{border-top-width:1px}.ProseMirror .selectedCell{background:#3b82f626!important;border-color:#3b82f6!important;border-style:dashed!important;box-shadow:inset 0 0 0 1px #3b82f64d!important}.mtx-table.mtx-table--plain tbody tr:nth-child(2n) td{background-image:linear-gradient(to bottom,#f8fafc59,#f8fafc59)}.mtx-table.mtx-table--plain{box-shadow:0 0 0 1px #dbe4ef}.mtx-table.mtx-table--light th{background:#f8fafc;color:#334155}.mtx-table.mtx-table--dark{box-shadow:0 0 0 1px #1e293b}.mtx-table.mtx-table--dark th{background:#1e293b;color:#f8fafc;border-color:#334155}.mtx-table.mtx-table--blue{box-shadow:0 0 0 1px #93c5fd}.mtx-table.mtx-table--blue th{background:linear-gradient(180deg,#3b82f6,#2563eb);color:#fff;border-color:#2563eb}.mtx-table.mtx-table--blue tbody tr:nth-child(2n) td,.mtx-table.mtx-table--striped tbody tr:nth-child(2n) td{background:#f8fbff}.mtx-table.mtx-table--minimal{box-shadow:none}.mtx-table.mtx-table--minimal td,.mtx-table.mtx-table--minimal th{border-left:none;border-right:none}.ProseMirror table{position:relative}.ProseMirror table td,.ProseMirror table th{position:relative;cursor:text}.ProseMirror table td:not(:last-child):after,.ProseMirror table th:not(:last-child):after{content:"";position:absolute;right:-2px;top:0;bottom:0;width:4px;background:#3b82f626;z-index:5;transition:background .15s ease;pointer-events:none}.ProseMirror table td:not(:last-child):hover:after,.ProseMirror table th:not(:last-child):hover:after{background:#3b82f659}.ProseMirror table:focus-within td:not(:last-child):after,.ProseMirror table:focus-within th:not(:last-child):after{background:#3b82f633}.ProseMirror table:focus-within td:not(:last-child):hover:after,.ProseMirror table:focus-within th:not(:last-child):hover:after{background:#3b82f673}.ProseMirror table .column-resize-handle{position:absolute;top:0;bottom:0;width:10px;background:transparent;cursor:col-resize;z-index:20;transition:background .12s ease}.ProseMirror table .column-resize-handle:before{content:"";position:absolute;left:50%;top:4px;bottom:4px;width:1px;background:#3b82f640;transform:translate(-50%);transition:all .12s ease;border-radius:1px;pointer-events:none}.ProseMirror table .column-resize-handle:hover{background:#3b82f614}.ProseMirror table .column-resize-handle:hover:before{background:#3b82f6;width:2px}.ProseMirror table .column-resize-handle.is-active{background:#3b82f61f}.ProseMirror table .column-resize-handle.is-active:before{background:#2563eb;width:2px}.ProseMirror .column-resize-dragging{position:absolute;top:0;bottom:0;left:0;width:2px;background:#2563eb;z-index:30;pointer-events:none;box-shadow:0 0 8px #2563eb66}.ProseMirror .tableWrapper[data-align=center]{margin-left:auto;margin-right:auto}.ProseMirror .tableWrapper[data-align=right]{margin-left:auto;margin-right:0}.ProseMirror .tableWrapper[data-align=left]{margin-left:0;margin-right:auto}@media (max-width: 640px){.mtx-modal-dialog{min-width:calc(100vw - 32px);max-width:calc(100vw - 32px)}.mtx-link-dialog,.mtx-insert-table-dialog,.mtx-cell-properties-dialog{min-width:calc(100vw - 32px)}.mtx-modal-footer{flex-wrap:wrap}.mtx-btn{flex:1;min-width:100px}.mtx-table-menu{left:16px!important;right:16px!important;min-width:auto!important}}.mtx-math-toolbar{display:flex;align-items:center;gap:4px;padding:3px 6px;background:#f5f5f5;border-bottom:1px solid #ccc;user-select:none;min-height:36px}.mtx-math-toolbar__label{display:flex;align-items:center;gap:4px;font-size:10px;font-weight:700;color:#555;text-transform:uppercase;padding:0 6px;height:24px;background:#e0e0e0;border:1px solid #ccc;border-radius:3px;margin-right:4px}.mtx-math-toolbar__search-wrap{display:inline-flex;align-items:center;flex-shrink:0}.mtx-math-toolbar__search{width:140px;height:26px;padding:0 10px;border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#334155;font-size:12px;outline:none}.mtx-math-toolbar__search::placeholder{color:#94a3b8}.mtx-math-toolbar__search:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa2e}.mtx-math-toolbar__buttons{display:flex;align-items:center;gap:1px;flex-wrap:nowrap;overflow-x:auto;flex:1;min-width:0;padding-bottom:2px}.mtx-math-toolbar__section{display:inline-flex;align-items:center;gap:2px;padding-right:6px;margin-right:6px;border-right:1px solid #d6d6d6;flex-shrink:0}.mtx-math-toolbar__section-toggle{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 8px;border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#475569;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;flex-shrink:0}.mtx-math-toolbar__section-toggle:hover{background:#f8fafc;border-color:#94a3b8;color:#1e293b}.mtx-math-toolbar__section-toggle.is-active{background:#dbeafe;border-color:#93c5fd;color:#1d4ed8}.mtx-math-toolbar__section-toggle svg{transition:transform .15s ease}.mtx-math-toolbar__section-toggle.is-active svg{transform:rotate(180deg)}.mtx-math-toolbar__section:last-child{margin-right:0;padding-right:0;border-right:none}.mtx-math-toolbar__section-label{display:inline-flex;align-items:center;height:22px;padding:0 6px;margin-right:3px;border-radius:999px;background:#e2e8f0;color:#475569;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0}.mtx-math-toolbar__section-divider{width:1px;height:20px;margin:0 3px;background:#cbd5e1;flex-shrink:0}.mtx-math-toolbar__empty{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;color:#64748b;font-size:12px;font-style:italic}.mtx-math-toolbar__buttons::-webkit-scrollbar{height:3px;background:transparent}.mtx-math-toolbar__buttons::-webkit-scrollbar-thumb{background:#ccc;border-radius:2px}.mtx-math-btn{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 2px;border:1px solid transparent;border-radius:2px;background:transparent;color:#333;cursor:pointer;font-size:13px;font-weight:400;font-family:Times New Roman,serif;transition:all .1s ease}.mtx-math-btn:hover{background:#e8e8e8;border-color:#aaa;color:#000;box-shadow:0 1px 1px #0000001a}.mtx-math-btn:active{background:#d0d0d0;border-color:#888;box-shadow:inset 0 1px 1px #0000001a;transform:scale(.96)}.mtx-math-btn__label{line-height:1}.mtx-math-btn[data-tooltip],.mtx-math-toolbar__action-btn[data-tooltip]{position:relative}.mtx-math-btn[data-tooltip]:after,.mtx-math-toolbar__action-btn[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%) translateY(4px);padding:5px 8px;background:#1e293b;color:#fff;font-size:11px;font-weight:500;white-space:nowrap;border-radius:5px;opacity:0;visibility:hidden;transition:all .12s ease;pointer-events:none;z-index:1000;box-shadow:0 3px 10px #00000026;font-family:Segoe UI,system-ui,sans-serif}.mtx-math-btn[data-tooltip]:before,.mtx-math-toolbar__action-btn[data-tooltip]:before{content:"";position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%) translateY(4px);border-width:4px;border-style:solid;border-color:#1e293b transparent transparent transparent;opacity:0;visibility:hidden;transition:all .12s ease;pointer-events:none;z-index:1000}.mtx-math-btn[data-tooltip]:hover:after,.mtx-math-btn[data-tooltip]:hover:before,.mtx-math-toolbar__action-btn[data-tooltip]:hover:after,.mtx-math-toolbar__action-btn[data-tooltip]:hover:before{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.mtx-math-toolbar__actions{display:flex;align-items:center;gap:4px;margin-left:auto;padding-left:6px;border-left:1px solid #ccc;flex-shrink:0}.mtx-math-toolbar__action-btn{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border:1px solid #aaa;border-radius:2px;background:#fff;color:#444;cursor:pointer;font-size:11px;font-weight:600;font-family:Segoe UI,system-ui,sans-serif;transition:all .1s ease}.mtx-math-toolbar__action-btn:hover{background:#f0f0f0;border-color:#888;color:#222}.mtx-symbol-palette{z-index:100;width:360px;max-height:420px;background:#fff;border:1px solid var(--mtx-border);border-radius:8px;box-shadow:0 10px 40px #0000001f,0 2px 10px #00000014;overflow:hidden;animation:mtx-fadeIn .15s ease}@keyframes mtx-fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.mtx-symbol-palette__header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--mtx-border);background:#f9fafb}.mtx-symbol-palette__title{font-size:13px;font-weight:600;color:var(--mtx-text)}.mtx-symbol-palette__close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:4px;background:transparent;color:var(--mtx-text-secondary);cursor:pointer;font-size:16px;line-height:1}.mtx-symbol-palette__close:hover{background:#fee2e2;color:#ef4444}.mtx-symbol-palette__search{display:block;width:100%;padding:8px 12px;border:none;border-bottom:1px solid var(--mtx-border);font-size:13px;font-family:var(--mtx-font);background:#fff;outline:none}.mtx-symbol-palette__search:focus{background:#eff6ff}.mtx-symbol-palette__search::placeholder{color:#94a3b8}.mtx-symbol-palette__body{overflow-y:auto;max-height:330px;padding:8px}.mtx-symbol-palette__category{margin-bottom:8px}.mtx-symbol-palette__category-title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--mtx-text-secondary);padding:4px 4px 6px}.mtx-symbol-palette__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(36px,1fr));gap:2px}.mtx-symbol-palette__item{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--mtx-text);cursor:pointer;font-size:16px;font-family:"Cambria Math",serif;transition:all .1s ease}.mtx-symbol-palette__item:hover{background:var(--mtx-primary-light);border-color:var(--mtx-primary);color:var(--mtx-primary);transform:scale(1.1)}.mtx-content{position:relative}.mtx-content .tiptap{padding:16px 20px;min-height:var(--mtx-min-height, 200px);outline:none;font-size:15px;line-height:1.7;color:var(--mtx-text);caret-color:#2563eb;white-space:pre-wrap}.mtx-content .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:#94a3b8;font-style:italic;pointer-events:none;float:left;height:0}.mtx-content .tiptap h1{font-size:1.8em;font-weight:700;margin:.6em 0 .4em;color:#0f172a;line-height:1.3;letter-spacing:-.02em}.mtx-content .tiptap h2{font-size:1.4em;font-weight:600;margin:.5em 0 .3em;color:#1e293b;line-height:1.35}.mtx-content .tiptap h3{font-size:1.15em;font-weight:600;margin:.5em 0 .3em;color:#334155;line-height:1.4}.mtx-content .tiptap ul,.mtx-content .tiptap ol{padding-left:24px;margin:.5em 0}.mtx-content .tiptap li{margin:.15em 0}.mtx-content .tiptap li p{margin:0}.mtx-content .tiptap a{color:var(--mtx-primary);text-decoration:underline;text-decoration-color:#3b82f64d;text-underline-offset:2px;cursor:pointer;transition:text-decoration-color .15s}.mtx-content .tiptap a:hover{text-decoration-color:var(--mtx-primary)}.mtx-content .tiptap blockquote{border-left:3px solid var(--mtx-primary);padding:8px 16px;margin:.8em 0;background:#eff6ff;border-radius:0 6px 6px 0;color:#1e40af;font-style:italic}.mtx-content .tiptap p[data-indent],.mtx-content .tiptap h1[data-indent],.mtx-content .tiptap h2[data-indent],.mtx-content .tiptap h3[data-indent],.mtx-content .tiptap h4[data-indent],.mtx-content .tiptap p.tt-indent,.mtx-content .tiptap h1.tt-indent,.mtx-content .tiptap h2.tt-indent,.mtx-content .tiptap h3.tt-indent,.mtx-content .tiptap h4.tt-indent,.mtx-content .tiptap li[data-indent]{position:relative}.mtx-math-btn--recent{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.mtx-math-btn--recent:hover{background:#dbeafe;border-color:#93c5fd}.mtx-content .tiptap p[data-indent="1"],.mtx-content .tiptap h1[data-indent="1"],.mtx-content .tiptap h2[data-indent="1"],.mtx-content .tiptap h3[data-indent="1"],.mtx-content .tiptap h4[data-indent="1"],.mtx-content .tiptap p.tt-indent-1,.mtx-content .tiptap h1.tt-indent-1,.mtx-content .tiptap h2.tt-indent-1,.mtx-content .tiptap h3.tt-indent-1,.mtx-content .tiptap h4.tt-indent-1,.mtx-content .tiptap li.tt-indent-1{margin-left:2em}.mtx-content .tiptap p[data-indent="2"],.mtx-content .tiptap h1[data-indent="2"],.mtx-content .tiptap h2[data-indent="2"],.mtx-content .tiptap h3[data-indent="2"],.mtx-content .tiptap h4[data-indent="2"],.mtx-content .tiptap p.tt-indent-2,.mtx-content .tiptap h1.tt-indent-2,.mtx-content .tiptap h2.tt-indent-2,.mtx-content .tiptap h3.tt-indent-2,.mtx-content .tiptap h4.tt-indent-2,.mtx-content .tiptap li.tt-indent-2{margin-left:4em}.mtx-content .tiptap p[data-indent="3"],.mtx-content .tiptap h1[data-indent="3"],.mtx-content .tiptap h2[data-indent="3"],.mtx-content .tiptap h3[data-indent="3"],.mtx-content .tiptap h4[data-indent="3"],.mtx-content .tiptap p.tt-indent-3,.mtx-content .tiptap h1.tt-indent-3,.mtx-content .tiptap h2.tt-indent-3,.mtx-content .tiptap h3.tt-indent-3,.mtx-content .tiptap h4.tt-indent-3,.mtx-content .tiptap li.tt-indent-3{margin-left:6em}.mtx-content .tiptap p[data-indent="4"],.mtx-content .tiptap h1[data-indent="4"],.mtx-content .tiptap h2[data-indent="4"],.mtx-content .tiptap h3[data-indent="4"],.mtx-content .tiptap h4[data-indent="4"],.mtx-content .tiptap p.tt-indent-4,.mtx-content .tiptap h1.tt-indent-4,.mtx-content .tiptap h2.tt-indent-4,.mtx-content .tiptap h3.tt-indent-4,.mtx-content .tiptap h4.tt-indent-4,.mtx-content .tiptap li.tt-indent-4{margin-left:8em}.mtx-content .tiptap p[data-indent="5"],.mtx-content .tiptap h1[data-indent="5"],.mtx-content .tiptap h2[data-indent="5"],.mtx-content .tiptap h3[data-indent="5"],.mtx-content .tiptap h4[data-indent="5"],.mtx-content .tiptap p.tt-indent-5,.mtx-content .tiptap h1.tt-indent-5,.mtx-content .tiptap h2.tt-indent-5,.mtx-content .tiptap h3.tt-indent-5,.mtx-content .tiptap h4.tt-indent-5,.mtx-content .tiptap li.tt-indent-5{margin-left:10em}.mtx-content .tiptap p[data-indent="6"],.mtx-content .tiptap h1[data-indent="6"],.mtx-content .tiptap h2[data-indent="6"],.mtx-content .tiptap h3[data-indent="6"],.mtx-content .tiptap h4[data-indent="6"],.mtx-content .tiptap p.tt-indent-6,.mtx-content .tiptap h1.tt-indent-6,.mtx-content .tiptap h2.tt-indent-6,.mtx-content .tiptap h3.tt-indent-6,.mtx-content .tiptap h4.tt-indent-6,.mtx-content .tiptap li.tt-indent-6{margin-left:12em}.mtx-content .tiptap p[data-indent="7"],.mtx-content .tiptap h1[data-indent="7"],.mtx-content .tiptap h2[data-indent="7"],.mtx-content .tiptap h3[data-indent="7"],.mtx-content .tiptap h4[data-indent="7"],.mtx-content .tiptap p.tt-indent-7,.mtx-content .tiptap h1.tt-indent-7,.mtx-content .tiptap h2.tt-indent-7,.mtx-content .tiptap h3.tt-indent-7,.mtx-content .tiptap h4.tt-indent-7,.mtx-content .tiptap li.tt-indent-7{margin-left:14em}.mtx-content .tiptap p[data-indent],.mtx-content .tiptap p.tt-indent{margin-left:0;text-indent:0}.mtx-content .tiptap p[data-indent="1"],.mtx-content .tiptap p.tt-indent-1{margin-left:0;text-indent:2em}.mtx-content .tiptap p[data-indent="2"],.mtx-content .tiptap p.tt-indent-2{margin-left:0;text-indent:4em}.mtx-content .tiptap p[data-indent="3"],.mtx-content .tiptap p.tt-indent-3{margin-left:0;text-indent:6em}.mtx-content .tiptap p[data-indent="4"],.mtx-content .tiptap p.tt-indent-4{margin-left:0;text-indent:8em}.mtx-content .tiptap p[data-indent="5"],.mtx-content .tiptap p.tt-indent-5{margin-left:0;text-indent:10em}.mtx-content .tiptap p[data-indent="6"],.mtx-content .tiptap p.tt-indent-6{margin-left:0;text-indent:12em}.mtx-content .tiptap p[data-indent="7"],.mtx-content .tiptap p.tt-indent-7{margin-left:0;text-indent:14em}.mtx-content .tiptap code{background:#f1f5f9;color:#e11d48;padding:1px 5px;border-radius:3px;font-size:.9em;font-family:JetBrains Mono,Fira Code,Cascadia Code,monospace}.mtx-content .tiptap pre{background:#1e293b;color:#e2e8f0;padding:16px;border-radius:6px;overflow-x:auto;margin:.8em 0;font-family:JetBrains Mono,Fira Code,Cascadia Code,monospace;font-size:.85em;line-height:1.6}.mtx-content .tiptap pre code{background:none;color:inherit;padding:0;border-radius:0;font-size:inherit}.mtx-content .tiptap pre .hljs-keyword{color:#c678dd}.mtx-content .tiptap pre .hljs-string{color:#98c379}.mtx-content .tiptap pre .hljs-number{color:#d19a66}.mtx-content .tiptap pre .hljs-comment{color:#5c6370;font-style:italic}.mtx-content .tiptap pre .hljs-function{color:#61afef}.mtx-content .tiptap pre .hljs-variable{color:#e06c75}.mtx-content .tiptap pre .hljs-operator{color:#56b6c2}.mtx-content .tiptap pre .hljs-class{color:#e5c07b}.mtx-content .tiptap pre .hljs-title{color:#61afef}.mtx-content .tiptap pre .hljs-params{color:#e06c75}.mtx-content .tiptap pre .hljs-built_in{color:#56b6c2}.mtx-content .tiptap pre .hljs-type{color:#e5c07b}.mtx-content .tiptap pre .hljs-literal{color:#d19a66}.mtx-content .tiptap pre .hljs-tag{color:#e06c75}.mtx-content .tiptap pre .hljs-attr{color:#d19a66}.mtx-content .tiptap pre .hljs-attribute{color:#98c379}.mtx-content .tiptap pre .hljs-symbol,.mtx-content .tiptap pre .hljs-bullet{color:#d19a66}.mtx-content .tiptap pre .hljs-link{color:#61afef}.mtx-content .tiptap pre .hljs-emphasis{font-style:italic}.mtx-content .tiptap pre .hljs-strong{font-weight:700}.mtx-content .tiptap pre .hljs-quote{color:#5c6370}.mtx-details{border:1px solid #e2e8f0;border-radius:8px;margin:1em 0;overflow:hidden;background:#f8fafc}.mtx-details-summary{padding:.75em 1em;background:#f1f5f9;cursor:pointer;font-weight:600;color:#334155;user-select:none;list-style:none;position:relative}.mtx-details-summary::-webkit-details-marker{display:none}.mtx-details-summary:before{content:"▶";display:inline-block;margin-right:.5em;transition:transform .2s ease;font-size:.8em}.mtx-details[open]>.mtx-details-summary:before{transform:rotate(90deg)}.mtx-details-summary:hover{background:#e2e8f0}.mtx-details-content{padding:1em;border-top:1px solid #e2e8f0;background:#fff}.mtx-details-content>*:first-child{margin-top:0}.mtx-details-content>*:last-child{margin-bottom:0}.mtx-content .tiptap table{border-collapse:collapse;width:100%;margin:.8em 0;border-radius:6px;overflow:hidden}.mtx-content .tiptap table td,.mtx-content .tiptap table th{border:1px solid #e2e8f0;padding:8px 12px;text-align:left;min-width:80px;vertical-align:top}.mtx-content .tiptap table th{background:#f1f5f9;font-weight:600;color:#334155;font-size:.9em;text-transform:uppercase;letter-spacing:.03em}.mtx-content .tiptap table tr:hover td{background:#f8fafc}.mtx-content .tiptap hr{border:none;border-top:2px solid #e2e8f0;margin:1.5em 0}.mtx-content .tiptap figure.mtx-image-figure{margin:.5em 0;text-align:center;position:relative;display:inline-block;width:fit-content;max-width:100%}.mtx-content .tiptap figure.mtx-image-figure .mtx-image-wrapper{position:relative;display:inline-block;line-height:0;user-select:none;backface-visibility:hidden}.mtx-content .tiptap figure.mtx-image-figure .mtx-image-wrapper.is-dragging{z-index:20}.mtx-content .tiptap figure.mtx-image-figure{transition:margin .18s ease,transform .18s ease}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--dragging,.mtx-content .tiptap figure.mtx-image-figure.mtx-image--dragging .mtx-image-wrapper{transition:none}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--snap-animating,.mtx-content .tiptap figure.mtx-image-figure.mtx-image--snap-animating .mtx-image-wrapper{transition:margin .18s ease,transform .18s ease}.mtx-content .tiptap figure.mtx-image-figure img{max-width:100%;height:auto;border-radius:6px;box-shadow:0 1px 3px #0000001a;cursor:pointer;transition:box-shadow .2s ease}.mtx-content .tiptap figure.mtx-image-figure:hover img{box-shadow:0 4px 8px #00000026}.mtx-content .tiptap figure.mtx-image-figure figcaption{text-align:center;font-size:.875rem;color:#64748b;margin-top:.5em;padding:.25em .5em;background:#f1f5f9;border-radius:4px}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--left{float:left;margin-right:1.5em;margin-bottom:1em;clear:none}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--right{float:right;margin-left:1.5em;margin-bottom:1em;clear:none}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--center{display:block;margin-left:auto;margin-right:auto;clear:both}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--full{display:block;width:100%!important;margin:1em 0;clear:both}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--full img{width:100%}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--dragging{opacity:.92}.mtx-content .tiptap figure.mtx-image-figure.mtx-image-snap-preview--left{box-shadow:-6px 0 #2563eb59}.mtx-content .tiptap figure.mtx-image-figure.mtx-image-snap-preview--center{box-shadow:0 0 0 2px #2563eb47}.mtx-content .tiptap figure.mtx-image-figure.mtx-image-snap-preview--right{box-shadow:6px 0 #2563eb59}.mtx-image-drag-guide{position:absolute;top:0;left:0;width:0;height:100%;border-left:2px dashed rgba(37,99,235,.5);pointer-events:none;z-index:100}.mtx-image-drag-zone{position:absolute;top:0;left:0;width:100%;height:100%;background:#2563eb0f;pointer-events:none;z-index:99}.mtx-content .tiptap figure.mtx-image-figure .mtx-image-wrapper:after{content:"⤡";position:absolute;bottom:8px;right:8px;width:28px;height:28px;background:#2563ebd9;color:#fff;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;opacity:0;pointer-events:none;transition:opacity .15s ease;z-index:5;box-shadow:0 2px 6px #00000026}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--selected .mtx-image-wrapper:hover:after,.mtx-content .tiptap figure.mtx-image-figure .mtx-image-wrapper.is-dragging:after{opacity:1}.mtx-content .tiptap figure.mtx-image-figure .mtx-image-wrapper:hover{outline:1.5px solid rgba(37,99,235,.25);outline-offset:2px;border-radius:2px}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--selected .mtx-image-wrapper:hover{outline-color:#2563eb80}.mtx-content .tiptap figure.mtx-image-figure .mtx-image-wrapper:hover img{box-shadow:0 4px 12px #0000002e}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--selected,.mtx-content .tiptap figure.mtx-image-figure .mtx-image-wrapper.mtx-image--selected{outline:2px solid var(--mtx-primary);outline-offset:2px}.mtx-image-node-view{display:inline-block;max-width:100%;position:relative}.mtx-content .tiptap:after{content:"";display:table;clear:both}.mtx-math-inline,.mtx-math-block{display:inline-block;position:relative}.mtx-math-inline math-field,.mtx-math-block math-field{border:1px solid transparent;border-radius:4px;outline:none;transition:all .15s ease;font-size:1.05em;background:transparent;--selection-background-color: rgba(59, 130, 246, .2)}.mtx-math-inline math-field:focus,.mtx-math-block math-field:focus{border-color:var(--mtx-primary);background:#eff6ff;box-shadow:0 0 0 2px #3b82f61a}.mtx-math-block{display:block;text-align:center;margin:12px 0;padding:12px;background:#f8fafc;border-radius:6px;border:1px dashed #cbd5e1}.mtx-math-block math-field{font-size:1.2em}.mtx-math-edit-btn{position:absolute;background:#2563eb;color:#fff;border:none;border-radius:4px;padding:4px 8px;font-size:12px;cursor:pointer;z-index:10;display:flex;align-items:center;gap:4px;box-shadow:0 2px 4px #0003;transition:all .15s ease}.mtx-math-edit-btn:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 4px 6px #00000040}.mtx-math-inline .mtx-math-edit-btn{right:-28px;top:50%;transform:translateY(-50%)}.mtx-math-block .mtx-math-edit-btn{right:8px;top:8px}.ProseMirror-selectednode .mtx-math-inline,.ProseMirror-selectednode .mtx-math-block{outline:2px solid var(--mtx-primary);outline-offset:2px;border-radius:4px}.mtx-content::-webkit-scrollbar{width:6px}.mtx-content::-webkit-scrollbar-track{background:transparent}.mtx-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.mtx-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (max-width: 640px){.mtx-toolbar-mode-switch{order:-1;margin-bottom:4px}.mtx-toolbar{gap:0;padding:3px 4px}.mtx-toolbar-btn{width:28px;height:28px}.mtx-toolbar-divider{margin:0 2px}.mtx-math-toolbar__buttons{gap:1px;flex-wrap:wrap;justify-content:center}.mtx-math-toolbar__section{padding-right:4px;margin-right:4px}.mtx-math-toolbar__section-toggle{padding:0 6px}.mtx-math-toolbar{padding:4px;min-width:unset;width:calc(100% - 20px);flex-wrap:wrap}.mtx-math-toolbar__search-wrap{order:3;width:100%}.mtx-math-toolbar__search{width:100%}.mtx-math-btn{min-width:26px;height:26px;font-size:11px}.mtx-symbol-palette{width:300px}.mtx-template-panel{width:340px}}@media (min-width: 768px){math-field::part(virtual-keyboard-toggle){display:none!important;visibility:hidden!important;width:0!important;height:0!important;overflow:hidden!important;pointer-events:none!important;position:absolute!important;z-index:-1!important;opacity:0!important}}.mtx-template-panel{z-index:100;width:520px;max-height:520px;background:#fff;border:1px solid var(--mtx-border);border-radius:8px;box-shadow:0 10px 40px #00000026,0 2px 10px #00000014;overflow:hidden;animation:mtx-fadeIn .15s ease}.mtx-template-panel__header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--mtx-border);background:linear-gradient(to bottom,#f9fafb,#f3f4f6)}.mtx-template-panel__title{font-size:13px;font-weight:600;color:var(--mtx-text)}.mtx-template-panel__close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:4px;background:transparent;color:var(--mtx-text-secondary);cursor:pointer;font-size:16px;line-height:1}.mtx-template-panel__close:hover{background:#fee2e2;color:#ef4444}.mtx-template-panel__search{display:block;width:100%;padding:8px 14px;border:none;border-bottom:1px solid var(--mtx-border);font-size:13px;font-family:var(--mtx-font);background:#fff;outline:none}.mtx-template-panel__search:focus{background:#eff6ff}.mtx-template-panel__search::placeholder{color:#94a3b8}.mtx-template-panel__body{display:flex;flex-direction:row;height:320px}@media (max-width: 640px){.mtx-template-panel__body{flex-direction:column;height:400px}}.mtx-template-panel__tabs{width:160px;min-width:160px;overflow-y:auto;border-right:1px solid var(--mtx-border);background:#f9fafb;padding:4px}@media (max-width: 640px){.mtx-template-panel__tabs{width:100%;min-width:unset;height:auto;display:flex;flex-direction:row;overflow-x:auto;overflow-y:hidden;border-right:none;border-bottom:1px solid var(--mtx-border);white-space:nowrap;padding:6px;gap:4px}}.mtx-template-panel__tab{display:flex;align-items:center;gap:4px;width:100%;padding:4px 6px;border:none;border-radius:4px;background:transparent;color:var(--mtx-text-secondary);cursor:pointer;font-size:11px;font-weight:500;font-family:var(--mtx-font);text-align:left;transition:all .1s ease;margin-bottom:1px}@media (max-width: 640px){.mtx-template-panel__tab{width:auto;flex:0 0 auto;padding:6px 10px}}.mtx-template-panel__tab:hover{background:#f1f5f9;color:var(--mtx-text)}.mtx-template-panel__tab.is-active{background:var(--mtx-primary-light);color:var(--mtx-primary)}.mtx-template-panel__tab-icon{font-size:13px;flex-shrink:0}.mtx-template-panel__tab-label{line-height:1.2}.mtx-template-panel__content{flex:1;overflow-y:auto;padding:12px;background:#fff}.mtx-template-panel__empty{padding:20px;text-align:center;color:#94a3b8;font-size:13px}.mtx-template-panel__group{margin-bottom:8px}.mtx-template-panel__group-title{font-size:11px;font-weight:600;color:var(--mtx-text-secondary);padding:4px 4px 8px;text-transform:uppercase;letter-spacing:.04em}.mtx-template-panel__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:4px}.mtx-template-card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;cursor:pointer;text-align:left;transition:all .12s ease;font-family:var(--mtx-font);min-height:52px;overflow:hidden}.mtx-template-card:hover{border-color:var(--mtx-primary);background:var(--mtx-primary-light);box-shadow:0 2px 6px #3b82f61f;transform:translateY(-1px)}.mtx-template-card__preview{font-size:13px;font-weight:500;color:var(--mtx-text);font-family:"Cambria Math","Latin Modern Math",serif;line-height:1.5;word-break:break-all;padding-bottom:4px;display:block}.mtx-template-card__label{font-size:10px;color:var(--mtx-text-muted);line-height:1.2}.mtx-template-panel__levels{display:flex;gap:2px;padding:6px 10px;border-bottom:1px solid var(--mtx-border);background:#f8fafc}.mtx-template-panel__level{display:inline-flex;align-items:center;gap:3px;padding:3px 10px;border:1px solid transparent;border-radius:20px;background:transparent;color:var(--mtx-text-secondary);cursor:pointer;font-size:11px;font-weight:500;font-family:var(--mtx-font);transition:all .12s ease}.mtx-template-panel__level:hover{background:#fff;border-color:var(--mtx-border)}.mtx-template-panel__level.is-active{background:var(--mtx-primary);color:#fff;border-color:var(--mtx-primary)}.mtx-template-panel__tab-badge{font-size:9px;padding:0 4px;border-radius:3px;background:#e2e8f0;color:var(--mtx-text-secondary);font-weight:600;margin-left:auto}.mtx-template-panel__tab.is-active .mtx-template-panel__tab-badge{background:#3b82f633;color:var(--mtx-primary)}.mtx-template-panel__group-level{font-size:9px;padding:1px 5px;border-radius:3px;background:var(--mtx-primary-light);color:var(--mtx-primary);font-weight:600;margin-left:4px}.mt-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#00000073;backdrop-filter:blur(3px);animation:mt-fadeIn .15s ease}@keyframes mt-fadeIn{0%{opacity:0}to{opacity:1}}.mt-dialog{width:680px;max-width:96vw;max-height:92vh;background:#ececec;border-radius:6px;box-shadow:0 12px 40px #00000059,0 2px 10px #0003;overflow:hidden;display:flex;flex-direction:column;animation:mt-slideUp .2s ease;border:1px solid #888}@keyframes mt-slideUp{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.mt-titlebar{display:flex;align-items:center;justify-content:space-between;padding:5px 8px;background:linear-gradient(180deg,#6b9fd4,#3a75b0,#2d5f9a);color:#fff;user-select:none;flex-shrink:0}.mt-titlebar__left{display:flex;align-items:center;gap:6px}.mt-titlebar__title{font-size:12px;font-weight:600;font-family:Segoe UI,system-ui,sans-serif;text-shadow:0 1px 2px rgba(0,0,0,.4)}.mt-titlebar__close{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;border-radius:3px;background:#ffffff1a;color:#fff;cursor:pointer;transition:background .1s}.mt-titlebar__close:hover{background:#c42b1c}.mt-tab-bar{display:flex;align-items:stretch;gap:0;padding:3px 3px 0;background:linear-gradient(180deg,#c8d8e8,#a8bdd0);border-bottom:1px solid #7a9ab5;flex-shrink:0;flex-wrap:wrap;max-height:120px;overflow-y:auto}.mt-tab{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;min-width:48px;height:30px;border:1px solid #8aa8c0;border-bottom:none;border-radius:4px 4px 0 0;background:linear-gradient(180deg,#d8e4ef,#b8cce0);color:#2c4a6e;cursor:pointer;font-size:12px;font-family:"Cambria Math","Latin Modern Math",Times New Roman,serif;font-weight:500;transition:all .08s ease;margin-right:-1px;position:relative;white-space:nowrap;letter-spacing:.5px}.mt-tab:hover{background:linear-gradient(180deg,#e8f0f8,#c8daf0);color:#1a3a5e}.mt-tab.is-active{background:linear-gradient(180deg,#f5f8fc,#eef3f8 30%,#e8eef5);color:#1a3a5e;border-color:#7a9ab5;border-bottom:1px solid #e8eef5;z-index:1;font-weight:600;box-shadow:0 -1px 3px #0000000f}.mt-tab__icon{font-size:13px;line-height:1}.mt-grid{background:linear-gradient(180deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0;flex-shrink:0;padding:8px 12px}.mt-grid__row{display:flex;align-items:center;justify-content:space-between;gap:4px;padding:2px 0;flex-wrap:wrap;width:100%}.mt-grid__btn{display:inline-flex;align-items:center;justify-content:center;flex:1;min-width:50px;max-width:90px;height:44px;padding:6px 8px;border:1px solid #e2e8f0;border-radius:6px;background:linear-gradient(180deg,#fff,#f8fafc);color:#1e293b;cursor:pointer;font-size:14px;font-family:"Cambria Math","Latin Modern Math",Times New Roman,serif;line-height:1;transition:all .15s ease;user-select:none;white-space:nowrap;box-shadow:0 1px 2px #0000000a;position:relative;overflow:hidden}.mt-grid__btn:hover{background:linear-gradient(180deg,#eff6ff,#dbeafe);border-color:#3b82f6;box-shadow:0 2px 8px #3b82f626,0 1px 2px #0000000f;transform:translateY(-1px);color:#1e40af}.mt-grid__btn:active{background:linear-gradient(180deg,#dbeafe,#bfdbfe);border-color:#2563eb;box-shadow:inset 0 1px 2px #00000014;transform:translateY(0)}.mt-grid__btn--formula{min-width:70px;max-width:120px}.mt-icon-row{display:flex;align-items:center;justify-content:center;gap:3px}.mt-ph{display:inline-block;width:11px;height:11px;border:1.5px solid #3b82f6;background:#3b82f614;border-radius:2px;margin:0 1px;transition:all .15s ease}.mt-ph--sm{width:8px;height:8px;border-width:1.5px}.mt-grid__btn:hover .mt-ph{border-color:#2563eb;background:#3b82f626}.mt-grid__btn[data-tooltip],.mt-format-btn[data-tooltip],.mt-tab[data-tooltip]{position:relative}.mt-grid__btn[data-tooltip]:after,.mt-format-btn[data-tooltip]:after,.mt-tab[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%) translateY(4px);padding:4px 8px;background:#1e293b;color:#fff;font-size:11px;font-weight:500;white-space:nowrap;border-radius:5px;opacity:0;visibility:hidden;transition:all .12s ease;pointer-events:none;z-index:1000;box-shadow:0 3px 10px #00000026;font-family:Segoe UI,system-ui,sans-serif}.mt-grid__btn[data-tooltip]:before,.mt-format-btn[data-tooltip]:before,.mt-tab[data-tooltip]:before{content:"";position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%) translateY(4px);border-width:4px;border-style:solid;border-color:#1e293b transparent transparent transparent;opacity:0;visibility:hidden;transition:all .12s ease;pointer-events:none;z-index:1000}.mt-grid__btn[data-tooltip]:hover:after,.mt-grid__btn[data-tooltip]:hover:before,.mt-format-btn[data-tooltip]:hover:after,.mt-format-btn[data-tooltip]:hover:before,.mt-tab[data-tooltip]:hover:after,.mt-tab[data-tooltip]:hover:before{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.mt-icon-stack{display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;gap:2px}.mt-icon-stack--lg{transform:scale(1.15)}.mt-icon-stack--sm{transform:scale(.7)}.mt-icon-num{padding-bottom:2px;display:flex;justify-content:center;align-items:center}.mt-icon-den{padding-top:2px;display:flex;justify-content:center;align-items:center}.mt-icon-bar{width:100%;height:1.5px;background:linear-gradient(90deg,transparent 0%,currentColor 10%,currentColor 90%,transparent 100%);opacity:.7;border-radius:1px}.mt-icon-sqrt{font-size:17px;line-height:1;transform:scaleY(1.2) translateY(1px);font-weight:300}.mt-icon-sqrt-bar{border-top:1.5px solid currentColor;padding-top:2px;margin-left:-1px;opacity:.7}.mt-icon-idx{font-size:.65em;line-height:1;font-weight:500}.mt-icon-grid{display:flex;flex-direction:column;gap:2px;margin:0 2px}.mt-icon-grid-row{display:flex;gap:2px}.mt-brak{font-weight:300;transform:scaleY(1.3);color:#475569}.mt-brak--lg{transform:scaleY(1.6)}.mt-sym{font-family:Times New Roman,serif;font-style:italic;color:#334155}.mt-sym-lg{font-size:17px;font-weight:500;color:#1e293b}.mt-sym-xl{font-size:20px;line-height:.8;color:#1e293b}.mt-sym-sm{font-size:10px}.mt-sym-fn{font-family:Times New Roman,serif;font-size:12px;font-style:italic;color:#334155}.mt-txt-icon{font-family:Segoe UI,system-ui,sans-serif;font-size:9px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.3px;padding:2px 4px;background:#f1f5f9;border-radius:3px;border:1px solid #e2e8f0}.mt-over{position:absolute;top:-6px;left:50%;transform:translate(-50%);font-size:10px;width:100%;text-align:center;color:#64748b}.mt-under{position:absolute;bottom:-5px;left:50%;transform:translate(-50%);font-size:10px;color:#64748b}.mt-editor{flex:1;min-height:100px;background:#fff;border-top:1px solid #999;position:relative}.mt-editor__field{min-height:100px;padding:2px;background:#fff}.mt-editor__field math-field{--caret-color: #2563eb;--selection-background-color: rgba(59, 130, 246, .25);--selection-color: #1e40af;--placeholder-color: rgba(59, 130, 246, .35);--placeholder-background-color: rgba(59, 130, 246, .08);cursor:text}.mt-loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:20px;background:#fff;z-index:10}.mt-loading__spinner{width:28px;height:28px;border:3px solid #e2e8f0;border-top-color:#2563eb;border-radius:50%;animation:mt-spin .8s linear infinite}@keyframes mt-spin{to{transform:rotate(360deg)}}.mt-loading__text{font-size:13px;color:#64748b;font-family:Segoe UI,system-ui,sans-serif}@media (min-width: 768px){.mt-editor__field math-field{--keyboard-zindex: -1 !important;--virtual-keyboard-toggle-display: none !important}}.mt-editor__field:focus-within{outline:none}.mt-latex-bar{display:flex;flex-direction:column;gap:2px;padding:4px 10px;background:#eef0f2;border-top:1px solid #ccc;font-size:10px;min-height:22px}.mt-latex-bar__row{display:flex;align-items:center;gap:6px;min-height:18px}.mt-latex-bar__label{font-weight:700;color:#777;font-family:Segoe UI,system-ui,sans-serif;flex-shrink:0;font-size:10px}.mt-latex-bar__code{font-family:Consolas,Fira Code,monospace;font-size:10px;color:#666;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.mt-latex-bar__preview{padding:6px 8px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;font-size:16px;text-align:center;overflow-x:auto;min-height:20px}.mt-latex-bar__error{padding:4px 8px;background:#fef2f2;border:1px solid #fecaca;border-radius:4px;color:#dc2626;font-size:10px;font-family:Consolas,Fira Code,monospace;white-space:pre-wrap;word-break:break-all}.mt-actions{display:flex;align-items:center;justify-content:space-between;padding:5px 10px;background:linear-gradient(180deg,#e4e8ec,#d8dce0);border-top:1px solid #bbb;gap:8px}.mt-actions__hint{font-size:10px;color:#777;font-family:Segoe UI,system-ui,sans-serif}.mt-actions__hint kbd{display:inline-block;padding:1px 4px;border:1px solid #bbb;border-radius:3px;background:#f5f5f5;font-size:9px;font-family:inherit;box-shadow:0 1px #ccc}.mt-display-mode-toggle{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border:1px solid #cbd5e1;border-radius:14px;background:#f8fafc;color:#475569;cursor:pointer;font-size:11px;font-family:inherit;font-weight:500;transition:all .15s;white-space:nowrap}.mt-display-mode-toggle:hover{background:#e2e8f0;border-color:#94a3b8}.mt-display-mode-toggle.is-block{background:#dbeafe;border-color:#3b82f6;color:#1e40af}.mt-display-mode-toggle__label{line-height:1}.mt-actions__buttons{display:flex;gap:6px;flex-shrink:0}.mt-actions__cancel{padding:5px 14px;border:1px solid #aaa;border-radius:4px;background:linear-gradient(180deg,#f5f5f5,#e0e0e0);color:#444;cursor:pointer;font-size:12px;font-family:Segoe UI,system-ui,sans-serif;font-weight:500;transition:all .1s}.mt-actions__cancel:hover{background:linear-gradient(180deg,#fff,#eee);border-color:#888}.mt-actions__insert{padding:5px 16px;border:1px solid #2a5a94;border-radius:4px;background:linear-gradient(180deg,#4a8ad4,#2d6bb0);color:#fff;cursor:pointer;font-size:12px;font-family:Segoe UI,system-ui,sans-serif;font-weight:600;transition:all .1s;text-shadow:0 1px 1px rgba(0,0,0,.2)}.mt-actions__insert:hover{background:linear-gradient(180deg,#5a9ae4,#3d7bc0)}.mt-actions__insert:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 700px){.mt-dialog{width:98vw;max-height:95vh;border-radius:4px}.mt-tab{min-width:36px;padding:3px 5px;font-size:11px}.mt-grid__btn{min-width:32px;height:30px;font-size:13px;padding:2px 4px}.mt-titlebar__title{font-size:11px}.mt-actions__hint{display:none}}.mt-format-bar{display:flex;align-items:center;padding:4px 6px;background:#f0f0f0;border-bottom:1px solid #bfbfbf;gap:6px}.mt-font-select{height:22px;border:1px solid #888;border-radius:2px;padding:0 4px;font-size:11px;width:140px;background:#fff;cursor:pointer;outline:none}.mt-font-select:hover{border-color:#555}.mt-format-group{display:flex;align-items:center;gap:1px;margin-right:4px;padding-right:4px;border-right:1px solid #ccc}.mt-format-group:last-child{border-right:none;margin-right:0;padding-right:0}.mt-format-btn{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:2px;background:transparent;cursor:pointer;font-family:serif;font-size:13px;color:#333}.mt-format-btn:hover{background:#e0e0e0;border:1px solid #bbb}.mt-format-btn b{font-weight:700}.mt-format-btn i{font-style:italic}.mt-format-btn u{text-decoration:underline}.mt-color-picker{width:22px;height:22px;padding:0;border:1px solid #ccc;background:#fff;cursor:pointer}.mt-txt-icon{font-size:10px;font-weight:700;font-family:sans-serif;color:#444}.mtx-image-edit-dialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;z-index:9999;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.mtx-image-edit-dialog__header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e2e8f0}.mtx-image-edit-dialog__header h3{margin:0;font-size:1.25rem;color:#1e293b}.mtx-image-edit-dialog__close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#64748b;padding:4px;border-radius:4px;transition:all .15s ease}.mtx-image-edit-dialog__close:hover{background:#f1f5f9;color:#1e293b}.mtx-image-edit-dialog__body{padding:20px}.mtx-image-edit-dialog__section{margin-bottom:24px}.mtx-image-edit-dialog__section h4{margin:0 0 12px;font-size:.875rem;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.05em}.mtx-image-edit-dialog__row{margin-bottom:12px}.mtx-image-edit-dialog__row label{display:block;margin-bottom:6px;font-size:.875rem;color:#334155;font-weight:500}.mtx-image-edit-dialog__row input[type=text],.mtx-image-edit-dialog__row textarea{width:100%;padding:10px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:.875rem;transition:border-color .15s ease,box-shadow .15s ease}.mtx-image-edit-dialog__row input[type=text]:focus,.mtx-image-edit-dialog__row textarea:focus{outline:none;border-color:var(--mtx-primary);box-shadow:0 0 0 3px #3b82f61a}.mtx-image-edit-dialog__checkbox-row{display:flex;align-items:center;gap:8px;margin-bottom:12px}.mtx-image-edit-dialog__checkbox-row input[type=checkbox]{width:16px;height:16px;cursor:pointer}.mtx-image-edit-dialog__checkbox-row label{margin:0;cursor:pointer;font-size:.875rem;color:#334155}.mtx-image-edit-dialog__size-presets{display:flex;gap:8px;margin-top:8px}.mtx-btn-sm{padding:6px 12px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:4px;font-size:.75rem;cursor:pointer;transition:all .15s ease}.mtx-btn-sm:hover{background:#e2e8f0;border-color:#cbd5e1}.mtx-image-edit-dialog__alignment-options{display:flex;gap:8px;flex-wrap:wrap}.mtx-align-btn{flex:1;min-width:60px;display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;background:#f8fafc;border:2px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:all .2s ease}.mtx-align-btn:hover{background:#f1f5f9;border-color:#cbd5e1}.mtx-align-btn.is-active{background:#eff6ff;border-color:var(--mtx-primary)}.mtx-align-btn svg{width:24px;height:24px;color:#475569}.mtx-align-btn.is-active svg{color:var(--mtx-primary)}.mtx-align-btn span{font-size:.75rem;color:#64748b;font-weight:500}.mtx-image-edit-dialog__hint{margin-top:12px;padding:10px 12px;background:#fef3c7;border-left:3px solid #f59e0b;border-radius:4px}.mtx-image-edit-dialog__hint p{margin:0;font-size:.8125rem;color:#92400e}.mtx-image-edit-dialog__footer{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-top:1px solid #e2e8f0;background:#f8fafc;border-radius:0 0 12px 12px}.mtx-image-edit-dialog__btn{padding:10px 20px;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;border:1px solid transparent}.mtx-image-edit-dialog__btn--reset{background:#f1f5f9;color:#475569;border-color:#e2e8f0}.mtx-image-edit-dialog__btn--reset:hover{background:#e2e8f0}.mtx-image-edit-dialog__actions{display:flex;gap:8px}.mtx-image-edit-dialog__btn--cancel{background:#fff;color:#475569;border-color:#cbd5e1}.mtx-image-edit-dialog__btn--cancel:hover{background:#f8fafc}.mtx-image-edit-dialog__btn--apply{background:var(--mtx-primary);color:#fff;border-color:var(--mtx-primary)}.mtx-image-edit-dialog__btn--apply:hover{background:var(--mtx-primary-dark, #2563eb)}.mtx-dialog-overlay{position:fixed;inset:0;background:#00000080;z-index:9998;backdrop-filter:blur(2px)}.mtx-image-resize-overlay{position:absolute;inset:0;background-color:#3b82f61a;border:2px dashed var(--mtx-primary);pointer-events:none;z-index:9}.mtx-image-resize-handles{position:absolute;inset:0;pointer-events:none;display:none;z-index:10}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--selected .mtx-image-resize-handles,.mtx-content .tiptap figure.mtx-image-figure .mtx-image-wrapper.mtx-image--selected .mtx-image-resize-handles{display:block;pointer-events:auto}.mtx-resize-handle{position:absolute;width:12px;height:12px;background:var(--mtx-primary, #3b82f6);border:2px solid white;border-radius:50%;cursor:pointer;pointer-events:auto;box-shadow:0 2px 4px #0000004d;transition:transform .15s ease,background .15s ease;z-index:11}.mtx-resize-handle:hover{transform:scale(1.4);background:#2563eb}.mtx-resize-handle--nw{top:-6px;left:-6px;cursor:nwse-resize}.mtx-resize-handle--ne{top:-6px;right:-6px;cursor:nesw-resize}.mtx-resize-handle--sw{bottom:-6px;left:-6px;cursor:nesw-resize}.mtx-resize-handle--se{bottom:-6px;right:-6px;cursor:nwse-resize}.mtx-resize-handle--n{top:-6px;left:50%;transform:translate(-50%);cursor:ns-resize}.mtx-resize-handle--e{top:50%;right:-6px;transform:translateY(-50%);cursor:ew-resize}.mtx-resize-handle--s{bottom:-6px;left:50%;transform:translate(-50%);cursor:ns-resize}.mtx-resize-handle--w{top:50%;left:-6px;transform:translateY(-50%);cursor:ew-resize}.mtx-context-menu-backdrop{position:fixed;inset:0;z-index:99998;background:transparent}.mtx-image-context-menu{position:fixed;background:#fff;border-radius:8px;box-shadow:0 10px 40px #0003,0 0 0 1px #0000000d;z-index:99999;min-width:220px;max-width:280px;padding:8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;animation:mtxContextMenuFadeIn .15s ease}@keyframes mtxContextMenuFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.mtx-context-menu-section{padding:4px 0}.mtx-context-menu-label{font-size:.75rem;color:#64748b;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:8px 12px 4px}.mtx-context-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;background:transparent;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;color:#334155;text-align:left;transition:background .15s ease,color .15s ease}.mtx-context-menu-item:hover{background:#f1f5f9;color:#1e293b}.mtx-context-menu-item svg{flex-shrink:0;width:16px;height:16px;color:#64748b}.mtx-context-menu-item:hover svg{color:#3b82f6}.mtx-context-menu-item--danger{color:#dc2626}.mtx-context-menu-item--danger:hover{background:#fef2f2;color:#dc2626}.mtx-context-menu-item--danger:hover svg{color:#dc2626}.mtx-context-menu-divider{height:1px;background:#e2e8f0;margin:8px 0}.mtx-import-overlay{position:absolute;inset:0;background:#ffffffd9;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.mtx-import-overlay__spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:#2563eb;border-radius:50%;animation:mtx-spin .8s linear infinite}@keyframes mtx-spin{to{transform:rotate(360deg)}}.mtx-import-overlay__text{font-size:14px;color:#475569;font-weight:500;font-family:Segoe UI,system-ui,sans-serif}.mtx-import-error{position:absolute;top:8px;left:50%;transform:translate(-50%);z-index:110;display:flex;align-items:center;gap:12px;padding:10px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:13px;font-family:Segoe UI,system-ui,sans-serif;box-shadow:0 4px 12px #0000001a;max-width:90%}.mtx-import-error__close{flex-shrink:0;width:24px;height:24px;border:none;border-radius:4px;background:transparent;color:#991b1b;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .1s}.mtx-import-error__close:hover{background:#fecaca}.mtx-image-dialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(480px,90vw);max-height:85vh;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0003;z-index:9999;display:flex;flex-direction:column;overflow:hidden}.mtx-image-dialog__header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e2e8f0}.mtx-image-dialog__header h3{margin:0;font-size:16px;font-weight:600;color:#1e293b}.mtx-image-dialog__close{background:none;border:none;font-size:18px;cursor:pointer;color:#94a3b8;width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .15s}.mtx-image-dialog__close:hover{background:#f1f5f9;color:#334155}.mtx-image-dialog__tabs{display:flex;border-bottom:1px solid #e2e8f0;padding:0 20px;gap:4px}.mtx-image-dialog__tab{background:none;border:none;padding:10px 16px;font-size:13px;font-weight:500;color:#64748b;cursor:pointer;border-bottom:2px solid transparent;transition:all .15s;margin-bottom:-1px}.mtx-image-dialog__tab:hover{color:#334155}.mtx-image-dialog__tab.is-active{color:#3b82f6;border-bottom-color:#3b82f6}.mtx-image-dialog__body{padding:20px;overflow-y:auto;flex:1}.mtx-image-dialog__dropzone{border:2px dashed #cbd5e1;border-radius:10px;padding:32px;text-align:center;cursor:pointer;transition:all .2s;min-height:160px;display:flex;align-items:center;justify-content:center}.mtx-image-dialog__dropzone:hover{border-color:#3b82f6;background:#eff6ff}.mtx-image-dialog__dropzone.is-dragging{border-color:#3b82f6;background:#dbeafe;border-style:solid}.mtx-image-dialog__placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;color:#94a3b8}.mtx-image-dialog__placeholder svg{margin-bottom:4px;opacity:.5}.mtx-image-dialog__placeholder p{margin:0;font-size:14px;color:#475569}.mtx-image-dialog__placeholder span{font-size:12px;color:#94a3b8}.mtx-image-dialog__uploading{display:flex;flex-direction:column;align-items:center;gap:12px;color:#3b82f6}.mtx-image-dialog__uploading p{margin:0;font-size:14px}.mtx-image-dialog__preview img,.mtx-image-dialog__url-preview img{max-width:100%;max-height:200px;border-radius:8px;object-fit:contain}.mtx-image-dialog__url-form{display:flex;flex-direction:column;gap:8px}.mtx-image-dialog__url-form label,.mtx-image-dialog__alt label{font-size:13px;font-weight:500;color:#475569}.mtx-image-dialog__url-row{display:flex;gap:8px}.mtx-image-dialog__url-row input,.mtx-image-dialog__alt input{flex:1;padding:8px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:14px;outline:none;transition:border-color .15s}.mtx-image-dialog__url-row input:focus,.mtx-image-dialog__alt input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.mtx-image-dialog__url-preview{margin-top:12px;text-align:center;padding:12px;background:#f8fafc;border-radius:8px}.mtx-image-dialog__alt{margin-top:16px;display:flex;flex-direction:column;gap:6px}.mtx-image-dialog__error{margin-top:12px;padding:8px 12px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:13px}.mtx-image-dialog__footer{display:flex;justify-content:flex-end;gap:8px;padding:16px 20px;border-top:1px solid #e2e8f0}.mtx-image-dialog__btn{padding:8px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s;border:none}.mtx-image-dialog__btn--cancel{background:#f1f5f9;color:#475569}.mtx-image-dialog__btn--cancel:hover{background:#e2e8f0}.mtx-image-dialog__btn--insert{background:#3b82f6;color:#fff}.mtx-image-dialog__btn--insert:hover{background:#2563eb}.mtx-image-dialog__btn--insert:disabled{opacity:.5;cursor:not-allowed}
|
|
1
|
+
.mtx-graph-component{border:1px solid var(--mtx-border, #e2e8f0);border-radius:12px;padding:16px;background:#fff;display:inline-block;margin:16px 0;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;max-width:100%}.mtx-graph-controls{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.mtx-graph-input{width:100%;padding:10px 14px;border:1px solid #cbd5e1;border-radius:8px;font-family:JetBrains Mono,Consolas,monospace;font-size:14px;transition:all .2s ease;background:#f8fafc}.mtx-graph-input:focus{border-color:#3b82f6;background:#fff;outline:none;box-shadow:0 0 0 3px #3b82f626}.mtx-graph-domains{display:flex;flex-wrap:wrap;gap:16px;align-items:center}.mtx-graph-domain-group{display:flex;align-items:center;gap:8px;background:#f1f5f9;padding:6px 10px;border-radius:6px;border:1px solid #e2e8f0}.mtx-graph-domain-label{font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-right:4px}.mtx-graph-domain-separator{font-size:12px;color:#94a3b8}.mtx-graph-domain-input{width:60px;padding:4px 8px;border:1px solid #cbd5e1;border-radius:4px;font-size:13px;text-align:center;transition:border-color .2s}.mtx-graph-domain-input:focus{border-color:#3b82f6;outline:none}.mtx-graph-render text{font-family:ui-sans-serif,system-ui,sans-serif;font-size:10px;fill:#64748b}.mtx-graph-render .domain{stroke:#cbd5e1}.mtx-graph-render{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;background:#fff}.mtx-matrix-grid-selector{display:flex;flex-direction:column;align-items:center;padding:10px;background:#f8f9fa;border:1px solid #ddd;border-radius:4px;margin-bottom:10px;width:fit-content}.mtx-matrix-grid-label{font-size:12px;margin-bottom:5px;font-weight:600;color:#555;min-height:1.5em}.mtx-matrix-grid-squares{display:flex;flex-direction:column;gap:2px}.mtx-matrix-grid-row{display:flex;gap:2px}.mtx-matrix-grid-cell{width:12px;height:12px;background:#fff;border:1px solid #ccc;cursor:pointer}.mtx-matrix-grid-cell.is-active{background:#3b82f6;border-color:#2563eb}:root{--mtx-primary: #3b82f6;--mtx-primary-hover: #2563eb;--mtx-primary-dark: #1e40af;--mtx-primary-light: #eff6ff;--mtx-bg: #ffffff;--mtx-toolbar-bg: #fafbfc;--mtx-border: #d4d4d8;--mtx-hover: #f4f4f5;--mtx-text: #18181b;--mtx-text-secondary: #52525b;--mtx-text-muted: #a1a1aa;--mtx-success: #22c55e;--mtx-warning: #f59e0b;--mtx-danger: #ef4444;--mtx-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mtx-font-mono: "JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--mtx-min-height: 200px;--mtx-max-height: none;--mtx-radius: 6px;--mtx-radius-sm: 4px}.mtx-editor{position:relative;border:1px solid var(--mtx-border);border-radius:6px;background:var(--mtx-bg);box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;overflow:hidden;font-family:var(--mtx-font);transition:box-shadow .15s ease,border-color .15s ease}.mtx-editor:focus-within{border-color:var(--mtx-primary);box-shadow:0 0 0 2px #3b82f626,0 1px 3px #0000000f}.mtx-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:1px;padding:4px 6px;background:var(--mtx-toolbar-bg);border-bottom:1px solid var(--mtx-border);user-select:none;min-height:40px}.mtx-toolbar-group{display:flex;align-items:center;gap:1px}.mtx-toolbar-mode-switch{display:inline-flex;align-items:center;padding:2px;border:1px solid var(--mtx-border);border-radius:999px;background:#fff;gap:2px}.mtx-toolbar-mode-btn{border:none;background:transparent;color:var(--mtx-text-secondary);font-size:12px;font-weight:600;line-height:1;padding:7px 10px;border-radius:999px;cursor:pointer;transition:all .12s ease}.mtx-toolbar-mode-btn:hover{background:var(--mtx-hover);color:var(--mtx-text)}.mtx-toolbar-mode-btn.is-active{background:var(--mtx-primary-light);color:var(--mtx-primary)}.mtx-toolbar-divider{width:1px;height:20px;background:var(--mtx-border);margin:0 4px;flex-shrink:0}.mtx-toolbar-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:none;border-radius:4px;background:transparent;color:var(--mtx-text-secondary);cursor:pointer;transition:all .12s ease;position:relative}.mtx-toolbar-btn:hover{background:var(--mtx-hover);color:var(--mtx-text)}.mtx-toolbar-btn.is-active{background:var(--mtx-primary-light);color:var(--mtx-primary)}.mtx-toolbar-btn:disabled{opacity:.35;cursor:not-allowed}.mtx-toolbar-btn:disabled:hover{background:transparent}.mtx-toolbar-btn:active:not(:disabled){transform:scale(.96)}.mtx-toolbar-btn[data-tooltip]{position:relative}.mtx-toolbar-btn[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px);padding:6px 10px;background:#1e293b;color:#fff;font-size:12px;font-weight:500;white-space:nowrap;border-radius:6px;opacity:0;visibility:hidden;transition:all .15s ease;pointer-events:none;z-index:1000;box-shadow:0 4px 12px #00000026}.mtx-toolbar-btn[data-tooltip]:before{content:"";position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%) translateY(4px);border-width:4px;border-style:solid;border-color:#1e293b transparent transparent transparent;opacity:0;visibility:hidden;transition:all .15s ease;pointer-events:none;z-index:1000}.mtx-toolbar-btn[data-tooltip]:hover:after,.mtx-toolbar-btn[data-tooltip]:hover:before{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.mtx-toolbar-btn:focus-visible,.mtx-toolbar-mode-btn:focus-visible,.mtx-toolbar-select:focus-visible,.mtx-math-toolbar__action-btn:focus-visible,.mtx-symbol-palette__close:focus-visible,.mtx-symbol-palette__item:focus-visible,.mtx-template-card:focus-visible,.mtx-modal-close:focus-visible,.mtx-btn:focus-visible,.mtx-width-unit:focus-visible,.mtx-color-picker-input:focus-visible,.mtx-align-btn:focus-visible,.mtx-btn-sm:focus-visible,.mtx-image-dialog__tab:focus-visible,.mtx-image-dialog__close:focus-visible,.mtx-image-edit-dialog__btn:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.mtx-toolbar-btn--wide{width:34px}.mtx-toolbar-btn--accent{color:var(--mtx-primary)}.mtx-toolbar-btn--accent:hover{background:var(--mtx-primary-light);color:var(--mtx-primary)}.mtx-toolbar-btn--accent-secondary{color:#8b5cf6}.mtx-toolbar-btn--accent-secondary:hover{background:#f5f3ff;color:#7c3aed}.mtx-toolbar-btn svg{flex-shrink:0}.mtx-toolbar-select{height:30px;padding:0 8px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--mtx-text-secondary);font-size:13px;font-family:inherit;cursor:pointer;transition:all .12s ease;outline:none}.mtx-toolbar-select:hover{background:var(--mtx-hover);color:var(--mtx-text)}.mtx-toolbar-select:focus{background:#fff;border-color:var(--mtx-primary);color:var(--mtx-text)}.mtx-font-select{min-width:130px}.mtx-font-size-select{min-width:70px}.mtx-color-btn{padding:4px}.mtx-color-picker{width:0;height:0;opacity:0;position:absolute;pointer-events:none}.mtx-highlight{background-color:#fef08a;padding:2px 4px;border-radius:2px;transition:background-color .15s ease}p[data-indent],h1[data-indent],h2[data-indent],h3[data-indent],h4[data-indent],p.tt-indent,h1.tt-indent,h2.tt-indent,h3.tt-indent,h4.tt-indent,li[data-indent]{margin-left:0}p[data-indent="1"],h1[data-indent="1"],h2[data-indent="1"],h3[data-indent="1"],h4[data-indent="1"],li[data-indent="1"]{margin-left:24px}p[data-indent="2"],h1[data-indent="2"],h2[data-indent="2"],h3[data-indent="2"],h4[data-indent="2"],p.tt-indent-2,h1.tt-indent-2,h2.tt-indent-2,h3.tt-indent-2,h4.tt-indent-2,li.tt-indent-2,li[data-indent="2"]{margin-left:48px}p[data-indent="3"],h1[data-indent="3"],h2[data-indent="3"],h3[data-indent="3"],h4[data-indent="3"],p.tt-indent-3,h1.tt-indent-3,h2.tt-indent-3,h3.tt-indent-3,h4.tt-indent-3,li.tt-indent-3,li[data-indent="3"]{margin-left:72px}p[data-indent="4"],h1[data-indent="4"],h2[data-indent="4"],h3[data-indent="4"],h4[data-indent="4"],li[data-indent="4"]{margin-left:96px}p[data-indent="5"],h1[data-indent="5"],h2[data-indent="5"],h3[data-indent="5"],h4[data-indent="5"],li[data-indent="5"]{margin-left:120px}p[data-indent="6"],h1[data-indent="6"],h2[data-indent="6"],h3[data-indent="6"],h4[data-indent="6"],li[data-indent="6"]{margin-left:144px}p[data-indent="7"],h1[data-indent="7"],h2[data-indent="7"],h3[data-indent="7"],h4[data-indent="7"],li[data-indent="7"]{margin-left:168px}p[data-indent="8"],h1[data-indent="8"],h2[data-indent="8"],h3[data-indent="8"],h4[data-indent="8"],li[data-indent="8"]{margin-left:192px}p[data-indent="9"],h1[data-indent="9"],h2[data-indent="9"],h3[data-indent="9"],h4[data-indent="9"],li[data-indent="9"]{margin-left:216px}p[data-indent="10"],h1[data-indent="10"],h2[data-indent="10"],h3[data-indent="10"],h4[data-indent="10"],li[data-indent="10"]{margin-left:240px}p[data-indent],p.tt-indent{margin-left:0;text-indent:0}p[data-indent="1"]{margin-left:0;text-indent:24px}p[data-indent="2"],p.tt-indent-2{margin-left:0;text-indent:48px}p[data-indent="3"],p.tt-indent-3{margin-left:0;text-indent:72px}p[data-indent="4"]{margin-left:0;text-indent:96px}p[data-indent="5"]{margin-left:0;text-indent:120px}p[data-indent="6"]{margin-left:0;text-indent:144px}p[data-indent="7"]{margin-left:0;text-indent:168px}p[data-indent="8"]{margin-left:0;text-indent:192px}p[data-indent="9"]{margin-left:0;text-indent:216px}p[data-indent="10"]{margin-left:0;text-indent:240px}ul[data-type=taskList],.mtx-task-list{list-style:none;padding-left:0;margin:.6em 0}.mtx-task-item{display:flex;align-items:flex-start;gap:8px;margin:.3em 0}.mtx-task-item>label{display:inline-flex;align-items:center;padding-top:2px}.mtx-task-item>div{flex:1;min-width:0}.mtx-task-item input[type=checkbox]{width:14px;height:14px}.mtx-word-count{display:flex;gap:16px;padding:6px 12px;font-size:11px;color:#64748b;border-top:1px solid #e2e8f0;background:#f8fafc;font-family:Segoe UI,system-ui,sans-serif}.mtx-word-count span{font-weight:500}.mtx-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:mtx-fade-in .15s ease}@keyframes mtx-fade-in{0%{opacity:0}to{opacity:1}}.mtx-modal-dialog{background:#fff;border-radius:8px;box-shadow:0 10px 40px #0003;min-width:400px;max-width:90vw;max-height:90vh;overflow:hidden;animation:mtx-slide-up .2s ease}@keyframes mtx-slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.mtx-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.mtx-modal-title{margin:0;font-size:16px;font-weight:600;color:#1e293b;font-family:Segoe UI,system-ui,sans-serif}.mtx-modal-close{width:28px;height:28px;border:none;background:transparent;border-radius:4px;cursor:pointer;color:#64748b;display:flex;align-items:center;justify-content:center;transition:all .12s ease}.mtx-modal-close:hover{background:#e2e8f0;color:#1e293b}.mtx-modal-dialog:focus-visible,.mtx-image-dialog:focus-visible,.mtx-image-edit-dialog:focus-visible{outline:2px solid rgba(37,99,235,.6);outline-offset:2px}.mtx-modal-body{padding:20px;max-height:calc(90vh - 140px);overflow-y:auto}.mtx-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:16px 20px;border-top:1px solid #e2e8f0;background:#f8fafc}.mtx-form-group{margin-bottom:16px}.mtx-form-group:last-child{margin-bottom:0}.mtx-form-label{display:block;margin-bottom:6px;font-size:13px;font-weight:500;color:#475569;font-family:Segoe UI,system-ui,sans-serif}.mtx-required{color:#ef4444}.mtx-form-hint{font-weight:400;color:#94a3b8;font-size:11px;margin-left:4px}.mtx-form-input{width:100%;padding:10px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:14px;font-family:inherit;color:#1e293b;background:#fff;transition:all .12s ease;outline:none}.mtx-form-input:hover{border-color:#94a3b8}.mtx-form-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.mtx-form-input::placeholder{color:#94a3b8}.mtx-input-error{border-color:#ef4444!important}.mtx-input-error:focus{box-shadow:0 0 0 3px #ef44441a!important}.mtx-form-error{margin-top:6px;font-size:12px;color:#ef4444;font-family:Segoe UI,system-ui,sans-serif}.mtx-form-checkbox{margin-top:8px}.mtx-checkbox-label{display:flex;align-items:center;gap:8px;font-size:13px;color:#475569;cursor:pointer;user-select:none}.mtx-checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#3b82f6}.mtx-btn{padding:8px 16px;border:none;border-radius:6px;font-size:13px;font-weight:500;font-family:Segoe UI,system-ui,sans-serif;cursor:pointer;transition:all .12s ease;outline:none}.mtx-btn-primary{background:#3b82f6;color:#fff}.mtx-btn-primary:hover{background:#2563eb;box-shadow:0 2px 8px #3b82f64d}.mtx-btn-primary:active{transform:scale(.98);box-shadow:0 1px 4px #3b82f633}.mtx-btn-secondary{background:#e2e8f0;color:#475569}.mtx-btn-secondary:hover{background:#cbd5e1;color:#1e293b}.mtx-btn-secondary:active{transform:scale(.98)}.mtx-btn-danger{background:#fee2e2;color:#dc2626}.mtx-btn-danger:hover{background:#fecaca;color:#b91c1c}.mtx-btn-danger:active{transform:scale(.98)}.mtx-link-dialog{min-width:450px}.mtx-insert-table-dialog{min-width:400px}.mtx-table-templates-dialog{min-width:600px;max-width:800px}.mtx-templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;max-height:400px;overflow-y:auto;padding:8px}.mtx-template-dialog-hint{margin:0 0 12px;font-size:13px;color:#64748b}.mtx-table-template-card{appearance:none;width:100%;padding:0;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .15s ease;overflow:hidden;background:#fff;text-align:left}.mtx-table-template-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f633;transform:translateY(-2px)}.mtx-template-preview{padding:12px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.mtx-template-table{display:table;width:100%;border-collapse:collapse;font-size:8px}.mtx-template-row{display:table-row}.mtx-template-cell{display:table-cell;width:33%;height:20px;background:#fff;padding:4px}.mtx-template-header{background:#e2e8f0}.mtx-template-light .mtx-template-header{background:#f1f5f9}.mtx-template-dark .mtx-template-header{background:#1e293b;color:#fff}.mtx-template-blue .mtx-template-header{background:#3b82f6;color:#fff}.mtx-template-striped .mtx-template-row:nth-child(2n) .mtx-template-cell{background:#f8fafc}.mtx-template-minimal .mtx-template-cell{border:none;border-bottom:1px solid #cbd5e1}.mtx-template-info{padding:12px}.mtx-template-name{margin:0 0 4px;font-size:14px;font-weight:600;color:#1e293b}.mtx-template-description{margin:0;font-size:12px;color:#64748b}.mtx-number-input-wrapper{display:flex;align-items:center;gap:0}.mtx-number-btn{width:36px;height:38px;border:1px solid #cbd5e1;background:#f8fafc;color:#475569;font-size:18px;font-weight:600;cursor:pointer;transition:all .12s ease;display:flex;align-items:center;justify-content:center}.mtx-number-btn:first-child{border-radius:6px 0 0 6px;border-right:none}.mtx-number-btn:last-child{border-radius:0 6px 6px 0;border-left:none}.mtx-number-btn:hover:not(:disabled){background:#e2e8f0;color:#1e293b}.mtx-number-btn:disabled{opacity:.4;cursor:not-allowed}.mtx-number-input{width:60px!important;text-align:center;border-radius:0!important;border-left:none!important;border-right:none!important;-moz-appearance:textfield}.mtx-number-input::-webkit-outer-spin-button,.mtx-number-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.mtx-table-preview{margin-top:16px;padding:16px;background:#f1f5f9;border-radius:6px}.mtx-table-preview-label{font-size:12px;font-weight:600;color:#64748b;margin-bottom:12px;text-align:center}.mtx-table-preview-grid{display:grid;gap:2px;max-width:200px;margin:0 auto}.mtx-preview-cell{aspect-ratio:1;background:#cbd5e1;border:1px solid #94a3b8;border-radius:2px}.mtx-preview-header{background:#3b82f6;border-color:#2563eb}.mtx-cell-properties-dialog{min-width:400px}.mtx-width-input-wrapper{display:flex;gap:8px}.mtx-width-input{flex:1}.mtx-width-unit{width:70px;padding:10px 8px;border:1px solid #cbd5e1;border-radius:6px;font-size:14px;background:#fff;cursor:pointer;outline:none}.mtx-width-unit:hover{border-color:#94a3b8}.mtx-width-unit:focus{border-color:#3b82f6}.mtx-color-input-wrapper{display:flex;gap:8px}.mtx-color-picker-input{width:50px;height:38px;border:1px solid #cbd5e1;border-radius:6px;cursor:pointer;background:#fff}.mtx-color-text-input{flex:1}.mtx-align-buttons{display:flex;gap:4px}.mtx-table-menu-overlay{position:fixed;inset:0;width:100vw;height:100vh;border:none;padding:0;z-index:1000;background:transparent;cursor:default}.mtx-table-menu-dropdown{position:fixed;z-index:1000;left:var(--mtx-dropdown-x, 0);top:var(--mtx-dropdown-y, 0)}.mtx-toolbar-btn--dropdown{width:20px;padding:0 2px}.mtx-toolbar-btn--dropdown svg{width:12px;height:12px}.mtx-table-menu{position:absolute;background:#fff;border-radius:8px;box-shadow:0 10px 40px #0003;min-width:220px;padding:8px 0;animation:mtx-slide-down .15s ease;overflow:hidden}@keyframes mtx-slide-down{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.mtx-table-menu-group{padding:4px 0;border-bottom:1px solid #e2e8f0}.mtx-table-menu-label{padding:6px 16px 4px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#94a3b8}.mtx-table-menu-group:last-child{border-bottom:none}.mtx-table-menu-item{width:100%;padding:10px 16px;border:none;background:transparent;display:flex;align-items:center;gap:12px;font-size:13px;color:#475569;cursor:pointer;transition:all .12s ease;text-align:left}.mtx-table-menu-item:hover{background:#f1f5f9;color:#1e293b}.mtx-table-menu-item.is-active{background:#eff6ff;color:#1d4ed8;font-weight:600}.mtx-table-menu-item--danger{color:#dc2626}.mtx-table-menu-item--danger:hover{background:#fee2e2;color:#b91c1c}.mtx-table-menu-icon{font-size:16px;width:20px;display:flex;align-items:center;justify-content:center}.mtx-table{border-collapse:collapse;width:100%;margin:12px 0;table-layout:fixed;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 0 0 1px #dbe4ef}.mtx-table td,.mtx-table th{border:1px solid #cbd5e1;padding:8px 12px;min-width:50px;position:relative;vertical-align:top;transition:background-color .12s ease,box-shadow .12s ease}.mtx-table th{background:#f1f5f9;font-weight:600;text-align:left}.mtx-table td:first-child,.mtx-table th:first-child{border-left-width:1px}.mtx-table tr:first-child td,.mtx-table tr:first-child th{border-top-width:1px}.ProseMirror .selectedCell{background:#3b82f626!important;border-color:#3b82f6!important;border-style:dashed!important;box-shadow:inset 0 0 0 1px #3b82f64d!important}.mtx-table.mtx-table--plain tbody tr:nth-child(2n) td{background-image:linear-gradient(to bottom,#f8fafc59,#f8fafc59)}.mtx-table.mtx-table--plain{box-shadow:0 0 0 1px #dbe4ef}.mtx-table.mtx-table--light th{background:#f8fafc;color:#334155}.mtx-table.mtx-table--dark{box-shadow:0 0 0 1px #1e293b}.mtx-table.mtx-table--dark th{background:#1e293b;color:#f8fafc;border-color:#334155}.mtx-table.mtx-table--blue{box-shadow:0 0 0 1px #93c5fd}.mtx-table.mtx-table--blue th{background:linear-gradient(180deg,#3b82f6,#2563eb);color:#fff;border-color:#2563eb}.mtx-table.mtx-table--blue tbody tr:nth-child(2n) td,.mtx-table.mtx-table--striped tbody tr:nth-child(2n) td{background:#f8fbff}.mtx-table.mtx-table--minimal{box-shadow:none}.mtx-table.mtx-table--minimal td,.mtx-table.mtx-table--minimal th{border-left:none;border-right:none}.ProseMirror table{position:relative}.ProseMirror table td,.ProseMirror table th{position:relative;cursor:text}.ProseMirror table td:not(:last-child):after,.ProseMirror table th:not(:last-child):after{content:"";position:absolute;right:-2px;top:0;bottom:0;width:4px;background:#3b82f626;z-index:5;transition:background .15s ease;pointer-events:none}.ProseMirror table td:not(:last-child):hover:after,.ProseMirror table th:not(:last-child):hover:after{background:#3b82f659}.ProseMirror table:focus-within td:not(:last-child):after,.ProseMirror table:focus-within th:not(:last-child):after{background:#3b82f633}.ProseMirror table:focus-within td:not(:last-child):hover:after,.ProseMirror table:focus-within th:not(:last-child):hover:after{background:#3b82f673}.ProseMirror table .column-resize-handle{position:absolute;top:0;bottom:0;width:10px;background:transparent;cursor:col-resize;z-index:20;transition:background .12s ease}.ProseMirror table .column-resize-handle:before{content:"";position:absolute;left:50%;top:4px;bottom:4px;width:1px;background:#3b82f640;transform:translate(-50%);transition:all .12s ease;border-radius:1px;pointer-events:none}.ProseMirror table .column-resize-handle:hover{background:#3b82f614}.ProseMirror table .column-resize-handle:hover:before{background:#3b82f6;width:2px}.ProseMirror table .column-resize-handle.is-active{background:#3b82f61f}.ProseMirror table .column-resize-handle.is-active:before{background:#2563eb;width:2px}.ProseMirror .column-resize-dragging{position:absolute;top:0;bottom:0;left:0;width:2px;background:#2563eb;z-index:30;pointer-events:none;box-shadow:0 0 8px #2563eb66}.ProseMirror .tableWrapper[data-align=center]{margin-left:auto;margin-right:auto}.ProseMirror .tableWrapper[data-align=right]{margin-left:auto;margin-right:0}.ProseMirror .tableWrapper[data-align=left]{margin-left:0;margin-right:auto}@media (max-width: 640px){.mtx-modal-dialog{min-width:calc(100vw - 32px);max-width:calc(100vw - 32px)}.mtx-link-dialog,.mtx-insert-table-dialog,.mtx-cell-properties-dialog{min-width:calc(100vw - 32px)}.mtx-modal-footer{flex-wrap:wrap}.mtx-btn{flex:1;min-width:100px}.mtx-table-menu{left:16px!important;right:16px!important;min-width:auto!important}}.mtx-math-toolbar{display:flex;align-items:center;gap:4px;padding:3px 6px;background:#f5f5f5;border-bottom:1px solid #ccc;user-select:none;min-height:36px}.mtx-math-toolbar__label{display:flex;align-items:center;gap:4px;font-size:10px;font-weight:700;color:#555;text-transform:uppercase;padding:0 6px;height:24px;background:#e0e0e0;border:1px solid #ccc;border-radius:3px;margin-right:4px}.mtx-math-toolbar__search-wrap{display:inline-flex;align-items:center;flex-shrink:0}.mtx-math-toolbar__search{width:140px;height:26px;padding:0 10px;border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#334155;font-size:12px;outline:none}.mtx-math-toolbar__search::placeholder{color:#94a3b8}.mtx-math-toolbar__search:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa2e}.mtx-math-toolbar__buttons{display:flex;align-items:center;gap:1px;flex-wrap:nowrap;overflow-x:auto;flex:1;min-width:0;padding-bottom:2px}.mtx-math-toolbar__section{display:inline-flex;align-items:center;gap:2px;padding-right:6px;margin-right:6px;border-right:1px solid #d6d6d6;flex-shrink:0}.mtx-math-toolbar__section-toggle{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 8px;border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#475569;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;flex-shrink:0}.mtx-math-toolbar__section-toggle:hover{background:#f8fafc;border-color:#94a3b8;color:#1e293b}.mtx-math-toolbar__section-toggle.is-active{background:#dbeafe;border-color:#93c5fd;color:#1d4ed8}.mtx-math-toolbar__section-toggle svg{transition:transform .15s ease}.mtx-math-toolbar__section-toggle.is-active svg{transform:rotate(180deg)}.mtx-math-toolbar__section:last-child{margin-right:0;padding-right:0;border-right:none}.mtx-math-toolbar__section-label{display:inline-flex;align-items:center;height:22px;padding:0 6px;margin-right:3px;border-radius:999px;background:#e2e8f0;color:#475569;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0}.mtx-math-toolbar__section-divider{width:1px;height:20px;margin:0 3px;background:#cbd5e1;flex-shrink:0}.mtx-math-toolbar__empty{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;color:#64748b;font-size:12px;font-style:italic}.mtx-math-toolbar__buttons::-webkit-scrollbar{height:3px;background:transparent}.mtx-math-toolbar__buttons::-webkit-scrollbar-thumb{background:#ccc;border-radius:2px}.mtx-math-btn{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 2px;border:1px solid transparent;border-radius:2px;background:transparent;color:#333;cursor:pointer;font-size:13px;font-weight:400;font-family:Times New Roman,serif;transition:all .1s ease}.mtx-math-btn:hover{background:#e8e8e8;border-color:#aaa;color:#000;box-shadow:0 1px 1px #0000001a}.mtx-math-btn:active{background:#d0d0d0;border-color:#888;box-shadow:inset 0 1px 1px #0000001a;transform:scale(.96)}.mtx-math-btn__label{line-height:1}.mtx-math-btn[data-tooltip],.mtx-math-toolbar__action-btn[data-tooltip]{position:relative}.mtx-math-btn[data-tooltip]:after,.mtx-math-toolbar__action-btn[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%) translateY(4px);padding:5px 8px;background:#1e293b;color:#fff;font-size:11px;font-weight:500;white-space:nowrap;border-radius:5px;opacity:0;visibility:hidden;transition:all .12s ease;pointer-events:none;z-index:1000;box-shadow:0 3px 10px #00000026;font-family:Segoe UI,system-ui,sans-serif}.mtx-math-btn[data-tooltip]:before,.mtx-math-toolbar__action-btn[data-tooltip]:before{content:"";position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%) translateY(4px);border-width:4px;border-style:solid;border-color:#1e293b transparent transparent transparent;opacity:0;visibility:hidden;transition:all .12s ease;pointer-events:none;z-index:1000}.mtx-math-btn[data-tooltip]:hover:after,.mtx-math-btn[data-tooltip]:hover:before,.mtx-math-toolbar__action-btn[data-tooltip]:hover:after,.mtx-math-toolbar__action-btn[data-tooltip]:hover:before{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.mtx-math-toolbar__actions{display:flex;align-items:center;gap:4px;margin-left:auto;padding-left:6px;border-left:1px solid #ccc;flex-shrink:0}.mtx-math-toolbar__action-btn{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border:1px solid #aaa;border-radius:2px;background:#fff;color:#444;cursor:pointer;font-size:11px;font-weight:600;font-family:Segoe UI,system-ui,sans-serif;transition:all .1s ease}.mtx-math-toolbar__action-btn:hover{background:#f0f0f0;border-color:#888;color:#222}.mtx-symbol-palette{z-index:100;width:360px;max-height:420px;background:#fff;border:1px solid var(--mtx-border);border-radius:8px;box-shadow:0 10px 40px #0000001f,0 2px 10px #00000014;overflow:hidden;animation:mtx-fadeIn .15s ease}@keyframes mtx-fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.mtx-symbol-palette__header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--mtx-border);background:#f9fafb}.mtx-symbol-palette__title{font-size:13px;font-weight:600;color:var(--mtx-text)}.mtx-symbol-palette__close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:4px;background:transparent;color:var(--mtx-text-secondary);cursor:pointer;font-size:16px;line-height:1}.mtx-symbol-palette__close:hover{background:#fee2e2;color:#ef4444}.mtx-symbol-palette__search{display:block;width:100%;padding:8px 12px;border:none;border-bottom:1px solid var(--mtx-border);font-size:13px;font-family:var(--mtx-font);background:#fff;outline:none}.mtx-symbol-palette__search:focus{background:#eff6ff}.mtx-symbol-palette__search::placeholder{color:#94a3b8}.mtx-symbol-palette__body{overflow-y:auto;max-height:330px;padding:8px}.mtx-symbol-palette__category{margin-bottom:8px}.mtx-symbol-palette__category-title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--mtx-text-secondary);padding:4px 4px 6px}.mtx-symbol-palette__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(36px,1fr));gap:2px}.mtx-symbol-palette__item{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--mtx-text);cursor:pointer;font-size:16px;font-family:"Cambria Math",serif;transition:all .1s ease}.mtx-symbol-palette__item:hover{background:var(--mtx-primary-light);border-color:var(--mtx-primary);color:var(--mtx-primary);transform:scale(1.1)}.mtx-content{position:relative}.mtx-content .tiptap{padding:16px 20px;min-height:var(--mtx-min-height, 200px);outline:none;font-size:15px;line-height:1.7;color:var(--mtx-text);caret-color:#2563eb;white-space:pre-wrap}.mtx-content .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:#94a3b8;font-style:italic;pointer-events:none;float:left;height:0}.mtx-content .tiptap h1{font-size:1.8em;font-weight:700;margin:.6em 0 .4em;color:#0f172a;line-height:1.3;letter-spacing:-.02em}.mtx-content .tiptap h2{font-size:1.4em;font-weight:600;margin:.5em 0 .3em;color:#1e293b;line-height:1.35}.mtx-content .tiptap h3{font-size:1.15em;font-weight:600;margin:.5em 0 .3em;color:#334155;line-height:1.4}.mtx-content .tiptap ul,.mtx-content .tiptap ol{padding-left:24px;margin:.5em 0}.mtx-content .tiptap li{margin:.15em 0}.mtx-content .tiptap li p{margin:0}.mtx-content .tiptap a{color:var(--mtx-primary);text-decoration:underline;text-decoration-color:#3b82f64d;text-underline-offset:2px;cursor:pointer;transition:text-decoration-color .15s}.mtx-content .tiptap a:hover{text-decoration-color:var(--mtx-primary)}.mtx-content .tiptap blockquote{border-left:3px solid var(--mtx-primary);padding:8px 16px;margin:.8em 0;background:#eff6ff;border-radius:0 6px 6px 0;color:#1e40af;font-style:italic}.mtx-content .tiptap p[data-indent],.mtx-content .tiptap h1[data-indent],.mtx-content .tiptap h2[data-indent],.mtx-content .tiptap h3[data-indent],.mtx-content .tiptap h4[data-indent],.mtx-content .tiptap p.tt-indent,.mtx-content .tiptap h1.tt-indent,.mtx-content .tiptap h2.tt-indent,.mtx-content .tiptap h3.tt-indent,.mtx-content .tiptap h4.tt-indent,.mtx-content .tiptap li[data-indent]{position:relative}.mtx-math-btn--recent{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.mtx-math-btn--recent:hover{background:#dbeafe;border-color:#93c5fd}.mtx-content .tiptap p[data-indent="1"],.mtx-content .tiptap h1[data-indent="1"],.mtx-content .tiptap h2[data-indent="1"],.mtx-content .tiptap h3[data-indent="1"],.mtx-content .tiptap h4[data-indent="1"],.mtx-content .tiptap p.tt-indent-1,.mtx-content .tiptap h1.tt-indent-1,.mtx-content .tiptap h2.tt-indent-1,.mtx-content .tiptap h3.tt-indent-1,.mtx-content .tiptap h4.tt-indent-1,.mtx-content .tiptap li.tt-indent-1{margin-left:2em}.mtx-content .tiptap p[data-indent="2"],.mtx-content .tiptap h1[data-indent="2"],.mtx-content .tiptap h2[data-indent="2"],.mtx-content .tiptap h3[data-indent="2"],.mtx-content .tiptap h4[data-indent="2"],.mtx-content .tiptap p.tt-indent-2,.mtx-content .tiptap h1.tt-indent-2,.mtx-content .tiptap h2.tt-indent-2,.mtx-content .tiptap h3.tt-indent-2,.mtx-content .tiptap h4.tt-indent-2,.mtx-content .tiptap li.tt-indent-2{margin-left:4em}.mtx-content .tiptap p[data-indent="3"],.mtx-content .tiptap h1[data-indent="3"],.mtx-content .tiptap h2[data-indent="3"],.mtx-content .tiptap h3[data-indent="3"],.mtx-content .tiptap h4[data-indent="3"],.mtx-content .tiptap p.tt-indent-3,.mtx-content .tiptap h1.tt-indent-3,.mtx-content .tiptap h2.tt-indent-3,.mtx-content .tiptap h3.tt-indent-3,.mtx-content .tiptap h4.tt-indent-3,.mtx-content .tiptap li.tt-indent-3{margin-left:6em}.mtx-content .tiptap p[data-indent="4"],.mtx-content .tiptap h1[data-indent="4"],.mtx-content .tiptap h2[data-indent="4"],.mtx-content .tiptap h3[data-indent="4"],.mtx-content .tiptap h4[data-indent="4"],.mtx-content .tiptap p.tt-indent-4,.mtx-content .tiptap h1.tt-indent-4,.mtx-content .tiptap h2.tt-indent-4,.mtx-content .tiptap h3.tt-indent-4,.mtx-content .tiptap h4.tt-indent-4,.mtx-content .tiptap li.tt-indent-4{margin-left:8em}.mtx-content .tiptap p[data-indent="5"],.mtx-content .tiptap h1[data-indent="5"],.mtx-content .tiptap h2[data-indent="5"],.mtx-content .tiptap h3[data-indent="5"],.mtx-content .tiptap h4[data-indent="5"],.mtx-content .tiptap p.tt-indent-5,.mtx-content .tiptap h1.tt-indent-5,.mtx-content .tiptap h2.tt-indent-5,.mtx-content .tiptap h3.tt-indent-5,.mtx-content .tiptap h4.tt-indent-5,.mtx-content .tiptap li.tt-indent-5{margin-left:10em}.mtx-content .tiptap p[data-indent="6"],.mtx-content .tiptap h1[data-indent="6"],.mtx-content .tiptap h2[data-indent="6"],.mtx-content .tiptap h3[data-indent="6"],.mtx-content .tiptap h4[data-indent="6"],.mtx-content .tiptap p.tt-indent-6,.mtx-content .tiptap h1.tt-indent-6,.mtx-content .tiptap h2.tt-indent-6,.mtx-content .tiptap h3.tt-indent-6,.mtx-content .tiptap h4.tt-indent-6,.mtx-content .tiptap li.tt-indent-6{margin-left:12em}.mtx-content .tiptap p[data-indent="7"],.mtx-content .tiptap h1[data-indent="7"],.mtx-content .tiptap h2[data-indent="7"],.mtx-content .tiptap h3[data-indent="7"],.mtx-content .tiptap h4[data-indent="7"],.mtx-content .tiptap p.tt-indent-7,.mtx-content .tiptap h1.tt-indent-7,.mtx-content .tiptap h2.tt-indent-7,.mtx-content .tiptap h3.tt-indent-7,.mtx-content .tiptap h4.tt-indent-7,.mtx-content .tiptap li.tt-indent-7{margin-left:14em}.mtx-content .tiptap p[data-indent],.mtx-content .tiptap p.tt-indent{margin-left:0;text-indent:0}.mtx-content .tiptap p[data-indent="1"],.mtx-content .tiptap p.tt-indent-1{margin-left:0;text-indent:2em}.mtx-content .tiptap p[data-indent="2"],.mtx-content .tiptap p.tt-indent-2{margin-left:0;text-indent:4em}.mtx-content .tiptap p[data-indent="3"],.mtx-content .tiptap p.tt-indent-3{margin-left:0;text-indent:6em}.mtx-content .tiptap p[data-indent="4"],.mtx-content .tiptap p.tt-indent-4{margin-left:0;text-indent:8em}.mtx-content .tiptap p[data-indent="5"],.mtx-content .tiptap p.tt-indent-5{margin-left:0;text-indent:10em}.mtx-content .tiptap p[data-indent="6"],.mtx-content .tiptap p.tt-indent-6{margin-left:0;text-indent:12em}.mtx-content .tiptap p[data-indent="7"],.mtx-content .tiptap p.tt-indent-7{margin-left:0;text-indent:14em}.mtx-content .tiptap code{background:#f1f5f9;color:#e11d48;padding:1px 5px;border-radius:3px;font-size:.9em;font-family:JetBrains Mono,Fira Code,Cascadia Code,monospace}.mtx-content .tiptap pre{background:#1e293b;color:#e2e8f0;padding:16px;border-radius:6px;overflow-x:auto;margin:.8em 0;font-family:JetBrains Mono,Fira Code,Cascadia Code,monospace;font-size:.85em;line-height:1.6}.mtx-content .tiptap pre code{background:none;color:inherit;padding:0;border-radius:0;font-size:inherit}.mtx-content .tiptap pre .hljs-keyword{color:#c678dd}.mtx-content .tiptap pre .hljs-string{color:#98c379}.mtx-content .tiptap pre .hljs-number{color:#d19a66}.mtx-content .tiptap pre .hljs-comment{color:#5c6370;font-style:italic}.mtx-content .tiptap pre .hljs-function{color:#61afef}.mtx-content .tiptap pre .hljs-variable{color:#e06c75}.mtx-content .tiptap pre .hljs-operator{color:#56b6c2}.mtx-content .tiptap pre .hljs-class{color:#e5c07b}.mtx-content .tiptap pre .hljs-title{color:#61afef}.mtx-content .tiptap pre .hljs-params{color:#e06c75}.mtx-content .tiptap pre .hljs-built_in{color:#56b6c2}.mtx-content .tiptap pre .hljs-type{color:#e5c07b}.mtx-content .tiptap pre .hljs-literal{color:#d19a66}.mtx-content .tiptap pre .hljs-tag{color:#e06c75}.mtx-content .tiptap pre .hljs-attr{color:#d19a66}.mtx-content .tiptap pre .hljs-attribute{color:#98c379}.mtx-content .tiptap pre .hljs-symbol,.mtx-content .tiptap pre .hljs-bullet{color:#d19a66}.mtx-content .tiptap pre .hljs-link{color:#61afef}.mtx-content .tiptap pre .hljs-emphasis{font-style:italic}.mtx-content .tiptap pre .hljs-strong{font-weight:700}.mtx-content .tiptap pre .hljs-quote{color:#5c6370}.mtx-details{border:1px solid #e2e8f0;border-radius:8px;margin:1em 0;overflow:hidden;background:#f8fafc}.mtx-details-summary{padding:.75em 1em;background:#f1f5f9;cursor:pointer;font-weight:600;color:#334155;user-select:none;list-style:none;position:relative}.mtx-details-summary::-webkit-details-marker{display:none}.mtx-details-summary:before{content:"▶";display:inline-block;margin-right:.5em;transition:transform .2s ease;font-size:.8em}.mtx-details[open]>.mtx-details-summary:before{transform:rotate(90deg)}.mtx-details-summary:hover{background:#e2e8f0}.mtx-details-content{padding:1em;border-top:1px solid #e2e8f0;background:#fff}.mtx-details-content>*:first-child{margin-top:0}.mtx-details-content>*:last-child{margin-bottom:0}.mtx-content .tiptap table{border-collapse:collapse;width:100%;margin:.8em 0;border-radius:6px;overflow:hidden}.mtx-content .tiptap table td,.mtx-content .tiptap table th{border:1px solid #e2e8f0;padding:8px 12px;text-align:left;min-width:80px;vertical-align:top}.mtx-content .tiptap table th{background:#f1f5f9;font-weight:600;color:#334155;font-size:.9em;text-transform:uppercase;letter-spacing:.03em}.mtx-content .tiptap table tr:hover td{background:#f8fafc}.mtx-content .tiptap hr{border:none;border-top:2px solid #e2e8f0;margin:1.5em 0}.mtx-content .tiptap figure.mtx-image-figure{margin:.5em 0;text-align:center;position:relative;display:inline-block;width:fit-content;max-width:100%}.mtx-content .tiptap figure.mtx-image-figure .mtx-image-wrapper{position:relative;display:inline-block;line-height:0;user-select:none;backface-visibility:hidden}.mtx-content .tiptap figure.mtx-image-figure .mtx-image-wrapper.is-dragging{z-index:20}.mtx-content .tiptap figure.mtx-image-figure{transition:margin .18s ease,transform .18s ease}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--dragging,.mtx-content .tiptap figure.mtx-image-figure.mtx-image--dragging .mtx-image-wrapper{transition:none}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--snap-animating,.mtx-content .tiptap figure.mtx-image-figure.mtx-image--snap-animating .mtx-image-wrapper{transition:margin .18s ease,transform .18s ease}.mtx-content .tiptap figure.mtx-image-figure img{max-width:100%;height:auto;border-radius:6px;box-shadow:0 1px 3px #0000001a;cursor:pointer;transition:box-shadow .2s ease}.mtx-content .tiptap figure.mtx-image-figure:hover img{box-shadow:0 4px 8px #00000026}.mtx-content .tiptap figure.mtx-image-figure figcaption{text-align:center;font-size:.875rem;color:#64748b;margin-top:.5em;padding:.25em .5em;background:#f1f5f9;border-radius:4px}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--left{float:left;margin-right:1.5em;margin-bottom:1em;clear:none}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--right{float:right;margin-left:1.5em;margin-bottom:1em;clear:none}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--center{display:block;margin-left:auto;margin-right:auto;clear:both}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--full{display:block;width:100%!important;margin:1em 0;clear:both}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--full img{width:100%}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--dragging{opacity:.92}.mtx-content .tiptap figure.mtx-image-figure.mtx-image-snap-preview--left{box-shadow:-6px 0 #2563eb59}.mtx-content .tiptap figure.mtx-image-figure.mtx-image-snap-preview--center{box-shadow:0 0 0 2px #2563eb47}.mtx-content .tiptap figure.mtx-image-figure.mtx-image-snap-preview--right{box-shadow:6px 0 #2563eb59}.mtx-image-drag-guide{position:absolute;top:0;left:0;width:0;height:100%;border-left:2px dashed rgba(37,99,235,.5);pointer-events:none;z-index:100}.mtx-image-drag-zone{position:absolute;top:0;left:0;width:100%;height:100%;background:#2563eb0f;pointer-events:none;z-index:99}.mtx-content .tiptap figure.mtx-image-figure .mtx-image-wrapper:after{content:"⤡";position:absolute;bottom:8px;right:8px;width:28px;height:28px;background:#2563ebd9;color:#fff;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;opacity:0;pointer-events:none;transition:opacity .15s ease;z-index:5;box-shadow:0 2px 6px #00000026}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--selected .mtx-image-wrapper:hover:after,.mtx-content .tiptap figure.mtx-image-figure .mtx-image-wrapper.is-dragging:after{opacity:1}.mtx-content .tiptap figure.mtx-image-figure .mtx-image-wrapper:hover{outline:1.5px solid rgba(37,99,235,.25);outline-offset:2px;border-radius:2px}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--selected .mtx-image-wrapper:hover{outline-color:#2563eb80}.mtx-content .tiptap figure.mtx-image-figure .mtx-image-wrapper:hover img{box-shadow:0 4px 12px #0000002e}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--selected,.mtx-content .tiptap figure.mtx-image-figure .mtx-image-wrapper.mtx-image--selected{outline:2px solid var(--mtx-primary);outline-offset:2px}.mtx-image-node-view{display:inline-block;max-width:100%;position:relative}.mtx-content .tiptap:after{content:"";display:table;clear:both}.mtx-math-inline,.mtx-math-block{display:inline-block;position:relative}.mtx-math-inline math-field,.mtx-math-block math-field{border:1px solid transparent;border-radius:4px;outline:none;transition:all .15s ease;font-size:1.05em;background:transparent;--selection-background-color: rgba(59, 130, 246, .2)}.mtx-math-inline math-field:focus,.mtx-math-block math-field:focus{border-color:var(--mtx-primary);background:#eff6ff;box-shadow:0 0 0 2px #3b82f61a}.mtx-math-block{display:block;text-align:center;margin:12px 0;padding:12px;background:#f8fafc;border-radius:6px;border:1px dashed #cbd5e1}.mtx-math-block math-field{font-size:1.2em}.mtx-math-inline.is-empty math-field{min-width:50px;min-height:26px;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:4px}.mtx-math-inline.is-empty math-field:focus{border-color:var(--mtx-primary);background:#eff6ff;border-style:solid;box-shadow:0 0 0 2px #3b82f61a}.mtx-math-edit-btn{position:absolute;background:#2563eb;color:#fff;border:none;border-radius:4px;padding:4px 8px;font-size:12px;cursor:pointer;z-index:10;display:flex;align-items:center;gap:4px;box-shadow:0 2px 4px #0003;transition:all .15s ease}.mtx-math-edit-btn:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 4px 6px #00000040}.mtx-math-inline .mtx-math-edit-btn{right:-28px;top:50%;transform:translateY(-50%)}.mtx-math-block .mtx-math-edit-btn{right:8px;top:8px}.ProseMirror-selectednode .mtx-math-inline,.ProseMirror-selectednode .mtx-math-block{outline:2px solid var(--mtx-primary);outline-offset:2px;border-radius:4px}.mtx-content::-webkit-scrollbar{width:6px}.mtx-content::-webkit-scrollbar-track{background:transparent}.mtx-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.mtx-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (max-width: 640px){.mtx-toolbar-mode-switch{order:-1;margin-bottom:4px}.mtx-toolbar{gap:0;padding:3px 4px}.mtx-toolbar-btn{width:28px;height:28px}.mtx-toolbar-divider{margin:0 2px}.mtx-math-toolbar__buttons{gap:1px;flex-wrap:wrap;justify-content:center}.mtx-math-toolbar__section{padding-right:4px;margin-right:4px}.mtx-math-toolbar__section-toggle{padding:0 6px}.mtx-math-toolbar{padding:4px;min-width:unset;width:calc(100% - 20px);flex-wrap:wrap}.mtx-math-toolbar__search-wrap{order:3;width:100%}.mtx-math-toolbar__search{width:100%}.mtx-math-btn{min-width:26px;height:26px;font-size:11px}.mtx-symbol-palette{width:300px}.mtx-template-panel{width:340px}}@media (min-width: 768px){math-field::part(virtual-keyboard-toggle){display:none!important;visibility:hidden!important;width:0!important;height:0!important;overflow:hidden!important;pointer-events:none!important;position:absolute!important;z-index:-1!important;opacity:0!important}}.mtx-template-panel{z-index:100;width:520px;max-height:520px;background:#fff;border:1px solid var(--mtx-border);border-radius:8px;box-shadow:0 10px 40px #00000026,0 2px 10px #00000014;overflow:hidden;animation:mtx-fadeIn .15s ease}.mtx-template-panel__header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--mtx-border);background:linear-gradient(to bottom,#f9fafb,#f3f4f6)}.mtx-template-panel__title{font-size:13px;font-weight:600;color:var(--mtx-text)}.mtx-template-panel__close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:4px;background:transparent;color:var(--mtx-text-secondary);cursor:pointer;font-size:16px;line-height:1}.mtx-template-panel__close:hover{background:#fee2e2;color:#ef4444}.mtx-template-panel__search{display:block;width:100%;padding:8px 14px;border:none;border-bottom:1px solid var(--mtx-border);font-size:13px;font-family:var(--mtx-font);background:#fff;outline:none}.mtx-template-panel__search:focus{background:#eff6ff}.mtx-template-panel__search::placeholder{color:#94a3b8}.mtx-template-panel__body{display:flex;flex-direction:row;height:320px}@media (max-width: 640px){.mtx-template-panel__body{flex-direction:column;height:400px}}.mtx-template-panel__tabs{width:160px;min-width:160px;overflow-y:auto;border-right:1px solid var(--mtx-border);background:#f9fafb;padding:4px}@media (max-width: 640px){.mtx-template-panel__tabs{width:100%;min-width:unset;height:auto;display:flex;flex-direction:row;overflow-x:auto;overflow-y:hidden;border-right:none;border-bottom:1px solid var(--mtx-border);white-space:nowrap;padding:6px;gap:4px}}.mtx-template-panel__tab{display:flex;align-items:center;gap:4px;width:100%;padding:4px 6px;border:none;border-radius:4px;background:transparent;color:var(--mtx-text-secondary);cursor:pointer;font-size:11px;font-weight:500;font-family:var(--mtx-font);text-align:left;transition:all .1s ease;margin-bottom:1px}@media (max-width: 640px){.mtx-template-panel__tab{width:auto;flex:0 0 auto;padding:6px 10px}}.mtx-template-panel__tab:hover{background:#f1f5f9;color:var(--mtx-text)}.mtx-template-panel__tab.is-active{background:var(--mtx-primary-light);color:var(--mtx-primary)}.mtx-template-panel__tab-icon{font-size:13px;flex-shrink:0}.mtx-template-panel__tab-label{line-height:1.2}.mtx-template-panel__content{flex:1;overflow-y:auto;padding:12px;background:#fff}.mtx-template-panel__empty{padding:20px;text-align:center;color:#94a3b8;font-size:13px}.mtx-template-panel__group{margin-bottom:8px}.mtx-template-panel__group-title{font-size:11px;font-weight:600;color:var(--mtx-text-secondary);padding:4px 4px 8px;text-transform:uppercase;letter-spacing:.04em}.mtx-template-panel__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:4px}.mtx-template-card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;cursor:pointer;text-align:left;transition:all .12s ease;font-family:var(--mtx-font);min-height:52px;overflow:hidden}.mtx-template-card:hover{border-color:var(--mtx-primary);background:var(--mtx-primary-light);box-shadow:0 2px 6px #3b82f61f;transform:translateY(-1px)}.mtx-template-card__preview{font-size:13px;font-weight:500;color:var(--mtx-text);font-family:"Cambria Math","Latin Modern Math",serif;line-height:1.5;word-break:break-all;padding-bottom:4px;display:block}.mtx-template-card__label{font-size:10px;color:var(--mtx-text-muted);line-height:1.2}.mtx-template-panel__levels{display:flex;gap:2px;padding:6px 10px;border-bottom:1px solid var(--mtx-border);background:#f8fafc}.mtx-template-panel__level{display:inline-flex;align-items:center;gap:3px;padding:3px 10px;border:1px solid transparent;border-radius:20px;background:transparent;color:var(--mtx-text-secondary);cursor:pointer;font-size:11px;font-weight:500;font-family:var(--mtx-font);transition:all .12s ease}.mtx-template-panel__level:hover{background:#fff;border-color:var(--mtx-border)}.mtx-template-panel__level.is-active{background:var(--mtx-primary);color:#fff;border-color:var(--mtx-primary)}.mtx-template-panel__tab-badge{font-size:9px;padding:0 4px;border-radius:3px;background:#e2e8f0;color:var(--mtx-text-secondary);font-weight:600;margin-left:auto}.mtx-template-panel__tab.is-active .mtx-template-panel__tab-badge{background:#3b82f633;color:var(--mtx-primary)}.mtx-template-panel__group-level{font-size:9px;padding:1px 5px;border-radius:3px;background:var(--mtx-primary-light);color:var(--mtx-primary);font-weight:600;margin-left:4px}.mt-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#00000073;backdrop-filter:blur(3px);animation:mt-fadeIn .15s ease}@keyframes mt-fadeIn{0%{opacity:0}to{opacity:1}}.mt-dialog{width:680px;max-width:96vw;max-height:92vh;background:#ececec;border-radius:6px;box-shadow:0 12px 40px #00000059,0 2px 10px #0003;overflow:hidden;display:flex;flex-direction:column;animation:mt-slideUp .2s ease;border:1px solid #888}@keyframes mt-slideUp{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.mt-titlebar{display:flex;align-items:center;justify-content:space-between;padding:5px 8px;background:linear-gradient(180deg,#6b9fd4,#3a75b0,#2d5f9a);color:#fff;user-select:none;flex-shrink:0}.mt-titlebar__left{display:flex;align-items:center;gap:6px}.mt-titlebar__title{font-size:12px;font-weight:600;font-family:Segoe UI,system-ui,sans-serif;text-shadow:0 1px 2px rgba(0,0,0,.4)}.mt-titlebar__close{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;border-radius:3px;background:#ffffff1a;color:#fff;cursor:pointer;transition:background .1s}.mt-titlebar__close:hover{background:#c42b1c}.mt-tab-bar{display:flex;align-items:stretch;gap:0;padding:3px 3px 0;background:linear-gradient(180deg,#c8d8e8,#a8bdd0);border-bottom:1px solid #7a9ab5;flex-shrink:0;flex-wrap:wrap;max-height:120px;overflow-y:auto}.mt-tab{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;min-width:48px;height:30px;border:1px solid #8aa8c0;border-bottom:none;border-radius:4px 4px 0 0;background:linear-gradient(180deg,#d8e4ef,#b8cce0);color:#2c4a6e;cursor:pointer;font-size:12px;font-family:"Cambria Math","Latin Modern Math",Times New Roman,serif;font-weight:500;transition:all .08s ease;margin-right:-1px;position:relative;white-space:nowrap;letter-spacing:.5px}.mt-tab:hover{background:linear-gradient(180deg,#e8f0f8,#c8daf0);color:#1a3a5e}.mt-tab.is-active{background:linear-gradient(180deg,#f5f8fc,#eef3f8 30%,#e8eef5);color:#1a3a5e;border-color:#7a9ab5;border-bottom:1px solid #e8eef5;z-index:1;font-weight:600;box-shadow:0 -1px 3px #0000000f}.mt-tab__icon{font-size:13px;line-height:1}.mt-grid{background:linear-gradient(180deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0;flex-shrink:0;padding:8px 12px}.mt-grid__row{display:flex;align-items:center;justify-content:space-between;gap:4px;padding:2px 0;flex-wrap:wrap;width:100%}.mt-grid__btn{display:inline-flex;align-items:center;justify-content:center;flex:1;min-width:50px;max-width:90px;height:44px;padding:6px 8px;border:1px solid #e2e8f0;border-radius:6px;background:linear-gradient(180deg,#fff,#f8fafc);color:#1e293b;cursor:pointer;font-size:14px;font-family:"Cambria Math","Latin Modern Math",Times New Roman,serif;line-height:1;transition:all .15s ease;user-select:none;white-space:nowrap;box-shadow:0 1px 2px #0000000a;position:relative;overflow:hidden}.mt-grid__btn:hover{background:linear-gradient(180deg,#eff6ff,#dbeafe);border-color:#3b82f6;box-shadow:0 2px 8px #3b82f626,0 1px 2px #0000000f;transform:translateY(-1px);color:#1e40af}.mt-grid__btn:active{background:linear-gradient(180deg,#dbeafe,#bfdbfe);border-color:#2563eb;box-shadow:inset 0 1px 2px #00000014;transform:translateY(0)}.mt-grid__btn--formula{min-width:70px;max-width:120px}.mt-icon-row{display:flex;align-items:center;justify-content:center;gap:3px}.mt-ph{display:inline-block;width:11px;height:11px;border:1.5px solid #3b82f6;background:#3b82f614;border-radius:2px;margin:0 1px;transition:all .15s ease}.mt-ph--sm{width:8px;height:8px;border-width:1.5px}.mt-grid__btn:hover .mt-ph{border-color:#2563eb;background:#3b82f626}.mt-grid__btn[data-tooltip],.mt-format-btn[data-tooltip],.mt-tab[data-tooltip]{position:relative}.mt-grid__btn[data-tooltip]:after,.mt-format-btn[data-tooltip]:after,.mt-tab[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%) translateY(4px);padding:4px 8px;background:#1e293b;color:#fff;font-size:11px;font-weight:500;white-space:nowrap;border-radius:5px;opacity:0;visibility:hidden;transition:all .12s ease;pointer-events:none;z-index:1000;box-shadow:0 3px 10px #00000026;font-family:Segoe UI,system-ui,sans-serif}.mt-grid__btn[data-tooltip]:before,.mt-format-btn[data-tooltip]:before,.mt-tab[data-tooltip]:before{content:"";position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%) translateY(4px);border-width:4px;border-style:solid;border-color:#1e293b transparent transparent transparent;opacity:0;visibility:hidden;transition:all .12s ease;pointer-events:none;z-index:1000}.mt-grid__btn[data-tooltip]:hover:after,.mt-grid__btn[data-tooltip]:hover:before,.mt-format-btn[data-tooltip]:hover:after,.mt-format-btn[data-tooltip]:hover:before,.mt-tab[data-tooltip]:hover:after,.mt-tab[data-tooltip]:hover:before{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.mt-icon-stack{display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;gap:2px}.mt-icon-stack--lg{transform:scale(1.15)}.mt-icon-stack--sm{transform:scale(.7)}.mt-icon-num{padding-bottom:2px;display:flex;justify-content:center;align-items:center}.mt-icon-den{padding-top:2px;display:flex;justify-content:center;align-items:center}.mt-icon-bar{width:100%;height:1.5px;background:linear-gradient(90deg,transparent 0%,currentColor 10%,currentColor 90%,transparent 100%);opacity:.7;border-radius:1px}.mt-icon-sqrt{font-size:17px;line-height:1;transform:scaleY(1.2) translateY(1px);font-weight:300}.mt-icon-sqrt-bar{border-top:1.5px solid currentColor;padding-top:2px;margin-left:-1px;opacity:.7}.mt-icon-idx{font-size:.65em;line-height:1;font-weight:500}.mt-icon-grid{display:flex;flex-direction:column;gap:2px;margin:0 2px}.mt-icon-grid-row{display:flex;gap:2px}.mt-brak{font-weight:300;transform:scaleY(1.3);color:#475569}.mt-brak--lg{transform:scaleY(1.6)}.mt-sym{font-family:Times New Roman,serif;font-style:italic;color:#334155}.mt-sym-lg{font-size:17px;font-weight:500;color:#1e293b}.mt-sym-xl{font-size:20px;line-height:.8;color:#1e293b}.mt-sym-sm{font-size:10px}.mt-sym-fn{font-family:Times New Roman,serif;font-size:12px;font-style:italic;color:#334155}.mt-txt-icon{font-family:Segoe UI,system-ui,sans-serif;font-size:9px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.3px;padding:2px 4px;background:#f1f5f9;border-radius:3px;border:1px solid #e2e8f0}.mt-over{position:absolute;top:-6px;left:50%;transform:translate(-50%);font-size:10px;width:100%;text-align:center;color:#64748b}.mt-under{position:absolute;bottom:-5px;left:50%;transform:translate(-50%);font-size:10px;color:#64748b}.mt-editor{flex:1;min-height:100px;background:#fff;border-top:1px solid #999;position:relative}.mt-editor__field{min-height:100px;padding:2px;background:#fff}.mt-editor__field math-field{--caret-color: #2563eb;--selection-background-color: rgba(59, 130, 246, .25);--selection-color: #1e40af;--placeholder-color: rgba(59, 130, 246, .35);--placeholder-background-color: rgba(59, 130, 246, .08);cursor:text}.mt-loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:20px;background:#fff;z-index:10}.mt-loading__spinner{width:28px;height:28px;border:3px solid #e2e8f0;border-top-color:#2563eb;border-radius:50%;animation:mt-spin .8s linear infinite}@keyframes mt-spin{to{transform:rotate(360deg)}}.mt-loading__text{font-size:13px;color:#64748b;font-family:Segoe UI,system-ui,sans-serif}@media (min-width: 768px){.mt-editor__field math-field{--keyboard-zindex: -1 !important;--virtual-keyboard-toggle-display: none !important}}.mt-editor__field:focus-within{outline:none}.mt-latex-bar{display:flex;flex-direction:column;gap:2px;padding:4px 10px;background:#eef0f2;border-top:1px solid #ccc;font-size:10px;min-height:22px}.mt-latex-bar__row{display:flex;align-items:center;gap:6px;min-height:18px}.mt-latex-bar__label{font-weight:700;color:#777;font-family:Segoe UI,system-ui,sans-serif;flex-shrink:0;font-size:10px}.mt-latex-bar__code{font-family:Consolas,Fira Code,monospace;font-size:10px;color:#666;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.mt-latex-bar__preview{padding:6px 8px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;font-size:16px;text-align:center;overflow-x:auto;min-height:20px}.mt-latex-bar__error{padding:4px 8px;background:#fef2f2;border:1px solid #fecaca;border-radius:4px;color:#dc2626;font-size:10px;font-family:Consolas,Fira Code,monospace;white-space:pre-wrap;word-break:break-all}.mt-actions{display:flex;align-items:center;justify-content:space-between;padding:5px 10px;background:linear-gradient(180deg,#e4e8ec,#d8dce0);border-top:1px solid #bbb;gap:8px}.mt-actions__hint{font-size:10px;color:#777;font-family:Segoe UI,system-ui,sans-serif}.mt-actions__hint kbd{display:inline-block;padding:1px 4px;border:1px solid #bbb;border-radius:3px;background:#f5f5f5;font-size:9px;font-family:inherit;box-shadow:0 1px #ccc}.mt-display-mode-toggle{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border:1px solid #cbd5e1;border-radius:14px;background:#f8fafc;color:#475569;cursor:pointer;font-size:11px;font-family:inherit;font-weight:500;transition:all .15s;white-space:nowrap}.mt-display-mode-toggle:hover{background:#e2e8f0;border-color:#94a3b8}.mt-display-mode-toggle.is-block{background:#dbeafe;border-color:#3b82f6;color:#1e40af}.mt-display-mode-toggle__label{line-height:1}.mt-actions__buttons{display:flex;gap:6px;flex-shrink:0}.mt-actions__cancel{padding:5px 14px;border:1px solid #aaa;border-radius:4px;background:linear-gradient(180deg,#f5f5f5,#e0e0e0);color:#444;cursor:pointer;font-size:12px;font-family:Segoe UI,system-ui,sans-serif;font-weight:500;transition:all .1s}.mt-actions__cancel:hover{background:linear-gradient(180deg,#fff,#eee);border-color:#888}.mt-actions__insert{padding:5px 16px;border:1px solid #2a5a94;border-radius:4px;background:linear-gradient(180deg,#4a8ad4,#2d6bb0);color:#fff;cursor:pointer;font-size:12px;font-family:Segoe UI,system-ui,sans-serif;font-weight:600;transition:all .1s;text-shadow:0 1px 1px rgba(0,0,0,.2)}.mt-actions__insert:hover{background:linear-gradient(180deg,#5a9ae4,#3d7bc0)}.mt-actions__insert:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 700px){.mt-dialog{width:98vw;max-height:95vh;border-radius:4px}.mt-tab{min-width:36px;padding:3px 5px;font-size:11px}.mt-grid__btn{min-width:32px;height:30px;font-size:13px;padding:2px 4px}.mt-titlebar__title{font-size:11px}.mt-actions__hint{display:none}}.mt-format-bar{display:flex;align-items:center;padding:4px 6px;background:#f0f0f0;border-bottom:1px solid #bfbfbf;gap:6px}.mt-font-select{height:22px;border:1px solid #888;border-radius:2px;padding:0 4px;font-size:11px;width:140px;background:#fff;cursor:pointer;outline:none}.mt-font-select:hover{border-color:#555}.mt-format-group{display:flex;align-items:center;gap:1px;margin-right:4px;padding-right:4px;border-right:1px solid #ccc}.mt-format-group:last-child{border-right:none;margin-right:0;padding-right:0}.mt-format-btn{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:2px;background:transparent;cursor:pointer;font-family:serif;font-size:13px;color:#333}.mt-format-btn:hover{background:#e0e0e0;border:1px solid #bbb}.mt-format-btn b{font-weight:700}.mt-format-btn i{font-style:italic}.mt-format-btn u{text-decoration:underline}.mt-color-picker{width:22px;height:22px;padding:0;border:1px solid #ccc;background:#fff;cursor:pointer}.mt-txt-icon{font-size:10px;font-weight:700;font-family:sans-serif;color:#444}.mtx-image-edit-dialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;z-index:9999;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.mtx-image-edit-dialog__header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e2e8f0}.mtx-image-edit-dialog__header h3{margin:0;font-size:1.25rem;color:#1e293b}.mtx-image-edit-dialog__close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#64748b;padding:4px;border-radius:4px;transition:all .15s ease}.mtx-image-edit-dialog__close:hover{background:#f1f5f9;color:#1e293b}.mtx-image-edit-dialog__body{padding:20px}.mtx-image-edit-dialog__section{margin-bottom:24px}.mtx-image-edit-dialog__section h4{margin:0 0 12px;font-size:.875rem;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.05em}.mtx-image-edit-dialog__row{margin-bottom:12px}.mtx-image-edit-dialog__row label{display:block;margin-bottom:6px;font-size:.875rem;color:#334155;font-weight:500}.mtx-image-edit-dialog__row input[type=text],.mtx-image-edit-dialog__row textarea{width:100%;padding:10px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:.875rem;transition:border-color .15s ease,box-shadow .15s ease}.mtx-image-edit-dialog__row input[type=text]:focus,.mtx-image-edit-dialog__row textarea:focus{outline:none;border-color:var(--mtx-primary);box-shadow:0 0 0 3px #3b82f61a}.mtx-image-edit-dialog__checkbox-row{display:flex;align-items:center;gap:8px;margin-bottom:12px}.mtx-image-edit-dialog__checkbox-row input[type=checkbox]{width:16px;height:16px;cursor:pointer}.mtx-image-edit-dialog__checkbox-row label{margin:0;cursor:pointer;font-size:.875rem;color:#334155}.mtx-image-edit-dialog__size-presets{display:flex;gap:8px;margin-top:8px}.mtx-btn-sm{padding:6px 12px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:4px;font-size:.75rem;cursor:pointer;transition:all .15s ease}.mtx-btn-sm:hover{background:#e2e8f0;border-color:#cbd5e1}.mtx-image-edit-dialog__alignment-options{display:flex;gap:8px;flex-wrap:wrap}.mtx-align-btn{flex:1;min-width:60px;display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;background:#f8fafc;border:2px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:all .2s ease}.mtx-align-btn:hover{background:#f1f5f9;border-color:#cbd5e1}.mtx-align-btn.is-active{background:#eff6ff;border-color:var(--mtx-primary)}.mtx-align-btn svg{width:24px;height:24px;color:#475569}.mtx-align-btn.is-active svg{color:var(--mtx-primary)}.mtx-align-btn span{font-size:.75rem;color:#64748b;font-weight:500}.mtx-image-edit-dialog__hint{margin-top:12px;padding:10px 12px;background:#fef3c7;border-left:3px solid #f59e0b;border-radius:4px}.mtx-image-edit-dialog__hint p{margin:0;font-size:.8125rem;color:#92400e}.mtx-image-edit-dialog__footer{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-top:1px solid #e2e8f0;background:#f8fafc;border-radius:0 0 12px 12px}.mtx-image-edit-dialog__btn{padding:10px 20px;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;border:1px solid transparent}.mtx-image-edit-dialog__btn--reset{background:#f1f5f9;color:#475569;border-color:#e2e8f0}.mtx-image-edit-dialog__btn--reset:hover{background:#e2e8f0}.mtx-image-edit-dialog__actions{display:flex;gap:8px}.mtx-image-edit-dialog__btn--cancel{background:#fff;color:#475569;border-color:#cbd5e1}.mtx-image-edit-dialog__btn--cancel:hover{background:#f8fafc}.mtx-image-edit-dialog__btn--apply{background:var(--mtx-primary);color:#fff;border-color:var(--mtx-primary)}.mtx-image-edit-dialog__btn--apply:hover{background:var(--mtx-primary-dark, #2563eb)}.mtx-dialog-overlay{position:fixed;inset:0;background:#00000080;z-index:9998;backdrop-filter:blur(2px)}.mtx-image-resize-overlay{position:absolute;inset:0;background-color:#3b82f61a;border:2px dashed var(--mtx-primary);pointer-events:none;z-index:9}.mtx-image-resize-handles{position:absolute;inset:0;pointer-events:none;display:none;z-index:10}.mtx-content .tiptap figure.mtx-image-figure.mtx-image--selected .mtx-image-resize-handles,.mtx-content .tiptap figure.mtx-image-figure .mtx-image-wrapper.mtx-image--selected .mtx-image-resize-handles{display:block;pointer-events:auto}.mtx-resize-handle{position:absolute;width:12px;height:12px;background:var(--mtx-primary, #3b82f6);border:2px solid white;border-radius:50%;cursor:pointer;pointer-events:auto;box-shadow:0 2px 4px #0000004d;transition:transform .15s ease,background .15s ease;z-index:11}.mtx-resize-handle:hover{transform:scale(1.4);background:#2563eb}.mtx-resize-handle--nw{top:-6px;left:-6px;cursor:nwse-resize}.mtx-resize-handle--ne{top:-6px;right:-6px;cursor:nesw-resize}.mtx-resize-handle--sw{bottom:-6px;left:-6px;cursor:nesw-resize}.mtx-resize-handle--se{bottom:-6px;right:-6px;cursor:nwse-resize}.mtx-resize-handle--n{top:-6px;left:50%;transform:translate(-50%);cursor:ns-resize}.mtx-resize-handle--e{top:50%;right:-6px;transform:translateY(-50%);cursor:ew-resize}.mtx-resize-handle--s{bottom:-6px;left:50%;transform:translate(-50%);cursor:ns-resize}.mtx-resize-handle--w{top:50%;left:-6px;transform:translateY(-50%);cursor:ew-resize}.mtx-context-menu-backdrop{position:fixed;inset:0;z-index:99998;background:transparent}.mtx-image-context-menu{position:fixed;background:#fff;border-radius:8px;box-shadow:0 10px 40px #0003,0 0 0 1px #0000000d;z-index:99999;min-width:220px;max-width:280px;padding:8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;animation:mtxContextMenuFadeIn .15s ease}@keyframes mtxContextMenuFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.mtx-context-menu-section{padding:4px 0}.mtx-context-menu-label{font-size:.75rem;color:#64748b;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:8px 12px 4px}.mtx-context-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;background:transparent;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;color:#334155;text-align:left;transition:background .15s ease,color .15s ease}.mtx-context-menu-item:hover{background:#f1f5f9;color:#1e293b}.mtx-context-menu-item svg{flex-shrink:0;width:16px;height:16px;color:#64748b}.mtx-context-menu-item:hover svg{color:#3b82f6}.mtx-context-menu-item--danger{color:#dc2626}.mtx-context-menu-item--danger:hover{background:#fef2f2;color:#dc2626}.mtx-context-menu-item--danger:hover svg{color:#dc2626}.mtx-context-menu-divider{height:1px;background:#e2e8f0;margin:8px 0}.mtx-import-overlay{position:absolute;inset:0;background:#ffffffd9;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.mtx-import-overlay__spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:#2563eb;border-radius:50%;animation:mtx-spin .8s linear infinite}@keyframes mtx-spin{to{transform:rotate(360deg)}}.mtx-import-overlay__text{font-size:14px;color:#475569;font-weight:500;font-family:Segoe UI,system-ui,sans-serif}.mtx-import-error{position:absolute;top:8px;left:50%;transform:translate(-50%);z-index:110;display:flex;align-items:center;gap:12px;padding:10px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:13px;font-family:Segoe UI,system-ui,sans-serif;box-shadow:0 4px 12px #0000001a;max-width:90%}.mtx-import-error__close{flex-shrink:0;width:24px;height:24px;border:none;border-radius:4px;background:transparent;color:#991b1b;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .1s}.mtx-import-error__close:hover{background:#fecaca}.mtx-image-dialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(480px,90vw);max-height:85vh;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0003;z-index:9999;display:flex;flex-direction:column;overflow:hidden}.mtx-image-dialog__header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e2e8f0}.mtx-image-dialog__header h3{margin:0;font-size:16px;font-weight:600;color:#1e293b}.mtx-image-dialog__close{background:none;border:none;font-size:18px;cursor:pointer;color:#94a3b8;width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .15s}.mtx-image-dialog__close:hover{background:#f1f5f9;color:#334155}.mtx-image-dialog__tabs{display:flex;border-bottom:1px solid #e2e8f0;padding:0 20px;gap:4px}.mtx-image-dialog__tab{background:none;border:none;padding:10px 16px;font-size:13px;font-weight:500;color:#64748b;cursor:pointer;border-bottom:2px solid transparent;transition:all .15s;margin-bottom:-1px}.mtx-image-dialog__tab:hover{color:#334155}.mtx-image-dialog__tab.is-active{color:#3b82f6;border-bottom-color:#3b82f6}.mtx-image-dialog__body{padding:20px;overflow-y:auto;flex:1}.mtx-image-dialog__dropzone{border:2px dashed #cbd5e1;border-radius:10px;padding:32px;text-align:center;cursor:pointer;transition:all .2s;min-height:160px;display:flex;align-items:center;justify-content:center}.mtx-image-dialog__dropzone:hover{border-color:#3b82f6;background:#eff6ff}.mtx-image-dialog__dropzone.is-dragging{border-color:#3b82f6;background:#dbeafe;border-style:solid}.mtx-image-dialog__placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;color:#94a3b8}.mtx-image-dialog__placeholder svg{margin-bottom:4px;opacity:.5}.mtx-image-dialog__placeholder p{margin:0;font-size:14px;color:#475569}.mtx-image-dialog__placeholder span{font-size:12px;color:#94a3b8}.mtx-image-dialog__uploading{display:flex;flex-direction:column;align-items:center;gap:12px;color:#3b82f6}.mtx-image-dialog__uploading p{margin:0;font-size:14px}.mtx-image-dialog__preview img,.mtx-image-dialog__url-preview img{max-width:100%;max-height:200px;border-radius:8px;object-fit:contain}.mtx-image-dialog__url-form{display:flex;flex-direction:column;gap:8px}.mtx-image-dialog__url-form label,.mtx-image-dialog__alt label{font-size:13px;font-weight:500;color:#475569}.mtx-image-dialog__url-row{display:flex;gap:8px}.mtx-image-dialog__url-row input,.mtx-image-dialog__alt input{flex:1;padding:8px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:14px;outline:none;transition:border-color .15s}.mtx-image-dialog__url-row input:focus,.mtx-image-dialog__alt input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.mtx-image-dialog__url-preview{margin-top:12px;text-align:center;padding:12px;background:#f8fafc;border-radius:8px}.mtx-image-dialog__alt{margin-top:16px;display:flex;flex-direction:column;gap:6px}.mtx-image-dialog__error{margin-top:12px;padding:8px 12px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:13px}.mtx-image-dialog__footer{display:flex;justify-content:flex-end;gap:8px;padding:16px 20px;border-top:1px solid #e2e8f0}.mtx-image-dialog__btn{padding:8px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s;border:none}.mtx-image-dialog__btn--cancel{background:#f1f5f9;color:#475569}.mtx-image-dialog__btn--cancel:hover{background:#e2e8f0}.mtx-image-dialog__btn--insert{background:#3b82f6;color:#fff}.mtx-image-dialog__btn--insert:hover{background:#2563eb}.mtx-image-dialog__btn--insert:disabled{opacity:.5;cursor:not-allowed}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { C as t, I as s, b as o, L as l, M as i, d as r, e as T, f as g, h as n, i as m, S as p, T as M, j as C, k as b, l as d, W as h, m as y, n as D, o as L, p as c, q as x, r as u, s as E, t as I, v as P, w as S, x as f, y as k } from "./index-
|
|
1
|
+
import { C as t, I as s, b as o, L as l, M as i, d as r, e as T, f as g, h as n, i as m, S as p, T as M, j as C, k as b, l as d, W as h, m as y, n as D, o as L, p as c, q as x, r as u, s as E, t as I, v as P, w as S, x as f, y as k } from "./index-D0Rzm7Tg.js";
|
|
2
2
|
import { C as H } from "./ContentViewer-RijJ5nlJ.js";
|
|
3
3
|
export {
|
|
4
4
|
t as CellPropertiesDialog,
|