.site-header{background:color-mix(in srgb, var(--app-surface) 88%, transparent);border-bottom:1px solid var(--app-border);backdrop-filter:blur(16px);z-index:20;align-items:center;height:58px;display:flex;position:sticky;top:0}.site-header__inner{max-width:var(--tool-shell-max-width,1180px);width:calc(100% - (var(--tool-shell-gutter,16px) + var(--tool-shell-gutter,16px)));justify-content:space-between;align-items:center;gap:16px;margin:0 auto;display:flex}.site-header__brand{color:var(--app-text);letter-spacing:0;white-space:nowrap;font-size:17px;font-weight:700}.site-header__actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:14px;display:flex}.site-header__icon-button{color:var(--app-muted);cursor:pointer;font:inherit;letter-spacing:0;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;transition:background-color .14s,color .14s,transform .14s;display:inline-flex}.site-header__icon-button:hover{background:color-mix(in srgb, var(--control-active-bg) 86%, var(--app-text) 8%);color:var(--app-text)}@media (width<=640px){.site-header{align-items:flex-start;height:auto}.site-header__inner{align-items:flex-start;padding-top:10px;padding-bottom:10px}.site-header__actions{gap:10px}}.tool-shell{min-height:100vh}.tool-shell__content{max-width:var(--tool-shell-max-width,1180px);width:calc(100% - (var(--tool-shell-gutter,16px) + var(--tool-shell-gutter,16px)));margin:0 auto}:root{color-scheme:light;text-rendering:optimizelegibility;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;line-height:1.5}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0}button,textarea{font:inherit}button:disabled{cursor:not-allowed;opacity:.62}.app{--app-bg:#fffefb;--app-surface:#fffefb;--app-surface-strong:#fff;--app-text:#1f2423;--app-muted:#69716f;--app-border:#d9ddd5;--app-accent:#176b73;--app-accent-strong:#0f5960;--app-warm:#b45f3a;--control-bg:#f0f1ec;--control-active-bg:#fff;--control-active-shadow:0 1px 4px #1e26221f;--panel-shadow:0 18px 44px #41463f1a;--tool-shell-gutter:clamp(12px, 3.2vw, 48px);--tool-shell-max-width:1180px;--doc-light-bg:#fffdfa;--doc-light-text:#202322;--doc-light-muted:#66706d;--doc-light-border:#e4e1d8;--doc-light-soft:#f4f1e9;--doc-light-accent:#176b73;--doc-dark-bg:#111827;--doc-dark-text:#eef2f7;--doc-dark-muted:#a7b2c2;--doc-dark-border:#2f3d55;--doc-dark-soft:#1b2638;--doc-dark-accent:#5eead4;background:linear-gradient(135deg, var(--app-surface) 0%, #fff 52%, var(--app-surface) 100%);color:var(--app-text);min-height:100vh}.app .tool-shell{min-height:100vh}.app--dark,:root[data-theme=dark] .app{--app-bg:#111827;--app-surface:#162235;--app-surface-strong:#101a2b;--app-text:#f3f6fb;--app-muted:#98a6ba;--app-border:#2a3850;--app-accent:#0d9488;--app-accent-strong:#0f766e;--app-warm:#f59e0b;--control-bg:#111b2c;--control-active-bg:#223049;--control-active-shadow:0 1px 5px #00000047;--panel-shadow:0 18px 52px #00000052;color-scheme:dark;background:linear-gradient(135deg,#111827 0%,#1f2937 50%,#111827 100%)}.workspace{grid-template-columns:minmax(0,1fr) minmax(420px,1fr);gap:18px;height:calc(100vh - 58px);min-height:0;padding:18px 0 24px;display:grid}.panel{background:color-mix(in srgb, var(--app-surface) 94%, transparent);border:1px solid var(--app-border);box-shadow:var(--panel-shadow);border-radius:8px;min-width:0;min-height:0;overflow:hidden}.panel__header{border-bottom:1px solid var(--app-border);justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:12px 14px;display:flex}.panel__header h1{margin:0;font-size:15px;line-height:1.2}.editor-panel{flex-direction:column;display:flex}.markdown-input{color:var(--app-text);resize:none;background:0 0;border:0;outline:none;flex:1;width:100%;min-height:0;padding:18px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,PingFang SC,monospace;font-size:14px;line-height:1.66;overflow:auto}.markdown-input::placeholder{color:var(--app-muted)}.preview-panel{flex-direction:column;display:flex}.preview-toolbar{align-items:center}.export-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.primary-button,.secondary-button{cursor:pointer;letter-spacing:0;border-radius:8px;justify-content:center;align-items:center;gap:7px;height:36px;padding:0 13px;font-size:14px;font-weight:700;display:inline-flex}.primary-button{background:var(--app-accent);border:1px solid var(--app-accent);color:#fff}.primary-button:hover:not(:disabled){background:var(--app-accent-strong)}.secondary-button{background:var(--app-surface-strong);border:1px solid var(--app-border);color:var(--app-text)}.secondary-button:hover:not(:disabled){border-color:var(--app-accent)}.control-row{border-bottom:1px solid var(--app-border);flex-wrap:wrap;align-items:center;gap:10px;padding:11px 14px;display:flex}.field-group{color:var(--app-muted);align-items:center;gap:8px;font-size:13px;display:inline-flex}.segmented{background:var(--control-bg);border:1px solid var(--app-border);border-radius:8px;align-items:center;gap:2px;padding:3px;display:inline-flex}.segmented button{color:var(--app-muted);cursor:pointer;letter-spacing:0;background:0 0;border:0;border-radius:6px;min-width:34px;height:28px;padding:0 9px;font-size:13px;font-weight:700}.segmented button.is-active{background:var(--control-active-bg);box-shadow:var(--control-active-shadow);color:var(--app-text)}.preview-stage{flex:1;justify-content:center;align-items:flex-start;min-height:0;padding:24px 18px 36px;display:flex;overflow:auto}.preview-scale{flex:none}.document-canvas{transform-origin:0 0;overflow-wrap:anywhere;word-break:break-word;border:0;flex:none;min-height:320px;padding:24px;box-shadow:0 20px 42px #20222029}.document-canvas--light{--doc-bg:var(--doc-light-bg);--doc-text:var(--doc-light-text);--doc-muted:var(--doc-light-muted);--doc-border:var(--doc-light-border);--doc-soft:var(--doc-light-soft);--doc-accent:var(--doc-light-accent);background:var(--doc-bg);color:var(--doc-text)}.document-canvas--dark{--doc-bg:var(--doc-dark-bg);--doc-text:var(--doc-dark-text);--doc-muted:var(--doc-dark-muted);--doc-border:var(--doc-dark-border);--doc-soft:var(--doc-dark-soft);--doc-accent:var(--doc-dark-accent);background:var(--doc-bg);color:var(--doc-text)}.document-canvas>:first-child{margin-top:0}.document-canvas>:last-child{margin-bottom:0}.document-canvas h1,.document-canvas h2,.document-canvas h3{color:var(--doc-text);letter-spacing:0;margin:1.2em 0 .58em;line-height:1.24}.document-canvas h1{font-size:calc(var(--doc-font-size) * 1.55)}.document-canvas h2{border-bottom:1px solid var(--doc-border);font-size:calc(var(--doc-font-size) * 1.28);padding-bottom:.32em}.document-canvas h3{font-size:calc(var(--doc-font-size) * 1.12)}.document-canvas p,.document-canvas li,.document-canvas table,.document-canvas blockquote{font-size:var(--doc-font-size)}.document-canvas p,.document-canvas ul,.document-canvas ol,.document-canvas blockquote,.document-canvas table,.document-canvas pre{margin:0 0 1em}.document-canvas p,.document-canvas li{line-height:1.75}.document-canvas ul,.document-canvas ol{padding-left:1.35em}.document-canvas li+li{margin-top:.28em}.document-canvas a{color:var(--doc-accent);text-underline-offset:3px;text-decoration:underline}.document-canvas blockquote{background:color-mix(in srgb, var(--doc-soft) 78%, var(--doc-bg));border-left:4px solid var(--doc-accent);color:var(--doc-muted);margin-left:0;margin-right:0;padding:12px 14px}.document-canvas code{background:var(--doc-soft);border:1px solid var(--doc-border);color:var(--doc-text);border-radius:5px;padding:.12em .34em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.92em}.document-canvas pre{background:var(--doc-soft);border:1px solid var(--doc-border);color:var(--doc-text);white-space:pre-wrap;border-radius:8px;padding:13px 14px;line-height:1.62;overflow:visible}.document-canvas pre code{overflow-wrap:anywhere;white-space:pre-wrap;word-break:break-word;background:0 0;border:0;border-radius:0;padding:0;display:block}.document-canvas table{border-collapse:collapse;table-layout:fixed;width:100%}.document-canvas th,.document-canvas td{border:1px solid var(--doc-border);overflow-wrap:anywhere;text-align:left;vertical-align:top;word-break:break-word;padding:9px 8px;line-height:1.55}.document-canvas th{background:var(--doc-soft);font-weight:750}.document-canvas hr{border:0;border-top:1px solid var(--doc-border);margin:1.35em 0}.document-canvas .hljs-keyword,.document-canvas .hljs-selector-tag,.document-canvas .hljs-built_in,.document-canvas .hljs-name{color:var(--doc-accent)}.document-canvas .hljs-string,.document-canvas .hljs-attr,.document-canvas .hljs-symbol,.document-canvas .hljs-bullet{color:#b45f3a}.document-canvas--dark .hljs-string,.document-canvas--dark .hljs-attr,.document-canvas--dark .hljs-symbol,.document-canvas--dark .hljs-bullet{color:#fbbf24}.document-canvas .hljs-comment,.document-canvas .hljs-quote{color:var(--doc-muted)}.toast{border:1px solid var(--app-border);letter-spacing:0;z-index:40;border-radius:8px;padding:10px 14px;font-size:14px;font-weight:650;position:fixed;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 14px 32px #00000029}.toast--success{color:#176b43;background:#f4fff8}.toast--error{color:#a24424;background:#fff7f3}.app--dark .toast--success{color:#9be0b6;background:#193026}.app--dark .toast--error{color:#f0a17b;background:#342019}@media (width<=920px){.workspace{grid-template-columns:1fr;height:auto;min-height:calc(100vh - 58px)}.markdown-input{min-height:340px}.preview-stage{max-height:none;overflow:visible}}@media (width>=921px){body{overflow:hidden}.app,.app .tool-shell{height:100vh;overflow:hidden}}@media (width<=560px){.workspace{padding-top:12px;padding-bottom:18px}.panel__header,.preview-toolbar{flex-direction:column;align-items:stretch}.export-actions{justify-content:stretch}.primary-button,.secondary-button{flex:1;min-width:0}.control-row{flex-direction:column;align-items:flex-start}.field-group{justify-content:space-between;width:100%}.preview-stage{padding-left:10px;padding-right:10px}.document-canvas{padding:22px}}
