.app,.fm-app{--canvas: #14110e;--canvas-glow: #241f19;--paper: #f7f5f0;--sidebar: #efede7;--texture-dot: rgba(32, 30, 28, .04);--texture-dot-chrome: rgba(32, 30, 28, .02);--edge-highlight: inset 0 1px 0 rgba(255, 252, 247, .5);--elev-bar-down: 0 6px 20px -18px rgba(32, 30, 28, .42);--elev-bar-up: 0 -6px 18px -18px rgba(32, 30, 28, .34);--chrome-glass: rgba(247, 245, 240, .72);--chrome-blur: saturate(180%) blur(20px);--chrome-hairline: rgba(32, 30, 28, .07);--text-primary: #201d19;--text-body: #38332c;--text-secondary: #5a544a;--text-muted: #6f6a62;--text-faint: #a7a199;--text-disabled: #c6c1b9;--text-interactive: #6b675f;--border-subtle: rgba(32, 30, 28, .08);--border-strong: rgba(32, 30, 28, .14);--accent: #6e1f2c;--accent-soft: rgba(110, 31, 44, .09);--selection: rgba(26, 115, 232, .22);--selection-focused: rgba(26, 115, 232, .32);--mark-highlight: rgba(255, 205, 80, .42);--ok-dot: #435233;--gold: #b08d4f;--popover-glass: rgba(249, 247, 242, .86);--popover-blur: saturate(180%) blur(24px);--tooltip-bg: rgba(30, 27, 24, .94);--tooltip-text: #f4f1ea;--tooltip-hint: rgba(244, 241, 234, .58);--danger: #a5342a;--danger-soft: rgba(165, 52, 42, .09);--danger-strong: rgba(165, 52, 42, .16);--diff-add-bg: rgba(67, 82, 51, .14);--diff-add-text: #2f4022;--diff-del-bg: rgba(165, 52, 42, .12);--diff-del-text: #7d2b23;--fs-scale: 1;--fs-hero: calc(52px * var(--fs-scale));--fs-h2: calc(21px * var(--fs-scale));--fs-h3: calc(18px * var(--fs-scale));--fs-h4: calc(16px * var(--fs-scale));--fs-h5: calc(15px * var(--fs-scale));--fs-body-lg: calc(15.5px * var(--fs-scale));--fs-body: calc(15px * var(--fs-scale));--fs-source: calc(13.5px * var(--fs-scale));--fs-code: calc(13px * var(--fs-scale));--fs-ui: 13px;--fs-ui-sm: 12.5px;--fs-caption: 11px;--fs-label: 11px;--sidebar-w: 240px;--outline-w: 220px;--bar-h: 52px;--traffic-space: 62px;--statusbar-h: 30px;--content-max: 700px;--source-max: 660px;--radius-window: 20px;--radius-panel: 10px;--gap-section: 24px;--gap-item: 8px;--dur-fast: .12s;--dur-base: .2s;--dur-enter: .42s;--dur-panel: .24s;--ease-out: cubic-bezier(.22, 1, .36, 1);--focus-ring: 0 0 0 2px var(--paper), 0 0 0 4px var(--accent);color-scheme:light;color:var(--text-primary)}@layer fm-app-base{.app button,.fm-app button{font-family:inherit;border:none;background:none;padding:0;color:inherit;cursor:pointer}.app button:focus-visible,.fm-app button:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:4px}}:is(.app,.fm-app) ::-webkit-scrollbar{width:10px;height:10px}:is(.app,.fm-app) ::-webkit-scrollbar-thumb{background:#20180e2e;border-radius:5px;border:3px solid transparent;background-clip:padding-box}:is(.app,.fm-app) ::-webkit-scrollbar-thumb:hover{background:#20180e4d;background-clip:padding-box}:is(.app,.fm-app) ::-webkit-scrollbar-track{background:transparent}@supports not selector(::-webkit-scrollbar){:is(.app,.fm-app) *{scrollbar-width:thin;scrollbar-color:rgba(32,24,14,.22) transparent}}.demo{position:relative;margin:0;border:1px solid var(--border-subtle);border-radius:12px;background:var(--paper);box-shadow:var(--shadow-card);overflow:hidden;transform:translateZ(0)}.fm-app{font-family:var(--font-ui)}.demo-bar{display:flex;align-items:center;gap:6px;height:34px;padding:0 13px;border-bottom:1px solid var(--border-subtle);background:color-mix(in srgb,var(--sidebar) 70%,var(--paper))}.demo-bar i{width:9px;height:9px;border-radius:50%;flex:none}.demo-bar i:nth-child(1){background:#ec6a5e}.demo-bar i:nth-child(2){background:#f4bf4f}.demo-bar i:nth-child(3){background:#61c454}.demo-bar b{margin-left:10px;font-family:var(--font-ui);font-size:11.5px;font-weight:500;color:var(--text-muted)}.demo-bar .k{margin-left:auto;font-family:var(--font-mono);font-size:10.5px;color:var(--text-faint)}.plate-box{margin-top:36px}.cap{font-size:13px;line-height:1.8;color:var(--text-muted);margin-top:22px;max-width:21em;margin-left:auto}.cap code{color:var(--text-secondary)}.plate{display:block;font-family:var(--font-ui);font-size:11px;letter-spacing:.14em;color:var(--accent);margin-bottom:5px}.demo-paper{height:232px;display:flex;overflow:hidden;background-color:var(--paper);background-image:radial-gradient(var(--texture-dot) 1px,transparent 1px);background-size:4px 4px}.demo-paper .cm-live-editor-wrap{flex:1;min-width:0}.demo-paper .cm-live-editor-wrap{--content-max: 560px}.demo-paper .cm-live-editor-wrap .cm-scroller{padding:18px 26px 20px}.fm-app .cm-editor:focus-visible,.fm-app .cm-content:focus-visible{box-shadow:none;border-radius:0}.demo-fallback{margin:0;padding:20px 24px;font-family:var(--font-mono);font-size:12.5px;line-height:1.9;color:var(--text-muted);white-space:pre-wrap}.demo-hint{display:flex;align-items:center;gap:7px;padding:9px 14px;border-top:1px solid var(--border-subtle);background:color-mix(in srgb,var(--sidebar) 55%,var(--paper));font-family:var(--font-ui);font-size:11.5px;color:var(--text-muted)}.demo-hint svg{width:13px;height:13px;flex:none;color:var(--accent)}.demo-hint kbd{font-family:var(--font-mono);font-size:11px;padding:1px 5px;border:1px solid var(--border-subtle);border-radius:4px;color:var(--text-secondary);background:color-mix(in srgb,var(--sidebar) 50%,transparent)}.demo-play{margin-left:auto;flex:none;font-family:var(--font-ui);font-size:11.5px;padding:4px 10px;border:1px solid var(--border-strong);border-radius:6px;background:none;color:var(--text-secondary);cursor:pointer;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)}.demo-play:hover{color:var(--text-primary);border-color:var(--text-faint);background:var(--accent-soft)}.demo-play[data-playing="1"]{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,transparent);background:var(--accent-soft)}.d-link-row{display:flex;min-height:0}.d-link-row .demo-paper{flex:1;min-width:0}.d-link-row .backlinks-panel{height:232px}.d-link-row .backlinks-body{padding-top:14px;padding-bottom:14px}.d-modal,.d-approve{border:none;border-radius:0;background:none;box-shadow:none;overflow:visible}.d-modal .history-modal,.d-modal .wechat-modal{width:100%;max-width:none;max-height:none;animation:none}.d-modal .history-modal{height:348px}.d-modal .wechat-modal{height:524px}.d-modal .wechat-theme-check{visibility:hidden}.d-modal .wechat-theme.is-active .wechat-theme-check{visibility:visible}.history-pane,.d-modal .wechat-paper{display:none}.history-pane.is-active{display:flex;flex-direction:column;min-height:0;flex:1}.d-modal .wechat-paper.is-active{display:block}.history-pane .history-diff{flex:1;min-height:0}.d-agent{max-width:468px;border:none;border-radius:0;background:none;box-shadow:none;overflow:visible}.ag-panel{display:flex;flex-direction:column;border:1px solid var(--border-subtle);border-radius:12px;background:var(--paper);box-shadow:var(--shadow-card);overflow:hidden;font-family:var(--font-content)}.ag-head{display:flex;align-items:center;gap:4px;height:var(--bar-h);flex-shrink:0;padding:0 8px;background:var(--chrome-glass);border-bottom:1px solid var(--chrome-hairline);box-shadow:var(--elev-bar-down)}.ag-title{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:var(--text-primary);padding-left:4px}.ag-title svg{width:16px;height:16px;color:var(--accent)}.ag-sp{flex:1}.ag-ico{display:grid;place-items:center;width:24px;height:24px;border-radius:6px;color:var(--text-muted)}.ag-ico svg{width:15px;height:15px}.ag-stream{height:336px;display:flex;flex-direction:column;justify-content:flex-end;gap:8px;padding:14px 12px 16px;overflow:hidden;mask-image:linear-gradient(180deg,transparent 0,#000 40px);-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 40px)}.ag-row{display:flex}.ag-row.is-user{justify-content:flex-end}.ag-msg{max-width:88%;border-radius:12px;padding:6px 10px;font-size:13px;line-height:1.62;background:var(--accent-soft);color:var(--text-primary)}.ag-msg.is-bot{background:var(--sidebar);color:var(--text-body)}.ag-msg{font-variant-east-asian:proportional-width}.ag-msg b{font-weight:600;color:var(--text-primary)}.ag-msg code{font-family:var(--font-mono);font-size:11.5px;background:color-mix(in srgb,var(--text-primary) 6%,transparent);border-radius:4px;padding:1px 4px}.ag-tool{display:flex;align-items:center;gap:8px;max-width:88%;padding:4px 10px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--paper)}.ag-tool-i svg{width:14px;height:14px;display:block;color:var(--text-muted)}.ag-verb{flex:none;font-size:12px;font-weight:500;color:var(--text-primary)}.ag-target{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono);font-size:11.5px;color:var(--text-muted)}.ag-dot{width:6px;height:6px;flex:none;border-radius:50%;background:var(--accent)}.ag-check{color:var(--ok)}.ag-dot{display:none}.ag-check svg{width:14px;height:14px;display:block}.ag-foot{border-top:1px solid var(--border-subtle);padding:8px 12px 12px}.ag-ctx{display:flex;align-items:center;gap:8px;margin-bottom:8px}.ag-file{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--accent-soft);background:color-mix(in srgb,var(--accent-soft) 60%,transparent);border-radius:6px;padding:3px 8px 3px 6px;font-size:11px;font-weight:500;color:color-mix(in srgb,var(--text-primary) 80%,transparent)}.ag-file svg{width:12px;height:12px;color:var(--accent)}.ag-usage{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--text-faint);font-variant-numeric:tabular-nums}.ag-ring{width:12px;height:12px;flex:none;border-radius:50%;background:conic-gradient(var(--text-faint) 22%,var(--border-subtle) 0);mask:radial-gradient(circle,transparent 45%,#000 47%);-webkit-mask:radial-gradient(circle,transparent 45%,#000 47%)}.ag-input{border:1px solid var(--border-strong);border-radius:12px;background:var(--paper);padding:8px 10px}.ag-ph{display:block;min-height:2.7em;font-size:13px;line-height:1.625;color:var(--text-faint)}.ag-bar{display:flex;align-items:center;gap:8px;margin-top:4px}.ag-bar{line-height:1.5}.ag-mode{flex:none;border-radius:6px;background:var(--accent-soft);padding:2px 8px;font-size:12px;font-weight:500;color:var(--accent)}.ag-model{display:inline-flex;align-items:center;gap:6px;min-width:0;font-size:12px;font-weight:500;color:color-mix(in srgb,var(--text-primary) 80%,transparent)}.ag-model svg{width:14px;height:14px;flex:none;color:var(--text-muted);fill:currentColor}.ag-effort{flex:none;font-size:12px;color:var(--text-muted)}.ag-send{display:grid;place-items:center;width:28px;height:28px;flex:none;color:var(--text-muted)}.ag-send svg{width:16px;height:16px}.d-agent.is-playing .ag-row{display:none}.d-agent.is-playing .ag-row.is-shown{display:flex;animation:ag-in .45s var(--ease-out) both}.d-agent.is-playing .ag-row.is-gone{display:none}.d-agent:not(.is-playing) .ag-row.is-applied{display:none}.d-agent.is-playing .ag-row.is-shown .ag-dot{display:block;animation:ag-pulse 1s steps(1) infinite,ag-dot-out .01s linear 1.5s forwards}.d-agent.is-playing .ag-row.is-shown .ag-check{display:block;animation:ag-check-in .01s linear 1.5s backwards}.d-agent .ag-row.is-pressing .ap-btn.is-apply{animation:ag-press .36s var(--ease-out) both}@keyframes ag-press{0%,to{transform:none;box-shadow:none}40%{transform:scale(.94);box-shadow:0 0 0 4px var(--accent-soft)}}@keyframes ag-card-out{to{opacity:0;transform:translateY(-6px);max-height:0;margin-top:-8px}}@keyframes ag-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes ag-pulse{0%,49%{opacity:1}50%,to{opacity:.28}}@keyframes ag-dot-out{to{opacity:0;width:0;margin-left:-8px}}@keyframes ag-check-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.d-agent.is-playing .ag-row,.d-agent.is-playing .ag-dot,.d-agent.is-playing .ag-check{animation:none}.d-agent.is-playing .ag-dot{display:none}}.ap-card{width:100%;max-width:440px;box-shadow:var(--shadow-card);overflow:hidden;border-radius:12px;border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);background:var(--paper)}.ap-head{display:flex;align-items:center;gap:6px;padding:6px 10px;border-bottom:1px solid var(--border-subtle);background:var(--accent-soft)}.ap-label{border-radius:4px;background:color-mix(in srgb,var(--accent) 12%,transparent);padding:2px 6px;font-size:10px;font-weight:500;color:var(--accent)}.ap-path{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--text-primary)}.ap-diff{margin:0;max-height:224px;overflow:auto;padding:8px 0;font-family:var(--font-mono);font-size:11.5px;line-height:1.625}.ap-lines{width:max-content;min-width:100%}.ap-line{padding:0 10px}.ap-line.is-add{background:var(--diff-add-bg);color:var(--diff-add-text)}.ap-line.is-del{background:var(--diff-del-bg);color:var(--diff-del-text)}.ap-line.is-skip{color:var(--text-faint)}.ap-line.is-ctx{color:var(--text-muted)}.ap-act{display:flex;align-items:center;justify-content:flex-end;gap:6px;padding:6px 10px;border-top:1px solid var(--border-subtle)}.ap-btn{display:flex;align-items:center;gap:4px;height:28px;padding:0 10px;border:none;border-radius:6px;background:none;font-family:inherit;font-size:12px;color:var(--text-muted)}.ap-btn.is-apply{background:var(--accent);color:var(--paper);font-weight:500}.ap-btn svg{width:14px;height:14px}@media(max-width:900px){.cap{margin-left:0;max-width:none}.plate-box{margin-top:28px}.d-link-row{display:block}.d-link-row .backlinks-panel{height:auto;width:100%;border-left:none;border-top:1px solid var(--border-subtle)}.demo-paper{height:200px}.d-modal{padding:14px}.d-modal{overflow-x:auto;overscroll-behavior-x:contain}.d-modal .history-modal,.d-modal .wechat-modal{width:680px}.d-modal .history-modal{height:380px}.d-modal .wechat-modal{height:440px}}.d-draw .demo-paper{height:500px}@media(max-width:900px){.d-draw .demo-paper{height:420px}}.d-split .demo-paper{height:330px}.demo-paper.is-split .split-view{flex:1;min-width:0}.demo-paper.is-split .source-editor .cm-scroller{padding-top:14px;padding-bottom:16px}@media(max-width:760px){.d-split .demo-paper{height:420px}.demo-paper.is-split .split-view{flex-direction:column}.demo-paper.is-split .split-source{width:100%!important;height:45%}.demo-paper.is-split .split-divider{width:auto;height:7px;cursor:row-resize}}.cap-btn{margin-left:8px;font-family:var(--font-ui);font-size:11.5px;padding:2px 9px;border:1px solid var(--border-strong);border-radius:6px;background:none;color:var(--text-secondary);cursor:pointer;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)}.cap-btn:hover{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,transparent);background:var(--accent-soft)}.backlinks-panel{width:var(--outline-w);flex-shrink:0;display:flex;flex-direction:column;background-color:var(--paper);background-image:radial-gradient(circle at 1px 1px,var(--texture-dot) 1px,transparent 1.5px);background-size:4px 4px;border-right:1px solid var(--border-subtle);box-shadow:3px 0 14px #20180e14;position:relative;z-index:6;overflow:hidden;animation:fm-outline-in .34s var(--ease-out)}.backlinks-panel.is-closing{animation:fm-outline-out .28s var(--ease-out) forwards}.backlinks-body{flex:1;overflow-y:auto;width:var(--outline-w);padding:calc(var(--bar-h) + 16px) 12px calc(var(--statusbar-h) + 28px);display:flex;flex-direction:column;gap:2px}.backlinks-header{display:flex;align-items:baseline;gap:6px;padding:0 10px 8px}.backlinks-title{font-family:var(--font-ui);font-size:var(--fs-label);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.backlinks-count{font-family:var(--font-ui-mono);font-size:10.5px;color:var(--text-faint)}.backlinks-empty{padding:4px 10px}.backlinks-empty-title{font-size:12.5px;color:var(--text-muted)}.backlinks-empty-hint{margin-top:4px;font-size:11.5px;line-height:1.5;color:var(--text-faint)}.backlinks-group{display:flex;flex-direction:column;gap:1px;margin-top:12px}.backlinks-group:first-of-type{margin-top:0}.backlinks-source{display:flex;align-items:center;gap:6px;width:100%;min-height:26px;padding:3px 10px;border-radius:6px;font-size:12.5px;font-weight:600;color:var(--text-primary);text-align:start;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.backlinks-source-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backlinks-source-count{flex-shrink:0;font-family:var(--font-ui-mono);font-size:10px;color:var(--text-faint)}.backlinks-context{width:100%;padding:3px 10px 4px 18px;border-radius:6px;font-family:var(--font-content, var(--font-ui));font-size:11.5px;line-height:1.55;color:var(--text-muted);text-align:start;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.backlinks-context:hover{color:var(--text-body)}.history-backdrop{position:fixed;inset:0;z-index:1200;display:flex;justify-content:center;align-items:flex-start;padding-top:10vh;background:#14110e73;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:fm-fade-in var(--dur-fast) var(--ease-out)}.history-modal{width:820px;max-width:calc(100vw - 48px);height:560px;max-height:80vh;display:flex;flex-direction:column;background:var(--popover-glass);backdrop-filter:var(--popover-blur);-webkit-backdrop-filter:var(--popover-blur);border:1px solid var(--border-strong);border-radius:12px;box-shadow:0 24px 48px -12px #14110e61,0 4px 12px #14110e1f,inset 0 1px #fff9;overflow:hidden;animation:fm-spotlight-in .2s cubic-bezier(.16,1,.3,1);font-family:var(--font-ui)}.history-header{display:flex;align-items:center;gap:9px;padding:13px 14px 13px 16px;border-bottom:1px solid var(--border-subtle);background:#ffffff40}.history-icon{display:flex;color:var(--accent)}.history-icon svg{width:17px;height:17px}.history-title{font-size:13.5px;font-weight:600;color:var(--text-primary)}.history-subtitle{flex:1;min-width:0;font-size:var(--fs-caption);color:var(--text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:end}.history-scope{display:flex;gap:2px;padding:2px;border-radius:7px;background:#201e1c0f}.history-scope-btn{height:21px;padding:0 10px;border-radius:5px;font-family:var(--font-ui);font-size:11.5px;color:var(--text-secondary);white-space:nowrap;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.history-scope-btn:hover{color:var(--text-primary)}.history-scope-btn.is-active{background:var(--popover-glass, rgba(255, 255, 255, .85));color:var(--accent);box-shadow:0 1px 2px #14110e1a}.history-close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;color:var(--text-interactive);transition:background-color var(--dur-fast) var(--ease-out)}.history-close:hover{background:#201e1c0f;color:var(--text-primary)}.history-close svg{width:14px;height:14px}.history-body{flex:1;min-height:0;display:flex}.history-list{width:208px;flex-shrink:0;overflow-y:auto;padding:8px;border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:2px}.history-item{display:flex;flex-direction:column;align-items:flex-start;gap:1px;width:100%;padding:6px 10px;border-radius:7px;text-align:start;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.history-item.is-active{background:var(--accent-soft)}.history-item-time{font-size:12.5px;font-weight:500;color:var(--text-primary)}.history-item.is-active .history-item-time{color:var(--accent)}.history-item-size{font-family:var(--font-ui-mono);font-size:10.5px;color:var(--text-faint)}.history-item-meta{max-width:100%;font-size:10.5px;color:var(--text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-files{flex-shrink:0;max-height:132px;overflow-y:auto;padding:6px;display:flex;flex-direction:column;gap:1px;border-bottom:1px solid var(--border-subtle)}.history-file{display:flex;align-items:baseline;gap:8px;width:100%;padding:4px 8px;border-radius:6px;text-align:start;transition:background-color var(--dur-fast) var(--ease-out)}.history-file.is-active{background:var(--accent-soft)}.history-file-status{flex-shrink:0;font-size:10px;color:var(--text-faint)}.history-file-status.is-added{color:var(--diff-add-text)}.history-file-status.is-removed{color:var(--diff-del-text)}.history-file-path{display:flex;min-width:0;font-size:12px;white-space:nowrap}.history-file-dir{min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--text-faint)}.history-file-name{flex-shrink:0;color:var(--text-secondary)}.history-file.is-active .history-file-name{color:var(--text-primary)}.history-inline-btn{display:flex;align-items:center;gap:4px;flex-shrink:0;height:22px;padding:0 8px;border-radius:6px;font-family:var(--font-ui);font-size:11.5px;color:var(--text-interactive);transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.history-inline-btn:hover{background:#201e1c12;color:var(--accent)}.history-inline-btn svg{width:12px;height:12px}.history-inline-btn:disabled{opacity:.45;pointer-events:none}.history-preview{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.history-preview-hint{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:5px 8px 5px 14px;min-height:32px;border-bottom:1px solid var(--border-subtle);font-size:var(--fs-caption);color:var(--text-muted)}.history-empty{padding:16px;font-size:12.5px;color:var(--text-faint)}.history-diff{flex:1;margin:0;padding:10px 0;overflow:auto;font-family:var(--font-ui-mono);font-size:11.5px;line-height:1.65;white-space:pre}.history-diff-line{padding:0 14px}.history-diff-line.is-add{background:var(--diff-add-bg);color:var(--diff-add-text)}.history-diff-line.is-del{background:var(--diff-del-bg);color:var(--diff-del-text)}.history-diff-line.is-skip{color:var(--text-faint)}.history-diff-line.is-ctx{color:var(--text-secondary)}.history-footer{display:flex;justify-content:flex-end;gap:8px;padding:11px 14px;border-top:1px solid var(--border-subtle);background:#fff3}.history-btn{height:28px;padding:0 14px;border:1px solid var(--border-strong);border-radius:7px;font-family:var(--font-ui);font-size:12.5px;color:var(--text-body);background:#fff;box-shadow:inset 0 1px #fffc,0 1px 2px #1e1c190f;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out)}.history-btn:hover{border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:var(--accent-soft);color:var(--accent)}.history-btn.is-primary{border-color:var(--accent);background:var(--accent);color:#f7f5f0}.history-btn.is-primary:hover{border-color:#5d1a25;background:#5d1a25;color:#fff}.history-btn:disabled{opacity:.45;pointer-events:none}
