:root{--ink:#20242c;--muted:#737984;--teal:#303f53;--line:#e4e6ea;--paper:#fff;--soft:#f5f6f8;--coral:#ae6428;--serif:inherit;font-synthesis:none}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--paper);color:var(--ink);font:13px/1.6 -apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Microsoft YaHei',sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0}button:disabled{cursor:not-allowed;opacity:.45}button,a,input,select,textarea{outline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #4b77ad}a{color:#355b86}svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.muted{color:var(--muted)}
.app-shell{display:grid;grid-template-columns:216px minmax(0,1fr);min-height:100vh}.sidebar{background:#f6f7f9;border-right:1px solid var(--line);padding:25px 14px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;min-width:0}.brand{display:flex;gap:10px;align-items:center;color:var(--ink);text-decoration:none;font-size:17px;font-weight:650;padding:0 8px}.brand small{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:1px}.new-task{margin:27px 0 26px;padding:8px 12px;border:1px solid #d8dce2;border-radius:6px;background:#fff;color:var(--ink);text-align:left;font-weight:550;box-shadow:0 1px 2px #18202b06}.new-task:hover,.btn:hover{background:#f2f3f5}.nav-caption{font-size:11px;color:#858a93;padding:0 9px}.side-nav{display:flex;align-items:center;gap:10px;background:none;color:#535b67;padding:9px 10px;border:1px solid transparent;border-radius:6px;text-align:left;margin:7px 0 26px;width:100%}.side-nav.active{background:#fff;border-color:#e1e3e8;color:var(--ink);box-shadow:0 1px 2px #18202b05}.side-nav>span{margin-left:auto;font-size:11px;color:#7b828e}.recent-head{margin-bottom:8px}#task-list{overflow:auto;min-height:40px}.task-link{display:block;width:100%;padding:8px 10px;text-align:left;background:none;border-radius:5px;color:#6b727e;font-size:12px}.task-link span{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.task-link:hover,.task-link.current{background:#e9ecf1;color:#252c36}.empty-recent{padding:8px;color:var(--muted);font-size:12px}
main{min-width:0}.topbar{height:61px;border-bottom:1px solid var(--line);padding:0 32px;display:flex;align-items:center;justify-content:space-between;gap:16px}.breadcrumb{display:flex;align-items:center;gap:14px;font-size:12px}.breadcrumb button{background:none;padding:0;color:var(--muted)}.breadcrumb>span{color:#bdc2cb}.breadcrumb strong{font-weight:500}.small-chip{font-size:10px;color:var(--muted);padding:2px 7px;border:1px solid var(--line);border-radius:4px;white-space:nowrap}.main-content{max-width:1600px;margin:auto;padding:32px 36px 18px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:28px}.page-heading h1{font-size:24px;line-height:1.4;letter-spacing:-.5px;margin:0 0 6px;font-weight:650;overflow-wrap:anywhere}.page-heading p{font-size:12px;color:var(--muted);margin:0}.heading-actions{display:flex;gap:8px;flex-shrink:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#fff;color:#39414d;padding:7px 13px;min-height:34px;border:1px solid #dce0e6;border-radius:5px;font-size:12px;text-decoration:none;white-space:nowrap;box-shadow:0 1px 2px #17202a03}.btn.primary{background:#2a3545;color:white;border-color:#2a3545}.btn.primary:hover{background:#414f63}.btn.small{min-height:28px;padding:4px 10px;font-size:11px}.text-link{padding:0;background:none;color:#42658e;font-size:11px;text-decoration:none}.text-link:hover{text-decoration:underline}
.task-board{border:1px solid var(--line);border-radius:7px;overflow:hidden}.list-toolbar{display:flex;justify-content:flex-end;gap:16px;padding:14px 18px;align-items:center}.list-filters{display:flex;gap:3px}.list-filters button{background:none;color:#78808c;padding:5px 10px;border-radius:4px;font-size:12px}.list-filters button.active{color:#273140;background:#edf0f4;font-weight:550}input[type=search]{border:1px solid #e0e3e8;border-radius:5px;max-width:240px;width:100%;padding:7px 10px;background:#fff;font-size:12px;color:var(--ink)}.table-scroll{position:relative;overflow-x:auto}.task-table{border-collapse:collapse;width:100%;text-align:left;font-size:12px;min-width:600px}.task-table th{background:#f8f9fb;color:#747c89;font-weight:450;font-size:11px;padding:10px 18px;border-block:1px solid var(--line)}.task-table td{padding:14px 18px;border-bottom:1px solid #eceef1}.task-table tr:last-child td{border-bottom:0}.task-table tr:hover td{background:#fafbfd}.task-table th:first-child{width:42%}.task-table td:last-child:not(.table-empty){text-align:right}.task-name-link{background:none;text-align:left;color:#303847;font-weight:550;padding:0}.task-name-link:hover{text-decoration:underline}.record-id{display:block;color:#969da8;font:10px/1.8 ui-monospace,SFMono-Regular,monospace;letter-spacing:.3px}.numeric,.date-cell{font-variant-numeric:tabular-nums;white-space:nowrap;color:#757e8a;font-size:11px}.table-footer{display:flex;justify-content:space-between;padding:11px 18px;color:#8b929d;border-top:1px solid var(--line);font-size:10px}
.steps{display:flex;gap:24px;border-bottom:1px solid var(--line);margin:0 0 25px}.steps button{display:flex;align-items:center;gap:8px;padding:0 3px 12px;background:none;color:#8b929d;font-size:12px;border-bottom:2px solid transparent;margin-bottom:-1px}.steps button span{width:18px;height:18px;border-radius:4px;display:grid;place-items:center;background:#f1f3f6;font-size:10px;color:#868d97}.steps button.selected{border-color:#3b4b61;color:#253246;font-weight:550}.steps button.selected span{background:#e7ebf2;color:#354760}.section-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px}.section-title h2{font-size:14px;font-weight:600;margin:0}.section-title p{font-size:11px;color:var(--muted);margin:3px 0 0}.section-title>span{color:#89919d;font-size:11px;white-space:nowrap}.upload-grid{border:1px solid var(--line);border-radius:6px;overflow:hidden}.upload-card{display:grid;grid-template-columns:34px 180px minmax(100px,1fr) 70px auto;gap:18px;align-items:center;padding:19px 20px;border-bottom:1px solid #eceef2;background:#fff}.upload-card:last-child{border:0}.upload-card.dragover{background:#edf2f8;box-shadow:inset 0 0 0 1px #8a9eb8}.file-icon{width:30px;height:35px;display:grid;place-items:center;border:1px solid #dce1e8;border-radius:4px;color:#8993a2;font:9px ui-monospace,monospace;background:#fafbfc}.upload-card h3{margin:0;font-size:13px;font-weight:550}.upload-card p{margin:3px 0 0;font-size:11px;color:var(--muted)}.document-detail{font-size:11px;min-width:0}.file-name{overflow-wrap:anywhere}.file-name span{color:#8b939e}.file-state{font-size:11px;color:#969ca6;white-space:nowrap}.file-state.done{color:#427d63}.file-state.error{color:#b45448}.file-state.processing{color:#426a9f}.drop-hint{font-size:10px;color:#9299a4;margin:12px 0}.error-detail{color:#a65345;font-size:11px;margin-top:7px;overflow-wrap:anywhere}.continue-bar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:22px;color:var(--muted);font-size:12px}.sample-section{margin-top:28px;border-top:1px solid var(--line);padding-top:18px}.sample-section summary{cursor:pointer;font-size:12px;color:#525d6d}.sample-section summary span{font-size:10px;color:#939ba7;margin-left:8px}.sample-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:18px}.sample-card{border:1px solid var(--line);padding:18px;border-radius:6px;display:flex;justify-content:space-between;gap:14px}.sample-body h3{font-size:12px;margin:0 0 6px;font-weight:550}.sample-body p{font-size:11px;color:var(--muted);margin:2px 0}.sample-actions{display:flex;flex-direction:column;gap:8px;align-items:flex-end}.sample-disclosure{font-size:11px;color:var(--muted)}
.banner{padding:10px 13px;background:#fbf8ef;border:1px solid #ebe1c8;border-radius:5px;font-size:11px;color:#8a7546;margin-bottom:20px}.banner.info{background:#f3f6fa;border-color:#dfe6ef;color:#60738c}.banner.error{background:#fdf4f2;border-color:#efdbd5;color:#a35346}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);border-radius:6px;margin-bottom:22px;padding:18px 0}.stat{padding:0 22px;border-right:1px solid var(--line)}.stat:last-child{border:0}.stat-label{color:var(--muted);font-size:11px;margin-bottom:5px}.stat strong{font-size:23px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.6px}.stat small{font-size:10px;margin-left:5px;color:var(--muted)}.review-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:20px;align-items:start}.panel{border:1px solid var(--line);border-radius:6px;background:white;overflow:hidden;min-width:0}.panel-header{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line)}.panel-header h3{font-size:12px;font-weight:600;margin:0}.panel-header small{color:#9097a2;font-size:10px}.source-panel{position:sticky;top:18px}.viewer-toolbar{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--line)}select{border:1px solid var(--line);border-radius:4px;padding:5px;color:#414b5b;background:#fff;min-width:0}.viewer-toolbar select{flex:1;width:90px;font-size:11px}.viewer-toolbar button{background:#f4f5f7;border:1px solid #e5e7ec;color:#5d6878;width:24px;height:24px;border-radius:4px}.viewer-toolbar>strong{font-size:12px;font-weight:500;margin-right:auto}.page-counter{font-size:10px;color:var(--muted);white-space:nowrap}.source-image{padding:14px;background:#f1f3f6;max-height:65vh;overflow:auto;min-height:280px;display:flex;align-items:flex-start;justify-content:center}.source-image img{width:100%;height:auto;box-shadow:0 1px 5px #28334413}.source-evidence{padding:13px 16px;border-top:1px solid var(--line);font-size:11px;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere;max-height:150px;overflow:auto}.source-evidence strong{display:block;margin-bottom:6px;color:#456385}.result-tabs{display:flex;padding:0 14px;gap:17px;overflow:auto;border-bottom:1px solid var(--line)}.result-tabs button{background:none;padding:12px 0;border-bottom:2px solid transparent;color:#8a919c;font-size:11px;white-space:nowrap}.result-tabs button.active{border-color:#3b4b61;color:#35445a}.fields{padding:0 16px}.field-row{display:grid;grid-template-columns:minmax(85px,.7fr) minmax(0,1.4fr) auto;gap:12px;align-items:start;padding:12px 0;border-bottom:1px solid #eceef2;font-size:11px}.field-row:last-child{border:0}.field-label{color:#838b97}.field-value{font-size:12px;overflow-wrap:anywhere}.field-value.empty{color:#a18c65;font-size:11px}.field-value .source-link{display:block;background:none;color:#6483a7;font-size:10px;padding:0;text-align:left;margin-top:3px}.source-link:hover{text-decoration:underline}.edit-btn{font-size:10px;padding:3px 5px;border-radius:3px;background:#f5f6f8;color:#6f7c8e}.item-heading{padding:10px 16px;background:#f6f8fa;border-block:1px solid var(--line);display:flex;justify-content:space-between;font-size:11px;color:#7f8997}.item-heading strong{font:12px ui-monospace,monospace;color:#394b61}.issue-list{padding:0 16px}.issue{padding:14px 0;border-bottom:1px solid #eceef2}.issue:last-child{border:0}.issue-top{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.issue h4{font-size:12px;font-weight:500;margin:0}.issue p{font-size:11px;color:var(--muted);margin:6px 0;overflow-wrap:anywhere}.badge{display:inline-block;font-size:10px;line-height:1.7;padding:1px 6px;background:#eff3f7;color:#61738c;border-radius:4px;white-space:nowrap;font-weight:400}.badge.reference{background:#f2f1ed;color:#8b806a}.badge.ok{background:#edf5ef;color:#5b8066}.badge.conflict,.badge.error{background:#fcf0ed;color:#b15e50}.badge.review,.badge.missing{background:#faf5e9;color:#9a804b}.badge.explained{background:#edf3f9;color:#5b7b9f}.badge.resolved,.badge.manual{background:#edf5ef;color:#5b8066}.issue-filter{display:flex;gap:6px;padding:12px 16px;border-bottom:1px solid var(--line)}.issue-filter button{font-size:11px;border-radius:4px;padding:4px 8px;color:#8390a1;background:#f6f7f9}.issue-filter button.active{background:#e8edf4;color:#435771}.history-row{padding:14px 16px;border-bottom:1px solid var(--line);font-size:11px}.history-row p{color:var(--muted);margin:5px 0;overflow-wrap:anywhere}.history-row small{color:#949ca8}.export-bar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}.export-bar p{color:var(--muted);font-size:11px}.draft-page{padding:20px;background:#f1f3f6;min-height:300px}.draft-page img{width:100%;height:auto;display:block;box-shadow:0 1px 6px #17233218}.empty-state{padding:48px 20px;text-align:center;border:1px solid var(--line);border-radius:6px}.empty-state h2{font-size:18px;font-weight:550}.empty-state p{font-size:12px;color:var(--muted)}
dialog{padding:0;border:1px solid var(--line);border-radius:9px;width:calc(100% - 32px);max-width:520px;color:var(--ink);box-shadow:0 14px 70px #18243826}dialog::backdrop{background:#1b243b55}.dialog-body{padding:25px}.dialog-body h2{font-size:19px;font-weight:600;margin:0 0 12px}.dialog-body p{font-size:12px;color:var(--muted)}.dialog-body label{display:block;font-size:12px;margin:16px 0 6px}.dialog-body input,.dialog-body textarea{width:100%;padding:9px;border:1px solid #d9dfe8;border-radius:5px;background:#fff;color:var(--ink)}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:24px}.dialog-body pre{padding:14px;background:#f5f7fa;font-size:11px;white-space:pre-wrap}.dialog-body code{background:#f1f3f6;font-size:11px;padding:2px 4px;overflow-wrap:anywhere}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(150px);transition:transform .2s;background:#293547;color:white;padding:12px 20px;border-radius:6px;z-index:20;max-width:90%;font-size:12px;box-shadow:0 4px 20px #14223b24}#toast.visible{transform:translateX(-50%) translateY(0)}.spinner{display:inline-block;width:12px;height:12px;border:2px solid #d9e0e8;border-top-color:var(--teal);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:1200px){.app-shell{grid-template-columns:190px minmax(0,1fr)}.main-content{padding:27px 24px}.topbar{padding:0 24px}.upload-card{grid-template-columns:30px 145px minmax(70px,1fr) 60px auto;gap:10px}.review-grid{gap:12px}.field-row{grid-template-columns:80px minmax(0,1fr) auto;gap:7px}.result-tabs{gap:11px}.stat{padding:0 15px}.stat strong{font-size:21px}.sample-grid{grid-template-columns:1fr}}
@media(max-width:950px){.review-grid{grid-template-columns:1fr}.source-panel{position:static}.source-image{max-height:360px}.page-heading h1{font-size:21px}.upload-card{grid-template-columns:30px 1fr 60px auto}.document-detail{grid-column:2;grid-row:2}.file-state{grid-column:3;grid-row:1}.upload-card>.btn{grid-column:4;grid-row:1 / span 2}.upload-card .file-icon{grid-row:1 / span 2}.heading-actions{gap:5px}.list-toolbar{flex-wrap:wrap}.list-toolbar input{max-width:none}.date-cell{font-size:10px}}
@media(max-width:680px){.app-shell{display:block}.sidebar{height:auto;position:static;display:grid;grid-template-columns:1fr auto;gap:10px;padding:12px 16px;border-right:0;border-bottom:1px solid var(--line)}.brand{padding:0;font-size:15px}.brand small{font-size:10px}.new-task{margin:0;padding:6px 12px}.sidebar>.nav-caption,.side-nav,.recent-head,#task-list{display:none}.topbar{height:48px;padding:0 18px}.main-content{padding:24px 16px 16px}.page-heading{align-items:flex-start;gap:12px;margin-bottom:22px}.page-heading h1{font-size:20px}.page-heading p{font-size:11px}.heading-actions{flex-direction:column}.heading-actions .btn{font-size:11px;padding:6px 9px}.steps{gap:18px}.steps button{font-size:11px;gap:5px}.upload-card{padding:15px 12px;gap:8px;grid-template-columns:26px 1fr 50px auto}.document-label p{font-size:10px}.file-icon{width:25px;height:31px;font-size:8px}.upload-card .btn{font-size:10px;padding:4px 7px}.file-state{font-size:10px}.stats{grid-template-columns:1fr 1fr;row-gap:18px;padding:15px 0}.stat:nth-child(2){border:0}.continue-bar{align-items:flex-start;font-size:11px}.sample-card{padding:14px;gap:8px}.sample-body h3{font-size:11px}.sample-body p{font-size:10px}.sample-actions .btn{font-size:10px}.list-toolbar{padding:12px}.table-footer{font-size:9px;padding:10px 12px}.main-footer{font-size:9px}.export-bar{align-items:flex-start}.draft-page{padding:8px}.field-row{grid-template-columns:82px minmax(0,1fr) auto}.result-tabs{gap:14px}.sample-section{margin-top:23px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.supplement-notice{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #e6e1d3;background:#fbfaf6;padding:14px 16px;margin-bottom:18px;border-radius:5px}.supplement-notice strong{font-size:12px;font-weight:550}.supplement-notice p{font-size:11px;color:var(--muted);margin:5px 0 0}.wide-dialog{max-width:760px;max-height:85vh;overflow:auto}.supplement-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.wide-dialog .dialog-actions{position:sticky;bottom:0;background:white;padding:14px 0}.supplement-grid label{font-size:11px}@media(max-width:680px){.supplement-grid{grid-template-columns:1fr}.supplement-notice{align-items:flex-start;flex-direction:column;gap:10px}.export-bar .btn{white-space:normal;text-align:center;max-width:155px}}

.document-actions{display:flex;gap:6px;align-items:center;justify-content:flex-end}
@media(max-width:1050px){.document-actions{grid-column:4;grid-row:1 / span 2;flex-direction:column;align-items:stretch}}

/* Inline guidance leaves forms and document controls available at all times. */
.guide{border:1px solid #cfd8e4;border-radius:7px;background:#f7f9fc;padding:18px 20px;margin-bottom:24px}
.guide-top{display:flex;justify-content:space-between;align-items:center;gap:16px;color:#53657c;font-size:11px}
.guide-progress{display:flex;gap:8px;list-style:none;padding:0;margin:14px 0 16px;counter-reset:guide}
.guide-progress li{flex:1;border-top:2px solid #e0e5ed;padding-top:7px;font-size:11px;color:#788290}
.guide-progress li[aria-current]{border-color:#3b506d;color:#253b59;font-weight:600}.guide-progress li.past{border-color:#a8b8cc}
.guide-body{display:flex;gap:28px;align-items:center;justify-content:space-between}.guide h2{font-size:15px;margin:0 0 5px;font-weight:600}.guide p{font-size:12px;line-height:1.8;color:#667285;margin:0;max-width:760px}
.guide-actions{display:flex;flex-direction:column;gap:10px;align-items:center;flex-shrink:0}.guide-target{outline:2px solid #6a87ad!important;outline-offset:4px;scroll-margin:24px}
@media(max-width:680px){.guide{padding:14px}.guide-body{flex-direction:column;align-items:stretch;gap:12px}.guide-actions{flex-direction:row;justify-content:flex-end;flex-wrap:wrap}.guide-progress{gap:5px}.guide-progress li{font-size:10px}.guide p{font-size:11px}}
.batch-drop{border:1px dashed #abb9ca;border-radius:7px;background:#f8fafc;text-align:center;padding:26px 18px;margin-bottom:18px}.batch-drop.dragover{background:#e9f0f8;border-color:#395b85}.batch-drop strong{font-size:16px}.batch-drop p{color:var(--muted);margin:8px 0 15px;font-size:12px}.batch-drop small{display:block;color:var(--muted);margin-top:12px;font-size:10px}.batch-list{border:1px solid var(--line);border-radius:6px;overflow:hidden}.batch-row{display:flex;align-items:center;gap:16px;padding:18px;border-bottom:1px solid var(--line)}.batch-row:last-child{border-bottom:0}.batch-name{flex:1;min-width:0;overflow-wrap:anywhere}.batch-name strong{font-size:12px;font-weight:550}.batch-name small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.batch-actions{display:flex;gap:8px;align-items:center}.empty-files{padding:18px;text-align:center;color:var(--muted)}@media(max-width:1000px){.batch-row{flex-wrap:wrap;gap:10px}.batch-actions{flex-basis:100%;justify-content:flex-end}.batch-name{min-width:130px}}

.readiness-intro{padding:14px 16px;border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}

/* Task state, focused review, and document inspection. */
.task-actions{display:flex;justify-content:flex-end;gap:8px;align-items:center}
.task-pending{display:block;font-size:11px;color:#737984;margin-top:4px}
.status-ready{background:#edf5ef;color:#346647}.status-review,.status-error{background:#fff2e5;color:#8d4b1c}.status-processing{background:#edf3fa;color:#365d86}
/* Center the empty state within the visible task list, even on small screens. */
.task-table:has(.table-empty) {min-width:0;}
.task-table td.table-empty {
  padding:clamp(38px, 5vw, 64px) 16px;
  text-align:center;
  vertical-align:middle;
  background:var(--paper);
}
.table-empty h2 {margin:0; color:var(--ink); font-size:17px; font-weight:600; line-height:1.45;}
.table-empty p {margin:6px 0 0; color:var(--muted); font-size:13px; line-height:1.65;}
.table-empty .btn {margin-top:12px;}

.pending-stat{font-size:23px;font-weight:600;padding:0;background:none;color:var(--coral);font-variant-numeric:tabular-nums}.pending-stat:hover{text-decoration:underline}
.issue-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:10px}.issue-actions .text-link{font-size:12px}
.empty-issues{padding:18px 16px;margin:0;font-size:13px;color:var(--muted)}
.optional-fields{border-top:1px solid var(--line);padding:14px 16px}.optional-fields summary{font-size:13px;cursor:pointer;color:var(--ink)}.optional-fields summary span{font-size:12px;color:var(--muted);margin-left:10px}.optional-fields[open] summary{margin-bottom:12px}.optional-fields .fields{padding:0}
.dialog-body .optional-fields{padding:16px 0;margin-top:18px}.dialog-body h3{font-size:14px;margin:18px 0 0}
.preview-toolbar,.preview-tools{flex-wrap:wrap}.preview-toolbar button{min-width:32px;min-height:32px;width:auto;height:auto;padding:5px 9px}
.preview-tools{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line)}.preview-tools output{min-width:70px;text-align:center;color:var(--muted);font-size:12px}.preview-tools a{margin-left:auto;font-size:12px}
.preview-status{font-size:12px;color:var(--muted);padding:0 16px}.preview-status:empty{display:none}
.draft-page{overflow:auto;max-height:75vh}.draft-page img{max-width:none;flex-shrink:0}
@media(max-width:680px){.preview-tools a{margin-left:0;flex-basis:100%;padding-top:5px}.issue-actions{gap:10px}.preview-toolbar strong{flex-basis:100%}.task-actions{flex-wrap:wrap}.optional-fields{padding:14px 12px}}

.icon-control, .viewer-toolbar .icon-control {
 display:inline-flex; align-items:center; justify-content:center;
 width:34px; height:34px; padding:0; flex:0 0 34px;
 color:#526172; background:transparent; border:1px solid transparent; border-radius:5px;
}
.icon-control:hover:not(:disabled) { color:var(--ink); background:var(--soft); border-color:var(--line); }
.preview-tools a.icon-control { margin-left:auto; }
.export-bar h2 { font-size:16px; margin:0; }


.brand .brand-mark {width:42px; height:42px; flex:none;}
.brand-name {display:block; font-family:'Songti SC','STSong','Noto Serif CJK SC',serif; font-size:26px; font-weight:700; letter-spacing:.1em; line-height:1.12; color:#183c40;}
.brand small {margin-top:3px; color:#626c75;}
.topbar-tools {display:flex; align-items:center; gap:8px;}
.main-footer {display:flex; align-items:center; gap:7px; margin-top:36px; padding-top:14px; border-top:1px solid var(--line); color:#657375; font-size:12px; letter-spacing:.1em;}
@media(max-width:600px) {
 .brand .brand-mark {width:34px; height:34px;}
 .brand-name {font-size:21px;}
}

.upload-add {display:flex; align-items:center; gap:12px; justify-content:flex-end; margin-bottom:10px;}
.upload-add small {color:var(--muted);}
.upload-add.dragover {background:#e9f0f8; outline:1px dashed #395b85;}
.file-name-link {display:block; max-width:100%; padding:0; background:none; color:var(--ink); font-weight:600; text-align:left; overflow-wrap:anywhere;}
.file-name-link:hover {color:#355b86; text-decoration:underline;}

.clear-workspace {margin-right:auto;color:var(--muted)}
.clear-workspace[hidden] {display:none}
.clear-workspace:hover,.delete-task:hover:not(:disabled) {color:#a72e28}
.btn.danger {background:#a72e28;color:#fff;border-color:#a72e28}
