:root{--bg: #ffffff;--bg-2: #f5f6f7;--bg-3: #eff0f1;--text: #1f2329;--text-2: #646a73;--text-3: #8f959e;--border: #dee0e3;--primary: #3370ff;--primary-hover: #4e83fd;--primary-soft: #e1eaff;--warn-bg: #fff3e8;--warn-text: #c25e00;--ok-bg: #e4f6ec;--ok-text: #237a49;--preview-bg: #e9eaec;--radius: 8px;color-scheme:light}:root[data-theme=dark]{--bg: #1b1b1b;--bg-2: #252525;--bg-3: #2f2f2f;--text: #ebebeb;--text-2: #a6a6a6;--text-3: #7a7a7a;--border: #373737;--primary: #4c88ff;--primary-hover: #6a9cff;--primary-soft: #1d2a47;--warn-bg: #3a2a17;--warn-text: #f5a35b;--ok-bg: #173323;--ok-text: #6fd29a;--preview-bg: #111;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 -apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Noto Sans CJK SC,Helvetica Neue,Arial,sans-serif}button,input,select,textarea{font:inherit;color:inherit}#print-root{position:absolute;left:-100000px;top:0;visibility:hidden;pointer-events:none}#app{min-height:100vh;display:flex;flex-direction:column}.main{flex:1;padding:14px 14px 8px;display:flex;flex-direction:column;gap:12px}.top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.top h1{margin:0;font-size:16px;font-weight:600;line-height:24px}.top .sub{color:var(--text-2);font-size:12px;margin-top:2px;word-break:break-all}.badge{flex:none;font-size:12px;line-height:20px;padding:0 8px;border-radius:10px;background:var(--warn-bg);color:var(--warn-text);white-space:nowrap}.card{border:1px solid var(--border);border-radius:var(--radius);padding:12px;background:var(--bg)}.sel{display:flex;align-items:center;gap:12px}.sel-count{font-size:28px;font-weight:600;line-height:1;color:var(--primary);font-variant-numeric:tabular-nums;min-width:1ch}.sel-count.zero{color:var(--text-3)}.sel-text{flex:1;min-width:0}.sel-text b{font-weight:600}.sel-text .hint{color:var(--text-2);font-size:12px;line-height:18px;margin-top:2px}.row-btns{display:flex;gap:8px;margin-top:10px}.btn{height:32px;padding:0 12px;border-radius:6px;border:1px solid var(--border);background:var(--bg);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;transition:background .15s,border-color .15s}.btn:hover{background:var(--bg-2)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn.primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.btn.block{width:100%}.btn.big{height:40px;font-size:15px;font-weight:600}.btn.flex1{flex:1}.btn svg{width:16px;height:16px;flex:none}.link{border:0;background:none;color:var(--primary);padding:0;cursor:pointer;font-size:12px}.form{display:flex;flex-direction:column;gap:10px}.field-label{display:block;font-size:12px;color:var(--text-2);margin-bottom:4px}.input,.select,.textarea{width:100%;height:32px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:var(--bg);outline:none}.textarea{height:auto;min-height:56px;padding:6px 10px;resize:vertical}.input:focus,.select:focus,.textarea:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-soft)}.check{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px}.check input{width:16px;height:16px;accent-color:var(--primary);margin:0}.seg{display:flex;background:var(--bg-3);border-radius:6px;padding:2px;gap:2px}.seg button{flex:1;border:0;background:none;border-radius:4px;height:28px;padding:0 6px;cursor:pointer;color:var(--text-2);font-size:13px;white-space:nowrap}.seg button.on{background:var(--bg);color:var(--primary);font-weight:600;box-shadow:0 1px 2px #00000014}.seg.sm button{height:24px;font-size:12px;padding:0 8px}details.card{padding:0}details.card>summary{list-style:none;cursor:pointer;padding:11px 12px;display:flex;align-items:center;justify-content:space-between;font-weight:600;user-select:none}details.card>summary::-webkit-details-marker{display:none}details.card>summary:after{content:"";width:7px;height:7px;border-right:1.5px solid var(--text-2);border-bottom:1.5px solid var(--text-2);transform:rotate(45deg);margin-top:-4px;transition:transform .15s}details.card[open]>summary:after{transform:rotate(-135deg);margin-top:2px}details.card>summary .muted{font-weight:400;color:var(--text-3);font-size:12px;margin-left:auto;margin-right:10px}details.card>.body{padding:0 12px 12px}.frows{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.frow{display:flex;align-items:center;gap:8px}.frow .fname{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.frow .seg{flex:none}.frow .seg button.on[data-role=h]{color:#7a35f0}.frow .seg button.on[data-role=""]{color:var(--text-3);font-weight:400}:root[data-theme=dark] .frow .seg button.on[data-role=h]{color:#b48aff}.legend{font-size:12px;color:var(--text-2);margin:0 0 8px;line-height:18px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.preview{border-radius:var(--radius);background:var(--preview-bg);padding:10px;min-height:160px}.preview-head{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--text-2);margin-bottom:8px}.pv-pages .sheet{margin:0 auto 10px;box-shadow:0 1px 4px #0000002e}.pv-pages .sheet:last-child{margin-bottom:0}.empty{text-align:center;color:var(--text-2);font-size:13px;padding:36px 12px;line-height:20px}.empty svg{width:40px;height:40px;color:var(--text-3);display:block;margin:0 auto 10px}.bar{position:sticky;bottom:0;background:var(--bg);border-top:1px solid var(--border);padding:10px 14px 12px;display:flex;flex-direction:column;gap:6px;z-index:5}.bar .sub-actions{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--text-3)}.notice{border-radius:6px;padding:8px 10px;font-size:12px;line-height:18px;background:var(--warn-bg);color:var(--warn-text)}.notice.ok{background:var(--ok-bg);color:var(--ok-text)}.notice .btn{height:26px;font-size:12px;margin-top:6px}.spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.loading-screen{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--text-2);min-height:60vh}html.standalone,html.standalone body{background:#e9eaec}html.standalone #app{min-height:0;position:sticky;top:0;z-index:10}html.standalone #print-root{position:static;visibility:visible;pointer-events:auto;padding:20px 0 40px}html.standalone #print-root .sheet{margin:0 auto 16px;box-shadow:0 2px 8px #0000002e}.sa-bar{background:#fff;color:#1f2329;border-bottom:1px solid #dee0e3;padding:10px 20px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.sa-bar h1{font-size:16px;margin:0}.sa-bar .meta{color:#646a73;font-size:13px;flex:1}@media print{html.standalone,html.standalone body{background:#fff!important}html.standalone #print-root{padding:0!important}}.pr{--ink: #000;--line: .75pt solid #000;--fill: #f0f0f0}.sheet{width:var(--pw);min-height:var(--ph);box-sizing:border-box;background:#fff;color:#000;position:relative}.slot{box-sizing:border-box;padding:var(--my) var(--mx);width:100%}.sheet-half{height:var(--ph);display:flex;flex-direction:column}.slot-half{height:50%;overflow:hidden}.slot-half:first-child{border-bottom:.6pt dashed #888}.measure{width:var(--pw)}.measure .slot{padding:var(--my) var(--mx)}.doc{font-family:Microsoft YaHei,PingFang SC,Hiragino Sans GB,Noto Sans CJK SC,Source Han Sans SC,WenQuanYi Micro Hei,sans-serif;color:var(--ink);font-size:10pt;line-height:1.35;-webkit-print-color-adjust:exact;print-color-adjust:exact}.doc-head{text-align:center;margin-bottom:2.5mm}.doc-company{font-size:15pt;font-weight:700;letter-spacing:.5pt}.doc-companyinfo{font-size:8.5pt;margin-top:.8mm}.doc-title{font-size:13pt;font-weight:700;letter-spacing:3pt;margin-top:1.2mm}.doc-meta{display:flex;justify-content:space-between;font-size:8.5pt;margin-top:1mm}.doc table{width:100%;border-collapse:collapse;table-layout:fixed}.doc th,.doc td{border:var(--line);padding:1.1mm 1.5mm;vertical-align:middle;word-break:break-all;overflow-wrap:anywhere}.doc th{background:var(--fill);font-weight:600;text-align:center}.kv{margin-bottom:2mm}.kv col.ck{width:19mm}.items td.num{text-align:right;white-space:nowrap;word-break:normal;font-variant-numeric:tabular-nums}.items td.idx{text-align:center;white-space:nowrap}.items tfoot td{font-weight:700}.items tr{break-inside:avoid;page-break-inside:avoid}.items td.chk{text-align:center}.items td.chk i{display:inline-block;width:3.4mm;height:3.4mm;border:var(--line)}.doc-sum{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1mm 4mm;margin-top:1.6mm}.doc-sum b{font-weight:700}.doc-note{margin-top:1.4mm;font-size:8.5pt}.doc-sign{display:flex;gap:5mm;margin-top:4mm;font-size:9.5pt}.doc-sign span{flex:1;border-bottom:var(--line);padding-bottom:.8mm}.paper-a4half .doc-company{font-size:13.5pt}.paper-a4half .doc-title{font-size:12pt}.paper-a4half .doc{font-size:9.5pt}.paper-a4half .doc-sign{margin-top:3mm}.paper-dot241-140 .doc th,.paper-dot241-93 .doc th,.paper-dot241-280 .doc th{background:none}.paper-dot241-140 .doc{font-size:9.5pt}.paper-dot241-140 .doc-company{font-size:13pt}.paper-dot241-140 .doc-title{font-size:11.5pt;margin-top:.6mm}.paper-dot241-140 .doc-sign{margin-top:2.5mm}.paper-dot241-93 .doc{font-size:8.5pt;line-height:1.25}.paper-dot241-93 .doc-head{margin-bottom:1.2mm}.paper-dot241-93 .doc-company{font-size:11pt}.paper-dot241-93 .doc-companyinfo{display:none}.paper-dot241-93 .doc-title{font-size:10pt;margin-top:.3mm}.paper-dot241-93 .doc-meta{margin-top:.3mm;font-size:7.5pt}.paper-dot241-93 .doc th,.paper-dot241-93 .doc td{padding:.5mm 1.2mm}.paper-dot241-93 .kv{margin-bottom:1mm}.paper-dot241-93 .doc-note{display:none}.paper-dot241-93 .doc-sign{margin-top:1.6mm;font-size:8pt}.paper-dot241-93 .doc-sum{margin-top:.8mm}.doc-list .doc-company{font-size:13.5pt}.doc-list .items tr.g-start td{border-top-width:1.2pt}.doc-list{font-size:9.5pt}.paper-a4 .doc-list{font-size:8.5pt}.doc-list th,.doc-list td{padding:1mm 1.2mm}@media print{html,body{background:#fff!important;margin:0!important;padding:0!important}#app{display:none!important}#print-root{display:block!important;position:static!important;visibility:visible!important;left:auto!important;top:auto!important;width:auto!important;height:auto!important;overflow:visible!important}.sheet{margin:0!important;box-shadow:none!important;break-after:page;page-break-after:always}.sheet:last-child{break-after:auto;page-break-after:auto}.is-flow .sheet{width:auto;min-height:0}.is-flow .slot{padding:0}.is-half .sheet-half{height:calc(var(--ph) - .6mm);overflow:hidden}}
