:root{color-scheme:light;--bg:#f5f7fa;--panel:#fff;--surface:#f7f9fc;--text:#222b38;--secondary:#535f70;--muted:#7a8797;--border:#e2e7ee;--accent:#325dc9;--accent-soft:#edf2ff;--selection:#dce6fa;--active-line:#f1f5fb;--add:#177553;--add-bg:#eff8f2;--add-mark:#c8ead5;--remove:#b14158;--remove-bg:#fdf1f3;--remove-mark:#f5ccd5;--font-ui:-apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif;--font-code:"JetBrains Mono", "PingFang SC", "Microsoft YaHei", monospace;font-family:var(--font-ui);color:var(--text);background:var(--bg);font-synthesis:none;-webkit-font-smoothing:antialiased}:root[data-theme=dark]{color-scheme:dark;--bg:#171b22;--panel:#202631;--surface:#252d3a;--text:#e2e8f2;--secondary:#b0bccd;--muted:#8d9aac;--border:#343e4d;--accent:#91aaff;--accent-soft:#2c3857;--selection:#384a70;--active-line:#293343;--add:#75cfab;--add-bg:#253d36;--add-mark:#345c47;--remove:#f29db0;--remove-bg:#402d3b;--remove-mark:#653b4b}*{box-sizing:border-box}body{margin:0}button,select,input{font:inherit}button{color:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;gap:7px;display:inline-flex}button,select,.option{-webkit-tap-highlight-color:transparent}button:disabled{opacity:.38;cursor:default}button:not(:disabled):hover{background:var(--surface)}button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.cm-collapsedLines:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}button:active:not(:disabled){transform:translateY(1px)}svg{flex-shrink:0}.app-shell{flex-direction:column;height:100dvh;min-height:500px;padding:0 28px 20px;display:flex}.topbar{flex-shrink:0;align-items:center;gap:28px;min-height:86px;display:flex}.brand{align-items:center;gap:9px;padding-right:8px;display:flex}.brand h1{letter-spacing:-.5px;margin:0;font-size:23px;font-weight:750}.brand-period{color:var(--accent)}.brand-symbol{color:var(--accent);align-items:center;gap:1px;width:36px;height:34px;display:inline-flex}.layout-switch{border:1px solid var(--border);background:var(--surface);border-radius:8px;gap:3px;padding:4px;display:flex}.layout-switch button{color:var(--secondary);padding:8px 12px;font-size:12px;transition:background-color .15s,color .15s}.layout-switch button.selected{background:var(--panel);color:var(--text);box-shadow:0 1px 3px #14284710}.diff-navigation{align-items:center;gap:16px;margin-left:auto;display:flex}.nav-label{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:7px;font-size:12px;display:flex}.nav-label.has-diff{color:var(--secondary)}.nav-label strong{color:var(--accent);font-weight:650}.nav-slash{color:var(--muted);padding:0 1px}.nav-word{margin-left:1px}.status-dot{background:var(--muted);opacity:.7;border-radius:50%;width:6px;height:6px}.status-dot.success{background:var(--add)}.nav-buttons{gap:2px;display:flex}.icon-button{width:30px;height:30px;padding:0}.preferences{border-left:1px solid var(--border);align-items:center;gap:12px;padding-left:20px;display:flex}.select-control{color:var(--secondary);align-items:center;gap:5px;font-size:12px;display:flex;position:relative}.select-control select{appearance:none;color:var(--secondary);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:9px 16px 9px 0}.select-control>svg:last-child{pointer-events:none;position:absolute;right:0}.select-control option{background:var(--panel);color:var(--text)}.workspace{border:1px solid var(--border);background:var(--panel);border-radius:10px;flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden;box-shadow:0 3px 12px #263c5c03}.toolbar{border-bottom:1px solid var(--border);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;min-height:60px;padding:13px 20px;display:flex}.toolbar-actions{align-items:center;gap:14px;margin-left:auto;display:flex}.clear-button{min-height:34px;color:var(--secondary);padding:8px 10px;font-size:12px;transition:color .15s,background-color .15s}.clear-button.undo-clear{color:var(--accent);font-weight:550}.clear-button.undo-clear:hover{background:var(--accent-soft)}.options{flex-wrap:wrap;align-items:center;gap:22px;display:flex}.option{cursor:pointer;color:var(--secondary);white-space:nowrap;user-select:none;align-items:center;gap:7px;font-size:12px;display:flex}.option>svg{color:var(--muted)}.option input{appearance:none;border:1px solid var(--muted);background:var(--panel);cursor:pointer;border-radius:3px;flex-shrink:0;width:14px;height:14px;margin:0;position:relative}.option input:checked{background:var(--accent);border-color:var(--accent)}.option input:checked:after{content:"";border-right:1.5px solid var(--panel);border-bottom:1.5px solid var(--panel);width:3px;height:7px;position:absolute;top:1px;left:4px;transform:rotate(42deg)}.option.rule-active{color:var(--accent)}.toolbar-divider{background:var(--border);width:1px;height:16px;margin-left:-2px;margin-right:-2px}.format-button{background:var(--accent-soft);min-height:34px;color:var(--accent);padding:8px 12px;font-size:12px;font-weight:550}.format-button:disabled{opacity:.5}.format-button:hover:not(:disabled){background:var(--selection)}.pane-headers{border-bottom:1px solid var(--border);flex-shrink:0;grid-template-columns:1fr 1fr;display:grid}.pane-heading{justify-content:space-between;align-items:center;gap:16px;min-width:0;min-height:57px;padding:13px 18px;display:flex}.pane-heading+.pane-heading{border-left:1px solid var(--border)}.pane-info{flex-wrap:wrap;align-items:center;gap:6px 12px;min-width:0;display:flex}.pane-name{align-items:center;gap:9px;min-width:0;display:flex}.pane-stats{color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums;align-items:center;gap:9px;font-size:11px;display:flex}.pane-name h2{white-space:nowrap;margin:0;font-size:13px;font-weight:600}.side-sign{border-radius:5px;justify-content:center;align-items:center;width:21px;height:21px;font-weight:600;display:flex}.side-sign.a{background:var(--remove-bg);color:var(--remove)}.side-sign.b{background:var(--add-bg);color:var(--add)}.file-name{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:220px;font-size:11px;overflow:hidden}.pane-actions{flex-shrink:0;gap:12px;display:flex}.pane-actions button{color:var(--secondary);padding:5px 6px;font-size:11px;transition:color .15s,background-color .15s}.pane-actions button:not(:disabled):hover{color:var(--text)}.editor-area{flex:1;min-height:0;position:relative}.split-host,.unified-host{height:100%}.cm-mergeView{height:100%;overflow:auto}.cm-mergeViewEditors{min-height:100%}.cm-mergeViewEditor{min-width:0}.cm-mergeViewEditor+.cm-mergeViewEditor{border-left:1px solid var(--border)}.cm-mergeViewEditor .cm-editor{min-height:100%}.cm-mergeView .cm-scroller{overflow-x:auto}.unified-host>.cm-editor{height:100%}.unified-host .cm-scroller{overflow:auto}.cm-active-diff-chunk{box-shadow:inset 3.5px 0 0 var(--accent)!important}.cm-changedLine{background-color:var(--add-bg)}.cm-merge-a .cm-changedLine{background-color:var(--remove-bg)}.cm-insertedLine{background-color:var(--add-bg)}.cm-deletedLine,.cm-deletedChunk{background-color:var(--remove-bg)}.cm-deletedText{background-color:var(--remove-mark)!important}.cm-changedText{background-color:var(--add-mark)!important}.cm-merge-a .cm-changedText{background-color:var(--remove-mark)!important}.empty-overlays{pointer-events:none;grid-template-columns:1fr 1fr;display:grid;position:absolute;inset:0}.empty-cell{cursor:text;pointer-events:auto;justify-content:center;align-items:center;padding:28px;display:flex}.empty-state{text-align:center;user-select:none;max-width:100%;transform:translateY(-32px)}.empty-file{color:var(--muted);justify-content:center;align-items:center;width:54px;height:62px;margin-bottom:12px;display:inline-flex;position:relative}.empty-file>span{border:3px solid var(--panel);border-radius:6px;justify-content:center;align-items:center;width:20px;height:20px;display:flex;position:absolute;bottom:7px;right:1px}.empty-file .a{background:var(--remove-bg);color:var(--remove)}.empty-file .b{background:var(--add-bg);color:var(--add)}.empty-state h3{letter-spacing:-.3px;margin:0 0 10px;font-size:17px;font-weight:550}.empty-state p{color:var(--secondary);margin:0;font-size:12px;line-height:22px}.notice{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:10px;padding:8px 16px;font-size:12px;display:flex}.notice.error{background:var(--remove-bg);color:var(--remove)}.notice.success{background:var(--add-bg);color:var(--add)}.notice .icon-button{margin-left:auto}.readonly-bar{background:var(--surface);color:var(--secondary);border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:8px 18px;font-size:11px;display:flex}.readonly-bar button{color:var(--accent);margin-left:auto;padding:4px 6px;font-weight:550}.unified-empty{color:var(--muted);background:var(--panel);flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:13px;display:flex;position:absolute;inset:0}.drop-overlay{width:50%;color:var(--accent);background:var(--accent-soft);border:2px dashed var(--accent);pointer-events:none;z-index:10;backdrop-filter:blur(2px);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:15px;font-weight:550;display:flex;position:absolute;top:0;bottom:0}.drop-overlay.a{left:0}.drop-overlay.b{right:0}.file-input{display:none}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=1100px){.app-shell{padding:0 18px 16px}.topbar{gap:16px}.preferences{gap:8px;padding-left:12px}.options{gap:14px}.option>svg{display:none}.toolbar{gap:10px;padding:12px 16px}.nav-word{display:none}.pane-heading{gap:8px;padding:12px}}@media (width<=820px){.topbar{flex-wrap:wrap;gap:12px;padding:18px 0}.brand{margin-right:6px}.diff-navigation{order:4;justify-content:space-between;width:100%;margin-left:0}.preferences{border:0;margin-left:auto;padding:0}.toolbar{flex-wrap:wrap}.options{gap:16px}.pane-actions{gap:6px}.file-name{display:none}.pane-heading{flex-wrap:wrap;gap:8px}.empty-cell{padding:14px}.empty-state h3{font-size:15px}.empty-state p{font-size:11px}}@media (width<=540px){.app-shell{min-height:700px;padding:0 10px 10px}.topbar{column-gap:10px}.brand h1{font-size:23px}.layout-switch{order:3}.diff-navigation{order:3;gap:4px;width:auto;margin-left:auto}.nav-label{font-size:10px}.layout-switch button{gap:5px;padding:7px 8px;font-size:11px}.layout-switch svg{display:none}.options{row-gap:14px}.toolbar-divider{display:none}.option{font-size:11px}.pane-heading{padding:10px}.pane-info{gap:5px 8px}.pane-stats{gap:6px;font-size:10px}.pane-actions{justify-content:space-between;width:100%}.pane-actions button{font-size:10px}.empty-state{transform:translateY(-15px)}.empty-state h3{font-size:14px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}
