:root{--ink:#243b33;--muted:#7a8780;--green:#315e4d;--line:#e4e8e2;--paper:#fff;--bg:#f6f7f3;--soft:#eef3ed;--amber:#a77330;--mono:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--bg);font-size:14px;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.4;cursor:default}a{color:inherit;text-decoration:none}[hidden]{display:none!important}button:focus-visible,a:focus-visible,label:focus-visible{outline:3px solid #8bbba7;outline-offset:3px}.topbar{height:84px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(38px,calc((100vw - 1370px)/2))}.brand{display:flex;align-items:center;gap:13px;font-size:18px;font-weight:650;letter-spacing:.3px}.brand small{display:block;font-size:10px;font-weight:400;color:var(--muted);margin-top:5px;letter-spacing:1px}.brand-icon{display:grid;place-items:center;width:39px;height:43px;background:var(--green);color:#fff;border-radius:7px 13px 7px 7px;font-family:Georgia,serif;font-size:23px;position:relative}.brand-icon>span{font-family:var(--mono);font-size:15px;position:absolute;right:-5px;bottom:-3px;background:#f0f4ed;color:var(--green);border-radius:4px;padding:0 3px}.top-actions{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:12px}.privacy-dot{width:6px;height:6px;background:#6d9875;border-radius:50%}.icon-button{background:none;border:1px solid var(--line);border-radius:50%;width:27px;height:27px;color:var(--muted);margin-left:15px}.icon-button:hover{background:var(--soft)}main{max-width:1370px;margin:auto;padding:42px 38px 20px}.intro{display:flex;align-items:center;justify-content:space-between;margin-bottom:33px}.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:2px;color:var(--green);margin:0 0 12px}h1{font-size:31px;letter-spacing:1px;font-weight:620;margin:0 0 13px}.intro-copy{color:var(--muted);margin:0;font-size:13px;line-height:1.8}.intro-note{display:flex;align-items:center;gap:13px;font-size:12px;color:#5c7164;padding-right:5px}.intro-note small{display:block;font-size:10px;color:var(--muted);margin-top:6px;letter-spacing:.5px}.small-symbol{font-family:Georgia,serif;font-size:31px;color:#a4b5a8}.workspace{display:grid;grid-template-columns:290px minmax(0,1fr);gap:22px;align-items:start}.sidebar{display:flex;flex-direction:column;gap:17px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:0 3px 12px #25423703}.source-panel,.settings-panel{padding:22px}.panel-label{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:1.1px;color:#768779;font-weight:600}.pill{background:#f2f4ee;color:#8a978d;padding:3px 6px;border-radius:4px;font-size:10px;letter-spacing:0}.dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:181px;padding:17px 10px;margin-top:19px;background:#fafbf8;border:1px dashed #cbd7cb;border-radius:8px;cursor:pointer;transition:.15s}.dropzone:hover,.dropzone.dragover{background:#eef4ed;border-color:#6e9a81}.dropzone strong{font-size:13px;font-weight:500;margin:14px 0 7px;word-break:break-all;line-height:1.6}.dropzone>span:last-child{font-size:10px;color:var(--muted);line-height:1.7}.upload-icon{height:36px;color:#748c78}.upload-icon svg{width:36px;height:36px;stroke:currentColor;stroke-width:1.3}.text-button{border:none;background:none;color:var(--green);font-size:11px;padding:0;margin-top:15px}.text-button span{margin-left:8px}.compact{margin:0;font-size:10px}.field{display:flex;flex-direction:column;gap:8px;margin-top:18px;font-size:11px;color:#5d6d63}.field input,.field select{width:100%;height:37px;border:1px solid var(--line);border-radius:6px;padding:0 10px;color:var(--ink);background:#fff;outline:none;font-size:12px}.field input::placeholder{color:#a5aea7}.field input:focus,.field select:focus{border-color:#7b9e89;box-shadow:0 0 0 2px #7b9e8915}.field input:disabled{background:#fcfcfa}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:6px;padding:10px 14px;font-size:11px;font-weight:500;white-space:nowrap;border:1px solid transparent;transition:background .15s}.button.secondary{border-color:#dce3dc;background:#fff;color:#5e7165}.button.secondary:hover:not(:disabled){background:#f2f6ef}.button.primary{background:var(--green);color:#fff}.button.primary:hover:not(:disabled){background:#244b3c}.full{width:100%}.settings-panel>.button{margin-top:22px}.settings-note{font-size:10px;color:#99a29b;margin:10px 0 0;line-height:1.7}.local-note{display:flex;align-items:flex-start;gap:10px;padding:0 9px;color:#85968a}.local-note svg{width:19px;height:19px;stroke:#8a9e8e;stroke-width:1.2;margin-top:3px;flex-shrink:0}.local-note p{font-size:10px;margin:0;line-height:1.9}.main-panel{overflow:hidden;min-height:735px;display:flex;flex-direction:column}.result-header{padding:24px 27px 20px;display:flex;align-items:center;justify-content:space-between;gap:10px}.result-header h2{font-size:20px;font-weight:550;margin:10px 0 0}.export-actions{display:flex;gap:9px}.stats{margin:0 27px 22px;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:7px;background:#fcfdfa;padding:15px 0}.stats>div{display:flex;flex-direction:column;align-items:center;gap:6px;border-right:1px solid var(--line)}.stats>div:last-child{border:0}.stats span{font-size:22px;font-family:var(--mono);color:#526e5d;font-weight:450;line-height:1.2}.stats small{font-size:10px;color:#8b998e}.tabs{display:flex;align-items:center;gap:25px;padding:0 27px;border-bottom:1px solid var(--line);height:47px;flex-shrink:0}.tab{background:none;border:0;font-size:11px;color:#8b978e;padding:14px 0;height:47px;position:relative}.tab.active{color:var(--green);font-weight:600}.tab.active:after{content:"";position:absolute;height:2px;bottom:-1px;left:0;right:0;background:var(--green)}.tab span:not(:empty){display:inline-block;font-size:9px;font-family:var(--mono);padding:1px 4px;background:#eef2ec;color:#788b7b;border-radius:4px;margin-left:3px}#editorState{font-size:9px;color:#a4ada6;margin-left:auto}.tab-content{flex:1;min-height:450px}.empty-state{height:450px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.empty-state h3{font-size:17px;font-weight:500;margin:23px 0 10px;color:#64776a}.empty-state p{font-size:12px;color:#97a399;line-height:1.9;margin:0}.empty-tags{display:flex;gap:8px;margin-top:23px}.empty-tags span{border:1px solid #e7ece5;color:#a0ada2;font-size:9px;padding:5px 9px;border-radius:4px}.paper-illustration{height:128px;width:146px;position:relative}.paper-back{position:absolute;inset:0 0 9px 26px;background:#eff3ec;border:1px solid #e2e8df;border-radius:6px;transform:rotate(10deg)}.paper-front{position:absolute;inset:6px 15px 0 12px;background:#fff;border:1px solid #dde6d9;border-radius:6px;transform:rotate(-5deg);padding:20px 13px;box-shadow:0 7px 12px #3e63390a}.paper-front span{font-family:var(--mono);font-size:10px;color:#84a089;display:block}.paper-front i{display:block;width:80%;height:3px;background:#e8eee5;margin:9px 0}.paper-front i:nth-child(3),.paper-front i:last-child{width:59%}.paper-front .paper-equation{font-size:13px;text-align:center;margin:11px 0 7px;color:#92a88e;font-family:Georgia,serif}.paper-check{position:absolute;right:0;bottom:4px;color:#668666;border:3px solid #fff;background:#e3eddc;width:29px;height:29px;border-radius:50%;display:grid;place-items:center;font-size:14px}#texEditor{width:100%;height:490px;resize:vertical;border:none;outline:none;background:#fdfefb;padding:24px 27px;line-height:1.8;font-family:var(--mono);font-size:12px;color:#3e5b49;tab-size:4;min-height:320px}.editor-footer{display:flex;align-items:center;justify-content:space-between;padding:13px 25px;border-top:1px solid var(--line);font-size:9px;color:#9ca79e;gap:10px}.page-footer{display:flex;justify-content:space-between;color:#a2ada4;font-size:10px;margin:24px 0 0;letter-spacing:.5px}.page-footer span{font-family:var(--mono);font-size:9px}.progress-wrap{margin-top:18px}.progress-track{height:3px;background:#e8eee5;border-radius:4px;overflow:hidden}#progressBar{height:3px;width:0%;background:#628b6a;transition:width .3s}#progressText{font-size:10px;color:#7c9180;line-height:1.6;margin:8px 0 0}.file-error{font-size:11px;color:#b45a43;line-height:1.8;margin-top:12px}.tab-description{display:flex;justify-content:space-between;align-items:center;padding:17px 23px;background:#fafbf8;gap:15px;border-bottom:1px solid var(--line)}.tab-description p{font-size:11px;line-height:1.8;color:#88998c;margin:0}.list-empty{text-align:center;color:#a0aca3;font-size:12px;padding:80px 20px}.heading-list{max-height:440px;overflow:auto;padding:8px 23px}.heading-row{display:grid;grid-template-columns:30px minmax(0,1fr) 110px 72px;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #edf0ea}.heading-num{color:#9faea1;font-family:var(--mono);font-size:10px}.heading-title{font-size:12px;line-height:1.6;color:#415e4c}.heading-title small{display:block;font-size:9px;color:#9ba99e;margin-top:4px}.heading-row select{font-size:10px;height:31px;padding:0 5px;border:1px solid var(--line);border-radius:5px;background:#fff;color:#62786a;max-width:100%}.heading-row .text-button{margin:0;font-size:10px}.warning-dot{color:var(--amber)}.issue-filters{padding:12px 23px;display:flex;gap:9px;border-bottom:1px solid #edf0ea}.issue-filters button{font-size:10px;background:none;color:#89998d;border:1px solid transparent;border-radius:5px;padding:5px 10px}.issue-filters button.active{color:var(--green);background:#edf3e9;border-color:#e2ebde}.issue-list{max-height:410px;overflow:auto;padding:5px 23px}.issue-row{display:flex;gap:12px;align-items:flex-start;padding:14px 0;border-bottom:1px solid #edf0ea}.issue-icon{width:24px;height:24px;display:grid;place-items:center;background:#f3f2e9;border-radius:5px;color:#a58c55;font-size:11px;flex-shrink:0}.issue-body{flex:1;min-width:0}.issue-body strong{font-size:11px;font-weight:500;line-height:1.7;display:block;color:#66745e}.issue-body p{font-size:10px;line-height:1.7;color:#9aa79b;margin:5px 0 0}.issue-row .text-button{flex-shrink:0;margin-top:4px}.toast{position:fixed;bottom:27px;left:50%;transform:translateX(-50%);padding:12px 20px;background:#294d3f;color:#fff;border-radius:8px;box-shadow:0 8px 25px #24443222;font-size:12px;z-index:10}dialog{border:1px solid var(--line);border-radius:13px;padding:28px;max-width:470px;width:calc(100% - 35px);color:var(--ink);box-shadow:0 20px 70px #23443330}dialog::backdrop{background:#26382b45;backdrop-filter:blur(3px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.dialog-header h2{font-size:19px;font-weight:550;margin:0}dialog ol{padding-left:20px;font-size:12px;color:#748477;line-height:2}dialog p{font-size:11px;color:#8e9a90;line-height:1.9}dialog .full{margin-top:15px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.modal-field{margin:15px 0}.modal-field select{max-width:100%;width:100%;padding:10px;border:1px solid var(--line);border-radius:6px;font-size:12px;background:white}.modal-field input{width:100%;padding:10px;border:1px solid var(--line);border-radius:6px}#editHeadingDialog .dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}
@media(min-width:1600px){main{padding-top:52px}.main-panel{min-height:780px}#texEditor{height:535px}.empty-state{height:495px}}@media(max-width:1050px){.workspace{grid-template-columns:250px minmax(0,1fr);gap:16px}main{padding:30px 22px}.source-panel,.settings-panel{padding:18px}.tabs{gap:15px;padding:0 20px}#editorState{display:none}.result-header{padding:20px}.stats{margin-left:20px;margin-right:20px}.heading-row{grid-template-columns:22px minmax(0,1fr) 87px}.heading-row>.text-button{grid-column:2;text-align:left}.intro-note{display:none}.topbar{padding:0 25px}}@media(max-width:740px){.topbar{height:69px;padding:0 18px}.brand{font-size:16px}.brand small{font-size:9px}.top-actions>span:not(.privacy-dot){display:none}main{padding:28px 16px 15px}.intro{margin-bottom:24px}h1{font-size:26px}.intro-copy{font-size:11px}.workspace{display:flex;flex-direction:column;gap:18px}.sidebar{width:100%;display:grid;grid-template-columns:1fr}.dropzone{min-height:140px;margin-top:14px}.source-panel{padding:18px}.settings-panel{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.settings-panel>.panel-label,.settings-panel>.button,.settings-note{grid-column:1/-1}.settings-panel>.button{margin-top:17px}.local-note{display:none}.main-panel{width:100%;min-height:650px}.result-header{padding:20px 16px}.result-header h2{font-size:18px}.button{padding:9px 11px;font-size:10px}.stats{margin:0 16px 17px}.stats span{font-size:20px}.tabs{padding:0 16px;gap:21px}.tab{font-size:10px}.tab-content{min-height:380px}.empty-state{height:380px}.empty-state h3{font-size:15px}.empty-state p{font-size:11px}#texEditor{height:460px;padding:20px 16px;font-size:11px}.editor-footer{padding:12px 16px;flex-wrap:wrap;font-size:8px}.tab-description{padding:14px 16px;align-items:flex-start}.tab-description p{font-size:10px}.heading-list,.issue-list{padding-left:16px;padding-right:16px}.page-footer{font-size:9px}.heading-title{font-size:11px}.issue-filters{padding:10px 16px}}

.settings-status{font-size:11px;color:#8c672c;line-height:1.8;margin:12px 0 0;grid-column:1/-1}.field select:disabled{background:#f5f6f2;color:#99a29b}.dropzone[aria-disabled="true"]{cursor:wait;opacity:.65}#texEditor:read-only{background:#f5f7f1}.field{min-width:0}.tab-description>*{min-width:0}

#replaceDialog .dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}
