.splitpanes{display:flex;width:100%;height:100%}.splitpanes--vertical{flex-direction:row}.splitpanes--horizontal{flex-direction:column}.splitpanes--dragging *{-webkit-user-select:none;user-select:none}.splitpanes__pane{width:100%;height:100%;overflow:hidden}.splitpanes--vertical .splitpanes__pane{transition:width .2s ease-out}.splitpanes--horizontal .splitpanes__pane{transition:height .2s ease-out}.splitpanes--dragging .splitpanes__pane{transition:none}.splitpanes__splitter{touch-action:none}.splitpanes--vertical>.splitpanes__splitter{min-width:1px;cursor:col-resize}.splitpanes--horizontal>.splitpanes__splitter{min-height:1px;cursor:row-resize}.splitpanes.default-theme .splitpanes__pane{background-color:#f2f2f2}.splitpanes.default-theme .splitpanes__splitter{background-color:#fff;box-sizing:border-box;position:relative;flex-shrink:0}.splitpanes.default-theme .splitpanes__splitter:before,.splitpanes.default-theme .splitpanes__splitter:after{content:"";position:absolute;top:50%;left:50%;background-color:#00000026;transition:background-color .3s}.splitpanes.default-theme .splitpanes__splitter:hover:before,.splitpanes.default-theme .splitpanes__splitter:hover:after{background-color:#00000040}.splitpanes.default-theme .splitpanes__splitter:first-child{cursor:auto}.default-theme .splitpanes--dragging{-webkit-user-select:none;user-select:none;pointer-events:none}.default-theme.splitpanes .splitpanes .splitpanes__splitter{z-index:1}.default-theme.splitpanes--vertical>.splitpanes__splitter,.default-theme .splitpanes--vertical>.splitpanes__splitter{width:7px;border-left:1px solid #eee;margin-left:-1px}.default-theme.splitpanes--vertical>.splitpanes__splitter:before,.default-theme.splitpanes--vertical>.splitpanes__splitter:after,.default-theme .splitpanes--vertical>.splitpanes__splitter:before,.default-theme .splitpanes--vertical>.splitpanes__splitter:after{transform:translateY(-50%);width:1px;height:30px}.default-theme.splitpanes--vertical>.splitpanes__splitter:before,.default-theme .splitpanes--vertical>.splitpanes__splitter:before{margin-left:-2px}.default-theme.splitpanes--vertical>.splitpanes__splitter:after,.default-theme .splitpanes--vertical>.splitpanes__splitter:after{margin-left:1px}.default-theme.splitpanes--horizontal>.splitpanes__splitter,.default-theme .splitpanes--horizontal>.splitpanes__splitter{height:7px;border-top:1px solid #eee;margin-top:-1px}.default-theme.splitpanes--horizontal>.splitpanes__splitter:before,.default-theme.splitpanes--horizontal>.splitpanes__splitter:after,.default-theme .splitpanes--horizontal>.splitpanes__splitter:before,.default-theme .splitpanes--horizontal>.splitpanes__splitter:after{transform:translate(-50%);width:30px;height:1px}.default-theme.splitpanes--horizontal>.splitpanes__splitter:before,.default-theme .splitpanes--horizontal>.splitpanes__splitter:before{margin-top:-2px}.default-theme.splitpanes--horizontal>.splitpanes__splitter:after,.default-theme .splitpanes--horizontal>.splitpanes__splitter:after{margin-top:1px}.ms-sep{width:1px;height:14px;background:var(--divider);margin:0 2px}.brand-btn[data-v-1eea2ca3]{background:none;border:none;cursor:pointer;padding:0;line-height:0;border-radius:6px}.brand-btn:hover .brand-mark[data-v-1eea2ca3]{opacity:.8}.breadcrumb[data-v-1eea2ca3]{display:flex;align-items:center;gap:5px}.crumb-projects[data-v-1eea2ca3]{background:none;border:none;cursor:pointer;font-size:12px;color:var(--ink-muted);padding:0;font-family:inherit}.crumb-projects[data-v-1eea2ca3]:hover{color:var(--ink);text-decoration:underline}.crumb-project[data-v-1eea2ca3]{font-size:12px;color:var(--ink-muted);cursor:default;border-radius:3px;padding:1px 3px}.crumb-project[data-v-1eea2ca3]:hover{background:var(--surface-hover);color:var(--ink)}.rename-input[data-v-1eea2ca3]{font-size:12px;color:var(--ink);background:var(--surface);border:1px solid var(--accent);border-radius:4px;padding:1px 5px;outline:none;min-width:80px;max-width:200px;font-family:inherit}.sync-slot[data-v-1eea2ca3]{display:flex;align-items:center;margin-left:12px}.rail-avatar[data-v-1e2284df]{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--accent);color:#fff;font-size:11px;font-weight:700}.doc-size[data-v-9392bfbb]{font-family:IBM Plex Mono,monospace;opacity:.75;font-size:10px}.usage[data-v-9392bfbb]{margin-left:auto;display:inline-flex;align-items:center;gap:7px;--usage-color: var(--accent)}.usage.warn[data-v-9392bfbb]{--usage-color: var(--warn)}.usage.over[data-v-9392bfbb]{--usage-color: var(--err)}.usage-track[data-v-9392bfbb]{width:64px;height:4px;border-radius:999px;background:var(--divider);overflow:hidden}.usage-fill[data-v-9392bfbb]{display:block;height:100%;border-radius:999px;background:var(--usage-color);transition:width .25s ease,background .2s ease}.usage-label[data-v-9392bfbb]{font-family:IBM Plex Mono,monospace;font-size:10px;color:var(--ink-muted);white-space:nowrap}.usage.over .usage-label[data-v-9392bfbb]{color:var(--usage-color)}.sync-badge[data-v-e0951723]{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--ink-muted);position:relative}.sync-state[data-v-e0951723]{display:flex;align-items:center;gap:4px}.sync-state.ok[data-v-e0951723]{color:#22c55e}.sync-state.warn[data-v-e0951723]{color:#f59e0b}.sync-state.err[data-v-e0951723]{color:#ef4444}.sync-state.muted[data-v-e0951723]{color:var(--ink-muted)}.sync-divider[data-v-e0951723]{width:1px;height:12px;background:var(--divider)}.sync-action[data-v-e0951723]{background:none;border:1px solid var(--border);border-radius:4px;padding:2px 7px;font-size:10px;cursor:pointer;color:var(--ink-muted)}.sync-action[data-v-e0951723]:hover{background:var(--surface-hover)}.sync-action.primary[data-v-e0951723]{background:var(--accent);color:#fff;border-color:var(--accent)}.push-wrap[data-v-e0951723]{position:relative}.push-btn[data-v-e0951723]{display:flex;align-items:center;gap:4px}.push-prompt[data-v-e0951723]{position:absolute;top:calc(100% + 8px);right:0;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:10px;width:240px;z-index:50;box-shadow:0 4px 16px #0000001f}.push-msg-input[data-v-e0951723]{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:5px;padding:6px 8px;font-size:12px;color:var(--ink);outline:none}.push-msg-input[data-v-e0951723]:focus{border-color:var(--accent)}.push-prompt-actions[data-v-e0951723]{display:flex;justify-content:flex-end;gap:6px;margin-top:8px}@keyframes spin-e0951723{to{transform:rotate(360deg)}}.data-view[data-v-e185de6e]{display:flex;flex-direction:column;height:100%;background:var(--bg)}.data-toolbar[data-v-e185de6e]{display:flex;align-items:center;gap:10px;padding:0 12px;height:38px;border-bottom:1px solid var(--divider);flex-shrink:0}.data-title[data-v-e185de6e]{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--ink)}.data-type-row[data-v-e185de6e]{display:flex;align-items:center;gap:5px;margin-left:8px}.data-type-label[data-v-e185de6e]{font-size:11px;color:var(--ink-muted)}.data-type-select[data-v-e185de6e]{font-size:12px;padding:2px 6px;border:1px solid var(--divider);border-radius:4px;background:var(--surface);color:var(--ink);cursor:pointer;outline:none}.data-type-select[data-v-e185de6e]:focus{border-color:var(--accent)}.data-filename[data-v-e185de6e]{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--ink-muted);font-family:IBM Plex Mono,monospace;margin-left:4px}.data-active-badge[data-v-e185de6e]{margin-left:auto;font-size:10px;font-weight:600;padding:2px 7px;border-radius:10px;background:color-mix(in oklch,var(--accent) 15%,transparent);color:var(--accent);letter-spacing:.03em}.data-editor[data-v-e185de6e]{flex:1;min-height:0}.data-hint[data-v-e185de6e]{padding:8px 14px;font-size:11px;color:var(--ink-muted);border-top:1px solid var(--divider);flex-shrink:0;line-height:1.5}.data-hint code[data-v-e185de6e]{font-family:IBM Plex Mono,monospace;font-size:10.5px;padding:1px 4px;border-radius:3px;background:var(--bg-soft);color:var(--ink)}.resize-frame[data-v-46c51e6c]{position:absolute;inset:0;pointer-events:none;z-index:6}.rh[data-v-46c51e6c]{position:absolute;pointer-events:auto;background:var(--accent);border:1.5px solid #fff;box-shadow:0 0 0 1px var(--accent)}.rh-se[data-v-46c51e6c]{width:10px;height:10px;border-radius:2px;right:-5px;bottom:-5px;cursor:nwse-resize}.rh-e[data-v-46c51e6c]{width:8px;height:22px;border-radius:4px;right:-4px;top:50%;transform:translateY(-50%);cursor:ew-resize}.rh-s[data-v-46c51e6c]{width:22px;height:8px;border-radius:4px;bottom:-4px;left:50%;transform:translate(-50%);cursor:ns-resize}.gp-chip[data-v-bd605ad2]{position:absolute;top:-1px;right:calc(100% + 8px);width:80px;display:flex;align-items:center;gap:3px;opacity:.55;cursor:pointer;overflow:hidden;white-space:nowrap}.gp-chip[data-v-bd605ad2]:hover{opacity:1}.gp-pop[data-v-bd605ad2]{position:fixed;z-index:1000;min-width:240px;max-width:420px;background:var(--surface);border:1px solid var(--divider-strong, var(--divider));border-radius:8px;box-shadow:var(--shadow-md);overflow:hidden}.gp-head[data-v-bd605ad2]{display:flex;align-items:center;gap:6px;padding:5px 6px 5px 10px;background:var(--bg-soft);border-bottom:1px solid var(--divider)}.gp-title[data-v-bd605ad2]{font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-muted)}.gp-spacer[data-v-bd605ad2]{flex:1}.gp-iconbtn[data-v-bd605ad2]{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:5px;background:transparent;color:var(--ink-muted);cursor:pointer}.gp-iconbtn[data-v-bd605ad2]:hover{background:var(--bg);color:var(--ink)}.gp-body[data-v-bd605ad2]{padding:8px 10px}.tok-selected .tok-block[data-v-ea7df07a]{outline:2px solid var(--accent);outline-offset:-1px}.typst-placeholder.is-gutter[data-v-ea7df07a]{position:relative;height:0;margin:0}.typst-placeholder.is-gutter .tok-block[data-v-ea7df07a]{position:absolute;top:-1px;right:calc(100% + 8px);width:80px;margin:0;padding:0;background:none;border:none;gap:3px;opacity:.55;cursor:pointer;overflow:hidden;white-space:nowrap}.typst-placeholder.is-gutter .tok-block[data-v-ea7df07a]:hover{opacity:1}.typst-placeholder.is-gutter .tok-edit-btn[data-v-ea7df07a],.typst-placeholder.is-gutter .tok-edit-area[data-v-ea7df07a]{display:none}.typst-placeholder.is-gutter .tok-label[data-v-ea7df07a]{font-size:8px;padding:0 3px}.typst-placeholder.is-gutter .tok-code[data-v-ea7df07a]{font-size:10px;overflow:hidden;text-overflow:ellipsis}.gp-badge[data-v-ea7df07a]{font-size:8px}.gp-summary[data-v-ea7df07a]{font-size:10px;overflow:hidden;text-overflow:ellipsis}.tok-shape[data-v-ea7df07a]{position:relative;display:inline-flex;margin:0}.tok-shape-box[data-v-ea7df07a]{display:block;box-sizing:border-box;max-width:100%}.tok-selected .tok-shape-box[data-v-ea7df07a]{outline:2px solid var(--accent);outline-offset:2px}.tok-shape-edit[data-v-ea7df07a]{position:absolute;top:2px;right:2px;display:flex;align-items:center;justify-content:center;width:18px;height:18px;border:none;border-radius:4px;background:var(--surface);color:var(--ink-muted);opacity:0;cursor:pointer;transition:opacity .1s}.tok-shape:hover .tok-shape-edit[data-v-ea7df07a]{opacity:.9}.tok-grid-preview[data-v-ea7df07a]{position:relative;margin:0}.tok-grid-preview[data-v-ea7df07a]:hover{outline:1.5px dashed var(--divider);outline-offset:2px;border-radius:8px}.tok-selected.tok-grid-preview[data-v-ea7df07a]{outline:2px solid var(--accent);outline-offset:1px}.tok-grid[data-v-ea7df07a]{width:100%}.tok-grid-cell[data-v-ea7df07a]{font-size:12.5px;line-height:1.35;color:var(--ink);white-space:pre-wrap;word-break:break-word;min-width:0}.tok-grid-dyn[data-v-ea7df07a]{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--accent);background:color-mix(in oklch,var(--accent) 10%,transparent);border-radius:3px;padding:0 4px;justify-self:start}.tok-grid-tag[data-v-ea7df07a]{position:absolute;top:4px;left:8px;font-size:8px;font-weight:700;letter-spacing:.06em;color:var(--ink-muted);opacity:.7}.tok-grid-preview:hover .tok-shape-edit[data-v-ea7df07a]{opacity:.9}.tok-rule-wrap[data-v-ea7df07a]{margin:0}.tok-rule[data-v-ea7df07a]{height:0;border-top:1px solid var(--ink-muted)}.tok-grid-preview.is-table[data-v-ea7df07a]{padding-top:16px}.tok-grid-preview.is-table .tok-grid-cell[data-v-ea7df07a]{padding:3px 10px 3px 0;border-bottom:1px solid var(--divider)}.tok-edit-area[data-v-ea7df07a]{padding:6px 12px 8px;background:var(--bg-soft);border-top:1px solid var(--divider);border-radius:0 0 5px 5px;margin-top:-2px}.tok-textarea[data-v-ea7df07a]{width:100%;min-height:48px;resize:vertical;font-family:IBM Plex Mono,monospace;font-size:11.5px;background:var(--surface);color:var(--ink);border:1px solid var(--divider);border-radius:4px;padding:6px 8px;outline:none}.tok-textarea[data-v-ea7df07a]:focus{border-color:var(--accent)}.tok-edit-hint[data-v-ea7df07a]{font-size:10.5px;color:var(--ink-muted);margin:4px 0 0}.typst-parse-error[data-v-e233e249]{border:1.5px solid var(--danger,#dc2626);background:var(--danger,#dc2626);border-left-width:4px;border-radius:6px;margin:10px 0;padding:10px 12px}@supports (color:color-mix(in lab,red,red)){.typst-parse-error[data-v-e233e249]{background:color-mix(in srgb,var(--danger,#dc2626) 8%,var(--surface,#fff))}}.typst-parse-error.is-selected[data-v-e233e249]{outline:2px solid var(--accent);outline-offset:1px}.tpe-head[data-v-e233e249]{align-items:center;gap:8px;display:flex}.tpe-icon[data-v-e233e249]{color:var(--danger,#dc2626);flex:none}.tpe-label[data-v-e233e249]{color:var(--danger,#dc2626);flex:1;font-size:12.5px;font-weight:600}.tpe-toggle[data-v-e233e249]{color:var(--ink-muted);cursor:pointer;background:0 0;border:none;flex:none;margin-left:8px;font-size:11px;text-decoration:underline}.tpe-message[data-v-e233e249]{color:var(--ink);margin:6px 0 0;font-family:IBM Plex Mono,monospace;font-size:11.5px}.tpe-raw[data-v-e233e249]{background:var(--bg-soft);border:1px solid var(--divider);white-space:pre-wrap;word-break:break-word;border-radius:4px;max-height:160px;margin:6px 0 0;padding:6px 8px;font-family:IBM Plex Mono,monospace;font-size:11px;overflow:auto}.tpe-hint[data-v-e233e249]{color:var(--ink-muted);margin:6px 0 0;font-size:10.5px}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.47"}.katex .katex-mathml{border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.tt-math-idle[data-v-984c0793]:hover{outline:1px dashed var(--divider);outline-offset:2px}.tt-math-active[data-v-984c0793]{outline:1.5px solid oklch(65% .15 250);outline-offset:2px;background:#3a93e60d}.typst-let-binding[data-v-d77b04a3]{padding:4px 10px;background:var(--bg-soft);border:1px solid var(--divider);border-radius:5px;margin:2px 0;font-size:12.5px}.meta-inner[data-v-d77b04a3]{display:flex;align-items:center;gap:6px}.meta-summary[data-v-d77b04a3]{display:none}.is-selected[data-v-d77b04a3]{outline:2px solid oklch(65% .15 290);outline-offset:-1px}.is-gutter[data-v-d77b04a3]{position:relative;height:0;margin:0;padding:0;border:none;background:none}.is-gutter .meta-inner[data-v-d77b04a3]{position:absolute;top:-1px;right:calc(100% + 8px);width:80px;gap:3px;opacity:.55;cursor:pointer;overflow:hidden;white-space:nowrap}.is-gutter .meta-inner[data-v-d77b04a3]:hover{opacity:1}.is-gutter .let-name-input[data-v-d77b04a3],.is-gutter .let-value-input[data-v-d77b04a3],.is-gutter .let-eq[data-v-d77b04a3],.is-gutter .value-type-badge[data-v-d77b04a3]{display:none}.is-gutter .meta-summary[data-v-d77b04a3]{display:inline;font-family:IBM Plex Mono,monospace;font-size:10px;color:#8f7ce3;overflow:hidden;text-overflow:ellipsis}.is-gutter .let-badge[data-v-d77b04a3],.gp-badge[data-v-d77b04a3]{font-size:8px;padding:0 3px}.gp-summary[data-v-d77b04a3]{font-family:IBM Plex Mono,monospace;font-size:10px;color:#8f7ce3;overflow:hidden;text-overflow:ellipsis}.flow-kw-badge[data-v-d77b04a3]{font-size:10px;font-weight:700;letter-spacing:.06em;padding:1px 5px;border-radius:3px;flex-shrink:0}.let-badge[data-v-d77b04a3]{color:#8f7ce3;background:#8f7ce326}.let-name-input[data-v-d77b04a3]{width:80px;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:3px;padding:1px 4px;outline:none}.let-name-input[data-v-d77b04a3]:hover,.let-name-input[data-v-d77b04a3]:focus{background:var(--surface);border-color:#8f7ce3}.let-eq[data-v-d77b04a3]{color:var(--ink-muted);font-family:IBM Plex Mono,monospace}.let-value-input[data-v-d77b04a3]{flex:1;min-width:40px;font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:3px;padding:1px 4px;outline:none}.let-value-input[data-v-d77b04a3]:hover,.let-value-input[data-v-d77b04a3]:focus{background:var(--surface);border-color:#8f7ce3}.value-type-badge[data-v-d77b04a3]{font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:1px 5px;border-radius:3px;flex-shrink:0;opacity:.7}.value-type-badge[data-type=str][data-v-d77b04a3]{color:oklch(55% .18 140);background:oklch(55% .18 140 / 12%)}.value-type-badge[data-type=num][data-v-d77b04a3]{color:oklch(50% .16 240);background:oklch(50% .16 240 / 12%)}.value-type-badge[data-type=bool][data-v-d77b04a3]{color:#b94739;background:#b947391f}.value-type-badge[data-type=array][data-v-d77b04a3]{color:#724aab;background:#724aab1f}.value-type-badge[data-type=color][data-v-d77b04a3]{color:#a8353e;background:#a8353e1f}.typst-let-fn[data-v-c5b9a225]{border:1.5px solid oklch(55% .18 300);border-radius:6px;overflow:hidden;margin:6px 0}.meta-summary[data-v-c5b9a225]{display:none}.is-selected[data-v-c5b9a225]{box-shadow:0 0 0 3px #8451c940}.typst-let-fn.is-gutter[data-v-c5b9a225]{border:none;overflow:visible;margin:0;position:relative}.typst-let-fn.is-gutter .fn-header[data-v-c5b9a225]{position:absolute;top:0;right:calc(100% + 8px);width:80px;padding:0;background:none;border:none;gap:3px;opacity:.55;cursor:pointer;overflow:hidden;white-space:nowrap}.typst-let-fn.is-gutter .fn-header[data-v-c5b9a225]:hover{opacity:1}.typst-let-fn.is-gutter .fn-name-input[data-v-c5b9a225],.typst-let-fn.is-gutter .fn-args-input[data-v-c5b9a225],.typst-let-fn.is-gutter .fn-paren[data-v-c5b9a225],.typst-let-fn.is-gutter .fn-eq[data-v-c5b9a225]{display:none}.typst-let-fn.is-gutter .meta-summary[data-v-c5b9a225]{display:inline;font-family:IBM Plex Mono,monospace;font-size:10px;color:#8451c9;overflow:hidden;text-overflow:ellipsis}.typst-let-fn.is-gutter .fn-badge[data-v-c5b9a225],.gp-badge[data-v-c5b9a225]{font-size:8px;padding:0 3px}.gp-summary[data-v-c5b9a225]{font-family:IBM Plex Mono,monospace;font-size:10px;color:#8451c9;overflow:hidden;text-overflow:ellipsis}.fn-header[data-v-c5b9a225]{display:flex;align-items:center;gap:6px;padding:5px 10px;background:#8451c90f;border-bottom:1px solid oklch(55% .18 300 / 25%)}.fn-badge[data-v-c5b9a225]{font-size:10px;font-weight:700;letter-spacing:.06em;color:#8451c9;background:#8451c926;padding:1px 5px;border-radius:3px;flex-shrink:0}.fn-name-input[data-v-c5b9a225]{font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600;color:var(--ink);background:transparent;border:none;outline:none;width:80px;min-width:40px;padding:1px 0}.fn-args-input[data-v-c5b9a225]{flex:1;font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--ink);background:transparent;border:none;outline:none;padding:1px 0}.fn-name-input[data-v-c5b9a225]:focus,.fn-args-input[data-v-c5b9a225]:focus{background:var(--surface);border-radius:3px;padding:1px 4px}.fn-paren[data-v-c5b9a225],.fn-eq[data-v-c5b9a225]{font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--ink-muted);flex-shrink:0}.typst-if-block[data-v-d173484d]{position:relative;margin:0}.typst-if-block[data-v-d173484d]:hover{outline:1.5px dashed oklch(55% .15 260 / 50%);outline-offset:2px}.is-selected[data-v-d173484d],.is-selected[data-v-d173484d]:hover{outline:1.5px solid oklch(55% .15 260);outline-offset:2px}.flow-header[data-v-d173484d]{position:absolute;top:0;left:0;transform:translateY(-100%);border-radius:4px;box-shadow:var(--shadow-sm);opacity:0;visibility:hidden;transition:opacity .12s ease;pointer-events:none;z-index:10;display:flex;align-items:center;gap:8px;padding:2px 8px;background:var(--surface);border:1px solid oklch(55% .15 260 / 25%)}.typst-if-block:hover .flow-header[data-v-d173484d],.is-selected .flow-header[data-v-d173484d]{opacity:1;visibility:visible;pointer-events:auto}.flow-kw-badge[data-v-d173484d]{font-size:10px;font-weight:700;letter-spacing:.06em;padding:1px 5px;border-radius:3px;flex-shrink:0}.if-badge[data-v-d173484d]{color:#396fc8;background:#396fc826}.flow-cond-input[data-v-d173484d]{flex:1;font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--ink);background:transparent;border:none;outline:none;padding:1px 0}.flow-cond-input[data-v-d173484d]:focus{background:var(--surface);border-radius:3px;padding:1px 4px}.branch-add-btn[data-v-d173484d]{flex-shrink:0;font-size:10px;font-weight:600;font-family:IBM Plex Mono,monospace;color:#396fc8;background:transparent;border:1px dashed oklch(55% .15 260 / 40%);border-radius:3px;padding:1px 6px;cursor:pointer;opacity:0;transition:opacity .12s}.flow-header:hover .branch-add-btn[data-v-d173484d],.branch-add-btn[data-v-d173484d]:focus-visible{opacity:1}.branch-add-btn[data-v-d173484d]:hover{background:#396fc81a}.typst-if-branch[data-v-c770a96e]{border-top:1px solid oklch(55% .15 260 / 20%)}.typst-if-branch[data-v-c770a96e]:first-child{border-top:none}.branch-label[data-v-c770a96e]{display:flex;align-items:center;gap:8px;font-size:9.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#396fc8;padding:3px 10px;background:#396fc80f;border-bottom:1px solid oklch(55% .15 260 / 15%);user-select:none}.branch-cond-input[data-v-c770a96e]{flex:1;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--ink);background:transparent;border:none;outline:none;padding:0}.branch-cond-input[data-v-c770a96e]:focus{background:var(--surface);border-radius:3px;padding:0 4px}.branch-body[data-v-c770a96e]{padding:8px 12px}.branch-remove-btn[data-v-c770a96e]{margin-left:auto;flex-shrink:0;font-size:13px;line-height:1;color:#396fc899;background:transparent;border:none;border-radius:3px;padding:0 4px;cursor:pointer;opacity:0;transition:opacity .12s}.branch-label:hover .branch-remove-btn[data-v-c770a96e],.branch-remove-btn[data-v-c770a96e]:focus-visible{opacity:1}.branch-remove-btn[data-v-c770a96e]:hover{color:#bb061e;background:#bb061e1a}.typst-for-loop[data-v-de4745ed]{position:relative;margin:0}.typst-for-loop[data-v-de4745ed]:hover{outline:1.5px dashed oklch(55% .13 155 / 50%);outline-offset:2px}.is-selected[data-v-de4745ed],.is-selected[data-v-de4745ed]:hover{outline:1.5px solid oklch(55% .13 155);outline-offset:2px}.flow-header[data-v-de4745ed]{position:absolute;top:0;left:0;transform:translateY(-100%);border-radius:4px;box-shadow:var(--shadow-sm);opacity:0;visibility:hidden;transition:opacity .12s ease;pointer-events:none;z-index:10;display:flex;align-items:center;gap:6px;padding:2px 8px;background:var(--surface);border:1px solid oklch(55% .13 155 / 25%)}.typst-for-loop:hover .flow-header[data-v-de4745ed],.is-selected .flow-header[data-v-de4745ed]{opacity:1;visibility:visible;pointer-events:auto}.flow-kw-badge[data-v-de4745ed]{font-size:10px;font-weight:700;letter-spacing:.06em;padding:1px 5px;border-radius:3px;flex-shrink:0}.for-badge[data-v-de4745ed]{color:#14874e;background:#14874e26}.flow-kw-in[data-v-de4745ed]{font-size:11px;font-weight:600;color:#14874e;font-family:IBM Plex Mono,monospace;flex-shrink:0}.flow-var-input[data-v-de4745ed]{width:60px;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:3px;padding:1px 4px;outline:none}.flow-var-input[data-v-de4745ed]:hover,.flow-var-input[data-v-de4745ed]:focus{background:var(--surface);border-color:#14874e}.flow-iter-input[data-v-de4745ed]{flex:1;min-width:40px;font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:3px;padding:1px 4px;outline:none}.flow-iter-input[data-v-de4745ed]:hover,.flow-iter-input[data-v-de4745ed]:focus{background:var(--surface);border-color:#14874e}.iter-count-badge[data-v-de4745ed]{font-size:10px;font-weight:700;color:#14874e;background:#14874e26;border-radius:10px;padding:1px 7px;flex-shrink:0;margin-left:auto}.typst-loop-body[data-v-bf078335]{border-top:1px solid var(--divider)}.loop-body-label[data-v-bf078335]{font-size:9.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-muted);padding:3px 10px;background:var(--bg-soft);border-bottom:1px solid var(--divider);user-select:none}.loop-body-content[data-v-bf078335]{padding:8px 12px}.typst-while-loop[data-v-458494d7]{position:relative;margin:0}.typst-while-loop[data-v-458494d7]:hover{outline:1.5px dashed oklch(65% .13 65 / 50%);outline-offset:2px}.is-selected[data-v-458494d7],.is-selected[data-v-458494d7]:hover{outline:1.5px solid oklch(65% .13 65);outline-offset:2px}.flow-header[data-v-458494d7]{position:absolute;top:0;left:0;transform:translateY(-100%);border-radius:4px;box-shadow:var(--shadow-sm);opacity:0;visibility:hidden;transition:opacity .12s ease;pointer-events:none;z-index:10;display:flex;align-items:center;gap:8px;padding:2px 8px;background:var(--surface);border:1px solid oklch(65% .13 65 / 25%)}.typst-while-loop:hover .flow-header[data-v-458494d7],.is-selected .flow-header[data-v-458494d7]{opacity:1;visibility:visible;pointer-events:auto}.flow-kw-badge[data-v-458494d7]{font-size:10px;font-weight:700;letter-spacing:.06em;padding:1px 5px;border-radius:3px;flex-shrink:0}.while-badge[data-v-458494d7]{color:#c57c28;background:#c57c2826}.flow-cond-input[data-v-458494d7]{flex:1;font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--ink);background:transparent;border:none;outline:none;padding:1px 0}.flow-cond-input[data-v-458494d7]:focus{background:var(--surface);border-radius:3px;padding:1px 4px}.typst-context[data-v-d2e1e91e]{border:1.5px solid oklch(55% .12 30);border-radius:6px;overflow:hidden;margin:6px 0}.is-selected[data-v-d2e1e91e]{box-shadow:0 0 0 3px #ac534640}.typst-context.is-gutter[data-v-d2e1e91e]{border:none;overflow:visible;margin:0;position:relative}.typst-context.is-gutter .context-header[data-v-d2e1e91e]{position:absolute;top:0;right:calc(100% + 8px);width:80px;padding:0;background:none;border:none;opacity:.55;cursor:pointer;overflow:hidden;white-space:nowrap}.typst-context.is-gutter .context-header[data-v-d2e1e91e]:hover{opacity:1}.typst-context.is-gutter .context-hint[data-v-d2e1e91e]{display:none}.typst-context.is-gutter .context-badge[data-v-d2e1e91e],.gp-badge[data-v-d2e1e91e]{font-size:8px;padding:0 3px}.context-header[data-v-d2e1e91e]{display:flex;align-items:center;gap:8px;padding:4px 10px;background:#ac53460f;border-bottom:1px solid oklch(55% .12 30 / 25%)}.context-badge[data-v-d2e1e91e]{font-size:10px;font-weight:700;letter-spacing:.06em;color:#ac5346;background:#ac534626;padding:1px 5px;border-radius:3px;flex-shrink:0}.context-hint[data-v-d2e1e91e]{font-size:10px;color:var(--ink-muted);font-style:italic}.typst-show-rule[data-v-4d709bd4]{padding:5px 10px;border:1.5px solid oklch(50% .15 160);border-radius:6px;margin:4px 0;background:oklch(50% .15 160 / 4%)}.meta-inner[data-v-4d709bd4]{display:flex;align-items:center;gap:8px}.meta-summary[data-v-4d709bd4]{display:none}.is-selected[data-v-4d709bd4]{box-shadow:0 0 0 3px oklch(50% .15 160 / 25%)}.is-gutter[data-v-4d709bd4]{position:relative;height:0;margin:0;padding:0;border:none;background:none}.is-gutter .meta-inner[data-v-4d709bd4]{position:absolute;top:-1px;right:calc(100% + 8px);width:80px;gap:3px;opacity:.55;cursor:pointer;overflow:hidden;white-space:nowrap}.is-gutter .meta-inner[data-v-4d709bd4]:hover{opacity:1}.is-gutter .show-input[data-v-4d709bd4],.is-gutter .show-arrow[data-v-4d709bd4]{display:none}.is-gutter .meta-summary[data-v-4d709bd4]{display:inline;font-family:IBM Plex Mono,monospace;font-size:10px;color:oklch(50% .15 160);overflow:hidden;text-overflow:ellipsis}.is-gutter .show-badge[data-v-4d709bd4],.gp-badge[data-v-4d709bd4]{font-size:8px;padding:0 3px}.gp-summary[data-v-4d709bd4]{font-family:IBM Plex Mono,monospace;font-size:10px;color:oklch(50% .15 160);overflow:hidden;text-overflow:ellipsis}.show-badge[data-v-4d709bd4]{font-size:10px;font-weight:700;letter-spacing:.06em;color:oklch(50% .15 160);background:oklch(50% .15 160 / 15%);padding:1px 5px;border-radius:3px;flex-shrink:0}.show-arrow[data-v-4d709bd4]{font-size:12px;color:var(--ink-muted);flex-shrink:0}.show-input[data-v-4d709bd4]{font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--ink);background:transparent;border:none;outline:none;padding:1px 0}.selector-input[data-v-4d709bd4]{width:120px;min-width:60px}.transform-input[data-v-4d709bd4]{flex:1}.show-input[data-v-4d709bd4]:focus{background:var(--surface);border-radius:3px;padding:1px 4px}.typst-set-rule[data-v-7eb08e1f]{padding:5px 10px;border:1.5px solid oklch(50% .14 220);border-radius:6px;margin:4px 0;background:oklch(50% .14 220 / 4%)}.meta-inner[data-v-7eb08e1f]{display:flex;align-items:center;gap:6px}.meta-summary[data-v-7eb08e1f]{display:none}.is-selected[data-v-7eb08e1f]{box-shadow:0 0 0 3px oklch(50% .14 220 / 25%)}.is-gutter[data-v-7eb08e1f]{position:relative;height:0;margin:0;padding:0;border:none;background:none}.is-gutter .meta-inner[data-v-7eb08e1f]{position:absolute;top:-1px;right:calc(100% + 8px);width:80px;gap:3px;opacity:.55;cursor:pointer;overflow:hidden;white-space:nowrap}.is-gutter .meta-inner[data-v-7eb08e1f]:hover{opacity:1}.is-gutter .set-input[data-v-7eb08e1f],.is-gutter .set-paren[data-v-7eb08e1f]{display:none}.is-gutter .meta-summary[data-v-7eb08e1f]{display:inline;font-family:IBM Plex Mono,monospace;font-size:10px;color:oklch(50% .14 220);overflow:hidden;text-overflow:ellipsis}.is-gutter .set-badge[data-v-7eb08e1f],.gp-badge[data-v-7eb08e1f]{font-size:8px;padding:0 3px}.gp-summary[data-v-7eb08e1f]{font-family:IBM Plex Mono,monospace;font-size:10px;color:oklch(50% .14 220);overflow:hidden;text-overflow:ellipsis}.set-badge[data-v-7eb08e1f]{font-size:10px;font-weight:700;letter-spacing:.06em;color:oklch(50% .14 220);background:oklch(50% .14 220 / 15%);padding:1px 5px;border-radius:3px;flex-shrink:0}.set-paren[data-v-7eb08e1f]{font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--ink-muted);flex-shrink:0}.set-input[data-v-7eb08e1f]{font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--ink);background:transparent;border:none;outline:none;padding:1px 0}.target-input[data-v-7eb08e1f]{width:80px;min-width:40px;font-weight:600}.args-input[data-v-7eb08e1f]{flex:1}.set-input[data-v-7eb08e1f]:focus{background:var(--surface);border-radius:3px;padding:1px 4px}.typst-image-node[data-v-7415a8a6]{display:block;position:relative;margin:0}.typst-image-node[data-v-7415a8a6]:hover{outline:1.5px dashed var(--divider);outline-offset:2px}.is-selected[data-v-7415a8a6],.is-selected[data-v-7415a8a6]:hover{outline:1.5px solid oklch(55% .18 240);outline-offset:2px}.image-container[data-v-7415a8a6]{display:flex;flex-direction:column;align-items:flex-start}.image-frame[data-v-7415a8a6]{position:relative;display:inline-block;max-width:100%;line-height:0}.image-preview[data-v-7415a8a6]{max-width:100%;max-height:300px;display:block;object-fit:contain}.image-preview.has-explicit-size[data-v-7415a8a6]{max-height:none;object-fit:contain}.image-label[data-v-7415a8a6]{position:absolute;left:0;bottom:0;font-size:10px;color:var(--ink-muted);padding:2px 6px;background:var(--bg-soft);border-radius:0 4px 0 0;font-family:IBM Plex Mono,monospace;opacity:0;visibility:hidden;transition:opacity .12s ease;pointer-events:none;z-index:6}.typst-image-node:hover .image-label[data-v-7415a8a6],.is-selected .image-label[data-v-7415a8a6]{opacity:1;visibility:visible}.broken-image[data-v-7415a8a6]{display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--bg-soft);color:var(--ink-muted)}.image-path[data-v-7415a8a6]{font-family:IBM Plex Mono,monospace;font-size:12px}.typst-figure-node[data-v-19ca2734]{display:block;position:relative;margin:0}.typst-figure-node[data-v-19ca2734]:hover{outline:1.5px dashed var(--divider);outline-offset:2px}.is-selected[data-v-19ca2734],.is-selected[data-v-19ca2734]:hover{outline:1.5px solid oklch(55% .18 240);outline-offset:2px}.figure-header[data-v-19ca2734]{position:absolute;top:0;left:0;transform:translateY(-100%);display:flex;align-items:center;padding:1px 0;opacity:0;visibility:hidden;transition:opacity .12s ease;pointer-events:none;z-index:6}.typst-figure-node:hover .figure-header[data-v-19ca2734],.is-selected .figure-header[data-v-19ca2734]{opacity:1;visibility:visible}.figure-badge[data-v-19ca2734]{font-size:10px;font-weight:700;letter-spacing:.06em;color:oklch(45% .12 240);background:oklch(45% .12 240 / 12%);padding:1px 6px;border-radius:3px}.figure-body[data-v-19ca2734]{display:flex;justify-content:center;align-items:center}.figure-image[data-v-19ca2734]{display:block;object-fit:contain}.figure-placeholder[data-v-19ca2734]{display:flex;flex-direction:row;align-items:center;gap:6px;color:var(--ink-muted);padding:8px;background:var(--bg-soft);border-radius:6px}.figure-raw-hint[data-v-19ca2734]{font-size:11px;color:var(--ink-muted);font-style:italic}.figure-caption[data-v-19ca2734]{text-align:center}.figure-caption-text[data-v-19ca2734]{font-size:.92em;color:var(--ink);cursor:text}.figure-caption-text.empty[data-v-19ca2734]{opacity:.6}.figure-caption-input[data-v-19ca2734]{width:100%;font-size:12px;color:var(--ink);font-style:italic;text-align:center;background:var(--surface);border:1px solid var(--accent);border-radius:3px;padding:2px 6px;outline:none}.typst-vspace-node[data-v-9bdece0d]{display:flex;align-items:center;justify-content:flex-end;box-sizing:border-box;position:relative;margin:0;box-shadow:inset 0 1px 0 0 var(--divider),inset 0 -1px 0 0 var(--divider)}.is-selected[data-v-9bdece0d]{box-shadow:inset 0 1px oklch(55% .18 240 / 60%),inset 0 -1px oklch(55% .18 240 / 60%);background:oklch(55% .18 240 / 4%)}.vspace-label[data-v-9bdece0d]{font-size:10px;color:var(--ink-muted);font-family:IBM Plex Mono,monospace;padding:0 6px;position:absolute;right:0;user-select:none}.typst-columns-node[data-v-edc4b998]{--tt-accent: oklch(50% .15 190);margin:0;border-radius:6px}.columns-count-input[data-v-edc4b998]{width:40px;text-align:center}.columns-label-text[data-v-edc4b998]{font-size:10px;color:var(--ink-muted)}.columns-body[data-v-edc4b998]{column-gap:20px}.typst-box-node[data-v-e1f29357]{--tt-accent: oklch(55% .14 30);margin:0;border-radius:6px}.box-args[data-v-e1f29357]{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:320px}.box-body[data-v-e1f29357]{border-radius:6px}.typst-block-wrapper-node[data-v-e65efde6]{--tt-accent: oklch(50% .12 270);margin:0;border-radius:6px}.block-args[data-v-e65efde6]{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:320px}.block-body[data-v-e65efde6]{border-radius:6px}.typst-wrapper-node[data-v-0b762552]{--tt-accent: oklch(55% .13 200);margin:0;border-radius:6px}.wrap-args[data-v-0b762552]{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:320px}.wrap-body[data-v-0b762552]{border-radius:6px}.typst-shape-node[data-v-22c9d3a9]{position:relative;margin:0}.typst-shape-node[data-v-22c9d3a9]:hover{outline:1.5px dashed oklch(60% .16 320 / 40%);outline-offset:2px}.is-selected[data-v-22c9d3a9],.is-selected[data-v-22c9d3a9]:hover{outline:1.5px solid oklch(60% .16 320);outline-offset:2px}.shape-header[data-v-22c9d3a9]{position:absolute;top:0;left:0;transform:translateY(-100%);display:flex;align-items:center;gap:8px;padding:2px 6px;background:var(--surface);border:1px solid oklch(60% .16 320 / 20%);border-radius:4px;box-shadow:var(--shadow-sm);opacity:0;visibility:hidden;transition:opacity .12s ease;pointer-events:none;z-index:10}.typst-shape-node:hover .shape-header[data-v-22c9d3a9],.is-selected .shape-header[data-v-22c9d3a9]{opacity:1;visibility:visible;pointer-events:auto}.shape-badge[data-v-22c9d3a9]{font-size:10px;font-weight:700;letter-spacing:.06em;color:#a95cbb;background:#a95cbb26;padding:1px 6px;border-radius:3px;flex-shrink:0}.shape-args[data-v-22c9d3a9]{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-grow:1}.shape-edit-btn[data-v-22c9d3a9]{display:inline-flex;align-items:center;gap:4px;background:transparent;border:none;font-size:10.5px;color:var(--ink-muted);cursor:pointer;padding:2px 6px;border-radius:4px}.shape-edit-btn[data-v-22c9d3a9]:hover{background:var(--bg-soft);color:var(--ink)}.shape-body-container[data-v-22c9d3a9]{position:relative;box-sizing:border-box;max-width:100%}.shape-body[data-v-22c9d3a9]{position:relative;z-index:1;width:100%;height:100%}.shape-edit-area[data-v-22c9d3a9]{padding:6px 12px 8px;background:var(--bg-soft);border-top:1px solid var(--divider);border-radius:0 0 5px 5px;margin-top:-2px}.shape-textarea[data-v-22c9d3a9]{width:100%;min-height:48px;resize:vertical;font-family:IBM Plex Mono,monospace;font-size:11.5px;background:var(--surface);color:var(--ink);border:1px solid var(--divider);border-radius:4px;padding:6px 8px;outline:none}.shape-textarea[data-v-22c9d3a9]:focus{border-color:var(--accent)}.shape-edit-hint[data-v-22c9d3a9]{font-size:10.5px;color:var(--ink-muted);margin:4px 0 0}.typst-place-node[data-v-1703944d]{position:static;height:0}.place-anchor[data-v-1703944d]{--tt-accent: oklch(55% .16 320);z-index:5;border-radius:6px;background:transparent;pointer-events:none;width:max-content;max-width:var(--page-content-width, 100%);height:auto;overflow:visible}.place-anchor>.place-body[data-v-1703944d]{pointer-events:auto}.place-args-input[data-v-1703944d]{width:150px}.place-body[data-v-1703944d]{box-sizing:border-box;height:auto;min-height:1em;overflow:visible;overflow-wrap:normal;word-break:normal}.typst-grid-node[data-v-32af022a]{margin:0;position:relative}.typst-grid-node[data-v-32af022a]:hover,.typst-grid-node.is-selected[data-v-32af022a]{outline:1px dashed oklch(55% .18 240 / 40%);outline-offset:1px;border-radius:4px}.grid-header[data-v-32af022a]{position:absolute;top:-20px;left:0;display:flex;align-items:center;gap:6px;padding:2px 6px;background:var(--surface);border:1px solid var(--divider);border-radius:4px;font-size:10px;user-select:none;opacity:0;pointer-events:none;transition:opacity .2s;z-index:10;box-shadow:var(--shadow-sm)}.typst-grid-node:hover .grid-header[data-v-32af022a],.typst-grid-node.is-selected .grid-header[data-v-32af022a]{opacity:1;pointer-events:auto}.grid-tools[data-v-32af022a]{display:inline-flex;gap:3px;margin-left:4px}.grid-tool[data-v-32af022a]{font-size:9px;font-family:IBM Plex Mono,monospace;color:oklch(55% .18 240);background:transparent;border:1px dashed oklch(55% .18 240 / 40%);border-radius:3px;padding:0 4px;cursor:pointer;line-height:14px}.grid-tool[data-v-32af022a]:disabled{opacity:.35;cursor:default}.grid-tool[data-v-32af022a]:not(:disabled):hover{background:oklch(55% .18 240 / 10%)}.grid-badge[data-v-32af022a]{font-size:8px;font-weight:700;letter-spacing:.04em;color:oklch(55% .18 240);background:oklch(55% .18 240 / 12%);padding:1px 4px;border-radius:2px}.grid-info[data-v-32af022a]{color:var(--ink-muted)}.grid-body-content[data-v-32af022a]{padding:0}.grid-body-content[data-v-32af022a] tr{display:grid;grid-template-columns:var(--grid-template-columns);column-gap:var(--grid-column-gap);row-gap:var(--grid-row-gap);margin-bottom:var(--grid-row-gap)}.grid-body-content[data-v-32af022a] tr:last-child{margin-bottom:0}.grid-body-content[data-v-32af022a] td{border:none!important;background:transparent!important;padding:2px 0;border-radius:0;min-height:1.2em}.typst-pagebreak[data-v-f3614ff8]{position:relative;height:0;margin:0;user-select:none}.break-chrome[data-v-f3614ff8]{position:absolute;left:0;right:0;top:0;transform:translateY(-50%);display:flex;align-items:center;gap:10px;pointer-events:auto;z-index:5}.is-selected .break-line[data-v-f3614ff8]{border-color:oklch(55% .18 240 / 60%)}.break-line[data-v-f3614ff8]{flex:1;border-top:2px dashed oklch(50% 0 0 / 25%)}.break-label[data-v-f3614ff8]{font-size:10px;font-weight:600;letter-spacing:.08em;color:#63636366;text-transform:uppercase;white-space:nowrap;flex-shrink:0}.typst-colbreak[data-v-cf42c2e0]{position:relative;height:0;margin:0;user-select:none}.break-chrome[data-v-cf42c2e0]{position:absolute;left:0;right:0;top:0;transform:translateY(-50%);display:flex;align-items:center;gap:10px;pointer-events:auto;z-index:5}.is-selected .break-line[data-v-cf42c2e0]{border-color:oklch(50% .15 190 / 60%)}.break-line[data-v-cf42c2e0]{flex:1;border-top:2px dashed oklch(50% .15 190 / 30%)}.break-label[data-v-cf42c2e0]{font-size:10px;font-weight:600;letter-spacing:.08em;color:oklch(50% .15 190 / 50%);text-transform:uppercase;white-space:nowrap;flex-shrink:0}.modal-backdrop[data-v-9e44ffca]{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;background:color-mix(in oklch,black 45%,transparent);backdrop-filter:blur(2px);padding:24px}.modal[data-v-9e44ffca]{background:#fff;border-radius:12px;box-shadow:0 24px 64px color-mix(in oklch,black 22%,transparent);width:640px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.modal-head[data-v-9e44ffca]{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px 14px;border-bottom:1px solid #f0f0f0;flex-shrink:0}.modal-title[data-v-9e44ffca]{font-size:15px;font-weight:600;color:#111;margin:0 0 3px}.modal-subtitle[data-v-9e44ffca]{font-size:12px;color:#888;margin:0}.modal-subtitle code[data-v-9e44ffca]{font-family:IBM Plex Mono,monospace;font-size:11px;background:#f4f4f5;padding:1px 4px;border-radius:3px;color:#555}.close-btn[data-v-9e44ffca]{width:28px;height:28px;border:none;background:transparent;cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center;color:#aaa;flex-shrink:0;margin-top:-2px}.close-btn[data-v-9e44ffca]:hover{background:#f4f4f5;color:#555}.modal-body[data-v-9e44ffca]{padding:20px 24px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:20px}.field-row[data-v-9e44ffca]{display:flex;gap:16px;align-items:flex-start}.field[data-v-9e44ffca]{display:flex;flex-direction:column;gap:5px;flex:1}.field-narrow[data-v-9e44ffca]{flex:0 0 140px}.field-label[data-v-9e44ffca]{font-size:10.5px;font-weight:700;color:#555;text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px}.field-input[data-v-9e44ffca]{height:34px;border:1.5px solid #e0e0e0;border-radius:7px;padding:0 10px;font-size:13px;font-family:IBM Plex Mono,monospace;color:#111;outline:none;transition:border-color .12s}.field-input[data-v-9e44ffca]:focus{border-color:oklch(50% .12 200);box-shadow:0 0 0 3px oklch(50% .12 200 / 12%)}.field-hint[data-v-9e44ffca]{font-size:10.5px;color:#aaa;line-height:1.5}.field-hint code[data-v-9e44ffca]{font-family:IBM Plex Mono,monospace;font-size:10px;background:#f4f4f5;padding:0 3px;border-radius:2px;color:#666}.cols-head[data-v-9e44ffca]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.add-col-btn[data-v-9e44ffca]{display:flex;align-items:center;gap:5px;font-size:11.5px;font-weight:500;color:oklch(50% .12 200);background:oklch(50% .12 200 / 8%);border:1px solid oklch(50% .12 200 / 30%);border-radius:6px;padding:4px 10px;cursor:pointer}.add-col-btn[data-v-9e44ffca]:hover{background:oklch(50% .12 200 / 14%)}.col-table[data-v-9e44ffca]{display:flex;flex-direction:column;gap:4px}.col-table-head[data-v-9e44ffca]{display:flex;gap:8px;padding:0 6px;align-items:center}.col-th[data-v-9e44ffca]{font-size:9.5px;font-weight:700;color:#bbb;text-transform:uppercase;letter-spacing:.06em}.col-row[data-v-9e44ffca]{display:flex;gap:8px;align-items:center;background:#fafafa;border:1.5px solid #ebebeb;border-radius:7px;padding:6px 8px}.col-input[data-v-9e44ffca]{height:30px;border:1.5px solid #e0e0e0;border-radius:5px;padding:0 8px;font-size:12px;color:#111;background:#fff;outline:none;min-width:0;transition:border-color .12s}.col-input[data-v-9e44ffca]:focus{border-color:oklch(50% .12 200)}.col-mono[data-v-9e44ffca]{font-family:IBM Plex Mono,monospace}.col-select[data-v-9e44ffca]{height:30px;border:1.5px solid #e0e0e0;border-radius:5px;padding:0 4px;font-size:11px;font-family:IBM Plex Mono,monospace;background:#fff;color:#111;outline:none;flex-shrink:0;cursor:pointer}.col-select[data-v-9e44ffca]:focus{border-color:oklch(50% .12 200)}.align-btns[data-v-9e44ffca]{display:flex;border:1.5px solid #e0e0e0;border-radius:5px;overflow:hidden;flex-shrink:0;width:80px}.align-btn[data-v-9e44ffca]{flex:1;height:28px;border:none;background:#fff;font-size:10px;font-weight:700;color:#999;cursor:pointer;border-right:1px solid #e0e0e0}.align-btn[data-v-9e44ffca]:last-child{border-right:none}.align-btn[data-v-9e44ffca]:hover{background:#f4f4f5;color:#444}.align-btn.active[data-v-9e44ffca]{background:oklch(50% .12 200);color:#fff}.remove-btn[data-v-9e44ffca]{width:24px;height:24px;border:none;background:transparent;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;color:#ccc;flex-shrink:0}.remove-btn[data-v-9e44ffca]:hover:not(:disabled){color:#ef4444;background:#fef2f2}.remove-btn[data-v-9e44ffca]:disabled{opacity:.3;cursor:not-allowed}.preview[data-v-9e44ffca]{border:1.5px solid #ebebeb;border-radius:7px;overflow:hidden}.preview-label[data-v-9e44ffca]{display:block;font-size:9.5px;font-weight:700;color:#bbb;text-transform:uppercase;letter-spacing:.06em;padding:5px 12px;background:#f9f9f9;border-bottom:1px solid #ebebeb}.preview-code[data-v-9e44ffca]{margin:0;padding:10px 14px;font-family:IBM Plex Mono,monospace;font-size:11px;color:#555;background:#fff;white-space:pre;overflow-x:auto;line-height:1.6}.modal-foot[data-v-9e44ffca]{display:flex;justify-content:flex-end;gap:10px;padding:14px 24px;border-top:1px solid #f0f0f0;flex-shrink:0}.btn-cancel[data-v-9e44ffca]{height:34px;padding:0 16px;border:1.5px solid #e0e0e0;border-radius:7px;background:#fff;font-size:13px;color:#555;cursor:pointer}.btn-cancel[data-v-9e44ffca]:hover{background:#f4f4f5}.btn-insert[data-v-9e44ffca]{height:34px;padding:0 20px;border:none;border-radius:7px;background:oklch(50% .12 200);color:#fff;font-size:13px;font-weight:500;cursor:pointer}.btn-insert[data-v-9e44ffca]:hover:not(:disabled){background:oklch(44% .12 200)}.btn-insert[data-v-9e44ffca]:disabled{opacity:.4;cursor:not-allowed}.typst-table-for[data-v-2873fa96]{position:relative;margin:0;font-family:inherit}.typst-table-for[data-v-2873fa96]:hover{outline:1.5px dashed oklch(50% .12 200 / 50%);outline-offset:2px}.is-selected[data-v-2873fa96],.is-selected[data-v-2873fa96]:hover{outline:1.5px solid oklch(50% .12 200);outline-offset:2px}.tf-header[data-v-2873fa96]{position:absolute;top:0;left:0;transform:translateY(-100%);border-radius:4px;border:1px solid oklch(50% .12 200 / 25%);box-shadow:var(--shadow-sm);opacity:0;visibility:hidden;transition:opacity .12s ease;pointer-events:none;z-index:10;display:flex;align-items:center;gap:6px;padding:2px 8px;background:var(--surface);flex-wrap:wrap}.tf-badge[data-v-2873fa96]{font-size:9px;font-weight:700;letter-spacing:.06em;padding:1px 5px;border-radius:3px;color:oklch(50% .12 200);background:oklch(50% .12 200 / 15%);flex-shrink:0}.tf-col-count[data-v-2873fa96]{font-size:10px;color:var(--ink-muted, #999);flex-shrink:0}.tf-kw[data-v-2873fa96]{font-size:11px;font-weight:600;color:oklch(50% .12 200);font-family:IBM Plex Mono,monospace;flex-shrink:0}.tf-var-input[data-v-2873fa96]{width:70px;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:3px;padding:1px 4px;outline:none}.tf-var-input[data-v-2873fa96]:hover,.tf-var-input[data-v-2873fa96]:focus{background:var(--surface);border-color:oklch(50% .12 200)}.tf-iter-input[data-v-2873fa96]{flex:1;min-width:80px;font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:3px;padding:1px 4px;outline:none}.tf-iter-input[data-v-2873fa96]:hover,.tf-iter-input[data-v-2873fa96]:focus{background:var(--surface);border-color:oklch(50% .12 200)}.tf-edit-btn[data-v-2873fa96]{margin-left:auto;width:24px;height:24px;border:1px solid oklch(50% .12 200 / 35%);background:oklch(50% .12 200 / 8%);border-radius:4px;display:flex;align-items:center;justify-content:center;color:oklch(50% .12 200);cursor:pointer;flex-shrink:0}.tf-edit-btn[data-v-2873fa96]:hover{background:oklch(50% .12 200 / 18%);border-color:oklch(50% .12 200 / 60%)}.tf-grid[data-v-2873fa96]{display:grid;border-top:1px solid oklch(50% .12 200 / 20%)}.tf-cell[data-v-2873fa96]{border-right:1px solid oklch(50% .12 200 / 20%);padding:3px 6px;min-width:0}.tf-cell[data-v-2873fa96]:last-child{border-right:none}.tf-cell-input[data-v-2873fa96]{width:100%;font-family:IBM Plex Mono,monospace;font-size:11px;background:transparent;border:none;outline:none;color:var(--ink);padding:0;box-sizing:border-box;min-width:0}.tf-grid-header[data-v-2873fa96]{background:oklch(50% .12 200 / 5%)}.tf-cell-head[data-v-2873fa96]{font-weight:600;color:oklch(40% .1 200)}.tf-row-label[data-v-2873fa96]{display:flex;align-items:center;gap:6px;padding:3px 10px;background:oklch(50% .12 200 / 3%);border-top:1px solid oklch(50% .12 200 / 20%)}.tf-row-badge[data-v-2873fa96]{font-size:8.5px;font-weight:700;letter-spacing:.05em;color:oklch(50% .12 200);text-transform:uppercase}.tf-row-hint[data-v-2873fa96]{font-size:10px;color:var(--ink-muted, #999);font-style:italic}.tf-grid-body[data-v-2873fa96]{background:#fff}.tf-cell-body[data-v-2873fa96]{color:var(--ink, #333)}.typst-table-for:hover .tf-header[data-v-2873fa96],.is-selected .tf-header[data-v-2873fa96]{opacity:1;visibility:visible;pointer-events:auto}.scf[data-v-5fd7d900]{display:inline-flex;position:relative}.scf-trigger[data-v-5fd7d900]{border:1px solid var(--divider,#d1d5db);cursor:pointer;background:#fff;border-radius:6px;flex-shrink:0;padding:2px;position:relative;overflow:hidden}.scf-trigger.open[data-v-5fd7d900],.scf-trigger[data-v-5fd7d900]:hover{border-color:var(--accent,#4f46e5)}.scf-trigger-fill[data-v-5fd7d900]{border-radius:4px;width:100%;height:100%;display:block;box-shadow:inset 0 0 0 1px #00000014}.scf-trigger-empty[data-v-5fd7d900]{color:#9ca3af;pointer-events:none;justify-content:center;align-items:center;font-size:12px;display:flex;position:absolute;inset:0}.scf-trigger-badge[data-v-5fd7d900]{background:var(--accent,#4f46e5);border:1px solid #fff;border-radius:50%;width:7px;height:7px;position:absolute;bottom:2px;right:2px}.scf-pop[data-v-5fd7d900]{z-index:1000;border:1px solid var(--divider,#e5e7eb);background:#fff;border-radius:10px;width:224px;padding:10px;position:fixed;box-shadow:0 10px 30px #00000029}.scf-pop-label[data-v-5fd7d900]{text-transform:uppercase;letter-spacing:.04em;color:#9ca3af;margin:0 0 6px;font-size:10px;font-weight:700}.scf-pop-label+.scf-pop-label[data-v-5fd7d900],.scf-custom-row[data-v-5fd7d900]{margin-top:0}.scf-pop-empty[data-v-5fd7d900]{color:#9ca3af;margin:0 0 8px;font-size:11px;line-height:1.4}.scf-swatches[data-v-5fd7d900]{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.scf-swatch[data-v-5fd7d900]{cursor:pointer;border:1px solid var(--divider,#d1d5db);border-radius:6px;width:24px;height:24px;padding:0;box-shadow:inset 0 0 0 1px #ffffff2e}.scf-swatch[data-v-5fd7d900]:hover{transform:scale(1.08)}.scf-swatch.active[data-v-5fd7d900]{outline:2px solid var(--accent,#4f46e5);outline-offset:1px}.scf-custom-row[data-v-5fd7d900]{align-items:center;gap:6px;display:flex}.scf-custom[data-v-5fd7d900]{border:1px solid var(--divider,#d1d5db);cursor:pointer;border-radius:6px;flex-shrink:0;width:30px;height:28px;display:inline-flex;position:relative;overflow:hidden}.scf-custom.active[data-v-5fd7d900]{outline:2px solid var(--accent,#4f46e5);outline-offset:1px}.scf-custom input[type=color][data-v-5fd7d900]{cursor:pointer;background:0 0;border:none;width:calc(100% + 8px);height:calc(100% + 8px);padding:0;position:absolute;inset:-4px}.scf-hex[data-v-5fd7d900]{border:1px solid var(--divider,#d1d5db);color:#374151;background:#fff;border-radius:6px;outline:none;flex:1;min-width:0;height:28px;padding:0 8px;font-family:monospace;font-size:12px}.scf-clear[data-v-5fd7d900]{border:1px solid var(--divider,#d1d5db);color:#6b7280;cursor:pointer;background:#fff;border-radius:6px;flex-shrink:0;height:28px;padding:0 8px;font-size:11px}.scf-clear[data-v-5fd7d900]:hover{color:#374151;border-color:var(--accent,#4f46e5)}.cw-backdrop[data-v-f6790a56]{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#00000073;backdrop-filter:blur(2px);padding:24px}.cw-modal[data-v-f6790a56]{width:min(640px,calc(100vw - 32px));max-height:min(88vh,760px);display:flex;flex-direction:column;background:var(--bg);color:var(--ink);border:1px solid var(--border);border-radius:12px;box-shadow:0 24px 64px #00000059;overflow:hidden}.cw-modal.fullscreen[data-v-f6790a56]{width:100vw;height:100dvh;max-height:none;border-radius:0;border:none}.cw-backdrop[data-v-f6790a56]:has(.fullscreen){padding:0}.cw-head[data-v-f6790a56]{display:flex;align-items:flex-start;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--divider);flex-shrink:0}.cw-title[data-v-f6790a56]{font-size:15px;font-weight:600;margin:0 0 2px}.cw-subtitle[data-v-f6790a56]{font-size:12px;color:var(--ink-muted);margin:0}.cw-close[data-v-f6790a56]{background:transparent;border:none;color:var(--ink-muted);font-size:22px;line-height:1;cursor:pointer}.cw-close[data-v-f6790a56]:hover{color:var(--ink)}.cw-body[data-v-f6790a56]{padding:18px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:16px}.cw-empty[data-v-f6790a56]{padding:40px 16px;text-align:center;color:var(--ink-muted)}.cw-empty-hint[data-v-f6790a56]{font-size:12px;margin-top:6px}.cw-warn[data-v-f6790a56]{font-size:12px;color:var(--ink);background:color-mix(in oklch,orange 12%,transparent);border:1px solid color-mix(in oklch,orange 35%,transparent);border-radius:6px;padding:8px 10px}.cw-warn code[data-v-f6790a56]{font-family:IBM Plex Mono,monospace}.cw-row[data-v-f6790a56]{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}.cw-field[data-v-f6790a56]{display:flex;flex-direction:column;gap:4px;flex:1;min-width:120px}.cw-label[data-v-f6790a56]{font-size:10.5px;font-weight:700;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.05em}.cw-input[data-v-f6790a56]{height:32px;border:1px solid var(--border);border-radius:6px;padding:0 8px;font-size:13px;background:var(--surface);color:var(--ink);outline:none;min-width:0}.cw-input[data-v-f6790a56]:focus{border-color:var(--accent)}.cw-cols-head[data-v-f6790a56]{display:flex;align-items:center;justify-content:space-between}.cw-add-btn[data-v-f6790a56]{font-size:11.5px;color:var(--accent);background:transparent;border:1px solid color-mix(in oklch,var(--accent) 35%,transparent);border-radius:6px;padding:3px 9px;cursor:pointer}.cw-add-btn[data-v-f6790a56]:hover{background:color-mix(in oklch,var(--accent) 12%,transparent)}.cw-series[data-v-f6790a56]{display:flex;flex-direction:column;gap:6px}.cw-series-row[data-v-f6790a56]{display:flex;gap:8px;align-items:center}.cw-series-sel[data-v-f6790a56]{flex:1}.cw-series-name[data-v-f6790a56]{flex:1;font-size:12px}.cw-remove-btn[data-v-f6790a56]{width:28px;height:28px;flex-shrink:0;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--ink-muted);font-size:16px;line-height:1;cursor:pointer}.cw-remove-btn[data-v-f6790a56]:hover:not(:disabled){color:#ef4444;border-color:#ef4444}.cw-remove-btn[data-v-f6790a56]:disabled{opacity:.35;cursor:not-allowed}.cw-color-hint[data-v-f6790a56]{font-weight:400;text-transform:none;letter-spacing:0;color:var(--ink-muted)}.cw-swatches[data-v-f6790a56]{display:flex;flex-wrap:wrap;gap:10px}.cw-swatch-item[data-v-f6790a56]{display:flex;flex-direction:column;align-items:center;gap:2px}.cw-swatch-cap[data-v-f6790a56]{font-size:9px;color:var(--ink-muted)}.cw-roles[data-v-f6790a56]{flex-wrap:wrap}.cw-options-row[data-v-f6790a56]{align-items:center}.cw-check[data-v-f6790a56]{display:flex;align-items:center;gap:5px;font-size:12.5px;color:var(--ink);cursor:pointer;white-space:nowrap}.cw-preview[data-v-f6790a56]{border:1px solid var(--divider);border-radius:7px;overflow:hidden}.cw-preview-label[data-v-f6790a56]{display:block;font-size:9.5px;font-weight:700;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.05em;padding:5px 12px;background:var(--bg-soft);border-bottom:1px solid var(--divider)}.cw-preview-code[data-v-f6790a56]{margin:0;padding:10px 14px;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--ink);background:var(--surface);white-space:pre;overflow-x:auto;line-height:1.55}.cw-preview-imports[data-v-f6790a56]{color:var(--ink-muted)}.cw-foot[data-v-f6790a56]{display:flex;justify-content:flex-end;gap:10px;padding:12px 18px;border-top:1px solid var(--divider);flex-shrink:0}.cw-btn-cancel[data-v-f6790a56]{height:34px;padding:0 16px;border:1px solid var(--border);border-radius:7px;background:var(--surface);font-size:13px;color:var(--ink);cursor:pointer}.cw-btn-cancel[data-v-f6790a56]:hover{background:var(--bg-soft)}.cw-btn-insert[data-v-f6790a56]{height:34px;padding:0 20px;border:none;border-radius:7px;background:var(--accent);color:#fff;font-size:13px;font-weight:500;cursor:pointer}.cw-btn-insert[data-v-f6790a56]:disabled{opacity:.4;cursor:not-allowed}.typst-chart[data-v-f4358c07]{margin:0}.tc-frame[data-v-f4358c07]{flex-direction:column;align-items:flex-start;display:inline-flex;position:relative}.typst-chart:hover .tc-frame[data-v-f4358c07]{outline-offset:2px;border-radius:8px;outline:1.5px dashed oklch(50% .12 200/.4)}.tc-frame.broken[data-v-f4358c07]{outline-offset:2px;outline:1.5px solid #ef4444}.is-selected .tc-frame[data-v-f4358c07]{outline-offset:2px;outline:1.5px solid oklch(50% .12 200)}.tc-render[data-v-f4358c07]{box-sizing:border-box;cursor:pointer;background:#fff;border-radius:4px;justify-content:center;align-items:center;display:flex;position:relative}.tc-svg[data-v-f4358c07]{color:oklch(50% .12 200);width:100%;height:100%;display:block}.tc-axis[data-v-f4358c07]{stroke:#3f6c6e8c;stroke-width:1px}.tc-fill[data-v-f4358c07]{fill:currentColor}.tc-stroke[data-v-f4358c07]{fill:none;stroke:currentColor;stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.tc-dot[data-v-f4358c07]{fill:currentColor}.tc-caption[data-v-f4358c07]{max-width:100%;color:var(--ink-muted);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;font-size:11.5px;display:flex;overflow:hidden}.tc-title[data-v-f4358c07]{color:var(--ink);font-weight:600}.tc-meta[data-v-f4358c07]{text-overflow:ellipsis;overflow:hidden}.tc-caption code[data-v-f4358c07]{font-family:IBM Plex Mono,monospace;font-size:10.5px}.tc-badge[data-v-f4358c07]{letter-spacing:.04em;text-transform:uppercase;color:oklch(50% .12 200);background:oklch(50% .12 200/.15);border-radius:3px;flex-shrink:0;padding:1px 5px;font-size:9.5px;font-weight:700}.tc-broken[data-v-f4358c07]{color:#ef4444}.tc-edit[data-v-f4358c07]{color:oklch(50% .12 200);background:var(--surface);cursor:pointer;opacity:0;border:1px solid oklch(50% .12 200/.3);border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;transition:opacity .12s;display:inline-flex;position:absolute;top:6px;right:6px}.tc-frame:hover .tc-edit[data-v-f4358c07]{opacity:1}.tc-edit[data-v-f4358c07]:hover{background:oklch(50% .12 200/.12)}.bw-backdrop[data-v-59032df5]{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#00000073;backdrop-filter:blur(2px);padding:24px}.bw-modal[data-v-59032df5]{width:min(600px,calc(100vw - 32px));max-height:min(88vh,820px);display:flex;flex-direction:column;background:var(--bg);color:var(--ink);border:1px solid var(--border);border-radius:12px;box-shadow:0 24px 64px #00000059;overflow:hidden}.bw-modal.fullscreen[data-v-59032df5]{width:100vw;height:100dvh;max-height:none;border-radius:0;border:none}.bw-backdrop[data-v-59032df5]:has(.fullscreen){padding:0}.bw-head[data-v-59032df5]{display:flex;align-items:flex-start;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--divider);flex-shrink:0}.bw-title[data-v-59032df5]{font-size:15px;font-weight:600;margin:0 0 2px}.bw-subtitle[data-v-59032df5]{font-size:12px;color:var(--ink-muted);margin:0}.bw-close[data-v-59032df5]{background:transparent;border:none;color:var(--ink-muted);font-size:22px;line-height:1;cursor:pointer}.bw-close[data-v-59032df5]:hover{color:var(--ink)}.bw-body[data-v-59032df5]{padding:16px 18px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:14px}.bw-section-label[data-v-59032df5]{font-size:10.5px;font-weight:700;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:-6px}.bw-pkg-grid[data-v-59032df5]{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.bw-pkg-card[data-v-59032df5]{display:flex;flex-direction:column;gap:3px;text-align:left;padding:10px 12px;border:1.5px solid var(--border);border-radius:8px;background:var(--surface);cursor:pointer}.bw-pkg-card[data-v-59032df5]:hover{border-color:#6466bb99}.bw-pkg-card.active[data-v-59032df5]{border-color:#6466bb;background:#6466bb14}.bw-pkg-name[data-v-59032df5]{font-size:13px;font-weight:600;color:var(--ink);font-family:IBM Plex Mono,monospace}.bw-pkg-desc[data-v-59032df5]{font-size:10.5px;color:var(--ink-muted);line-height:1.4}.bw-row[data-v-59032df5]{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}.bw-field[data-v-59032df5]{display:flex;flex-direction:column;gap:4px;flex:1;min-width:100px}.bw-format-desc[data-v-59032df5]{flex:3;font-size:11.5px;color:var(--ink-muted);line-height:1.5;padding-bottom:6px}.bw-source-tabs[data-v-59032df5]{display:flex;gap:6px;margin-bottom:-2px}.bw-source-tab[data-v-59032df5]{height:30px;padding:0 14px;border:1.5px solid var(--border);border-radius:6px;background:var(--surface);font-size:12.5px;color:var(--ink-muted);cursor:pointer;display:flex;align-items:center;gap:5px}.bw-source-tab[data-v-59032df5]:hover{border-color:#6466bb99;color:var(--ink)}.bw-source-tab.active[data-v-59032df5]{border-color:#6466bb;background:#6466bb14;color:var(--ink);font-weight:500}.bw-source-tab-hint[data-v-59032df5]{font-size:10.5px;color:var(--ink-muted);font-weight:400}.bw-no-data[data-v-59032df5]{font-size:12px;color:var(--ink-muted);padding:10px 12px;background:var(--surface);border:1px solid var(--divider);border-radius:7px;line-height:1.5}.bw-data-hint[data-v-59032df5]{font-size:11px;color:var(--ink-muted);margin-top:-4px}.bw-field-list[data-v-59032df5]{display:flex;flex-direction:column;gap:3px;max-height:180px;overflow-y:auto;border:1px solid var(--border);border-radius:8px;padding:4px}.bw-field-item[data-v-59032df5]{display:flex;align-items:center;gap:8px;text-align:left;padding:6px 8px;border:1.5px solid transparent;border-radius:5px;background:transparent;cursor:pointer;width:100%;min-width:0}.bw-field-item[data-v-59032df5]:hover{background:var(--bg-soft)}.bw-field-item.active[data-v-59032df5]{border-color:#6466bb;background:#6466bb14}.bw-field-idx[data-v-59032df5]{font-size:10px;font-weight:700;color:var(--ink-muted);font-family:IBM Plex Mono,monospace;min-width:18px;text-align:center;flex-shrink:0}.bw-field-item.active .bw-field-idx[data-v-59032df5]{color:#49499b}.bw-field-name[data-v-59032df5]{font-size:12.5px;font-weight:600;color:var(--ink);font-family:IBM Plex Mono,monospace;flex-shrink:0}.bw-field-sample[data-v-59032df5]{font-size:11px;color:var(--ink-muted);font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.bw-no-cols[data-v-59032df5]{display:flex;flex-direction:column;gap:7px;font-size:11.5px;color:var(--ink-muted)}.bw-col-input[data-v-59032df5]{font-family:IBM Plex Mono,monospace;font-size:12.5px}.bw-label[data-v-59032df5]{font-size:10.5px;font-weight:700;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.05em}.bw-value-type[data-v-59032df5]{font-weight:400;text-transform:none;letter-spacing:0;margin-left:4px}.bw-input[data-v-59032df5]{height:32px;border:1px solid var(--border);border-radius:6px;padding:0 8px;font-size:13px;background:var(--surface);color:var(--ink);outline:none;min-width:0}.bw-input[data-v-59032df5]:focus{border-color:#6466bb}.bw-value-input[data-v-59032df5]{font-family:IBM Plex Mono,monospace;font-size:12.5px}.bw-params-grid[data-v-59032df5]{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px 12px}.bw-check[data-v-59032df5]{display:flex;align-items:center;gap:5px;font-size:12.5px;color:var(--ink);cursor:pointer;padding-top:6px}.bw-preview[data-v-59032df5]{border:1px solid var(--divider);border-radius:7px;overflow:hidden}.bw-preview-label[data-v-59032df5]{display:block;font-size:9.5px;font-weight:700;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.05em;padding:5px 12px;background:var(--bg-soft);border-bottom:1px solid var(--divider)}.bw-preview-code[data-v-59032df5]{margin:0;padding:10px 14px;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--ink);background:var(--surface);white-space:pre;overflow-x:auto;line-height:1.55}.bw-preview-sentinel[data-v-59032df5]{color:var(--ink-muted)}.bw-preview-empty[data-v-59032df5]{color:var(--ink-muted);font-style:italic}.bw-foot[data-v-59032df5]{display:flex;justify-content:flex-end;gap:10px;padding:12px 18px;border-top:1px solid var(--divider);flex-shrink:0}.bw-btn-cancel[data-v-59032df5]{height:34px;padding:0 16px;border:1px solid var(--border);border-radius:7px;background:var(--surface);font-size:13px;color:var(--ink);cursor:pointer}.bw-btn-cancel[data-v-59032df5]:hover{background:var(--bg-soft)}.bw-btn-insert[data-v-59032df5]{height:34px;padding:0 20px;border:none;border-radius:7px;background:#6466bb;color:#fff;font-size:13px;font-weight:500;cursor:pointer}.bw-btn-insert[data-v-59032df5]:hover:not(:disabled){background:#5152a4}.bw-btn-insert[data-v-59032df5]:disabled{opacity:.4;cursor:not-allowed}.typst-barcode[data-v-99e72eec]{margin:0}.tb-frame[data-v-99e72eec]{flex-direction:column;align-items:flex-start;display:inline-flex;position:relative}.typst-barcode:hover .tb-frame[data-v-99e72eec]{outline-offset:2px;border-radius:6px;outline:1px dashed oklch(55% .13 280/.35)}.tb-frame.broken[data-v-99e72eec]{border-color:#ef4444}.is-selected .tb-frame[data-v-99e72eec]{outline-offset:2px;outline:1.5px solid oklch(55% .13 280)}.tb-render[data-v-99e72eec]{box-sizing:border-box;color:#111;cursor:pointer;background:#fff;border-radius:3px;justify-content:center;align-items:center;padding:4px;display:flex;position:relative}.tb-svg[data-v-99e72eec]{width:100%;height:100%;display:block}.tb-caption[data-v-99e72eec]{color:var(--ink-muted);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:4px;font-size:10px;display:flex;overflow:hidden}.tb-title[data-v-99e72eec]{color:var(--ink);font-weight:600}.tb-val[data-v-99e72eec]{text-overflow:ellipsis;min-width:0;overflow:hidden}.tb-caption code[data-v-99e72eec]{font-family:IBM Plex Mono,monospace;font-size:9.5px}.tb-badge[data-v-99e72eec]{letter-spacing:.04em;text-transform:uppercase;color:#49499b;background:#6466bb26;border-radius:3px;flex-shrink:0;padding:0 4px;font-size:8.5px;font-weight:700}.tb-badge-data[data-v-99e72eec]{color:oklch(40% .16 155);background:oklch(55% .16 155/.15)}.tb-broken[data-v-99e72eec]{color:#ef4444}.tb-edit[data-v-99e72eec]{color:#5658ab;background:var(--surface);cursor:pointer;opacity:0;border:1px solid oklch(55% .13 280/.3);border-radius:5px;justify-content:center;align-items:center;width:20px;height:20px;transition:opacity .12s;display:inline-flex;position:absolute;top:4px;right:4px}.tb-frame:hover .tb-edit[data-v-99e72eec]{opacity:1}.tb-edit[data-v-99e72eec]:hover{background:#6466bb1f}.typst-quote-node[data-v-e466d9e2]{position:relative;margin:0}.typst-quote-node[data-v-e466d9e2]:hover{outline:1.5px dashed oklch(55% .12 240 / 50%);outline-offset:2px}.is-selected[data-v-e466d9e2],.is-selected[data-v-e466d9e2]:hover{outline:1.5px solid oklch(55% .12 240);outline-offset:2px}.quote-header[data-v-e466d9e2]{position:absolute;top:0;left:0;transform:translateY(-100%);display:flex;align-items:center;gap:8px;padding:2px 6px;background:var(--surface);border:1px solid oklch(55% .12 240 / 25%);border-radius:4px;box-shadow:var(--shadow-sm);opacity:0;visibility:hidden;transition:opacity .12s ease;pointer-events:none;z-index:10}.typst-quote-node:hover .quote-header[data-v-e466d9e2],.is-selected .quote-header[data-v-e466d9e2]{opacity:1;visibility:visible;pointer-events:auto}.quote-badge[data-v-e466d9e2]{font-size:10px;font-weight:700;letter-spacing:.06em;color:#1479b0;background:#1479b026;padding:1px 6px;border-radius:3px;flex-shrink:0}.quote-attribution-input[data-v-e466d9e2]{flex:1;min-width:60px;font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:3px;padding:1px 4px;outline:none}.quote-attribution-input[data-v-e466d9e2]:hover,.quote-attribution-input[data-v-e466d9e2]:focus{background:var(--surface);border-color:#1479b0}.quote-body[data-v-e466d9e2]{padding-left:1em}.typst-quote-body[data-v-260c00b8]{display:block}.typst-footnote-wrapper[data-v-b3a8219b]{position:relative;display:inline}.typst-footnote-badge[data-v-b3a8219b]{display:inline-flex;align-items:center;justify-content:center;font-size:8px;font-weight:700;letter-spacing:.04em;font-family:IBM Plex Mono,monospace;color:#bd4334;background:#bd433426;border:1px solid oklch(55% .16 30 / 30%);border-radius:3px;padding:0 3px;cursor:pointer;vertical-align:super;line-height:1;user-select:none}.typst-footnote-badge[data-v-b3a8219b]:hover,.typst-footnote-badge.is-open[data-v-b3a8219b]{background:#bd433440;border-color:#bd433499}.typst-footnote-badge.is-selected[data-v-b3a8219b]{outline:2px solid oklch(55% .16 30);outline-offset:1px}.footnote-popover[data-v-b3a8219b]{position:absolute;top:calc(100% + 4px);left:0;z-index:100;background:var(--surface);border:1px solid oklch(55% .16 30 / 40%);border-radius:6px;padding:8px;min-width:220px;box-shadow:0 4px 12px #00000026}.fn-popover-label[data-v-b3a8219b]{font-size:9.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:6px}.fn-textarea[data-v-b3a8219b]{width:100%;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--ink);background:var(--bg-soft);border:1px solid var(--divider);border-radius:4px;padding:4px 6px;resize:vertical;outline:none;box-sizing:border-box}.fn-textarea[data-v-b3a8219b]:focus{border-color:#bd433499}.fn-actions[data-v-b3a8219b]{display:flex;gap:6px;margin-top:6px}.fn-save[data-v-b3a8219b],.fn-cancel[data-v-b3a8219b]{font-size:10.5px;font-weight:600;padding:2px 8px;border-radius:4px;border:1px solid;cursor:pointer}.fn-save[data-v-b3a8219b]{color:#bd4334;background:#bd43341f;border-color:#bd43344d}.fn-save[data-v-b3a8219b]:hover{background:#bd433438}.fn-cancel[data-v-b3a8219b]{color:var(--ink-muted);background:transparent;border-color:var(--divider)}.fn-cancel[data-v-b3a8219b]:hover{background:var(--bg-soft)}.slash-menu{font-family:inherit}.mf-backdrop[data-v-8e82af95]{position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;background:#00000073;backdrop-filter:blur(2px);padding:24px}.mf-panel[data-v-8e82af95]{width:min(500px,calc(100vw - 32px));max-height:min(88vh,640px);display:flex;flex-direction:column;overflow:hidden;background:var(--bg);color:var(--ink);border:1px solid var(--border);border-radius:12px;box-shadow:0 24px 64px #00000059;font-size:13px}.mf-header[data-v-8e82af95]{display:flex;align-items:center;justify-content:space-between;padding:14px 18px 12px;border-bottom:1px solid var(--divider);flex-shrink:0}.mf-title[data-v-8e82af95]{font-weight:600;font-size:15px}.mf-close[data-v-8e82af95]{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;background:transparent;border:none;cursor:pointer;color:var(--ink-muted)}.mf-close[data-v-8e82af95]:hover{background:var(--bg-soft);color:var(--ink)}.mf-tabs[data-v-8e82af95]{display:flex;gap:0;padding:0 18px;border-bottom:1px solid var(--divider);flex-shrink:0}.mf-tab[data-v-8e82af95]{padding:8px 14px 7px;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;background:transparent;color:var(--ink-muted);cursor:pointer;font-size:12.5px;font-weight:500}.mf-tab[data-v-8e82af95]:hover{color:var(--ink)}.mf-tab.active[data-v-8e82af95]{color:var(--ink);border-bottom-color:var(--accent)}.mf-data-info[data-v-8e82af95]{display:flex;align-items:center;gap:6px;padding:6px 18px;background:var(--bg-soft);border-bottom:1px solid var(--divider);font-size:11.5px;color:var(--ink-muted);flex-shrink:0}.mf-data-info.empty[data-v-8e82af95]{color:var(--warn)}.mf-empty[data-v-8e82af95]{padding:28px 20px;text-align:center;color:var(--ink-muted);line-height:1.6}.mf-empty strong[data-v-8e82af95]{color:var(--ink)}.mf-var-row[data-v-8e82af95]{display:flex;align-items:center;gap:8px;padding:10px 14px 8px;border-bottom:1px solid var(--divider);flex-shrink:0}.mf-var-label[data-v-8e82af95]{font-size:11.5px;color:var(--ink-muted);white-space:nowrap}.mf-var-input[data-v-8e82af95]{width:110px;height:26px;padding:0 8px;background:var(--surface);border:1px solid var(--border);border-radius:5px;color:var(--ink);font-size:12px;font-family:IBM Plex Mono,monospace;outline:none}.mf-var-input[data-v-8e82af95]:focus{border-color:var(--accent)}.mf-var-hint[data-v-8e82af95]{font-size:11px;color:var(--ink-muted)}.mf-var-hint code[data-v-8e82af95]{font-family:IBM Plex Mono,monospace;font-size:11px}.mf-field-list[data-v-8e82af95]{overflow-y:auto;flex:1;padding:6px 10px}.mf-field-row[data-v-8e82af95]{display:flex;align-items:center;justify-content:space-between;width:100%;padding:7px 8px;border-radius:6px;border:none;background:transparent;cursor:pointer;text-align:left;gap:12px;color:var(--ink)}.mf-field-row[data-v-8e82af95]:hover{background:var(--bg-soft)}.mf-field-name[data-v-8e82af95]{font-weight:500;font-size:13px;flex-shrink:0}.mf-field-expr[data-v-8e82af95]{font-size:11.5px;font-family:IBM Plex Mono,monospace;color:var(--accent);background:var(--accent-soft);padding:2px 6px;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}.mf-builder[data-v-8e82af95]{padding:14px 18px 18px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:11px}.mf-form-row[data-v-8e82af95]{display:flex;align-items:center;gap:10px}.mf-form-label[data-v-8e82af95]{width:88px;flex-shrink:0;font-size:12px;color:var(--ink-muted);text-align:right}.mf-form-input[data-v-8e82af95],.mf-form-select[data-v-8e82af95]{flex:1;height:32px;padding:0 8px;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--ink);font-size:13px;outline:none;font-family:inherit;min-width:0}.mf-form-input[data-v-8e82af95]:focus,.mf-form-select[data-v-8e82af95]:focus{border-color:var(--accent)}.mf-form-input--short[data-v-8e82af95]{max-width:80px;flex:none}.mf-preview[data-v-8e82af95]{display:flex;align-items:center;gap:10px;padding:9px 12px;margin-top:2px;background:var(--bg-soft);border:1px solid var(--divider);border-radius:7px}.mf-preview-label[data-v-8e82af95]{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);white-space:nowrap;flex-shrink:0}.mf-preview-expr[data-v-8e82af95]{font-family:IBM Plex Mono,monospace;font-size:12.5px;color:var(--accent);word-break:break-all}.mf-builder-actions[data-v-8e82af95]{display:flex;justify-content:flex-end;margin-top:2px}.mf-insert-btn[data-v-8e82af95]{height:32px;padding:0 20px;background:var(--accent);color:var(--accent-on);border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer}.mf-insert-btn[data-v-8e82af95]:hover{opacity:.9}.nfe[data-v-fdff44a4]{display:flex;flex-direction:column;gap:10px}.nfe-field[data-v-fdff44a4]{display:flex;flex-direction:column;gap:4px}.nfe-label[data-v-fdff44a4]{font-size:11px;font-weight:500;color:var(--ink-muted)}.nfe-input[data-v-fdff44a4]{width:100%;height:30px;border:1px solid var(--divider);border-radius:5px;padding:0 8px;font-size:12px;color:var(--ink);background:var(--surface);outline:none}.nfe-input[data-v-fdff44a4]:focus{border-color:var(--accent)}.nfe-textarea[data-v-fdff44a4]{height:auto;min-height:56px;padding:6px 8px;font-family:IBM Plex Mono,monospace;font-size:11.5px;resize:vertical}.nfe-color[data-v-fdff44a4]{width:40px;height:28px;border:1px solid var(--divider);border-radius:5px;padding:2px;cursor:pointer;background:var(--surface);flex-shrink:0}.nfe-color-row[data-v-fdff44a4],.nfe-stroke-row[data-v-fdff44a4]{display:flex;gap:6px;align-items:center}.nfe-stroke-thick[data-v-fdff44a4]{flex:1}.nfe-length-row[data-v-fdff44a4]{display:flex;gap:6px;align-items:center}.nfe-length-num[data-v-fdff44a4]{flex:1;min-width:0}.nfe-length-unit[data-v-fdff44a4]{width:64px;flex-shrink:0;padding:0 4px}.nfe-value[data-v-fdff44a4]{display:flex;flex-direction:column;gap:4px}.nfe-value-row[data-v-fdff44a4]{display:flex;gap:4px;align-items:center}.nfe-value-key[data-v-fdff44a4]{width:80px;flex-shrink:0;font-family:IBM Plex Mono,monospace}.nfe-value-btn[data-v-fdff44a4]{flex-shrink:0;width:20px;height:22px;font-size:11px;line-height:1;color:var(--ink-muted);background:var(--surface);border:1px solid var(--divider);border-radius:4px;cursor:pointer;padding:0}.nfe-value-btn[data-v-fdff44a4]:disabled{opacity:.35;cursor:default}.nfe-value-btn[data-v-fdff44a4]:not(:disabled):hover{border-color:var(--accent);color:var(--accent)}.nfe-value-add[data-v-fdff44a4],.nfe-value-toggle[data-v-fdff44a4]{align-self:flex-start;font-size:10.5px;color:var(--ink-muted);background:none;border:none;padding:0;cursor:pointer;text-decoration:underline}.nfe-value-add[data-v-fdff44a4]:hover,.nfe-value-toggle[data-v-fdff44a4]:hover{color:var(--accent)}.nfe-swatches[data-v-fdff44a4]{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}.nfe-swatch[data-v-fdff44a4]{width:16px;height:16px;border-radius:4px;border:1px solid var(--divider);cursor:pointer;padding:0}.nfe-swatch[data-v-fdff44a4]:hover{border-color:var(--accent)}.nfe-align-grid[data-v-fdff44a4]{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;width:84px}.nfe-align-cell[data-v-fdff44a4]{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border:1px solid var(--divider);border-radius:4px;background:var(--surface);cursor:pointer;padding:0}.nfe-align-cell span[data-v-fdff44a4]{width:6px;height:6px;border-radius:50%;background:var(--ink-muted)}.nfe-align-cell[data-v-fdff44a4]:hover{border-color:var(--accent)}.nfe-align-cell.active[data-v-fdff44a4]{background:var(--accent);border-color:var(--accent)}.nfe-align-cell.active span[data-v-fdff44a4]{background:#fff}.find-bar[data-v-8e2852b5]{position:absolute;top:8px;right:16px;z-index:40;display:flex;flex-direction:column;gap:4px;padding:6px;background:var(--surface);border:1px solid var(--divider);border-radius:8px;box-shadow:var(--shadow-md, 0 4px 12px rgb(0 0 0 / 12%))}.find-row[data-v-8e2852b5]{display:flex;align-items:center;gap:4px}.find-toggle[data-v-8e2852b5]{width:16px;flex-shrink:0;font-size:10px;color:var(--ink-muted);background:none;border:none;cursor:pointer;padding:0}.find-input[data-v-8e2852b5]{width:180px;height:26px;border:1px solid var(--divider);border-radius:5px;padding:0 8px;font-size:12px;color:var(--ink);background:var(--bg-soft, var(--surface));outline:none}.find-input[data-v-8e2852b5]:focus{border-color:var(--accent)}.find-count[data-v-8e2852b5]{min-width:36px;text-align:center;font-size:10.5px;font-family:IBM Plex Mono,monospace;color:var(--ink-muted)}.find-btn[data-v-8e2852b5]{width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--ink-muted);background:transparent;border:1px solid transparent;border-radius:5px;cursor:pointer;padding:0}.find-btn[data-v-8e2852b5]:disabled{opacity:.35;cursor:default}.find-btn[data-v-8e2852b5]:not(:disabled):hover{background:var(--bg-soft);border-color:var(--divider)}.find-btn.active[data-v-8e2852b5]{color:var(--accent);border-color:var(--accent)}.find-action[data-v-8e2852b5]{height:24px;font-size:11px;color:var(--ink);background:var(--bg-soft);border:1px solid var(--divider);border-radius:5px;padding:0 8px;cursor:pointer}.find-action[data-v-8e2852b5]:disabled{opacity:.4;cursor:default}.find-action[data-v-8e2852b5]:not(:disabled):hover{border-color:var(--accent)}.ssd-root[data-v-61c71007]{position:relative;display:inline-flex;align-items:center}.ssd-trigger[data-v-61c71007]{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 8px;border:1px solid var(--divider, #e5e7eb);border-radius:6px;background:var(--surface, #fff);color:var(--ink, #333);font-size:12px;cursor:pointer;white-space:nowrap;min-width:108px;max-width:160px;transition:border-color .12s,background .12s}.ssd-trigger[data-v-61c71007]:hover{border-color:var(--accent, #4f46e5);background:color-mix(in srgb,var(--accent,#4f46e5) 4%,var(--surface,#fff))}.ssd-trigger.open[data-v-61c71007]{border-color:var(--accent, #4f46e5)}.ssd-trigger-label[data-v-61c71007]{flex:1;overflow:hidden;text-overflow:ellipsis;text-align:left}.ssd-text-only .ssd-trigger[data-v-61c71007]{min-width:72px;border:none;background:none}.ssd-text-only .ssd-trigger[data-v-61c71007]:hover,.ssd-text-only .ssd-trigger.open[data-v-61c71007]{background:var(--bg-soft, #f3f4f6)}.ssd-chevron[data-v-61c71007]{flex-shrink:0;opacity:.45}.ssd-panel{position:fixed;z-index:9999;max-height:380px;overflow-y:auto;background:var(--surface, #fff);border:1px solid var(--divider, #e5e7eb);border-radius:8px;box-shadow:0 6px 24px #00000024,0 1px 4px #00000014;padding:4px}.ssd-item{display:flex;align-items:center;gap:8px;width:100%;height:34px;padding:0 8px;border:none;border-radius:5px;background:none;cursor:pointer;text-align:left;color:var(--ink, #333);transition:background .08s}.ssd-item:hover{background:var(--bg-soft, #f3f4f6)}.ssd-item.active{background:color-mix(in srgb,var(--accent, #4f46e5) 10%,transparent)}.ssd-item-preview{width:28px;flex-shrink:0;text-align:center;overflow:hidden}.ssd-item-label{flex:1;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:inherit}.ssd-check{flex-shrink:0;color:var(--accent, #4f46e5)}.ssd-section-label{font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-muted, #9ca3af);padding:8px 10px 3px}.ssd-empty{font-size:11px;color:var(--ink-muted, #9ca3af);padding:6px 10px 4px;font-style:italic}.ssd-divider{height:1px;background:var(--divider, #e5e7eb);margin:4px 2px}.ssd-create{color:var(--accent, #4f46e5)}.ssd-create:hover{background:color-mix(in srgb,var(--accent, #4f46e5) 8%,transparent)!important}.ssd-create-icon{width:28px;flex-shrink:0;text-align:center;font-size:17px;font-weight:300;line-height:1;color:var(--accent, #4f46e5)}.csm-backdrop[data-v-19498cc8]{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:#00000059}.csm-modal[data-v-19498cc8]{width:460px;max-width:calc(100vw - 32px);background:var(--surface, #fff);border:1px solid var(--divider, #e5e7eb);border-radius:12px;box-shadow:0 16px 48px #0003;padding:20px;display:flex;flex-direction:column;gap:16px}.csm-header[data-v-19498cc8]{display:flex;align-items:center;justify-content:space-between}.csm-title[data-v-19498cc8]{font-size:15px;font-weight:600;color:var(--ink, #111)}.csm-close[data-v-19498cc8]{width:26px;height:26px;border:none;background:none;border-radius:5px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--ink-muted, #6b7280)}.csm-close[data-v-19498cc8]:hover{background:var(--bg-soft, #f3f4f6);color:var(--ink, #111)}.csm-preview-area[data-v-19498cc8]{min-height:64px;border:1px solid var(--divider, #e5e7eb);border-radius:8px;background:var(--bg-soft, #f9fafb);display:flex;align-items:center;justify-content:center;padding:12px 16px;overflow:hidden}.csm-label[data-v-19498cc8]{display:block;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted, #6b7280);margin-bottom:5px}.csm-field-row[data-v-19498cc8]{display:flex;flex-direction:column;gap:5px}.csm-input[data-v-19498cc8]{width:100%;height:34px;border:1px solid var(--divider, #d1d5db);border-radius:7px;padding:0 10px;font-size:13px;color:var(--ink, #374151);background:var(--surface, #fff);outline:none;transition:border-color .12s;box-sizing:border-box}.csm-input[data-v-19498cc8]:focus{border-color:var(--accent, #4f46e5)}.csm-input-name[data-v-19498cc8]{font-weight:500}.csm-input-num[data-v-19498cc8]{text-align:center}.csm-select[data-v-19498cc8]{width:100%;height:34px;border:1px solid var(--divider, #d1d5db);border-radius:7px;padding:0 8px;font-size:12px;color:var(--ink, #374151);background:var(--surface, #fff);outline:none;cursor:pointer;box-sizing:border-box}.csm-select[data-v-19498cc8]:focus{border-color:var(--accent, #4f46e5)}.csm-grid4[data-v-19498cc8]{display:grid;grid-template-columns:1fr 80px 96px 36px;gap:10px;align-items:end}.csm-decorations[data-v-19498cc8]{display:flex;gap:20px}.csm-check-label[data-v-19498cc8]{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:13px;color:var(--ink, #374151)}.csm-checkbox[data-v-19498cc8]{width:14px;height:14px;cursor:pointer;accent-color:var(--accent, #4f46e5)}.csm-actions[data-v-19498cc8]{display:flex;justify-content:flex-end;gap:8px}.csm-btn-secondary[data-v-19498cc8]{height:34px;padding:0 16px;border:1px solid var(--divider, #d1d5db);border-radius:7px;background:var(--surface, #fff);color:var(--ink, #374151);font-size:13px;font-weight:500;cursor:pointer;transition:background .1s}.csm-btn-secondary[data-v-19498cc8]:hover{background:var(--bg-soft, #f3f4f6)}.csm-btn-primary[data-v-19498cc8]{height:34px;padding:0 18px;border:none;border-radius:7px;background:var(--accent, #4f46e5);color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:opacity .1s}.csm-btn-primary[data-v-19498cc8]:hover{opacity:.88}.ip-backdrop[data-v-040f5611]{position:fixed;inset:0;z-index:300;background:#00000052;display:flex;align-items:center;justify-content:center;padding:16px}.ip-modal[data-v-040f5611]{width:480px;max-width:100%;max-height:80vh;background:var(--surface);border:1px solid var(--divider);border-radius:12px;box-shadow:var(--shadow-md);padding:16px;display:flex;flex-direction:column;gap:12px;overflow:hidden}.ip-header[data-v-040f5611]{display:flex;align-items:center;justify-content:space-between}.ip-title[data-v-040f5611]{font-family:Spectral,serif;font-size:15px;font-weight:600;color:var(--ink)}.ip-close[data-v-040f5611]{width:24px;height:24px;display:grid;place-items:center;border-radius:6px;color:var(--ink-muted);background:transparent;border:none;cursor:pointer}.ip-close[data-v-040f5611]:hover{background:var(--bg-soft);color:var(--ink)}.ip-drop[data-v-040f5611]{display:flex;flex-direction:column;align-items:center;gap:4px;padding:20px;width:100%;border:1.5px dashed var(--divider-strong);border-radius:10px;background:var(--bg-soft);color:var(--ink-muted);cursor:pointer;transition:border-color .12s,background .12s,color .12s}.ip-drop[data-v-040f5611]:hover,.ip-drop.dragover[data-v-040f5611]{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.ip-drop-main[data-v-040f5611]{font-size:12.5px;font-weight:500;color:var(--ink)}.ip-drop-sub[data-v-040f5611]{font-size:11px}.ip-section-label[data-v-040f5611]{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.ip-grid[data-v-040f5611]{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;overflow-y:auto;padding:2px}.ip-item[data-v-040f5611]{display:flex;flex-direction:column;align-items:center;gap:5px;background:transparent;border:none;cursor:pointer;padding:0}.ip-thumb[data-v-040f5611]{width:100%;aspect-ratio:1;border-radius:7px;overflow:hidden;background:var(--bg-soft);border:1px solid var(--divider);display:grid;place-items:center;transition:border-color .12s}.ip-thumb img[data-v-040f5611]{width:100%;height:100%;object-fit:cover;display:block}.ip-item:hover .ip-thumb[data-v-040f5611]{border-color:var(--accent)}.ip-name[data-v-040f5611]{font-size:10.5px;color:var(--ink-muted);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ip-empty[data-v-040f5611]{font-size:12px;color:var(--ink-muted);font-style:italic;text-align:center;margin:4px 0}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-font-weight:initial}}}.page-gap{pointer-events:none;z-index:10;position:absolute;left:0;right:0}.page-gap.is-line{background:var(--divider-strong)}.page-gap-strip{background:var(--bg-canvas);border-top:1px solid var(--divider-strong);border-bottom:1px solid var(--divider-strong);position:absolute;left:-2px;right:-2px;box-shadow:inset 0 8px 8px -8px #0000004d,inset 0 -8px 8px -8px #0000004d}.bubble-menu{z-index:60;background:var(--surface,#fff);border:1px solid var(--divider,#e5e7eb);border-radius:8px;align-items:center;gap:2px;padding:3px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 4px 16px #00000026}.bubble-btn{cursor:pointer;min-width:26px;height:26px;color:var(--ink,#333);background:0 0;border:none;border-radius:5px;justify-content:center;align-items:center;padding:0 6px;font-size:12px;display:flex}.bubble-btn:hover{background:var(--bg-soft,#f3f4f6)}.bubble-btn.active{background:var(--accent,#4f46e5);color:#fff}.bubble-sep{background:var(--divider,#e5e7eb);width:1px;height:16px;margin:0 2px}.bubble-style-sel{max-width:120px;height:26px;color:var(--ink,#333);cursor:pointer;background:0 0;border:none;border-radius:5px;outline:none;padding:0 4px;font-size:12px}.bubble-style-sel:hover{background:var(--bg-soft,#f3f4f6)}.bubble-node-menu{flex-direction:column;align-items:stretch;gap:8px;width:232px;max-height:320px;padding:10px;overflow-y:auto;transform:none}.bubble-node-head{justify-content:space-between;align-items:center;display:flex}.bubble-node-title{letter-spacing:.07em;text-transform:uppercase;color:var(--accent);font-size:10px;font-weight:700}.bubble-node-actions{gap:2px;display:flex}.bubble-node-act{width:22px;height:22px;color:var(--ink-muted);cursor:pointer;background:0 0;border:none;border-radius:5px;justify-content:center;align-items:center;display:flex}.bubble-node-act:hover{background:var(--bg-soft);color:var(--ink)}.bubble-node-act.danger:hover{color:#ef4444}.tb-popover-backdrop{z-index:200;position:fixed;inset:0}.symbol-popover{z-index:201;background:var(--surface);border:1px solid var(--divider);border-radius:8px;width:268px;max-height:320px;padding:10px;position:fixed;overflow-y:auto;box-shadow:0 6px 20px #00000029}.symbol-group+.symbol-group{margin-top:8px}.symbol-group-name{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:4px;font-size:9.5px;font-weight:700}.symbol-grid{grid-template-columns:repeat(8,1fr);gap:3px;display:grid}.symbol-cell{aspect-ratio:1;background:var(--bg-soft);color:var(--ink);cursor:pointer;border:1px solid #0000;border-radius:5px;justify-content:center;align-items:center;font-size:15px;display:flex}.symbol-cell:hover{border-color:var(--accent);background:var(--surface)}.tb-glyph{text-align:center;flex-shrink:0;width:16px;font-size:14px;line-height:1}.tb-textcolor{align-items:center;gap:3px;display:inline-flex}.tb-textcolor-glyph{border-bottom:3px solid;padding-bottom:1px;font-family:Spectral,serif;font-size:14px;line-height:1}.typst-editor ul{margin-bottom:.55em;padding-left:1.5em;list-style-type:disc}.typst-editor ol{margin-bottom:.55em;padding-left:1.5em;list-style-type:decimal}.typst-editor li{margin-bottom:0}.typst-editor pre{margin-bottom:calc(var(--spacing,.25rem) * 3);background-color:var(--color-gray-900,oklch(21% .034 264.665));padding:calc(var(--spacing,.25rem) * 4);font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));color:var(--color-gray-100,oklch(96.7% .003 264.542));border-radius:.25rem;font-family:DejaVu Sans Mono,ui-monospace,monospace;overflow-x:auto}.typst-editor code:not(pre code){color:#b91c1c;background:#f3f4f6;border-radius:2px;padding:.05em .3em;font-family:DejaVu Sans Mono,ui-monospace,monospace;font-size:.88em}.typst-editor strong{font-weight:700}.typst-editor em{font-style:italic}.typst-editor u{text-decoration:underline}.typst-editor s{text-decoration:line-through}.typst-editor a{color:#1d4ed8;text-decoration:underline}.typst-inline-math{background-color:var(--color-purple-50,oklch(97.7% .014 308.299));padding-inline:calc(var(--spacing,.25rem) * .5);font-family:var(--font-mono,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);color:var(--color-purple-700,oklch(49.6% .265 301.924));border-radius:.25rem}.typst-field{background-color:var(--color-sky-50,oklch(97.7% .013 236.62));padding-inline:calc(var(--spacing,.25rem) * 1);font-family:var(--font-mono,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);color:var(--color-sky-700,oklch(50% .134 242.749));white-space:nowrap;border:1px solid oklch(90.1% .058 230.902);border-radius:.25rem;padding-block:1px;font-size:.85em}.hint-strip{color:var(--ink-muted);background:var(--bg-soft);border-bottom:1px solid var(--divider);align-items:center;gap:10px;padding:5px 12px;font-size:11.5px;display:flex}.hint-strip kbd,.hint-strip code{background:var(--surface);border:1px solid var(--divider);border-radius:3px;padding:0 4px;font-family:IBM Plex Mono,monospace;font-size:10.5px}.hint-dismiss{color:var(--ink-muted);cursor:pointer;background:0 0;border:none;margin-left:auto;padding:0 4px;font-size:14px;line-height:1}.hint-dismiss:hover{color:var(--ink)}.typst-editor .find-match{background:#facc1573;border-radius:2px}.typst-editor .find-match-active{background:#fb923ca6;outline:1px solid #f97316}.typst-ref{background-color:var(--color-violet-50,oklch(96.9% .016 293.756));padding-inline:calc(var(--spacing,.25rem) * 1);font-family:var(--font-mono,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);color:var(--color-violet-700,oklch(49.1% .27 292.581));white-space:nowrap;border:1px solid oklch(89.4% .057 293.283);border-radius:.25rem;padding-block:1px;font-size:.85em}.typst-ref:before{content:"@";opacity:.55}.typst-label{background-color:var(--color-emerald-50,oklch(97.9% .021 166.113));padding-inline:calc(var(--spacing,.25rem) * 1);font-family:var(--font-mono,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);color:var(--color-emerald-700,oklch(50.8% .118 165.612));white-space:nowrap;border:1px solid oklch(90.5% .093 164.15);border-radius:.25rem;padding-block:1px;font-size:.85em}.typst-label:before{content:"<";opacity:.55}.typst-label:after{content:">";opacity:.55}.typst-editor table{margin-bottom:calc(var(--spacing,.25rem) * 4);border-collapse:collapse;width:100%}.typst-editor td,.typst-editor th{border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-gray-300,oklch(87.2% .01 258.338));padding-inline:calc(var(--spacing,.25rem) * 3);padding-block:calc(var(--spacing,.25rem) * 2);font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)))}.typst-editor th{background-color:var(--color-gray-50,oklch(98.5% .002 247.839));--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600)}.typst-editor .selectedCell:after{content:"";pointer-events:none;background:#c8c8ff66;position:absolute;inset:0}.typst-editor mark{border-radius:var(--radius-sm,.25rem);background-color:var(--color-yellow-200,oklch(94.5% .129 101.54));padding-inline:calc(var(--spacing,.25rem) * .5)}.typst-editor dl[data-typst-term-list]{margin-bottom:calc(var(--spacing,.25rem) * 3)}.typst-editor .typst-term-item{gap:calc(var(--spacing,.25rem) * 2);padding-block:calc(var(--spacing,.25rem) * .5);font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));display:flex}.typst-editor .typst-term-item:before{content:"/ " attr(data-term) ":";--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600);white-space:nowrap;color:var(--color-gray-700,oklch(37.3% .034 259.733));flex-shrink:0}.tiptap p.is-empty:first-child:before{content:attr(data-placeholder);color:var(--ink-muted);float:left;pointer-events:none;height:0}.hide-placeholders .typst-placeholder{display:none}.show-formatting .typst-editor p:after,.show-formatting .typst-editor li:after{content:"¶";color:#a5b4fc;-webkit-user-select:none;user-select:none;pointer-events:none;margin-left:2px;font-size:.8em;font-style:normal;font-weight:400}.show-formatting .typst-editor h1:after,.show-formatting .typst-editor h2:after,.show-formatting .typst-editor h3:after,.show-formatting .typst-editor h4:after,.show-formatting .typst-editor h5:after,.show-formatting .typst-editor h6:after{content:"¶";color:#a5b4fc;vertical-align:middle;-webkit-user-select:none;user-select:none;pointer-events:none;margin-left:4px;font-size:.65em;font-style:normal;font-weight:400}.mf-bubble{z-index:9100;background:var(--surface);border:1px solid var(--divider);width:264px;box-shadow:var(--shadow-md);color:var(--ink);border-radius:8px;font-size:12.5px;position:fixed;overflow:hidden}.mf-bubble-header{border-bottom:1px solid var(--divider);justify-content:space-between;align-items:center;gap:8px;padding:7px 10px 6px;display:flex}.mf-bubble-title{letter-spacing:.07em;text-transform:uppercase;color:var(--ink-muted);white-space:nowrap;font-size:9.5px;font-weight:700}.mf-bubble-var-row{align-items:center;gap:4px;display:flex}.mf-bubble-var-label{color:var(--ink-muted);font-size:10.5px}.mf-bubble-var-input{background:var(--bg-soft);border:1px solid var(--divider);width:80px;height:22px;color:var(--ink);border-radius:4px;outline:none;padding:0 6px;font-family:IBM Plex Mono,monospace;font-size:11.5px}.mf-bubble-var-input:focus{border-color:var(--accent)}.mf-bubble-empty{color:var(--ink-muted);text-align:center;padding:12px;font-size:12px;line-height:1.5}.mf-bubble-list{max-height:200px;padding:4px;overflow-y:auto}.mf-bubble-item{cursor:pointer;text-align:left;width:100%;color:var(--ink);background:0 0;border:none;border-radius:5px;justify-content:space-between;align-items:center;gap:8px;padding:5px 8px;display:flex}.mf-bubble-item:hover{background:var(--bg-soft)}.mf-bubble-col{white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;max-width:90px;font-size:12.5px;font-weight:500;overflow:hidden}.mf-bubble-expr{color:var(--accent);background:var(--accent-soft);white-space:nowrap;text-overflow:ellipsis;border-radius:3px;max-width:140px;padding:1px 5px;font-family:IBM Plex Mono,monospace;font-size:11px;overflow:hidden}.mf-bubble-footer{border-top:1px solid var(--divider);justify-content:flex-end;padding:5px 8px;display:flex}.mf-bubble-advanced{color:var(--accent);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:11.5px}.mf-bubble-advanced:hover{background:var(--accent-soft)}.error-overlay{position:absolute;inset:0;overflow-y:auto;padding:24px;display:flex;align-items:flex-start;justify-content:center;background:color-mix(in oklch,var(--bg-canvas) 85%,transparent);backdrop-filter:blur(2px)}.error-block{background:color-mix(in oklch,var(--err) 8%,var(--surface));border:1px solid color-mix(in oklch,var(--err) 25%,var(--divider));border-radius:6px;padding:14px 16px;width:100%;font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--err);white-space:pre-wrap;line-height:1.5}.ask-ai-btn{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;padding:7px 14px;border-radius:6px;border:1.5px solid var(--accent);background:transparent;color:var(--accent);font-size:12px;font-weight:600;cursor:pointer;transition:background .1s}.ask-ai-btn:hover{background:color-mix(in oklch,var(--accent) 8%,transparent)}.empty-state{padding:64px 0;text-align:center;font-size:13px;color:var(--ink-muted)}.canvas svg{display:block;background:#fff;box-shadow:0 2px 8px #0000001f,0 0 0 1px #0000000f;margin:0 auto}.nf-backdrop[data-v-6d92af8e]{position:fixed;inset:0;z-index:50;background:#0006;backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center}.nf-modal[data-v-6d92af8e]{width:520px;max-height:86vh;display:flex;flex-direction:column;background:var(--bg);border-radius:12px;box-shadow:0 20px 60px #00000038;overflow:hidden}.nf-head[data-v-6d92af8e]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 14px;border-bottom:1px solid var(--divider);flex-shrink:0}.nf-head-left[data-v-6d92af8e]{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--ink)}.nf-close[data-v-6d92af8e]{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;border:none;background:transparent;cursor:pointer;color:var(--ink-muted)}.nf-close[data-v-6d92af8e]:hover{background:var(--bg-soft)}.nf-body[data-v-6d92af8e]{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:18px}.nf-section[data-v-6d92af8e]{display:flex;flex-direction:column;gap:8px}.nf-label[data-v-6d92af8e]{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-muted)}.nf-input[data-v-6d92af8e]{height:34px;padding:0 10px;border:1.5px solid var(--divider);border-radius:6px;background:var(--bg);color:var(--ink);font-size:13px;outline:none;transition:border-color .12s}.nf-input[data-v-6d92af8e]:focus{border-color:var(--accent)}.nf-select[data-v-6d92af8e]{height:34px;padding:0 26px 0 10px;border:1.5px solid var(--divider);border-radius:6px;background:var(--bg);color:var(--ink);font-size:13px;outline:none;cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23888' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center}.nf-select[data-v-6d92af8e]:focus{border-color:var(--accent)}.nf-hint[data-v-6d92af8e]{font-size:11px;color:var(--ink-muted)}.nf-error[data-v-6d92af8e]{font-size:11px;color:#b32228}.nf-note[data-v-6d92af8e]{font-size:12px;color:var(--ink-dim);background:var(--bg-soft);border:1px solid var(--divider);border-radius:6px;padding:8px 10px;line-height:1.5}.nf-kind-grid[data-v-6d92af8e]{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.nf-kind-card[data-v-6d92af8e]{border:1.5px solid var(--divider);border-radius:8px;padding:8px 11px;cursor:pointer;transition:border-color .1s,background .1s}.nf-kind-card[data-v-6d92af8e]:hover{background:var(--bg-soft)}.nf-kind-card.active[data-v-6d92af8e]{border-color:var(--accent);background:oklch(from var(--accent) l c h / 6%)}.nf-kind-name[data-v-6d92af8e]{font-size:13px;font-weight:600;color:var(--ink)}.nf-kind-desc[data-v-6d92af8e]{font-size:11px;color:var(--ink-muted);margin-top:1px}.nf-fixed-loc[data-v-6d92af8e]{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink-dim);font-family:ui-monospace,monospace}.nf-check[data-v-6d92af8e]{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:var(--ink);cursor:pointer;user-select:none}.nf-check input[data-v-6d92af8e]{accent-color:var(--accent);margin-top:2px}.nf-page-grid[data-v-6d92af8e]{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:12px;border:1px solid var(--divider);border-radius:8px;background:var(--bg-soft)}.nf-field[data-v-6d92af8e]{display:flex;flex-direction:column;gap:5px;min-width:0}.nf-span2[data-v-6d92af8e]{grid-column:span 2}.nf-span4[data-v-6d92af8e]{grid-column:span 4}.nf-field-label[data-v-6d92af8e]{font-size:11.5px;font-weight:500;color:var(--ink-dim)}.nf-margin-row[data-v-6d92af8e]{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.nf-num[data-v-6d92af8e]{padding:0 8px;min-width:0;width:100%}.nf-seg[data-v-6d92af8e]{display:flex;border:1.5px solid var(--divider);border-radius:6px;overflow:hidden;height:34px}.nf-seg button[data-v-6d92af8e]{flex:1;border:none;background:var(--bg);color:var(--ink-muted);font-size:12.5px;cursor:pointer}.nf-seg button+button[data-v-6d92af8e]{border-left:1.5px solid var(--divider)}.nf-seg button.active[data-v-6d92af8e]{background:oklch(from var(--accent) l c h / 10%);color:var(--accent);font-weight:600}.nf-foot[data-v-6d92af8e]{display:flex;align-items:center;gap:8px;padding:14px 20px;border-top:1px solid var(--divider);flex-shrink:0}.nf-path[data-v-6d92af8e]{flex:1;min-width:0;font-size:11.5px;color:var(--ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nf-path code[data-v-6d92af8e]{font-family:ui-monospace,monospace;color:var(--ink-dim)}.nf-btn-cancel[data-v-6d92af8e]{padding:7px 16px;border:1.5px solid var(--divider);border-radius:6px;background:transparent;color:var(--ink-muted);font-size:13px;cursor:pointer}.nf-btn-cancel[data-v-6d92af8e]:hover{background:var(--bg-soft)}.nf-btn-create[data-v-6d92af8e]{padding:7px 18px;border:none;border-radius:6px;background:var(--accent);color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:filter .1s}.nf-btn-create[data-v-6d92af8e]:hover:not(:disabled){filter:brightness(1.08)}.nf-btn-create[data-v-6d92af8e]:disabled{opacity:.5;cursor:default}.tg-backdrop[data-v-3ffbd723]{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;background:color-mix(in oklch,black 48%,transparent);backdrop-filter:blur(2px);padding:24px}.tg-modal[data-v-3ffbd723]{background:#fff;border-radius:14px;box-shadow:0 28px 72px color-mix(in oklch,black 24%,transparent);width:960px;max-height:88vh;display:flex;flex-direction:column;overflow:hidden}.tg-head[data-v-3ffbd723]{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px 14px;border-bottom:1px solid #f0f0f0;flex-shrink:0}.tg-title[data-v-3ffbd723]{font-size:15px;font-weight:600;color:#111;margin:0 0 3px}.tg-subtitle[data-v-3ffbd723]{font-size:11.5px;color:#999;margin:0}.tg-subtitle strong[data-v-3ffbd723]{color:#666}.tg-code[data-v-3ffbd723]{font-family:IBM Plex Mono,monospace;font-size:10.5px;background:#f3f4f6;padding:1px 5px;border-radius:3px;color:#555}.tg-close[data-v-3ffbd723]{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;border-radius:6px;color:#bbb;cursor:pointer;flex-shrink:0;margin-top:-2px}.tg-close[data-v-3ffbd723]:hover{background:#f3f4f6;color:#555}.tg-body[data-v-3ffbd723]{display:flex;flex:1;min-height:0;overflow:hidden}.tg-panel-left[data-v-3ffbd723]{width:290px;flex-shrink:0;display:flex;flex-direction:column;min-height:0}.tg-search-wrap[data-v-3ffbd723]{position:relative;padding:12px 14px 8px;flex-shrink:0}.tg-search-icon[data-v-3ffbd723]{position:absolute;left:24px;top:50%;transform:translateY(-50%);color:#bbb;pointer-events:none;margin-top:2px}.tg-search-input[data-v-3ffbd723]{width:100%;height:32px;border:1.5px solid #e4e4e7;border-radius:7px;padding:0 10px 0 30px;font-size:12.5px;color:#111;background:#fafafa;outline:none;box-sizing:border-box;transition:border-color .12s}.tg-search-input[data-v-3ffbd723]:focus{border-color:#3862a7;background:#fff;box-shadow:0 0 0 3px #3862a71a}.tg-cats[data-v-3ffbd723]{display:flex;flex-wrap:wrap;gap:5px;padding:4px 14px 10px;flex-shrink:0;border-bottom:1px solid #f0f0f0}.tg-cat-chip[data-v-3ffbd723]{font-size:10.5px;font-weight:600;padding:3px 8px;border-radius:20px;border:1.5px solid #e4e4e7;background:#fff;color:#666;cursor:pointer;transition:all .1s;letter-spacing:.01em}.tg-cat-chip[data-v-3ffbd723]:hover{border-color:#d1d5db;color:#333;background:#f9fafb}.tg-cat-chip.active[data-v-3ffbd723]{color:#fff;border-color:transparent}.tg-list[data-v-3ffbd723]{flex:1;overflow-y:auto;padding:6px 0}.tg-row[data-v-3ffbd723]{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:7px 14px;background:transparent;border:none;cursor:pointer;text-align:left;transition:background .08s}.tg-row[data-v-3ffbd723]:hover{background:#f9fafb}.tg-row-selected[data-v-3ffbd723]{background:#3862a714!important}.tg-row-title[data-v-3ffbd723]{font-size:12.5px;color:#222;font-weight:500;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tg-row-selected .tg-row-title[data-v-3ffbd723]{color:#0b3d8b}.tg-badge[data-v-3ffbd723]{font-size:9px;font-weight:700;letter-spacing:.05em;padding:1px 5px;border-radius:3px;white-space:nowrap;flex-shrink:0}.tg-badge-cat[data-v-3ffbd723]{background:transparent;border:none}.tg-empty[data-v-3ffbd723]{padding:20px 14px;font-size:12px;color:#aaa;text-align:center}.tg-list-footer[data-v-3ffbd723]{font-size:10.5px;color:#bbb;padding:8px 14px;border-top:1px solid #f3f4f6;flex-shrink:0}.tg-divider[data-v-3ffbd723]{width:1px;background:#f0f0f0;flex-shrink:0}.tg-panel-right[data-v-3ffbd723]{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.tg-detail-head[data-v-3ffbd723]{padding:20px 22px 14px;flex-shrink:0;border-bottom:1px solid #f3f4f6}.tg-detail-title-row[data-v-3ffbd723]{display:flex;align-items:center;gap:10px;margin-bottom:6px}.tg-detail-title[data-v-3ffbd723]{font-size:15px;font-weight:600;color:#111}.tg-detail-desc[data-v-3ffbd723]{font-size:12px;color:#666;margin:0 0 10px;line-height:1.5}.tg-tags[data-v-3ffbd723]{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px}.tg-tag[data-v-3ffbd723]{font-size:10px;padding:2px 7px;background:#f3f4f6;border-radius:4px;color:#777;font-family:IBM Plex Mono,monospace}.tg-data-note[data-v-3ffbd723]{display:flex;align-items:flex-start;gap:7px;font-size:11.5px;color:#5740a1;background:#725ec214;border:1px solid oklch(55% .15 290 / 20%);border-radius:6px;padding:7px 10px;line-height:1.4}.tg-data-note strong[data-v-3ffbd723]{font-weight:600}.tg-preview[data-v-3ffbd723]{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;margin:14px 22px 16px;border:1.5px solid #ebebeb;border-radius:8px}.tg-preview-label[data-v-3ffbd723]{display:block;font-size:9.5px;font-weight:700;color:silver;text-transform:uppercase;letter-spacing:.07em;padding:5px 12px;background:#f9f9f9;border-bottom:1px solid #ebebeb;flex-shrink:0}.tg-preview-code[data-v-3ffbd723]{flex:1;overflow-y:auto;margin:0;padding:10px 14px;font-family:IBM Plex Mono,monospace;font-size:10.5px;color:#555;background:#fff;white-space:pre;line-height:1.65}.tg-no-selection[data-v-3ffbd723]{display:flex;align-items:center;justify-content:center;flex:1;font-size:12px;color:#ccc}.tg-foot[data-v-3ffbd723]{display:flex;justify-content:flex-end;gap:10px;padding:14px 24px;border-top:1px solid #f0f0f0;flex-shrink:0}.tg-btn-cancel[data-v-3ffbd723]{height:34px;padding:0 16px;border:1.5px solid #e0e0e0;border-radius:7px;background:#fff;font-size:13px;color:#555;cursor:pointer}.tg-btn-cancel[data-v-3ffbd723]:hover{background:#f4f4f5}.tg-btn-use[data-v-3ffbd723]{height:34px;padding:0 20px;border:none;border-radius:7px;background:#3862a7;color:#fff;font-size:13px;font-weight:500;cursor:pointer}.tg-btn-use[data-v-3ffbd723]:hover:not(:disabled){background:#285094}.tg-btn-use[data-v-3ffbd723]:disabled{opacity:.4;cursor:not-allowed}.pm-backdrop[data-v-fa748406]{position:fixed;inset:0;z-index:300;background:#00000052;display:flex;align-items:center;justify-content:center;padding:16px}.pm-modal[data-v-fa748406]{width:360px;max-width:100%;background:var(--surface);border:1px solid var(--divider);border-radius:12px;box-shadow:var(--shadow-md);padding:16px;display:flex;flex-direction:column;gap:10px}.pm-header[data-v-fa748406]{display:flex;align-items:center;justify-content:space-between}.pm-title[data-v-fa748406]{font-family:Spectral,serif;font-size:15px;font-weight:600;color:var(--ink)}.pm-close[data-v-fa748406]{width:24px;height:24px;display:grid;place-items:center;border-radius:6px;color:var(--ink-muted);background:transparent;border:none;cursor:pointer}.pm-close[data-v-fa748406]:hover{background:var(--bg-soft);color:var(--ink)}.pm-label[data-v-fa748406]{font-size:11.5px;font-weight:600;color:var(--ink-soft)}.pm-input[data-v-fa748406]{height:34px;padding:0 11px;width:100%;background:var(--bg-soft);border:1px solid var(--divider);border-radius:7px;font-size:13px;color:var(--ink);outline:none}.pm-input[data-v-fa748406]:focus{border-color:var(--accent)}.pm-error[data-v-fa748406]{font-size:11.5px;color:var(--err);margin:0}.pm-actions[data-v-fa748406]{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.pm-btn[data-v-fa748406]{height:32px;padding:0 14px;border-radius:7px;font-size:12.5px;font-weight:500;border:1px solid transparent;cursor:pointer}.pm-btn-ghost[data-v-fa748406]{background:var(--bg-soft);border-color:var(--divider);color:var(--ink-soft)}.pm-btn-ghost[data-v-fa748406]:hover{background:var(--surface-hover);color:var(--ink)}.pm-btn-primary[data-v-fa748406]{background:var(--accent);color:var(--accent-on)}.pm-btn-primary[data-v-fa748406]:hover{filter:brightness(1.05)}.cm-backdrop[data-v-417bb0df]{position:fixed;inset:0;z-index:300;background:#00000052;display:flex;align-items:center;justify-content:center;padding:16px}.cm-modal[data-v-417bb0df]{width:360px;max-width:100%;background:var(--surface);border:1px solid var(--divider);border-radius:12px;box-shadow:var(--shadow-md);padding:18px;display:flex;flex-direction:column;gap:10px}.cm-title[data-v-417bb0df]{font-family:Spectral,serif;font-size:15px;font-weight:600;color:var(--ink)}.cm-message[data-v-417bb0df]{font-size:13px;color:var(--ink-soft);line-height:1.5;margin:0}.cm-actions[data-v-417bb0df]{display:flex;justify-content:flex-end;gap:8px;margin-top:6px}.cm-btn[data-v-417bb0df]{height:32px;padding:0 14px;border-radius:7px;font-size:12.5px;font-weight:500;border:1px solid transparent;cursor:pointer}.cm-btn-ghost[data-v-417bb0df]{background:var(--bg-soft);border-color:var(--divider);color:var(--ink-soft)}.cm-btn-ghost[data-v-417bb0df]:hover{background:var(--surface-hover);color:var(--ink)}.cm-btn-primary[data-v-417bb0df]{background:var(--accent);color:var(--accent-on)}.cm-btn-primary[data-v-417bb0df]:hover{filter:brightness(1.05)}.cm-btn-danger[data-v-417bb0df]{background:var(--err);color:#fff}.cm-btn-danger[data-v-417bb0df]:hover{filter:brightness(1.05)}.exp-action-bar[data-v-a7b11f62]{display:flex;gap:4px;flex-wrap:wrap;padding:0 8px 8px}.exp-hdr-btn[data-v-a7b11f62]{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:500;color:var(--ink-muted);background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:4px 9px;cursor:pointer;white-space:nowrap;width:auto;height:auto}.exp-hdr-btn[data-v-a7b11f62]:hover{background:var(--bg-soft);color:var(--ink);border-color:var(--ink-muted)}.ft-hover-actions[data-v-a7b11f62]{display:none;align-items:center;gap:2px;margin-left:auto}.exp-row:hover .ft-hover-actions[data-v-a7b11f62]{display:flex}.ft-action-btn[data-v-a7b11f62]{width:18px;height:18px;display:grid;place-items:center;border-radius:3px;color:var(--ink-muted);background:transparent;border:none;transition:background .1s,color .1s}.ft-action-btn[data-v-a7b11f62]:hover{background:var(--bg-soft);color:var(--ink)}.ft-del[data-v-a7b11f62]{display:none;margin-left:auto}.ft-del.show-always[data-v-a7b11f62],.exp-row:hover .ft-del[data-v-a7b11f62]{display:grid}.exp-section-head[data-v-a7b11f62]{display:flex;align-items:center;gap:5px;padding:8px 10px 4px;cursor:pointer;user-select:none}.exp-section-head[data-v-a7b11f62]:hover{background:var(--surface-hover)}.exp-section-label[data-v-a7b11f62]{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted)}.rename-input[data-v-a7b11f62]{flex:1;min-width:0;font-size:12px;color:var(--ink);background:var(--surface);border:1px solid var(--accent);border-radius:3px;padding:0 4px;height:20px;outline:none}.exp-row:hover .name[data-v-a7b11f62]{text-decoration-line:underline;text-decoration-style:dotted;text-underline-offset:2px}.exp-row:not(.active) .dot[data-v-a7b11f62]{display:none}.exp-tree--tabs[data-v-a7b11f62]{flex:none;max-height:180px}.exp-head[data-v-ac0b87d0]{flex-shrink:0;align-items:center;padding:10px 12px 6px;display:flex}.exp-title[data-v-ac0b87d0]{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-muted);font-size:11px;font-weight:700}.tab-bar[data-v-ac0b87d0]{flex-shrink:0;gap:4px;padding:0 8px 8px;display:flex}.tab-btn[data-v-ac0b87d0]{border:1px solid var(--border);background:var(--surface);color:var(--ink-muted);cursor:pointer;border-radius:6px;flex:1;padding:4px 0;font-size:11px;font-weight:500;transition:background .12s,color .12s,border-color .12s}.tab-btn[data-v-ac0b87d0]:hover{background:var(--bg-soft);color:var(--ink);border-color:var(--ink-muted)}.tab-btn.active[data-v-ac0b87d0]{background:var(--bg-soft);color:var(--ink);border-color:var(--ink-muted);font-weight:600}.section-toolbar[data-v-ac0b87d0]{flex-shrink:0;align-items:center;padding:2px 10px 6px;display:flex}.section-label[data-v-ac0b87d0]{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);flex:1;font-size:10px;font-weight:700}.icon-btn[data-v-ac0b87d0]{width:20px;height:20px;color:var(--ink-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;place-items:center;transition:background .1s,color .1s;display:grid}.icon-btn[data-v-ac0b87d0]:hover{background:var(--bg-soft);color:var(--ink)}.scroll-area[data-v-ac0b87d0]{flex:1;padding:4px 8px 12px;overflow-y:auto}.thumb-grid[data-v-ac0b87d0]{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.thumb-item[data-v-ac0b87d0]{cursor:pointer;flex-direction:column;align-items:center;gap:4px;display:flex}.thumb-frame[data-v-ac0b87d0]{aspect-ratio:1;background:var(--surface);border:1px solid var(--border);border-radius:5px;width:100%;transition:border-color .12s;position:relative;overflow:hidden}.thumb-item:hover .thumb-frame[data-v-ac0b87d0]{border-color:var(--ink-muted)}.thumb-img[data-v-ac0b87d0]{object-fit:cover;width:100%;height:100%;display:block}.thumb-copied[data-v-ac0b87d0]{color:#fff;background:oklch(40% .15 155/.7);border-radius:4px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.thumb-label[data-v-ac0b87d0]{color:var(--ink-muted);text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:10px;line-height:1.3;overflow:hidden}.snippet-row[data-v-ac0b87d0]{cursor:pointer;border-radius:5px;align-items:flex-start;gap:7px;padding:6px;transition:background .1s;display:flex}.snippet-row[data-v-ac0b87d0]:hover{background:var(--surface-hover)}.snippet-row.active[data-v-ac0b87d0]{background:var(--surface)}.snippet-info[data-v-ac0b87d0]{flex-direction:column;gap:2px;min-width:0;display:flex}.snippet-name[data-v-ac0b87d0]{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;overflow:hidden}.snippet-preview[data-v-ac0b87d0]{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-family:IBM Plex Mono,monospace;font-size:10px;overflow:hidden}.empty-msg[data-v-ac0b87d0]{color:var(--ink-muted);text-align:center;padding:12px 4px;font-size:11px;font-style:italic;line-height:1.5}.wizard-overlay[data-v-123cde9c]{z-index:100;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.wizard[data-v-123cde9c]{background:var(--bg);border:1px solid var(--border);border-radius:12px;width:540px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);padding:28px;position:relative;overflow-y:auto}.wizard-close[data-v-123cde9c]{cursor:pointer;color:var(--ink-muted);background:0 0;border:none;border-radius:6px;padding:4px;line-height:0;position:absolute;top:16px;right:16px}.wizard-close[data-v-123cde9c]:hover{background:var(--surface-hover)}.wizard-header[data-v-123cde9c]{margin-bottom:24px}.wizard-steps[data-v-123cde9c]{align-items:center;gap:0;margin-bottom:12px;display:flex}.wizard-steps span[data-v-123cde9c]{background:var(--surface);width:24px;height:24px;color:var(--ink-muted);border:1.5px solid var(--border);border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex}.wizard-steps span.active[data-v-123cde9c]{background:var(--accent);color:#fff;border-color:var(--accent)}.wizard-steps span.done[data-v-123cde9c]{background:var(--accent);color:#fff;border-color:var(--accent);opacity:.6}.step-line[data-v-123cde9c]{background:var(--border);flex:1;max-width:32px;height:1px;margin:0 8px}.wizard-header h2[data-v-123cde9c]{color:var(--ink);margin:0;font-size:17px;font-weight:600}.wizard-body[data-v-123cde9c]{flex-direction:column;display:flex}.wizard-hint[data-v-123cde9c]{color:var(--ink-muted);margin:0 0 18px;font-size:13px;line-height:1.5}.field-label[data-v-123cde9c]{color:var(--ink-muted);margin-bottom:6px;font-size:12px;font-weight:500}.field-hint[data-v-123cde9c]{opacity:.75;font-weight:400}.field-input[data-v-123cde9c]{background:var(--surface);border:1px solid var(--border);color:var(--ink);border-radius:6px;outline:none;width:100%;padding:8px 10px;font-size:13px}.field-input[data-v-123cde9c]:focus{border-color:var(--accent)}.field-error[data-v-123cde9c]{color:#e55;margin-top:6px;font-size:12px}.field-hint-block[data-v-123cde9c]{color:var(--ink-muted);margin-top:6px;font-size:11px;line-height:1.5}.field-hint-block a[data-v-123cde9c]{color:var(--accent);text-decoration:none}.field-hint-block a[data-v-123cde9c]:hover{text-decoration:underline}.field-hint-block code[data-v-123cde9c]{background:var(--surface);border-radius:3px;padding:1px 4px;font-family:IBM Plex Mono,monospace;font-size:10.5px}.wizard-actions[data-v-123cde9c]{justify-content:flex-end;gap:8px;margin-top:24px;display:flex}.btn-ghost[data-v-123cde9c]{border:1px solid var(--border);color:var(--ink-muted);cursor:pointer;background:0 0;border-radius:6px;padding:7px 14px;font-size:13px}.btn-ghost[data-v-123cde9c]:hover:not(:disabled){background:var(--surface-hover)}.btn-primary[data-v-123cde9c]{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;gap:6px;padding:7px 16px;font-size:13px;font-weight:500;display:flex}.btn-primary[data-v-123cde9c]:hover:not(:disabled){opacity:.9}.btn-primary[data-v-123cde9c]:disabled,.btn-ghost[data-v-123cde9c]:disabled{opacity:.6;cursor:not-allowed}.fs-grid[data-v-123cde9c]{grid-template-columns:1fr 1fr;gap:10px;display:grid}.fs-card[data-v-123cde9c]{border:1.5px solid var(--border);cursor:pointer;border-radius:8px;padding:14px;transition:border-color .15s,background .15s;position:relative}.fs-card[data-v-123cde9c]:not(.locked):hover{border-color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.fs-card[data-v-123cde9c]:not(.locked):hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}}.fs-card.selected[data-v-123cde9c]{border-color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.fs-card.selected[data-v-123cde9c]{background:color-mix(in srgb,var(--accent) 8%,transparent)}}.fs-card.locked[data-v-123cde9c]{opacity:.55;cursor:not-allowed}.fs-card-top[data-v-123cde9c]{color:var(--accent);justify-content:space-between;align-items:flex-start;margin-bottom:8px;display:flex}.fs-card-badge[data-v-123cde9c]{background:var(--accent);align-items:center;gap:3px;font-size:9px;font-weight:600;display:flex}@supports (color:color-mix(in lab,red,red)){.fs-card-badge[data-v-123cde9c]{background:color-mix(in srgb,var(--accent) 15%,transparent)}}.fs-card-badge[data-v-123cde9c]{color:var(--accent);border-radius:10px;padding:2px 6px}.fs-card-name[data-v-123cde9c]{color:var(--ink);margin-bottom:4px;font-size:13px;font-weight:600}.fs-card-desc[data-v-123cde9c]{color:var(--ink-muted);font-size:11px;line-height:1.45}.fs-card-lock[data-v-123cde9c]{color:var(--ink-muted);align-items:center;gap:4px;margin-top:8px;font-size:10px;display:flex}.compat-note[data-v-123cde9c]{color:var(--ink-muted);align-items:flex-start;gap:6px;margin-top:10px;font-size:11px;line-height:1.45;display:flex}.compat-note.warn[data-v-123cde9c]{color:#d97706}.s3-grid[data-v-123cde9c]{grid-template-columns:1fr 1fr;gap:12px;display:grid}@keyframes spin-123cde9c{to{transform:rotate(360deg)}}.settings-backdrop[data-v-44de5e91]{z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.settings-modal[data-v-44de5e91]{background:var(--bg);border-radius:12px;flex-direction:column;width:440px;max-height:86vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #00000038}.sm-head[data-v-44de5e91]{border-bottom:1px solid var(--divider);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px 14px;display:flex}.sm-head-left[data-v-44de5e91]{color:var(--ink);align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.sm-close[data-v-44de5e91]{cursor:pointer;width:26px;height:26px;color:var(--ink-muted);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;display:flex}.sm-close[data-v-44de5e91]:hover{background:var(--bg-soft)}.sm-body[data-v-44de5e91]{flex-direction:column;flex:1;gap:22px;padding:20px;display:flex;overflow-y:auto}.sm-section[data-v-44de5e91]{flex-direction:column;gap:10px;display:flex}.sm-label[data-v-44de5e91]{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-muted);font-size:11px;font-weight:600}.sm-field[data-v-44de5e91]{flex-direction:column;gap:5px;display:flex}.sm-field-label[data-v-44de5e91]{color:var(--ink-dim);font-size:12px;font-weight:500}.sm-input[data-v-44de5e91]{border:1.5px solid var(--divider);background:var(--bg);height:34px;color:var(--ink);border-radius:6px;outline:none;padding:0 10px;font-size:13px;transition:border-color .12s}.sm-input[data-v-44de5e91]:focus{border-color:var(--accent)}.seg[data-v-44de5e91]{background:var(--bg-soft);border-radius:8px;gap:4px;padding:3px;display:flex}.seg-btn[data-v-44de5e91]{color:var(--ink-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;padding:7px 0;font-size:13px;font-weight:500}.seg-btn.active[data-v-44de5e91]{background:var(--bg);color:var(--ink);box-shadow:0 1px 2px #0000001a}.sm-divider[data-v-44de5e91]{text-align:center;color:var(--ink-muted);align-items:center;font-size:11px;display:flex}.sm-divider[data-v-44de5e91]:before,.sm-divider[data-v-44de5e91]:after{content:"";background:var(--divider);flex:1;height:1px}.sm-divider span[data-v-44de5e91]{padding:0 10px}.oauth-row[data-v-44de5e91]{flex-direction:column;gap:8px;display:flex}.oauth-btn[data-v-44de5e91]{border:1.5px solid var(--divider);background:var(--bg);height:36px;color:var(--ink);cursor:pointer;border-radius:6px;font-size:13px;font-weight:500}.oauth-btn[data-v-44de5e91]:hover{background:var(--bg-soft)}.account-row[data-v-44de5e91]{align-items:center;gap:12px;display:flex}.account-avatar[data-v-44de5e91]{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:16px;font-weight:700;display:flex}.account-meta[data-v-44de5e91]{flex-direction:column;display:flex}.account-name[data-v-44de5e91]{color:var(--ink);font-size:14px;font-weight:600}.account-email[data-v-44de5e91]{color:var(--ink-muted);font-size:12px}.plan-card[data-v-44de5e91]{border:1.5px solid var(--divider);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.plan-card.active[data-v-44de5e91]{border-color:var(--accent);background:oklch(from var(--accent) l c h / 6%)}.plan-name[data-v-44de5e91]{color:var(--ink);font-size:13px;font-weight:600}.plan-desc[data-v-44de5e91]{color:var(--ink-muted);max-width:230px;margin-top:2px;font-size:11px}.sm-btn-save[data-v-44de5e91]{background:var(--accent);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:8px 18px;font-size:13px;font-weight:600;transition:filter .1s}.sm-btn-save[data-v-44de5e91]:hover:not(:disabled){filter:brightness(1.08)}.sm-btn-save[data-v-44de5e91]:disabled{opacity:.6;cursor:default}.sm-btn-save.full[data-v-44de5e91]{width:100%;height:38px}.sm-btn-cancel[data-v-44de5e91]{border:1.5px solid var(--divider);color:var(--ink-muted);cursor:pointer;background:0 0;border-radius:6px;padding:8px 16px;font-size:13px}.sm-btn-cancel[data-v-44de5e91]:hover:not(:disabled){background:var(--bg-soft)}.sm-error[data-v-44de5e91]{color:#b32228;margin:0;font-size:12px}.projects-overlay[data-v-b8ddd5b0]{z-index:40;background:#00000047;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.projects-modal[data-v-b8ddd5b0]{background:var(--bg);border:1px solid var(--border);border-radius:14px;flex-direction:column;width:880px;max-width:100%;max-height:calc(100vh - 48px);display:flex;overflow:hidden;box-shadow:0 20px 60px #00000059}.modal-header[data-v-b8ddd5b0]{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;height:52px;padding:0 18px;display:flex}.header-actions[data-v-b8ddd5b0]{align-items:center;gap:8px;display:flex}.account-btn[data-v-b8ddd5b0]{border:1px solid var(--border);height:30px;color:var(--ink);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:8px;padding:0 12px;font-size:13px;font-weight:500;display:flex}.account-btn[data-v-b8ddd5b0]:hover{background:var(--bg-soft)}.account-avatar[data-v-b8ddd5b0]{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;font-weight:700;display:flex}.account-label[data-v-b8ddd5b0]{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.modal-close[data-v-b8ddd5b0]{cursor:pointer;color:var(--ink-muted);background:0 0;border:none;border-radius:6px;padding:6px;line-height:0}.modal-close[data-v-b8ddd5b0]:hover{background:var(--surface-hover);color:var(--ink)}.brand[data-v-b8ddd5b0]{align-items:center;gap:8px;display:flex}.brand-mark[data-v-b8ddd5b0]{background:var(--accent);color:#fff;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;font-size:13px;font-weight:700;display:flex}.brand-name[data-v-b8ddd5b0]{color:var(--ink);font-size:14px;font-weight:600}.brand-beta[data-v-b8ddd5b0]{text-transform:uppercase;letter-spacing:.04em;color:var(--accent);background:var(--accent);font-size:9px;font-weight:600}@supports (color:color-mix(in lab,red,red)){.brand-beta[data-v-b8ddd5b0]{background:color-mix(in srgb,var(--accent) 12%,transparent)}}.brand-beta[data-v-b8ddd5b0]{border-radius:4px;padding:2px 5px}.modal-body[data-v-b8ddd5b0]{flex:1;padding:24px 28px 28px;overflow-y:auto}.section-head[data-v-b8ddd5b0]{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.section-title[data-v-b8ddd5b0]{margin:0;font-size:18px;font-weight:600}.btn-new[data-v-b8ddd5b0]{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:7px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:500;display:flex}.btn-new[data-v-b8ddd5b0]:hover{opacity:.9}.empty-state[data-v-b8ddd5b0]{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:64px 0;display:flex}.empty-icon[data-v-b8ddd5b0]{margin-bottom:6px}.empty-title[data-v-b8ddd5b0]{color:var(--ink);margin:0;font-size:15px;font-weight:600}.empty-sub[data-v-b8ddd5b0]{color:var(--ink-muted);margin:0 0 14px;font-size:13px}.project-grid[data-v-b8ddd5b0]{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.project-card[data-v-b8ddd5b0]{border:1px solid var(--border);cursor:pointer;border-radius:10px;padding:16px;transition:border-color .15s,box-shadow .15s;position:relative;overflow:hidden}.project-card[data-v-b8ddd5b0]:hover{border-color:var(--accent);box-shadow:0 2px 12px #00000014}.project-card.opening[data-v-b8ddd5b0]{opacity:.6;pointer-events:none}.project-card.current[data-v-b8ddd5b0]{border-color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.project-card.current[data-v-b8ddd5b0]{background:color-mix(in srgb,var(--accent) 6%,transparent)}}.card-fs-badge[data-v-b8ddd5b0]{background:var(--accent);border-radius:10px;align-items:center;gap:5px;margin-bottom:10px;padding:3px 7px;font-size:10px;font-weight:500;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.card-fs-badge[data-v-b8ddd5b0]{background:color-mix(in srgb,var(--accent) 10%,transparent)}}.card-fs-badge[data-v-b8ddd5b0]{color:var(--accent)}.pro-dot[data-v-b8ddd5b0]{background:var(--accent);border-radius:50%;width:5px;height:5px}.card-name[data-v-b8ddd5b0]{color:var(--ink);word-break:break-word;margin-bottom:6px;font-size:14px;font-weight:600}.card-meta[data-v-b8ddd5b0]{color:var(--ink-muted);font-size:11px}.card-actions[data-v-b8ddd5b0]{align-items:center;gap:4px;display:none;position:absolute;top:10px;right:10px}.project-card:hover .card-actions[data-v-b8ddd5b0]{display:flex}.card-action-btn[data-v-b8ddd5b0]{background:var(--surface);border:1px solid var(--border);cursor:pointer;color:var(--ink-muted);border-radius:5px;align-items:center;padding:4px 6px;font-size:11px;line-height:0;display:flex}.card-action-btn[data-v-b8ddd5b0]:hover{background:var(--surface-hover)}.card-action-btn.danger[data-v-b8ddd5b0]:hover{color:#e55;border-color:#e55}.card-loading[data-v-b8ddd5b0]{background:var(--bg);position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.card-loading[data-v-b8ddd5b0]{background:color-mix(in srgb,var(--bg) 70%,transparent)}}.card-loading[data-v-b8ddd5b0]{color:var(--ink-muted);justify-content:center;align-items:center;display:flex}@keyframes spin-b8ddd5b0{to{transform:rotate(360deg)}}.script-badge[data-v-e7c6e793]{font-size:8.5px;font-weight:700;letter-spacing:.06em;padding:0 4px;border-radius:3px;flex-shrink:0;line-height:16px}.script-val[data-v-e7c6e793]{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60px}.doc-insp[data-v-31dfb6cf]{display:flex;flex-direction:column;gap:12px}.insp-type[data-v-31dfb6cf]{font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--accent)}.di-field[data-v-31dfb6cf]{display:flex;flex-direction:column;gap:5px}.di-label[data-v-31dfb6cf]{font-size:11px;color:var(--ink-soft);font-weight:500}.di-input[data-v-31dfb6cf]{height:30px;padding:0 8px;width:100%;background:var(--bg-soft);border:1px solid var(--divider);border-radius:6px;font-size:12px;color:var(--ink);outline:none}.di-input[data-v-31dfb6cf]:focus{border-color:var(--accent)}select.di-input[data-v-31dfb6cf]{appearance:none;-webkit-appearance:none;cursor:pointer}.di-margins[data-v-31dfb6cf]{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.di-num[data-v-31dfb6cf]{padding:0 4px;text-align:center}.di-margins-legend[data-v-31dfb6cf]{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;font-size:9px;color:var(--ink-muted);text-align:center;letter-spacing:.06em}.insp-type[data-v-db11acb0]{font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--accent)}.insp-hint[data-v-db11acb0]{font-size:11px;color:var(--ink-muted);font-style:italic;margin:12px 0 0;padding-top:10px;border-top:1px solid var(--divider);line-height:1.5}.insp-marks[data-v-db11acb0]{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.insp-mark-btn[data-v-db11acb0]{font-size:11px;padding:4px 9px;border:1px solid var(--divider);border-radius:5px;background:var(--surface);color:var(--ink);cursor:pointer}.insp-mark-btn.active[data-v-db11acb0]{background:var(--accent);color:#fff;border-color:var(--accent)}.pkg-backdrop[data-v-68a2ccb1]{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.pkg-modal[data-v-68a2ccb1]{width:min(560px,calc(100vw - 32px));max-height:min(70vh,640px);display:flex;flex-direction:column;background:var(--bg);color:var(--ink);border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 40px #00000059;overflow:hidden}.pkg-head[data-v-68a2ccb1]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--divider)}.pkg-head h2[data-v-68a2ccb1]{font-size:14px;font-weight:600;margin:0}.pkg-close[data-v-68a2ccb1]{background:transparent;border:none;color:var(--ink-muted);font-size:20px;line-height:1;cursor:pointer}.pkg-close[data-v-68a2ccb1]:hover{color:var(--ink)}.pkg-searchbar[data-v-68a2ccb1]{padding:10px 16px;border-bottom:1px solid var(--divider)}.pkg-search[data-v-68a2ccb1]{width:100%;font-size:13px;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:6px 10px;outline:none}.pkg-search[data-v-68a2ccb1]:focus{border-color:var(--accent)}.pkg-body[data-v-68a2ccb1]{overflow-y:auto;flex:1}.pkg-state[data-v-68a2ccb1]{padding:32px 16px;text-align:center;color:var(--ink-muted);font-size:13px;display:flex;flex-direction:column;align-items:center;gap:10px}.pkg-retry[data-v-68a2ccb1]{font-size:12px;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:4px 12px;cursor:pointer}.pkg-retry[data-v-68a2ccb1]:hover{background:var(--bg-soft)}.pkg-list[data-v-68a2ccb1]{list-style:none;margin:0;padding:0}.pkg-item[data-v-68a2ccb1]{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--divider)}.pkg-item[data-v-68a2ccb1]:hover{background:var(--surface-hover)}.pkg-info[data-v-68a2ccb1]{flex:1;min-width:0}.pkg-name[data-v-68a2ccb1]{font-size:13px;font-weight:500}.pkg-version[data-v-68a2ccb1]{font-size:11px;color:var(--ink-muted);font-weight:400}.pkg-desc[data-v-68a2ccb1]{font-size:12px;color:var(--ink-muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pkg-insert[data-v-68a2ccb1]{flex-shrink:0;font-size:12px;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:4px 12px;cursor:pointer}.pkg-insert[data-v-68a2ccb1]:hover{background:var(--accent);color:#fff;border-color:var(--accent)}@keyframes spin-a3ef9115{to{transform:rotate(360deg)}}@keyframes slideIn-a3ef9115{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes bounce-a3ef9115{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-4px);opacity:1}}.chat-panel[data-v-a3ef9115]{position:fixed;right:0;top:42px;bottom:28px;width:380px;background:var(--bg);border-left:1px solid var(--divider);display:flex;flex-direction:column;z-index:40;animation:slideIn-a3ef9115 .18s ease-out;box-shadow:-4px 0 16px #00000014}.chat-panel--inline[data-v-a3ef9115]{position:relative;top:auto;bottom:auto;right:auto;width:100%;flex:1;min-height:0;border-left:none;box-shadow:none;animation:none}.cp-head[data-v-a3ef9115]{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--divider);flex-shrink:0}.cp-head-left[data-v-a3ef9115]{display:flex;align-items:center;gap:7px;color:var(--ink)}.cp-title[data-v-a3ef9115]{font-size:13px;font-weight:600}.cp-head-right[data-v-a3ef9115]{display:flex;align-items:center;gap:2px}.cp-icon-btn[data-v-a3ef9115]{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:5px;border:none;background:transparent;cursor:pointer;color:var(--ink-muted)}.cp-icon-btn[data-v-a3ef9115]:hover{background:var(--bg-soft);color:var(--ink)}.agent-status[data-v-a3ef9115]{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-muted);padding:2px 0}.agent-result[data-v-a3ef9115]{display:flex;flex-direction:column;gap:8px;font-size:12px;border:1px solid oklch(50% .14 145 / 35%);border-radius:8px;padding:10px;background:#1e77290f}.agent-result-ok[data-v-a3ef9115]{color:#1e7729;font-weight:600}.agent-result--warn[data-v-a3ef9115]{border-color:oklch(60% .16 75 / 40%);background:oklch(60% .16 75 / 6%)}.agent-result-warn[data-v-a3ef9115]{color:oklch(55% .16 60);font-weight:600}.agent-result-files[data-v-a3ef9115]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.agent-result-files li[data-v-a3ef9115]{display:flex;align-items:center;gap:6px}.agent-file-path[data-v-a3ef9115]{font-family:IBM Plex Mono,monospace;font-size:11.5px;color:var(--ink)}.agent-file-tag[data-v-a3ef9115]{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#1e7729;border:1px solid oklch(50% .14 145 / 40%);border-radius:3px;padding:0 4px}.agent-file-tag--data[data-v-a3ef9115]{color:#2a75ba;border-color:#2a75ba66}.msg-user.msg-diagnostic[data-v-a3ef9115]{align-self:stretch;max-width:100%;background:var(--bg-soft);color:var(--ink-muted);border:1px solid var(--divider);border-radius:8px;font-family:IBM Plex Mono,monospace;font-size:11.5px;white-space:pre-wrap}.cp-context[data-v-a3ef9115]{position:relative;display:flex;align-items:center;gap:5px;padding:5px 12px;border-bottom:1px solid var(--divider);flex-shrink:0;font-size:11px;color:var(--ink-muted);cursor:default;background:var(--bg-soft)}.cp-context[data-v-a3ef9115]:hover{color:var(--ink)}.ctx-tooltip[data-v-a3ef9115]{position:absolute;top:calc(100% + 4px);left:8px;background:var(--bg);border:1px solid var(--divider);border-radius:8px;padding:10px 12px;min-width:200px;z-index:50;box-shadow:0 4px 16px #0000001f}.ctx-tooltip-title[data-v-a3ef9115]{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-muted);margin-bottom:6px}.ctx-tooltip-file[data-v-a3ef9115]{font-size:12px;color:var(--ink);padding:1px 0}.ctx-tooltip-dim[data-v-a3ef9115]{font-size:11px;color:var(--ink-muted);margin-top:4px}.cp-messages[data-v-a3ef9115]{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth}.cp-empty[data-v-a3ef9115]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;color:var(--ink-muted);font-size:13px;padding:40px 20px}.cp-empty p[data-v-a3ef9115]{margin:0}.cp-empty-hint[data-v-a3ef9115]{font-size:11px}.cp-configure-btn[data-v-a3ef9115]{margin-top:4px;padding:6px 14px;border:1.5px solid var(--accent);border-radius:6px;background:transparent;color:var(--accent);font-size:12px;cursor:pointer}.cp-configure-btn[data-v-a3ef9115]:hover{background:oklch(from var(--accent) l c h / 8%)}.msg[data-v-a3ef9115]{display:flex;flex-direction:column}.msg-user[data-v-a3ef9115]{align-self:flex-end;max-width:88%;background:var(--accent);color:#fff;padding:8px 12px;border-radius:12px 12px 2px;font-size:13px;line-height:1.5;word-break:break-word}.msg-assistant[data-v-a3ef9115]{align-self:flex-start;max-width:100%;display:flex;flex-direction:column;gap:6px}.msg-assistant.has-error .msg-text[data-v-a3ef9115]{color:#b32228}.msg-text[data-v-a3ef9115]{font-size:13px;line-height:1.6;color:var(--ink);word-break:break-word}.msg-text[data-v-a3ef9115] strong{font-weight:600}.msg-text[data-v-a3ef9115] code{font-family:IBM Plex Mono,monospace;font-size:.88em;background:var(--bg-soft);border-radius:3px;padding:.05em .3em;color:var(--ink)}.msg-text[data-v-a3ef9115] em{font-style:italic}.msg-code-block[data-v-a3ef9115]{border:1px solid var(--divider);border-radius:8px;overflow:hidden;background:var(--bg-soft)}.msg-code-head[data-v-a3ef9115]{display:flex;align-items:center;justify-content:space-between;padding:5px 10px;border-bottom:1px solid var(--divider);background:var(--bg)}.msg-code-lang[data-v-a3ef9115]{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-muted);font-family:IBM Plex Mono,monospace}.msg-code-pre[data-v-a3ef9115]{margin:0;padding:10px 12px;overflow-x:auto;font-size:11.5px;line-height:1.55;color:var(--ink);font-family:IBM Plex Mono,Courier New,monospace;background:transparent;max-height:280px;overflow-y:auto}.msg-code-pre code[data-v-a3ef9115]{font-family:inherit}.msg-code-actions[data-v-a3ef9115]{display:flex;align-items:center;gap:6px;padding:7px 10px;border-top:1px solid var(--divider);background:var(--bg)}.msg-apply-btn[data-v-a3ef9115]{display:inline-flex;align-items:center;gap:5px;padding:4px 11px;border-radius:5px;border:1.5px solid var(--accent);background:transparent;color:var(--accent);font-size:11.5px;font-weight:600;cursor:pointer;transition:background .1s,color .1s}.msg-apply-btn[data-v-a3ef9115]:hover{background:oklch(from var(--accent) l c h / 8%)}.msg-apply-btn.applied[data-v-a3ef9115]{border-color:#1e7729;color:#1e7729;background:#1e772914}.msg-copy-btn[data-v-a3ef9115]{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:5px;border:1px solid var(--divider);background:transparent;color:var(--ink-muted);font-size:11.5px;font-weight:600;cursor:pointer;transition:background .1s,color .1s,border-color .1s}.msg-copy-btn[data-v-a3ef9115]:hover{background:var(--bg-soft);color:var(--ink)}.msg-copy-btn.copied[data-v-a3ef9115]{color:#1e7729;border-color:#1e77297f}.agent-result-actions[data-v-a3ef9115]{display:flex;gap:6px;flex-wrap:wrap}.streaming-indicator[data-v-a3ef9115]{display:flex;gap:4px;padding:4px 0;align-items:center}.streaming-indicator span[data-v-a3ef9115]{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;animation:bounce-a3ef9115 1.2s ease-in-out infinite}.streaming-indicator span[data-v-a3ef9115]:nth-child(2){animation-delay:.2s}.streaming-indicator span[data-v-a3ef9115]:nth-child(3){animation-delay:.4s}.cp-input-area[data-v-a3ef9115]{flex-shrink:0;border-top:1px solid var(--divider);padding:10px 12px 8px;display:flex;flex-direction:column;gap:5px}.cp-input-wrap[data-v-a3ef9115]{display:flex;align-items:flex-end;gap:6px;border:1.5px solid var(--divider);border-radius:8px;background:var(--bg);padding:6px 8px;transition:border-color .12s}.cp-input-wrap[data-v-a3ef9115]:focus-within{border-color:var(--accent)}.cp-textarea[data-v-a3ef9115]{flex:1;border:none;background:transparent;color:var(--ink);font-size:13px;line-height:1.5;resize:none;outline:none;min-height:20px;max-height:160px;font-family:inherit}.cp-textarea[data-v-a3ef9115]::placeholder{color:var(--ink-muted)}.cp-textarea[data-v-a3ef9115]:disabled{opacity:.5;cursor:not-allowed}.cp-send-btn[data-v-a3ef9115]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;border-radius:6px;border:none;background:var(--accent);color:#fff;cursor:pointer;transition:filter .1s}.cp-send-btn[data-v-a3ef9115]:hover:not(:disabled){filter:brightness(1.1)}.cp-send-btn[data-v-a3ef9115]:disabled{opacity:.4;cursor:default}.cp-send-btn.stop[data-v-a3ef9115]{background:#b32228}.cp-input-hint[data-v-a3ef9115]{font-size:10px;color:var(--ink-muted);text-align:center}@keyframes spin-bf43637b{to{transform:rotate(360deg)}}.settings-backdrop[data-v-bf43637b]{position:fixed;inset:0;z-index:50;background:#0006;backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center}.settings-modal[data-v-bf43637b]{width:520px;max-height:86vh;display:flex;flex-direction:column;background:var(--bg);border-radius:12px;box-shadow:0 20px 60px #00000038;overflow:hidden}.sm-head[data-v-bf43637b]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 14px;border-bottom:1px solid var(--divider);flex-shrink:0}.sm-head-left[data-v-bf43637b]{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--ink)}.sm-close[data-v-bf43637b]{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;border:none;background:transparent;cursor:pointer;color:var(--ink-muted)}.sm-close[data-v-bf43637b]:hover{background:var(--bg-soft)}.sm-body[data-v-bf43637b]{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:24px}.sm-section[data-v-bf43637b]{display:flex;flex-direction:column;gap:10px}.sm-label[data-v-bf43637b]{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-muted)}.provider-grid[data-v-bf43637b]{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.provider-card[data-v-bf43637b]{border:1.5px solid var(--divider);border-radius:8px;padding:10px 12px;cursor:pointer;transition:border-color .1s,background .1s}.provider-card[data-v-bf43637b]:hover{background:var(--bg-soft)}.provider-card.active[data-v-bf43637b]{border-color:var(--accent);background:oklch(from var(--accent) l c h / 6%)}.provider-name-row[data-v-bf43637b]{display:flex;align-items:center;gap:6px}.provider-name[data-v-bf43637b]{font-size:13px;font-weight:600;color:var(--ink)}.provider-badge[data-v-bf43637b]{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:1px 5px;border-radius:3px;background:#1e77291f;color:oklch(40% .14 145)}.provider-desc[data-v-bf43637b]{font-size:11px;color:var(--ink-muted);margin-top:2px}.sm-field-link[data-v-bf43637b]{font-size:10px;color:var(--accent);text-decoration:none;font-weight:400}.sm-field-link[data-v-bf43637b]:hover{text-decoration:underline}.sm-field[data-v-bf43637b]{display:flex;flex-direction:column;gap:5px}.sm-field-label[data-v-bf43637b]{font-size:12px;font-weight:500;color:var(--ink-dim);display:flex;justify-content:space-between}.sm-field-value[data-v-bf43637b]{color:var(--accent);font-variant-numeric:tabular-nums}.sm-input[data-v-bf43637b]{height:34px;padding:0 10px;border:1.5px solid var(--divider);border-radius:6px;background:var(--bg);color:var(--ink);font-size:13px;outline:none;transition:border-color .12s}.sm-input[data-v-bf43637b]:focus{border-color:var(--accent)}.sm-range[data-v-bf43637b]{width:100%;accent-color:var(--accent)}.sm-range-hints[data-v-bf43637b]{display:flex;justify-content:space-between;font-size:10px;color:var(--ink-muted)}.sm-test-btn[data-v-bf43637b]{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:1.5px solid var(--divider);border-radius:6px;background:var(--bg);color:var(--ink);font-size:12px;cursor:pointer;transition:border-color .1s,background .1s}.sm-test-btn[data-v-bf43637b]:hover:not(:disabled){border-color:var(--accent);background:var(--bg-soft)}.sm-test-btn[data-v-bf43637b]:disabled{opacity:.6;cursor:default}.test-ok[data-v-bf43637b]{margin-left:10px;font-size:12px;color:#1e7729}.test-err[data-v-bf43637b]{margin-left:10px;font-size:12px;color:#b32228;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sm-foot[data-v-bf43637b]{display:flex;gap:8px;justify-content:flex-end;padding:14px 20px;border-top:1px solid var(--divider);flex-shrink:0}.sm-btn-cancel[data-v-bf43637b]{padding:7px 16px;border:1.5px solid var(--divider);border-radius:6px;background:transparent;color:var(--ink-muted);font-size:13px;cursor:pointer}.sm-btn-cancel[data-v-bf43637b]:hover{background:var(--bg-soft)}.sm-btn-save[data-v-bf43637b]{padding:7px 18px;border:none;border-radius:6px;background:var(--accent);color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:filter .1s}.sm-btn-save[data-v-bf43637b]:hover{filter:brightness(1.08)}.settings-backdrop[data-v-1be2d57b]{z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.settings-modal[data-v-1be2d57b]{background:var(--bg);border-radius:12px;flex-direction:column;width:460px;max-height:86vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #00000038}.sm-head[data-v-1be2d57b]{border-bottom:1px solid var(--divider);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px 14px;display:flex}.sm-head-left[data-v-1be2d57b]{color:var(--ink);align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.sm-close[data-v-1be2d57b]{cursor:pointer;width:26px;height:26px;color:var(--ink-muted);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;display:flex}.sm-close[data-v-1be2d57b]:hover{background:var(--bg-soft)}.sm-body[data-v-1be2d57b]{flex-direction:column;flex:1;gap:22px;padding:20px;display:flex;overflow-y:auto}.sm-section[data-v-1be2d57b]{flex-direction:column;gap:10px;display:flex}.sm-label[data-v-1be2d57b]{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-muted);font-size:11px;font-weight:600}.sm-input[data-v-1be2d57b]{border:1.5px solid var(--divider);background:var(--bg);height:34px;color:var(--ink);border-radius:6px;outline:none;flex:1;padding:0 10px;font-size:13px}.sm-input[data-v-1be2d57b]:focus{border-color:var(--accent)}.sm-select[data-v-1be2d57b]{border:1.5px solid var(--divider);background:var(--bg);height:34px;color:var(--ink);border-radius:6px;padding:0 6px;font-size:13px}.invite-row[data-v-1be2d57b]{gap:8px;display:flex}.sm-btn-save[data-v-1be2d57b]{background:var(--accent);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:0 16px;font-size:13px;font-weight:600}.sm-btn-save[data-v-1be2d57b]:disabled{opacity:.6;cursor:default}.sm-btn-cancel[data-v-1be2d57b]{border:1.5px solid var(--divider);color:var(--ink-muted);cursor:pointer;background:0 0;border-radius:6px;align-self:flex-start;padding:8px 16px;font-size:13px}.sm-btn-cancel[data-v-1be2d57b]:hover:not(:disabled){background:var(--bg-soft)}.share-row[data-v-1be2d57b]{border-bottom:1px solid var(--divider);justify-content:space-between;align-items:center;padding:8px 0;display:flex}.share-info[data-v-1be2d57b]{align-items:center;gap:8px;display:flex}.share-target[data-v-1be2d57b]{color:var(--ink);font-size:13px}.share-role[data-v-1be2d57b]{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);background:var(--bg-soft);border-radius:3px;padding:1px 6px;font-size:10px}.share-actions[data-v-1be2d57b]{gap:10px;display:flex}.link-btn[data-v-1be2d57b]{color:var(--accent);cursor:pointer;background:0 0;border:none;font-size:12px}.link-btn.danger[data-v-1be2d57b]{color:#b32228}.empty[data-v-1be2d57b]{color:var(--ink-muted);margin:0;font-size:12px}.sm-error[data-v-1be2d57b]{color:#b32228;margin:0;font-size:12px}.main-content[data-v-1d341db0]{display:flex;flex:1;min-width:0;height:100%}.chat-dock[data-v-1d341db0]{position:relative;flex-grow:0;flex-shrink:0;min-width:240px;max-width:60%;display:flex;flex-direction:column;min-height:0;border-left:1px solid var(--divider)}.chat-resizer[data-v-1d341db0]{position:absolute;left:-3px;top:0;bottom:0;width:7px;cursor:col-resize;z-index:5;touch-action:none}.chat-resizer[data-v-1d341db0]:hover{background:var(--accent, #3b82f6);opacity:.25}.home[data-v-aac6db12]{background:var(--bg);height:100vh;color:var(--ink);flex-direction:column;display:flex}.home-header[data-v-aac6db12]{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;height:48px;padding:0 24px;display:flex}.account-btn[data-v-aac6db12]{border:1px solid var(--border);height:30px;color:var(--ink);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:8px;padding:0 12px;font-size:13px;font-weight:500;display:flex}.account-btn[data-v-aac6db12]:hover{background:var(--bg-soft)}.account-avatar[data-v-aac6db12]{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;font-weight:700;display:flex}.account-label[data-v-aac6db12]{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.brand[data-v-aac6db12]{align-items:center;gap:8px;display:flex}.brand-mark[data-v-aac6db12]{background:var(--accent);color:#fff;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;font-size:13px;font-weight:700;display:flex}.brand-name[data-v-aac6db12]{color:var(--ink);font-size:14px;font-weight:600}.brand-beta[data-v-aac6db12]{text-transform:uppercase;letter-spacing:.04em;color:var(--accent);background:var(--accent);font-size:9px;font-weight:600}@supports (color:color-mix(in lab,red,red)){.brand-beta[data-v-aac6db12]{background:color-mix(in srgb,var(--accent) 12%,transparent)}}.brand-beta[data-v-aac6db12]{border-radius:4px;padding:2px 5px}.home-main[data-v-aac6db12]{box-sizing:border-box;flex:1;width:100%;max-width:960px;margin:0 auto;padding:40px 48px;overflow-y:auto}@media(max-width:600px){.home-main[data-v-aac6db12]{padding:24px 16px}.card-actions[data-v-aac6db12]{display:flex!important}}.home-section-header[data-v-aac6db12]{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.section-title[data-v-aac6db12]{margin:0;font-size:20px;font-weight:600}.btn-new[data-v-aac6db12]{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:7px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:500;display:flex}.btn-new[data-v-aac6db12]:hover{opacity:.9}.empty-state[data-v-aac6db12]{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:80px 0;display:flex}.empty-icon[data-v-aac6db12]{margin-bottom:6px}.empty-title[data-v-aac6db12]{color:var(--ink);margin:0;font-size:15px;font-weight:600}.empty-sub[data-v-aac6db12]{color:var(--ink-muted);margin:0 0 14px;font-size:13px}.project-grid[data-v-aac6db12]{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.project-card[data-v-aac6db12]{border:1px solid var(--border);cursor:pointer;border-radius:10px;padding:16px;transition:border-color .15s,box-shadow .15s;position:relative;overflow:hidden}.project-card[data-v-aac6db12]:hover{border-color:var(--accent);box-shadow:0 2px 12px #00000014}.project-card.opening[data-v-aac6db12]{opacity:.6;pointer-events:none}.card-fs-badge[data-v-aac6db12]{background:var(--accent);border-radius:10px;align-items:center;gap:5px;margin-bottom:10px;padding:3px 7px;font-size:10px;font-weight:500;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.card-fs-badge[data-v-aac6db12]{background:color-mix(in srgb,var(--accent) 10%,transparent)}}.card-fs-badge[data-v-aac6db12]{color:var(--accent)}.pro-dot[data-v-aac6db12]{background:var(--accent);border-radius:50%;width:5px;height:5px}.card-name[data-v-aac6db12]{color:var(--ink);word-break:break-word;margin-bottom:6px;font-size:14px;font-weight:600}.card-meta[data-v-aac6db12]{color:var(--ink-muted);font-size:11px}.card-actions[data-v-aac6db12]{align-items:center;gap:4px;display:none;position:absolute;top:10px;right:10px}.project-card:hover .card-actions[data-v-aac6db12]{display:flex}.card-action-btn[data-v-aac6db12]{background:var(--surface);border:1px solid var(--border);cursor:pointer;color:var(--ink-muted);border-radius:5px;align-items:center;padding:4px 6px;font-size:11px;line-height:0;display:flex}.card-action-btn[data-v-aac6db12]:hover{background:var(--surface-hover)}.card-action-btn.danger[data-v-aac6db12]:hover{color:#e55;border-color:#e55}.card-loading[data-v-aac6db12]{background:var(--bg);position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.card-loading[data-v-aac6db12]{background:color-mix(in srgb,var(--bg) 70%,transparent)}}.card-loading[data-v-aac6db12]{color:var(--ink-muted);justify-content:center;align-items:center;display:flex}@keyframes spin-aac6db12{to{transform:rotate(360deg)}}.mf-section-head[data-v-bae174aa]{display:flex;align-items:center;gap:6px;padding:10px 14px 6px;cursor:pointer;user-select:none}.mf-section-head[data-v-bae174aa]:hover{background:var(--surface-hover)}.mf-section-label[data-v-bae174aa]{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);flex:1}.mf-section-actions[data-v-bae174aa]{display:flex;align-items:center;gap:2px}.mf-list[data-v-bae174aa]{padding:0 4px 4px}.mf-row[data-v-bae174aa]{display:flex;align-items:center;gap:2px;padding-right:4px;border-radius:6px;min-height:44px}.mf-row-tap[data-v-bae174aa]{flex:1;min-width:0;display:flex;align-items:center;gap:8px;padding:10px 8px 10px 0;cursor:pointer;border-radius:6px}.mf-row-tap[data-v-bae174aa]:active{background:var(--surface-hover)}.mf-row-tap.active[data-v-bae174aa]{background:color-mix(in srgb,var(--accent) 10%,transparent)}.mf-name[data-v-bae174aa]{flex:1;font-size:13px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mf-row-actions[data-v-bae174aa]{display:flex;align-items:center;gap:2px;flex-shrink:0}.mf-action-btn[data-v-bae174aa]{width:28px;height:28px;display:grid;place-items:center;border-radius:6px;border:none;background:none;color:var(--ink-muted);cursor:pointer;flex-shrink:0}.mf-action-btn[data-v-bae174aa]:hover{background:var(--bg-soft);color:var(--ink)}.mf-action-btn.danger[data-v-bae174aa]:hover{color:#ef4444}.mf-outline-level[data-v-bae174aa]{font-size:10px;font-weight:600;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);padding:1px 5px;border-radius:3px;flex-shrink:0}.mf-rename-input[data-v-bae174aa]{flex:1;min-width:0;font-size:13px;color:var(--ink);background:var(--surface);border:1px solid var(--accent);border-radius:4px;padding:2px 6px;height:28px;outline:none}.mf-empty[data-v-bae174aa]{font-size:12px;color:var(--ink-muted);padding:6px 12px}.mf-action-bar[data-v-bae174aa]{display:flex;gap:8px;padding:4px 12px 8px;flex-wrap:wrap}.mf-action-pill[data-v-bae174aa]{display:flex;align-items:center;gap:5px;font-size:13px;font-weight:500;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:7px 14px;cursor:pointer;white-space:nowrap}.mf-action-pill[data-v-bae174aa]:active{opacity:.7}.mf-action-pill svg[data-v-bae174aa]{color:var(--accent);flex-shrink:0}.m-tab-badge[data-v-bae174aa]{position:absolute;top:-5px;right:-7px;font-size:9px;font-weight:700;line-height:1;background:var(--accent);color:#fff;border-radius:10px;padding:2px 4px;min-width:14px;text-align:center;pointer-events:none}.mf-icon-btn[data-v-bae174aa]{width:32px;height:32px;display:grid;place-items:center;border-radius:6px;border:none;background:none;color:var(--ink-muted);cursor:pointer;flex-shrink:0}.mf-icon-btn[data-v-bae174aa]:active{background:var(--bg-soft);color:var(--ink)}.toast-host[data-v-8e051d94]{position:fixed;bottom:16px;right:16px;z-index:9999;display:flex;flex-direction:column;gap:8px;max-width:min(420px,calc(100vw - 32px));pointer-events:none}.toast[data-v-8e051d94]{pointer-events:auto;display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:8px;font-size:13px;line-height:1.4;color:#fff;box-shadow:0 4px 16px #00000040;cursor:pointer;animation:toast-in-8e051d94 .18s ease-out}.toast-error[data-v-8e051d94]{background:#c0392b}.toast-success[data-v-8e051d94]{background:#1e8449}.toast-info[data-v-8e051d94]{background:#2471a3}.toast-msg[data-v-8e051d94]{flex:1;word-break:break-word}.toast-close[data-v-8e051d94]{background:transparent;border:none;color:inherit;font-size:16px;line-height:1;cursor:pointer;opacity:.8;padding:0}.toast-close[data-v-8e051d94]:hover{opacity:1}@keyframes toast-in-8e051d94{0%{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-500:oklch(63.7% .237 25.331);--color-yellow-200:oklch(94.5% .129 101.54);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-700:oklch(50.8% .118 165.612);--color-sky-50:oklch(97.7% .013 236.62);--color-sky-700:oklch(50% .134 242.749);--color-blue-50:oklch(97% .014 254.604);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-300:oklch(80.9% .105 251.813);--color-blue-700:oklch(48.8% .243 264.376);--color-violet-50:oklch(96.9% .016 293.756);--color-violet-700:oklch(49.1% .27 292.581);--color-purple-50:oklch(97.7% .014 308.299);--color-purple-700:oklch(49.6% .265 301.924);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wider:.05em;--radius-sm:.25rem;--radius-lg:.5rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.top-1\.5{top:calc(var(--spacing) * 1.5)}.right-1\.5{right:calc(var(--spacing) * 1.5)}.isolate{isolation:isolate}.z-50{z-index:50}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.my-0{margin-block:calc(var(--spacing) * 0)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.table\!{display:table!important}.h-8{height:calc(var(--spacing) * 8)}.h-full{height:100%}.max-h-80{max-height:calc(var(--spacing) * 80)}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-full{min-height:100%}.w-8{width:calc(var(--spacing) * 8)}.w-48{width:calc(var(--spacing) * 48)}.w-72{width:calc(var(--spacing) * 72)}.w-full{width:100%}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-1{flex:1}.flex-shrink,.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.origin-top{transform-origin:top}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.resize-none{resize:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-lg{border-radius:var(--radius-lg)}.rounded-sm{border-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-none{--tw-border-style:none;border-style:none}.border-blue-200{border-color:var(--color-blue-200)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.bg-blue-50{background-color:var(--color-blue-50)}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-900{background-color:var(--color-gray-900)}.bg-purple-50{background-color:var(--color-purple-50)}.bg-sky-50{background-color:var(--color-sky-50)}.bg-violet-50{background-color:var(--color-violet-50)}.bg-white{background-color:var(--color-white)}.bg-yellow-200{background-color:var(--color-yellow-200)}.p-4{padding:calc(var(--spacing) * 4)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.85em\]{font-size:.85em}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-blue-700{color:var(--color-blue-700)}.text-emerald-700{color:var(--color-emerald-700)}.text-gray-100{color:var(--color-gray-100)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-purple-700{color:var(--color-purple-700)}.text-red-500{color:var(--color-red-500)}.text-sky-700{color:var(--color-sky-700)}.text-violet-700{color:var(--color-violet-700)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-100{opacity:1}.shadow,.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.select-none{-webkit-user-select:none;user-select:none}@media(hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.hover\:border-gray-300:hover{border-color:var(--color-gray-300)}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:text-gray-700:hover{color:var(--color-gray-700)}}.focus\:ring-1:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-blue-300:focus{--tw-ring-color:var(--color-blue-300)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}}@font-face{font-family:Libertinus Serif;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/LibertinusSerif-Regular.otf)format("opentype")}@font-face{font-family:Libertinus Serif;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/LibertinusSerif-Italic.otf)format("opentype")}@font-face{font-family:Libertinus Serif;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/LibertinusSerif-Semibold.otf)format("opentype")}@font-face{font-family:Libertinus Serif;font-style:italic;font-weight:600;font-display:swap;src:url(/fonts/LibertinusSerif-SemiboldItalic.otf)format("opentype")}@font-face{font-family:Libertinus Serif;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/LibertinusSerif-Bold.otf)format("opentype")}@font-face{font-family:Libertinus Serif;font-style:italic;font-weight:700;font-display:swap;src:url(/fonts/LibertinusSerif-BoldItalic.otf)format("opentype")}@font-face{font-family:New Computer Modern;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/NewCM10-Regular.otf)format("opentype")}@font-face{font-family:New Computer Modern;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/NewCM10-Italic.otf)format("opentype")}@font-face{font-family:New Computer Modern;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/NewCM10-Bold.otf)format("opentype")}@font-face{font-family:New Computer Modern;font-style:italic;font-weight:700;font-display:swap;src:url(/fonts/NewCM10-BoldItalic.otf)format("opentype")}@font-face{font-family:DejaVu Sans Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/DejaVuSansMono.ttf)format("truetype")}@font-face{font-family:DejaVu Sans Mono;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/DejaVuSansMono-Oblique.ttf)format("truetype")}@font-face{font-family:DejaVu Sans Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/DejaVuSansMono-Bold.ttf)format("truetype")}@font-face{font-family:DejaVu Sans Mono;font-style:italic;font-weight:700;font-display:swap;src:url(/fonts/DejaVuSansMono-BoldOblique.ttf)format("truetype")}:root,.theme-light{--bg:oklch(99% 0 0);--bg-soft:oklch(97% 0 0);--bg-canvas:oklch(94% 0 0);--surface:#fff;--divider:oklch(90% 0 0);--divider-strong:oklch(84% 0 0);--ink:oklch(22% 0 0);--ink-soft:oklch(48% 0 0);--ink-muted:oklch(65% 0 0);--warn:oklch(72% .13 70);--ok:oklch(58% .11 155);--err:oklch(58% .16 25);--accent:oklch(56% .1 200);--accent-soft:oklch(95% .025 200);--accent-on:#fff;--shadow-md:0 1px 2px #0000000a, 0 8px 24px #00000014;--shadow-sm:0 1px 2px #0000000f;--surface-hover:oklch(94% .002 80);--border:oklch(88% .002 80)}.theme-dark{--bg:oklch(20% .005 80);--bg-soft:oklch(23% .005 80);--bg-canvas:oklch(15% .004 80);--surface:oklch(25% .006 80);--divider:oklch(28% .008 80);--divider-strong:oklch(35% .01 80);--ink:oklch(94% .005 80);--ink-soft:oklch(72% .008 80);--ink-muted:oklch(55% .01 80);--warn:oklch(78% .13 75);--ok:oklch(72% .13 155);--err:oklch(70% .15 25);--shadow-md:0 1px 2px #00000040, 0 8px 24px #0006;--shadow-sm:0 1px 2px #0000004d;--surface-hover:oklch(28% .006 80);--border:oklch(30% .008 80)}.accent-teal{--accent:oklch(56% .1 200);--accent-soft:oklch(95% .025 200);--accent-on:#fff}.theme-dark.accent-teal{--accent:oklch(72% .12 200);--accent-soft:oklch(28% .05 200);--accent-on:oklch(20% .005 80)}.accent-amber{--accent:oklch(60% .13 65);--accent-soft:oklch(95% .04 75);--accent-on:oklch(20% .005 80)}.theme-dark.accent-amber{--accent:oklch(72% .13 65);--accent-soft:oklch(28% .05 65);--accent-on:oklch(20% .005 80)}.accent-forest{--accent:oklch(42% .1 155);--accent-soft:oklch(94% .03 155);--accent-on:#fff}.theme-dark.accent-forest{--accent:oklch(70% .11 155);--accent-soft:oklch(26% .05 155);--accent-on:oklch(20% .005 80)}*,:before,:after{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;padding:0;overflow:hidden}body{-webkit-font-smoothing:antialiased;background:var(--bg);color:var(--ink);font-family:IBM Plex Sans,system-ui,sans-serif;font-size:13px}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:none}svg{display:block}.app{flex-direction:column;height:100vh;display:flex;overflow:hidden}.workspace{flex:1;min-height:0;display:flex;overflow:hidden}.titlebar{background:var(--bg);border-bottom:1px solid var(--divider);white-space:nowrap;flex-shrink:0;align-items:center;gap:10px;height:42px;padding:0 12px;display:flex}.brand{letter-spacing:-.01em;flex-shrink:0;align-items:center;gap:9px;font-family:Spectral,serif;font-size:16.5px;font-weight:600;display:flex}.brand-mark{background:var(--accent);width:24px;height:24px;color:var(--accent-on);border-radius:5px;place-items:center;font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:600;display:grid}.brand-beta{letter-spacing:.14em;color:var(--ink-muted);text-transform:uppercase;font-size:9px;font-weight:500}.breadcrumb{color:var(--ink-soft);white-space:nowrap;align-items:center;gap:8px;min-width:0;font-size:12.5px;display:inline-flex;overflow:hidden}.breadcrumb .sep{color:var(--ink-muted);opacity:.5}.breadcrumb .file{color:var(--ink);font-family:IBM Plex Mono,monospace;font-weight:500}.mode-switch{background:var(--bg-soft);border:1px solid var(--divider);border-radius:999px;flex-shrink:0;padding:3px;display:inline-flex}.mode-switch button{height:24px;color:var(--ink-soft);white-space:nowrap;background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:11.5px;font-weight:500;transition:background .12s,color .12s;display:inline-flex}.mode-switch button.active{background:var(--ink);color:var(--bg)}.mode-switch button:hover:not(.active){color:var(--ink)}.tbar-actions{flex-shrink:0;align-items:center;gap:4px;margin-left:auto;display:flex}.ttbtn{height:28px;color:var(--ink-soft);white-space:nowrap;background:0 0;border:0;border-radius:6px;align-items:center;gap:6px;padding:0 10px;font-size:12px;transition:background .12s,color .12s;display:inline-flex}.ttbtn:hover{background:var(--bg-soft);color:var(--ink)}.ttbtn.primary{background:var(--accent);color:var(--accent-on);font-weight:500}.ttbtn.primary:hover{filter:brightness(1.05)}.ttbtn.primary:disabled{opacity:.6;cursor:not-allowed;filter:none}.ttbtn-icon{width:28px;height:28px;color:var(--ink-muted);background:0 0;border:0;border-radius:6px;flex-shrink:0;place-items:center;transition:background .12s,color .12s;display:grid}.ttbtn-icon:hover,.ttbtn-icon.active{background:var(--bg-soft);color:var(--ink)}.div-v{background:var(--divider);flex-shrink:0;align-self:center;width:1px;height:18px}.nav-rail{background:var(--bg);border-right:1px solid var(--divider);flex-direction:column;flex-shrink:0;align-items:center;gap:4px;width:44px;padding:8px 0;display:flex}.rail-btn{width:32px;height:32px;color:var(--ink-muted);background:0 0;border:0;border-radius:6px;place-items:center;transition:background .1s,color .1s;display:grid;position:relative}.rail-btn:hover,.rail-btn.active{background:var(--bg-soft);color:var(--ink)}.rail-btn.active:before{content:"";background:var(--accent);border-radius:2px;width:2px;position:absolute;top:6px;bottom:6px;left:-8px}.explorer{background:var(--bg);border-right:1px solid var(--divider);flex-direction:column;flex-shrink:0;width:224px;height:100%;display:flex}.exp-head{flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 14px 8px;display:flex}.exp-title{letter-spacing:-.005em;font-family:Spectral,serif;font-size:13px;font-weight:600}.exp-sub{color:var(--ink-muted);letter-spacing:.04em;flex-shrink:0;padding:0 14px 6px;font-size:10.5px}.exp-actions{gap:2px;display:flex}.exp-actions button{width:22px;height:22px;color:var(--ink-muted);background:0 0;border:0;border-radius:4px;place-items:center;display:grid}.exp-actions button:hover{background:var(--bg-soft);color:var(--ink)}.exp-tree{flex:1;padding:4px 8px;overflow-y:auto}.exp-row{height:28px;color:var(--ink-soft);cursor:pointer;border-radius:5px;align-items:center;gap:9px;padding:0 10px;font-size:12.5px;transition:background .1s,color .1s;display:flex}.exp-row:hover{background:var(--bg-soft)}.exp-row.active{background:var(--accent-soft);color:var(--accent);font-weight:500}.exp-row .name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-family:IBM Plex Mono,monospace;font-size:12px;overflow:hidden}.exp-row .dot{background:var(--accent);opacity:.6;border-radius:50%;flex-shrink:0;width:5px;height:5px}.exp-section{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted);padding:14px 14px 4px;font-size:10px;font-weight:600}.exp-outline-row{height:26px;color:var(--ink-soft);cursor:pointer;border-radius:4px;align-items:center;gap:9px;padding:0 10px;font-family:Spectral,serif;font-size:12.5px;display:flex}.exp-outline-row:hover{background:var(--bg-soft);color:var(--ink)}.exp-outline-row .h-lev{color:var(--ink-muted);flex-shrink:0;width:16px;font-family:IBM Plex Mono,monospace;font-size:9.5px}.toolbar{background:var(--bg);border-bottom:1px solid var(--divider);flex-direction:column;flex-shrink:0;display:flex;container:toolbar/inline-size}.tb-label{white-space:nowrap}.tb-context{border-bottom:1px solid var(--divider);flex-shrink:0;align-items:center;gap:2px;height:32px;padding:0 14px;display:flex;position:relative}.tb-ctx-tab{height:32px;color:var(--ink-muted);letter-spacing:.02em;background:0 0;border:0;align-items:center;padding:0 11px;font-size:11.5px;font-weight:500;transition:color .1s;display:inline-flex;position:relative}.tb-ctx-tab:hover:not(.active){color:var(--ink)}.tb-ctx-tab.active{color:var(--accent)}.tb-ctx-tab.active:after{content:"";background:var(--accent);border-radius:1px 1px 0 0;height:2px;position:absolute;bottom:-1px;left:8px;right:8px}.tb-controls{scrollbar-width:none;align-items:center;gap:8px;min-width:0;height:44px;padding:0 14px;display:flex;overflow-x:auto}.tb-controls::-webkit-scrollbar{display:none}.tb-controls>*{flex-shrink:0}.tbtn{width:28px;height:28px;color:var(--ink-soft);background:0 0;border:0;border-radius:5px;place-items:center;transition:background .1s,color .1s;display:grid}.tbtn:hover{background:var(--surface);color:var(--ink)}.tbtn.active{background:var(--accent-soft);color:var(--accent)}.tb-group{background:var(--bg-soft);border:1px solid var(--divider);border-radius:7px;align-items:center;gap:1px;padding:2px;display:inline-flex}.tbtn-wide{background:var(--surface);border:1px solid var(--divider);height:28px;color:var(--ink-soft);white-space:nowrap;border-radius:6px;align-items:center;gap:6px;padding:0 11px;font-size:12px;transition:background .12s,color .1s;display:inline-flex}.tbtn-wide:hover{background:var(--bg-soft);color:var(--ink)}.tbtn-wide.active{background:var(--accent-soft);color:var(--accent);border-color:#0000}.tbtn-wide.danger{color:var(--err);border-color:var(--err)}@supports (color:color-mix(in lab,red,red)){.tbtn-wide.danger{border-color:color-mix(in oklch,var(--err) 30%,var(--divider))}}.tbtn-wide.danger:hover{background:var(--err)}@supports (color:color-mix(in lab,red,red)){.tbtn-wide.danger:hover{background:color-mix(in oklch,var(--err) 8%,var(--surface))}}.divider-mini{background:var(--divider);flex-shrink:0;width:1px;height:20px;margin:0 4px}.zoom-ctl{background:var(--bg-soft);border:1px solid var(--divider);border-radius:6px;align-items:center;padding:2px;display:inline-flex}.zoom-ctl button{width:24px;height:24px;color:var(--ink-soft);background:0 0;border:0;border-radius:4px;place-items:center;transition:background .1s,color .1s;display:grid}.zoom-ctl button:hover{background:var(--surface);color:var(--ink)}.zoom-ctl .label{text-align:center;font-variant-numeric:tabular-nums;min-width:44px;color:var(--ink);padding:0 8px;font-size:11.5px}.toolbar.compact .tb-context{display:none}.toolbar.compact .tb-controls{height:48px}.toolbar.compact .tb-compact-tabs{background:var(--bg-soft);border:1px solid var(--divider);border-radius:7px;gap:1px;padding:2px;display:inline-flex}.toolbar:not(.compact) .tb-compact-tabs{display:none}.toolbar.compact .tb-compact-tabs button{height:24px;color:var(--ink-soft);background:0 0;border:0;border-radius:5px;padding:0 10px;font-size:11.5px}.toolbar.compact .tb-compact-tabs button.active{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #0000000f}.tb-hint{color:var(--ink-muted);letter-spacing:.04em;flex-shrink:0;margin-left:auto;font-family:IBM Plex Mono,monospace;font-size:10.5px}.tb-hint kbd{border:1px solid var(--divider);background:var(--bg-soft);border-radius:3px;padding:1px 5px;font-family:IBM Plex Mono,monospace;font-size:10px}@container toolbar (max-width:820px){.tb-label,.tb-hint{display:none}.tbtn-wide{gap:0;padding:0 8px}.tb-section-label{display:none}}.canvas{background:radial-gradient(circle at 50% 0%,var(--bg-soft),var(--bg-canvas) 70%);flex:1;padding:8px;display:flex;overflow:auto}.canvas-inner{flex-direction:column;align-items:center;gap:24px;margin:auto;padding:0;display:flex}.designer-page{box-shadow:var(--shadow-md);background:#fff;border-radius:2px}.tt-container{position:relative}.tt-container:after{content:"";pointer-events:none;outline:1.5px dashed var(--tt-accent,var(--divider));outline-offset:-1px;opacity:0;border-radius:6px;transition:opacity .12s .45s;position:absolute;inset:0}.tt-container:hover:after,.tt-container:focus-within:after,.tt-container.is-selected:after{opacity:.85;transition-delay:0s}.tt-container.is-selected:after{outline-style:solid}.tt-chrome{z-index:6;background:var(--surface);border:1px solid var(--tt-accent,var(--divider));max-width:100%;height:20px;box-shadow:var(--shadow-sm);white-space:nowrap;opacity:0;visibility:hidden;pointer-events:auto;border-radius:6px 6px 6px 0;align-items:center;gap:6px;padding:0 3px 0 6px;font-family:Inter,system-ui,sans-serif;transition:opacity .12s .45s,visibility .12s .45s;display:inline-flex;position:absolute;top:0;left:0;transform:translateY(-100%)}.tt-chrome:before{content:"";height:8px;position:absolute;top:100%;left:0;right:0}.tt-container:hover>.tt-chrome,.tt-container:focus-within>.tt-chrome,.tt-container.is-selected>.tt-chrome{opacity:1;visibility:visible;transition-delay:0s}.tt-chrome-badge{letter-spacing:.06em;color:var(--tt-accent,var(--ink-muted));flex-shrink:0;align-items:center;gap:3px;font-size:9px;font-weight:700;display:inline-flex}.tt-chrome-grab{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.tt-chrome-grab:active{cursor:grabbing}.tt-chrome-grip{flex-shrink:0}.tt-chrome-spacer{flex:1;min-width:0}.tt-chrome-btn{width:18px;height:18px;color:var(--ink-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.tt-chrome-btn:hover{background:var(--bg-soft);color:var(--ink)}.tt-chrome-danger:hover{color:#ef4444}.tt-chrome-input{min-width:40px;color:var(--ink);background:0 0;border:1px solid #0000;border-radius:3px;outline:none;padding:0 4px;font-family:IBM Plex Mono,monospace;font-size:11px}.tt-chrome-input:hover,.tt-chrome-input:focus{background:var(--bg-soft);border-color:var(--tt-accent,var(--divider))}.typst-meta-node.is-gutter{--gutter-index:0}.typst-meta-node.is-gutter+.typst-meta-node.is-gutter{--gutter-index:1}.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter{--gutter-index:2}.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter{--gutter-index:3}.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter{--gutter-index:4}.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter{--gutter-index:5}.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter{--gutter-index:6}.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter+.typst-meta-node.is-gutter{--gutter-index:7}.typst-meta-node.is-gutter .meta-inner,.typst-meta-node.is-gutter .tok-block,.typst-meta-node.is-gutter .gp-chip{top:calc(var(--gutter-index,0) * 18px - 1px)!important}.pane-head{background:var(--bg);border-bottom:1px solid var(--divider);white-space:nowrap;scrollbar-width:none;flex-shrink:0;align-items:center;gap:10px;height:44px;padding:0 14px;display:flex;overflow-x:auto}.pane-head::-webkit-scrollbar{display:none}.pane-head>*{flex-shrink:0}.pane-title{color:var(--ink);letter-spacing:-.005em;align-items:center;gap:7px;font-family:Spectral,serif;font-size:14px;font-weight:600;display:inline-flex}.pane-meta{color:var(--ink-muted);font-family:IBM Plex Mono,monospace;font-size:11px}.pane-tabs{background:var(--bg-soft);border:1px solid var(--divider);border-radius:6px;padding:2px;display:inline-flex}.pane-tabs button{height:22px;color:var(--ink-soft);white-space:nowrap;background:0 0;border:0;border-radius:4px;padding:0 9px;font-size:11px;transition:background .1s,color .1s}.pane-tabs button.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.pane-tabs button:hover:not(.active){color:var(--ink)}.compile-pill{background:var(--accent-soft);height:22px;color:var(--accent);border-radius:11px;align-items:center;gap:6px;padding:0 10px;font-size:11px;font-weight:500;display:inline-flex}.compile-pill .dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px}.compile-pill.warn{background:var(--warn)}@supports (color:color-mix(in lab,red,red)){.compile-pill.warn{background:color-mix(in oklch,var(--warn) 15%,var(--bg))}}.compile-pill.warn{color:var(--warn)}.compile-pill.warn .dot{background:var(--warn)}.compile-pill.err{background:var(--err)}@supports (color:color-mix(in lab,red,red)){.compile-pill.err{background:color-mix(in oklch,var(--err) 10%,var(--bg))}}.compile-pill.err{color:var(--err)}.compile-pill.err .dot{background:var(--err)}.cancel-compile-btn{width:14px;height:14px;color:inherit;cursor:pointer;opacity:.7;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.cancel-compile-btn:hover{opacity:1;background:currentColor}@supports (color:color-mix(in lab,red,red)){.cancel-compile-btn:hover{background:color-mix(in oklch,currentColor 15%,transparent)}}.statusbar{background:var(--bg);border-top:1px solid var(--divider);height:24px;color:var(--ink-muted);letter-spacing:.02em;flex-shrink:0;align-items:center;gap:14px;padding:0 14px;font-size:10.5px;display:flex}.statusbar .ok{color:var(--ok);align-items:center;gap:5px;font-weight:500;display:inline-flex}.statusbar .dot{background:var(--ok);border-radius:50%;width:6px;height:6px}.statusbar .sep{opacity:.5}.splitpanes{height:100%!important}.splitpanes__pane{overflow:hidden}.splitpanes__splitter{transition:background .15s;background:var(--divider)!important;width:3px!important}.splitpanes__splitter:hover{background:var(--accent)!important}*{scrollbar-width:thin;scrollbar-color:var(--divider-strong) transparent}::-webkit-scrollbar{background:0 0;width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--divider-strong);background-clip:content-box;border:2px solid #0000;border-radius:5px;min-height:30px}::-webkit-scrollbar-thumb:hover{background:var(--ink-muted);background-clip:content-box}::-webkit-scrollbar-corner{background:0 0}.scrollbar-none{scrollbar-width:none}.scrollbar-none::-webkit-scrollbar{display:none}.preview-view-mode-bar{background:var(--bg);border-bottom:1px solid var(--divider);height:36px;color:var(--ink-soft);flex-shrink:0;justify-content:space-between;align-items:center;padding:0 12px;font-size:12px;display:flex}.preview-view-mode-bar .view-toggle{border:1px solid var(--divider);border-radius:6px;align-items:center;display:inline-flex;overflow:hidden}.preview-view-mode-bar .view-toggle button{background:var(--bg);height:24px;color:var(--ink-soft);border:none;padding:0 10px;font-size:11px;font-weight:500;transition:background .1s,color .1s}.preview-view-mode-bar .view-toggle button.active{background:var(--accent-soft);color:var(--accent)}.preview-view-mode-bar .view-toggle .vt-sep{background:var(--divider);align-self:center;width:1px;height:16px}.style-sel-native{background:var(--bg-soft);border:1px solid var(--divider);min-width:130px;height:28px;color:var(--ink);appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 16 16' fill='none' stroke='%23888' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;border-radius:6px;padding:0 26px 0 12px;font-family:Spectral,serif;font-size:13px;font-weight:500}.style-sel-native:focus{border-color:var(--accent);outline:none}.tb-section-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);flex-shrink:0;padding:0 2px;font-size:10.5px;font-weight:600}.link-popover{z-index:201;background:var(--surface);border:1px solid var(--divider);box-shadow:var(--shadow-md);border-radius:8px;flex-direction:column;gap:8px;min-width:260px;padding:12px;display:flex;position:fixed}.link-popover-label{color:var(--ink);margin:0;font-size:11.5px;font-weight:600}.link-popover-input{background:var(--bg-soft);border:1px solid var(--divider);width:100%;height:28px;color:var(--ink);border-radius:5px;outline:none;padding:0 10px;font-size:12px}.link-popover-input:focus{border-color:var(--accent)}.link-popover-apply{background:var(--accent);height:26px;color:var(--accent-on);cursor:pointer;border:none;border-radius:5px;padding:0 12px;font-size:11.5px;font-weight:500}.link-popover-apply:hover{opacity:.9}.link-popover-remove{background:var(--err);height:26px;padding:0 10px}@supports (color:color-mix(in lab,red,red)){.link-popover-remove{background:color-mix(in oklch,var(--err) 10%,var(--surface))}}.link-popover-remove{color:var(--err);border:1px solid var(--err)}@supports (color:color-mix(in lab,red,red)){.link-popover-remove{border:1px solid color-mix(in oklch,var(--err) 30%,var(--divider))}}.link-popover-remove{cursor:pointer;border-radius:5px;font-size:11.5px}.link-popover-cancel{background:var(--bg-soft);height:26px;color:var(--ink-soft);border:1px solid var(--divider);cursor:pointer;border-radius:5px;padding:0 10px;font-size:11.5px}.tok-block{color:#555;border-left:2px solid var(--accent);cursor:default;background:#f2f2f2;border-radius:0 5px 5px 0;align-items:center;gap:10px;margin:10px 0;padding:7px 12px;font-family:IBM Plex Mono,monospace;font-size:11.5px;display:flex}.tok-block:hover{background:#ebebeb}.tok-label{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);flex-shrink:0;font-size:9.5px;font-weight:600}.tok-code{color:#222;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.tok-edit-btn{color:#888;cursor:pointer;background:0 0;border:1px solid #d4d0c8;border-radius:4px;flex-shrink:0;align-items:center;gap:4px;height:20px;padding:0 8px;font-family:IBM Plex Sans,sans-serif;font-size:10px;transition:color .1s,border-color .1s;display:inline-flex}.tok-edit-btn:hover{color:#222;border-color:#999}.tok-line{color:#888;align-items:center;gap:12px;margin:16px 0;font-family:IBM Plex Mono,monospace;font-size:10.5px;display:flex}.tok-line:before,.tok-line:after{content:"";background:#d4d0c8;flex:1;height:1px}.theme-dark .tok-block{background:#252422}.theme-dark .tok-block:hover{background:#2c2b29}.theme-dark .tok-code{color:var(--ink-soft)}.theme-dark .tok-edit-btn{color:var(--ink-muted);border-color:var(--divider)}.theme-dark .tok-edit-btn:hover{color:var(--ink);border-color:var(--divider-strong)}.theme-dark .tok-line{color:var(--ink-muted)}.theme-dark .tok-line:before,.theme-dark .tok-line:after{background:var(--divider)}.m-app{background:var(--bg);height:100vh;color:var(--ink);flex-direction:column;display:flex;overflow:hidden}.m-header{background:var(--bg);border-bottom:1px solid var(--divider);flex-shrink:0;align-items:center;gap:4px;height:52px;padding:0 8px;display:flex}.m-iconbtn{width:38px;height:38px;color:var(--ink-soft);border-radius:8px;flex-shrink:0;place-items:center;display:grid}.m-iconbtn:hover,.m-iconbtn:active{background:var(--bg-soft);color:var(--ink)}.m-title{flex-direction:column;flex:1;justify-content:center;align-items:center;min-width:0;line-height:1.2;display:flex}.m-title-1{color:var(--ink-muted);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:11px;overflow:hidden}.m-title-2{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;max-width:220px;margin-top:1px;font-size:13px;font-weight:500;display:inline-flex;overflow:hidden}.m-compile-dot{background:var(--ink-muted);border-radius:50%;flex-shrink:0;width:7px;height:7px}.m-compile-dot--ok{background:var(--ok);box-shadow:0 0 0 3px var(--ok)}@supports (color:color-mix(in lab,red,red)){.m-compile-dot--ok{box-shadow:0 0 0 3px color-mix(in oklch,var(--ok) 18%,transparent)}}.m-stage,.m-page{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.m-files{background:var(--bg);padding-bottom:24px;overflow-y:auto}.m-section-head{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted);justify-content:space-between;align-items:center;padding:18px 18px 8px;font-size:10px;font-weight:600;display:flex}.m-section-actions{gap:2px;display:flex}.m-section-actions button{width:28px;height:28px;color:var(--ink-muted);border-radius:6px;place-items:center;display:grid}.m-section-actions button:hover{background:var(--bg-soft);color:var(--ink)}.m-file-list{flex-direction:column;gap:4px;padding:0 12px;display:flex}.m-file-row{background:var(--surface);border:1px solid var(--divider);text-align:left;width:100%;color:var(--ink);border-radius:10px;align-items:center;gap:12px;padding:12px 14px;transition:background .12s,border-color .12s;display:flex}.m-file-row:hover,.m-file-row:active{background:var(--bg-soft)}.m-file-row.active{border-color:var(--accent);background:var(--accent-soft)}.m-file-row.active .m-file-name{color:var(--accent)}.m-file-icon{color:var(--warn);flex-shrink:0;place-items:center;display:grid}.m-file-row:not(.active) .m-file-icon{color:var(--ink-muted)}.m-file-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.m-file-name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.m-file-meta{color:var(--ink-muted);font-size:11px}.m-file-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px}.m-outline{padding:0 6px}.m-outline-row{height:36px;color:var(--ink);cursor:pointer;border-radius:6px;align-items:center;gap:12px;padding-right:12px;font-family:Spectral,serif;font-size:14px;display:flex}.m-outline-row:hover{background:var(--bg-soft)}.m-outline-level{color:var(--ink-muted);letter-spacing:.04em;flex-shrink:0;font-size:10px}.m-outline-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.m-quick{grid-template-columns:1fr 1fr;gap:8px;padding:0 12px;display:grid}.m-quick button{background:var(--surface);border:1px solid var(--divider);color:var(--ink);border-radius:10px;justify-content:flex-start;align-items:center;gap:8px;padding:14px 12px;font-size:12.5px;font-weight:500;display:inline-flex}.m-quick button:hover{background:var(--bg-soft)}.m-quick button svg{color:var(--accent);flex-shrink:0}.m-editor{background:var(--bg-canvas)}.m-editor-modes{background:var(--bg);border-bottom:1px solid var(--divider);flex-shrink:0;gap:2px;padding:8px 14px;display:flex}.m-editor-modes button{height:32px;color:var(--ink-soft);letter-spacing:.01em;background:0 0;border-radius:7px;flex:1;justify-content:center;align-items:center;gap:6px;font-size:12px;font-weight:500;transition:background .12s,color .12s;display:inline-flex}.m-editor-modes button.active{background:var(--ink);color:var(--bg)}.m-editor-modes button:not(.active):hover{background:var(--bg-soft);color:var(--ink)}.m-editor>.designer-view,.m-editor>.code-view,.m-editor>[data-v-designer],.m-editor>[class*=designer],.m-editor>[class*=code-view]{flex:1;min-height:0}.m-preview{background:var(--bg-canvas)}.m-preview>.pane{flex:1;min-height:0}.m-chat-overlay{z-index:45;background:var(--bg);flex-direction:column;display:flex;position:fixed;inset:0}.m-ai-btn{position:relative}.m-ai-btn.active{background:var(--bg-soft);color:var(--accent)}.m-ai-badge{background:var(--err);color:#fff;pointer-events:none;border-radius:7px;justify-content:center;align-items:center;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:700;line-height:1;display:flex;position:absolute;top:2px;right:2px}.ai-chat-btn{position:relative}.ai-unread-badge{background:var(--err);color:#fff;pointer-events:none;border-radius:7px;justify-content:center;align-items:center;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:700;line-height:1;display:flex;position:absolute;top:0;right:0}.m-tabbar{background:var(--bg);border-top:1px solid var(--divider);flex-shrink:0;gap:4px;height:64px;padding:6px 8px 8px;display:flex}.m-tab{color:var(--ink-muted);letter-spacing:.02em;border-radius:10px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:6px 0 4px;font-size:10.5px;font-weight:500;transition:color .12s,background .12s;display:flex;position:relative}.m-tab.active{color:var(--accent)}.m-tab.active:before{content:"";background:var(--accent);border-radius:2px;width:26px;height:3px;position:absolute;top:2px;left:50%;transform:translate(-50%)}.m-tab:not(.active):hover{color:var(--ink)}.m-loading{background:var(--bg);color:var(--ink-muted);z-index:50;justify-content:center;align-items:center;gap:12px;font-size:13px;display:flex;position:absolute;inset:0}@keyframes spin{to{transform:rotate(360deg)}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{position:relative;background-color:#333;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;white-space:normal;outline:0;transition-property:transform,visibility,opacity}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:initial;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:initial;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-width:8px 0 8px 8px;border-left-color:initial;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-7px;border-width:8px 8px 8px 0;border-right-color:initial;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{width:16px;height:16px;color:#333}.tippy-arrow:before{content:"";position:absolute;border-color:transparent;border-style:solid}.tippy-content{position:relative;padding:5px 9px;z-index:1}
