:root{--ink:#11110d;--ink-soft:#26241d;--muted:#747065;--hairline:#ded8c8;--line:#bfb7a2;--paper:#fffef8;--surface:#f8f5ea;--field:#fffdf5;--yellow:#f1df22;--yellow-soft:#fff7a5;--panel:#15140f;--danger:#bb3f3f;color:var(--ink);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,PingFang SC,Microsoft YaHei,Arial,sans-serif;line-height:1.55}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:linear-gradient(90deg,#11110d0b 1px,#0000 1px) 0 0/34px 34px,linear-gradient(0deg,#11110d0b 1px,#0000 1px) 0 0/34px 34px,radial-gradient(circle at 16% 5%,#f1df2252,#0000 30%),linear-gradient(145deg,#f7f4e9,#ebe7dc)}button,input,textarea{font:inherit}button{transition:transform .16s,border-color .16s,background .16s,opacity .16s}button:not(:disabled){cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}.workspace{grid-template-columns:minmax(0,1fr) 286px;align-items:start;gap:28px;width:min(1360px,100vw - 36px);margin:0 auto;padding:28px 0 54px;display:grid}.paper-column{min-width:0}.paper{background:var(--paper);width:min(100%,210mm);min-height:297mm;margin:0 auto;padding:15mm 16mm;box-shadow:0 32px 100px #201d1033,0 0 0 1px #11110d14}.doc-header{border-bottom:3px solid var(--ink);grid-template-columns:122px minmax(0,1fr);align-items:end;gap:24px;margin-bottom:15px;padding-bottom:16px;display:grid}.doc-header img{width:122px;height:auto}h1{color:var(--ink);letter-spacing:0;margin:0;font-family:Songti SC,STSong,Noto Serif CJK SC,serif;font-size:33px;font-weight:700;line-height:1.08}.doc-header p{color:var(--muted);letter-spacing:.2em;text-transform:uppercase;margin:7px 0 0;font-size:11px;font-weight:850}.document-meta{border:1px solid var(--hairline);color:var(--muted);background:#faf7e8;justify-content:space-between;gap:16px;margin:0 0 15px;padding:7px 10px;font-size:11.5px;font-weight:650;display:flex}.intro{color:#2d2b22;text-align:justify;margin:0 0 8px;font-size:13px;line-height:1.78}.date-line{justify-content:flex-end;align-items:center;gap:5px;margin:14px 0 20px;font-size:13px;display:flex}.date-field{text-align:center;width:54px;min-height:24px}.date-field.short{width:38px}.section{break-inside:auto;margin-top:18px}.section h2{border-top:1.5px solid var(--ink);border-bottom:1px solid var(--hairline);color:var(--ink);align-items:center;gap:10px;margin:0 0 10px;padding:8px 0;font-family:Songti SC,STSong,Noto Serif CJK SC,serif;font-size:19px;line-height:1.2;display:flex}.section h2 span{background:var(--yellow);border:1px solid var(--ink);width:28px;height:28px;color:var(--ink);place-items:center;font-family:Inter,sans-serif;font-size:14px;font-weight:900;display:inline-grid}h3{color:var(--ink-soft);margin:13px 0 7px;font-size:13px;font-weight:850;line-height:1.45}.hint{color:var(--muted);margin:0 0 8px;font-size:12px}.form-table{border-collapse:collapse;table-layout:fixed;break-inside:avoid;width:100%;margin:8px 0 12px;font-size:12.3px}.form-table th,.form-table td{border:1px solid var(--line);vertical-align:middle;padding:8px 9px}.form-table th{background:var(--ink);color:#fff;letter-spacing:.08em;font-size:12px;font-weight:850}.form-table th:first-child,.form-table td:first-child{width:30%}.form-table td:first-child{color:#252217;background:#f1df2221;font-weight:760}.reference-table th:first-child,.reference-table td:first-child{width:46%}.material-table th:first-child,.material-table td:first-child{width:27%}.material-table th:nth-child(2),.material-table td:nth-child(2){width:30%}.field{width:100%;min-height:28px;color:var(--ink);background:0 0;border:0;border-bottom:1px solid #11110d6b;border-radius:0;outline:0;font-size:12.3px}.field:focus,.textarea:focus{border-color:var(--ink);background:linear-gradient(#0000,#f1df2229)}.field::placeholder,.textarea::placeholder{color:#aaa491}.textarea{resize:vertical;border:1px solid var(--hairline);background:var(--field);min-height:68px;padding:8px 9px;line-height:1.62;display:block}.check-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px;margin:8px 0 12px;display:grid}.check-grid.compact{grid-template-columns:repeat(2,max-content);align-items:center;gap:8px 13px;margin:0}.check-row{color:#26241c;align-items:center;gap:7px;min-height:26px;font-size:12px;line-height:1.3;display:inline-flex}.check-row input{width:15px;height:15px;accent-color:var(--ink);margin:0}.inline-extra{grid-column:span 2}.formula{border:1px solid var(--line);background:linear-gradient(90deg, var(--yellow-soft), #fffef800);grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:5px 10px;margin:8px 0 12px;padding:10px 12px;font-size:13px;display:grid}.formula strong,.formula span{font-weight:900}.formula small{color:var(--muted);grid-column:1/-1;font-size:11.5px;line-height:1.55}.row-num{min-width:20px;font-weight:850;display:inline-block}.reference-table td:first-child{align-items:center;gap:4px;display:flex}.deadline-row{grid-template-columns:auto 1fr 1.4fr;align-items:center;gap:8px;display:grid}.doc-footer{border-top:2px solid var(--ink);break-inside:avoid;margin-top:26px;padding-top:14px;font-size:13px}.doc-footer strong{margin-bottom:8px;font-size:15px;display:block}.doc-footer p{color:#2c2a21;margin:0}.action-panel{background:var(--panel);color:#fff;gap:10px;padding:20px;display:grid;position:sticky;top:24px;box-shadow:0 24px 70px #14130e47}.action-panel img{filter:brightness(0)invert();width:128px;margin-bottom:8px}.status{color:var(--yellow);letter-spacing:.08em;align-items:center;gap:8px;margin:4px 0 10px;font-size:12px;font-weight:850;display:flex}.status.success{color:#c9ff73}.submit-card{background:#f1df221f;border:1px solid #f1df22bf;gap:5px;padding:13px;display:grid}.submit-card strong{color:var(--yellow);font-size:14px}.submit-card span,.submit-card small{color:#ffffffc7;overflow-wrap:anywhere;font-size:11.5px}.action-panel button,.detail-toolbar button,.login-panel button,.list-head button{color:#fff;background:#ffffff12;border:1px solid #ffffff29;justify-content:center;align-items:center;gap:9px;min-height:42px;font-size:13px;font-weight:780;display:inline-flex}.action-panel button{justify-content:flex-start;width:100%;padding:0 13px}.action-panel button.primary,.detail-toolbar button{border-color:var(--yellow);background:var(--yellow);color:var(--ink)}.action-panel button:not(:disabled):hover,.detail-toolbar button:not(:disabled):hover,.login-panel button:not(:disabled):hover,.list-head button:not(:disabled):hover{transform:translateY(-1px)}.action-panel button.danger{color:#ffd6d6}.action-panel p{color:#ffffff9e;margin:8px 0 0;font-size:11.5px;line-height:1.65}.panel-error{font-weight:750;color:#ffb5b5!important}.icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9px;flex:none}.dashboard-shell{width:min(1440px,100vw - 44px);margin:0 auto;padding:34px 0 60px}.dashboard-header{background:var(--panel);color:#fff;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;padding:24px;display:flex;box-shadow:0 24px 70px #14130e2e}.dashboard-header img{filter:brightness(0)invert();width:134px}.dashboard-header h1{color:#fff;font-size:30px}.dashboard-header p{color:#ffffffa6;margin:6px 0 0;font-size:13px}.login-panel{background:var(--paper);gap:14px;width:min(420px,100%);margin:80px auto 0;padding:28px;display:grid;box-shadow:0 24px 70px #14130e29}.login-panel h2{margin:0;font-family:Songti SC,STSong,serif;font-size:24px}.login-panel input{border:1px solid var(--line);background:#fff;width:100%;min-height:46px;padding:0 13px}.login-panel button,.list-head button{border-color:var(--ink);background:var(--ink);color:#fff}.dashboard-grid{grid-template-columns:360px minmax(0,1fr);align-items:start;gap:22px;display:grid}.submission-list{background:var(--paper);gap:10px;padding:16px;display:grid;position:sticky;top:24px;box-shadow:0 20px 60px #14130e24}.list-head,.detail-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.list-head strong{font-size:16px}.list-head button{min-height:34px;padding:0 12px;font-size:12px}.submission-row{border:1px solid var(--hairline);width:100%;color:var(--ink);text-align:left;background:#fffdf6;gap:3px;padding:13px;display:grid}.submission-row.active{border-color:var(--ink);background:var(--yellow-soft)}.submission-row strong{font-size:13.5px}.submission-row span{color:var(--muted);font-size:12px}.submission-row small{color:#8c8778;font-size:11px}.empty,.empty-detail{color:var(--muted);text-align:center;padding:28px}.dashboard-detail{min-width:0}.detail-toolbar{background:var(--panel);color:#fff;margin-bottom:16px;padding:15px 16px}.detail-toolbar div{gap:3px;display:grid}.detail-toolbar strong{font-size:15px}.detail-toolbar span{color:#ffffff9e;font-size:12px}.detail-toolbar button{min-height:38px;padding:0 13px}@media (width<=1180px){.workspace,.dashboard-grid{width:100%;padding:0;display:block}.dashboard-shell{width:100%;padding:0 0 80px}.paper{width:min(100%,210mm);min-height:100vh;box-shadow:none;padding:24px 20px 112px}.action-panel{z-index:10;grid-template-columns:repeat(4,42px);gap:7px;padding:8px;position:fixed;top:auto;bottom:10px;right:10px}.action-panel img,.action-panel .status,.action-panel .submit-card,.action-panel p{display:none}.action-panel button{justify-content:center;width:42px;min-height:42px;padding:0;font-size:0}.dashboard-header{margin:0 0 16px}.submission-list{margin-bottom:16px;position:static}.check-grid{grid-template-columns:1fr 1fr}.deadline-row{grid-template-columns:1fr}}@media (width<=640px){.paper{padding:22px 16px 110px}.doc-header,.dashboard-header{grid-template-columns:1fr;gap:14px;display:grid}h1,.dashboard-header h1{font-size:28px}.document-meta{display:grid}.form-table,.form-table thead,.form-table tbody,.form-table tr,.form-table th,.form-table td{display:block;width:100%!important}.form-table thead{display:none}.form-table td:first-child{border-bottom:0}.check-grid{grid-template-columns:1fr}.inline-extra{grid-column:auto}}@page{size:A4;margin:0}@media print{html,body,#root{background:#fff;width:210mm;min-height:297mm}body{-webkit-print-color-adjust:exact;print-color-adjust:exact}.workspace,.dashboard-shell,.dashboard-grid,.dashboard-detail{background:#fff;width:210mm;margin:0;padding:0;display:block}.action-panel,.dashboard-header,.submission-list,.detail-toolbar,.login-panel,.empty-detail{display:none!important}.paper{width:210mm;min-height:297mm;box-shadow:none;background:#fffef8;margin:0;padding:15mm 16mm}.section{break-inside:auto;page-break-inside:auto}.form-table,.formula,.doc-footer,.document-meta{break-inside:avoid;page-break-inside:avoid}.field{min-height:22px}.textarea{resize:none;min-height:58px}}
