/* fa_voucher.css  凭证录入分录表格样式（frmFA_Voucher.htmlVch）  v9  2026-10-16 常用凭证模板弹窗 / 辅助核算一次填完 / 标签可点 / 状态章加大 / 附件条 / 已被红冲 / 状态色 / 只读 / 分位格 / 操作列 / 顶栏 底栏 / 大字号 / 习惯设置  配色同现有单据页 */
#favRoot{--pri:#2e7d32;--pri-l:rgba(46,125,50,.10);--text:#374151;--text-d:#1f2933;--sub:#6b7785;--line:#e5e7eb;--line-d:#c5cdd5;--hd:#f8fafc;--sel:#e8f3e9;--hover:#f1f5f9;--red:#c62828;
  font:13px/1.5 "Microsoft YaHei","PingFang SC",sans-serif;color:var(--text);background:#fff;position:relative;height:100%;overflow:hidden;box-sizing:border-box;display:flex;flex-direction:column}
#favRoot *{box-sizing:border-box}
.favTbl{width:100%;border-collapse:collapse;table-layout:fixed}
.favTbl th{background:var(--hd);color:#475569;font-weight:400;font-size:13px;height:30px;border-bottom:1px solid #eef1f4;border-right:1px solid #fafafa}
.favTbl td{height:30px;border-bottom:1px solid #f1f4f6;border-right:1px solid #fafafa;padding:0;vertical-align:middle}
.favTbl tr.row:hover td{background:var(--hover)}
.favTbl tr.row.cur td{background:var(--sel)}
.favTbl tr.row.cur td:first-child{box-shadow:inset 3px 0 0 var(--pri)}
.favTbl .cell{position:relative;height:100%}
.favTbl .cell input{width:100%;height:30px;border:1px solid transparent;background:transparent;padding:0 8px;font:inherit;color:var(--text-d);outline:none}
.favTbl .cell input:focus{background:#fff;border-radius:3px;border-color:var(--pri);box-shadow:0 0 0 2px var(--pri-l)}
.favTbl .cell input.amt{text-align:right;font-variant-numeric:tabular-nums;font-size:14px;padding-right:10px}
.favTbl .cell input.amt.neg{color:var(--red)}
.favTbl .cell input.jin{position:absolute;left:0;top:0;opacity:0;width:100%;height:30px}
.favTbl td.no{text-align:center;color:var(--sub);font-size:12px}
.favTbl .subj{display:flex;align-items:center;height:30px;padding:0 8px;gap:6px;cursor:text;overflow:hidden;white-space:nowrap}
.favTbl .subj .code{color:var(--sub);font-variant-numeric:tabular-nums}
.favTbl .subj .aux{display:inline-flex;align-items:center;height:18px;padding:0 6px;border-radius:9px;background:var(--pri-l);color:var(--pri);font-size:11px;white-space:nowrap}
.favTbl .subj .aux.miss{background:#fee2e2;color:var(--red)}
.favTbl .subj .aux.auto{background:transparent;color:#9ca3af;border:1px dashed #d1d5db}
.favTbl .subj .ph{color:#9ca3af}
.favTbl .dd{position:absolute;left:0;top:30px;z-index:5;width:440px;max-width:90vw;background:#fff;border:1px solid var(--line-d);border-radius:6px;box-shadow:0 6px 20px rgba(0,0,0,.12);display:none;max-height:260px;overflow:auto;text-align:left}
.favTbl .dd.on{display:block}
.favTbl .dd div,.favAuxList div{display:flex;gap:10px;padding:6px 10px;cursor:pointer;font-size:13px}
.favTbl .dd div:hover,.favTbl .dd div.hl,.favAuxList div:hover,.favAuxList div.hl{background:var(--sel)}
.favTbl .dd .c,.favAuxList .c{width:90px;color:var(--sub);font-variant-numeric:tabular-nums;flex:none}
.favTbl .dd .n,.favAuxList .n{flex:1;color:var(--text-d);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.favTbl .dd .a{color:var(--sub);font-size:11px}
.favTbl .dd em{font-style:normal;color:var(--pri);font-weight:500}
.favTbl tr.sum td{background:var(--hd);border-bottom:none;height:34px}
.favTbl tr.sum .cap{padding:0 10px;color:var(--text-d)}
.favTbl tr.sum .cap span{color:var(--sub);margin-left:10px;font-size:12px}
.favTbl tr.sum .amt{text-align:right;padding-right:10px;font-variant-numeric:tabular-nums;font-size:14px;font-weight:500;color:var(--text-d)}
.favTbl tr.sum .diff{color:var(--red);font-size:12px;font-weight:400;margin-left:6px}
.favMask{position:fixed;inset:0;background:rgba(0,0,0,.25);display:none;align-items:center;justify-content:center;z-index:20000}
.favMask.on{display:flex}
.favDlg{width:460px;max-width:94vw;background:#fff;border-radius:8px;box-shadow:0 10px 30px rgba(0,0,0,.2);overflow:hidden;font:13px/1.5 "Microsoft YaHei","PingFang SC",sans-serif;color:#374151}
.favDlg h3{margin:0;padding:10px 14px;font-size:14px;font-weight:500;border-bottom:1px solid #e5e7eb;color:#1f2933}
.favDlg .body{padding:12px 14px;display:grid;grid-template-columns:60px 1fr;gap:10px;align-items:center}
.favDlg .body label{color:#6b7785}
.favDlg .body input{height:28px;border:1px solid #c5cdd5;border-radius:4px;padding:0 8px;font:inherit;outline:none}
.favDlg .body input:focus{border-color:#2e7d32;box-shadow:0 0 0 2px rgba(46,125,50,.1)}
.favAuxList{grid-column:1 / 3;max-height:220px;overflow:auto;border:1px solid #e5e7eb;border-radius:4px}
.favDlg .act{display:flex;justify-content:flex-end;gap:6px;padding:10px 14px;border-top:1px solid #e5e7eb}
.favDlg .act button{height:28px;padding:0 12px;background:#fff;border:1px solid #c5cdd5;border-radius:6px;color:#374151;cursor:pointer;font:inherit}
.favDlg .act button.pri{background:#2e7d32;border-color:#2e7d32;color:#fff}
.favDlg kbd{font:11px "Microsoft YaHei",sans-serif;color:#9ca3af;font-weight:400;margin-left:2px}
.favDlg .act button.pri kbd{color:#dfe9e0}
.favToast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);background:#1f2933;color:#fff;padding:8px 14px;border-radius:6px;font-size:13px;opacity:0;transition:opacity .2s;pointer-events:none;z-index:20001}
.favToast.on{opacity:.95}

/* ---- v2：顶栏（快捷键提示 + 大小字号）/ 表格滚动区 / 底栏（保存按钮） ---- */
.favTop{flex:none;display:flex;align-items:center;justify-content:space-between;padding:4px 10px 4px 10px;border-bottom:1px solid var(--line)}
.favKeys{font-size:11px;color:var(--sub);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.favSw{flex:none;display:inline-flex;border:1px solid var(--line-d);border-radius:4px;overflow:hidden}
.favSw b{font-weight:400;font-size:12px;padding:1px 9px;cursor:pointer;color:var(--sub);background:#fff}
.favSw b.on{background:var(--pri);color:#fff}
.favWrap{flex:1;min-height:0;overflow:auto}
.favFoot{flex:none;display:flex;justify-content:flex-end;gap:8px;padding:8px 10px;border-top:1px solid var(--line);background:#fff}
.favFoot button{height:30px;padding:0 16px;background:var(--pri);border:1px solid var(--pri);border-radius:4px;color:#fff;cursor:pointer;font:inherit;font-size:13px}
.favFoot button:hover{filter:brightness(1.08)}
.favFoot button kbd{font:11px "Microsoft YaHei",sans-serif;color:#dfe9e0;font-weight:400;margin-left:4px}
.favTbl thead th{position:sticky;top:0;z-index:2}
.favR{flex:none;display:inline-flex;align-items:center;gap:8px;margin-left:10px}
.favR .habit{height:22px;padding:0 8px;background:#fff;border:1px solid var(--line-d);border-radius:4px;color:var(--sub);font:12px "Microsoft YaHei",sans-serif;cursor:pointer;white-space:nowrap}
.favR .habit:hover{color:var(--pri);border-color:var(--pri)}
.favTbl th .amtH{line-height:18px}
/* 分位格：13 格 百十亿千百十万千百十元角分，亿 / 万 后紫线，元 后红线 */
.favTbl.g th{height:46px;padding:0}
.favTbl td.amt{padding:0}
.favTbl.g tr.sum td.amt{padding:0}
.favDlg.wide{width:560px}
.dg{display:grid;grid-template-columns:repeat(13,1fr);height:100%;min-height:30px}
.dg span{border-right:1px solid #e3e8ee;text-align:center;font-variant-numeric:tabular-nums;font-size:14px;line-height:30px;color:var(--text-d);overflow:hidden}
.dg span:nth-child(3),.dg span:nth-child(7){border-right:1px solid #b9a7e6}
.dg span:nth-child(11){border-right:1px solid #e57373}
.dg span:last-child{border-right:none}
.dg.neg span{color:var(--red)}
.dg.hd{min-height:0;height:18px;border-top:1px solid #eef1f4}
.dg.hd span{font-size:11px;line-height:17px;color:#8a97a6;font-weight:400}
.dg.sum span{font-weight:500;line-height:34px}
.favTbl .cell input.amt.g{position:absolute;left:0;top:0;width:100%;height:100%;opacity:0;text-align:right;padding-right:6px}
.favTbl .cell input.amt.g:focus{opacity:1;background:#fff}
/* 操作列 */
.favTbl td.op{text-align:center;white-space:nowrap}
.favTbl td.op b{display:inline-block;width:20px;height:20px;margin:0;cursor:pointer;color:#9aa5b1;vertical-align:middle}
.favTbl td.op b:hover{color:var(--pri)}
.favTbl td.op b[data-op=del]:hover{color:var(--red)}
.favTbl td.op svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.favTbl tr.row:not(.cur) td.op b{opacity:.55}
.favTbl tr.row:hover td.op b{opacity:1}
.favTbl tr.sum .diff{margin-left:10px}
/* 大字号 */
#favRoot.big{font-size:15px}
#favRoot.big .favTbl th{font-size:15px}
#favRoot.big .favTbl td,#favRoot.big .favTbl .cell input,#favRoot.big .favTbl .subj{height:36px}
#favRoot.big .favTbl .cell input{font-size:15px}
#favRoot.big .favTbl .cell input.amt{font-size:16px}
#favRoot.big .dg{min-height:36px}
#favRoot.big .dg span{font-size:16px;line-height:36px}
#favRoot.big .dg.hd span{font-size:11px;line-height:17px}
#favRoot.big .favTbl tr.sum td{height:40px}
#favRoot.big .dg.sum span{line-height:40px}
#favRoot.big .favTbl tr.sum .amt{font-size:16px}
/* 习惯设置弹窗 */
.favDlg .hbody{padding:10px 14px;display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}
.favDlg .hbody .ck{display:flex;align-items:center;gap:6px;color:#374151;cursor:pointer;white-space:nowrap}
.favDlg .hbody .ck input[type=checkbox]{width:15px;height:15px;accent-color:#2e7d32;margin:0}
.favDlg .hbody .ck input.num{width:56px;height:26px;border:1px solid #c5cdd5;border-radius:4px;padding:0 6px;font:inherit}
.favDlg .hbody select{height:26px;border:1px solid #c5cdd5;border-radius:4px;font:inherit;background:#fff}
/* 容器窄（分位格每格不到 11.5 像素）时数字和表头字小一点 */
#favRoot.narrow .dg span{font-size:12px}
#favRoot.narrow .dg.hd span{font-size:10px}
#favRoot.narrow .favTbl .cell input.amt{font-size:13px}
/* ---- v4：只读显示、状态色（已审核 蓝 / 已过账 绿 / 红字凭证 红，红字优先） ---- */
.favTbl .cell .txt{height:30px;line-height:30px;padding:0 8px;color:var(--text-d);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.favTbl .cell .num{height:30px;line-height:30px;padding-right:10px;text-align:right;font-variant-numeric:tabular-nums;font-size:14px;color:var(--text-d)}
.favTbl .cell .num.neg{color:var(--red)}
#favRoot.big .favTbl .cell .txt,#favRoot.big .favTbl .cell .num{height:36px;line-height:36px;font-size:15px}
#favRoot.ro .favTbl .subj{cursor:default}
#favRoot.ro .favTbl tr.row.cur td{background:transparent}
#favRoot.ro .favTbl tr.row.cur td:first-child{box-shadow:none}
.favStamp{flex:none;margin-right:10px;padding:2px 12px;border:1.5px solid currentColor;border-radius:4px;font-size:14px;font-weight:600;letter-spacing:1px}
#favRoot.big .favStamp{font-size:15px}
#favRoot.ro .favKeys{display:none}
#favRoot.st1{--ink:#1565c0;--ink-l:#e8f0fb}
#favRoot.st2{--ink:#2e7d32;--ink-l:#e8f3e9}
#favRoot.red{--ink:#c62828;--ink-l:#fdecec}
#favRoot.st1 .favStamp,#favRoot.st2 .favStamp,#favRoot.red .favStamp{color:var(--ink);background:var(--ink-l)}
#favRoot.st1 .favTbl td,#favRoot.st2 .favTbl td,#favRoot.red .favTbl td,
#favRoot.st1 .favTbl .txt,#favRoot.st2 .favTbl .txt,#favRoot.red .favTbl .txt,
#favRoot.st1 .favTbl .num,#favRoot.st2 .favTbl .num,#favRoot.red .favTbl .num,
#favRoot.st1 .favTbl .subj span,#favRoot.st2 .favTbl .subj span,#favRoot.red .favTbl .subj span,
#favRoot.st1 .dg span,#favRoot.st2 .dg span,#favRoot.red .dg span,
#favRoot.red .favTbl .cell input{color:var(--ink)}
#favRoot.st1 .favTbl .subj .aux,#favRoot.st2 .favTbl .subj .aux,#favRoot.red .favTbl .subj .aux{background:var(--ink-l)}
#favRoot.st1 .favTbl th,#favRoot.st2 .favTbl th,#favRoot.red .favTbl th{background:var(--ink-l)}
#favRoot.st1 .dg.hd span,#favRoot.st2 .dg.hd span,#favRoot.red .dg.hd span{color:var(--ink);opacity:.7}
#favRoot.st1 .favTbl tr.sum td,#favRoot.st2 .favTbl tr.sum td,#favRoot.red .favTbl tr.sum td{background:var(--ink-l)}
/* ---- v5：顶栏提示两段（操作键 / 录入键）、附件条、已被红冲（灰） ---- */
.favTip{flex:1;min-width:0;display:flex;gap:14px;overflow:hidden;white-space:nowrap}
.favTip .favAct{color:#475569;flex:none}
.favTip .favKeys{overflow:hidden;text-overflow:ellipsis}
.favTop .favKeys,.favTop .favAct{font-size:11px}
.favAttBar{flex:none;display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:4px 10px;border-bottom:1px solid var(--line);background:#fbfcfd;max-height:64px;overflow:auto}
.favAttBar .cap{display:inline-flex;align-items:center;gap:3px;font-size:12px;color:var(--sub)}
.favAttBar svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.favAttBar .att{display:inline-flex;align-items:center;max-width:220px;height:22px;border:1px solid var(--line-d);border-radius:11px;background:#fff;font-size:12px}
.favAttBar .att a{padding:0 4px 0 10px;color:#1565c0;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.favAttBar .att a:hover{text-decoration:underline}
.favAttBar .att b{font-weight:400;padding:0 8px 0 2px;color:#9aa5b1;cursor:pointer}
.favAttBar .att b:hover{color:var(--red)}
#favRoot.rev{--ink:#6b7785;--ink-l:#f1f3f5}
#favRoot.rev .favStamp{color:var(--ink);background:var(--ink-l)}
#favRoot.rev .favTbl td,#favRoot.rev .favTbl .txt,#favRoot.rev .favTbl .num,#favRoot.rev .favTbl .subj span,#favRoot.rev .dg span{color:var(--ink)}
#favRoot.rev .favTbl th,#favRoot.rev .favTbl tr.sum td{background:var(--ink-l)}
/* ---- v7：辅助核算可多种，标签浮在科目输入层（.jin）上面，点了单改那一种 ---- */
.favTbl .subj .aux{position:relative;z-index:2;cursor:pointer}
#favRoot.ro .favTbl .subj .aux{cursor:default}
/* ---- v8：辅助核算一次填完 ---- */
.favDlg.aux{width:520px}
.favDlg.aux .body{grid-template-columns:64px 1fr;gap:8px 10px}
.favDlg.aux .body label{text-align:right}
.favDlg.aux .body label.on{color:#2e7d32;font-weight:600}
.favDlg.aux .body input.on{border-color:#2e7d32;box-shadow:0 0 0 2px rgba(46,125,50,.1)}
.favDlg.aux .favAuxList{margin-top:2px;min-height:120px}
.favDlg .act .tip{flex:1;align-self:center;font-size:11px;color:#9ca3af}
/* v9 常用凭证模板 */
.favTplList{max-height:360px;min-height:80px;overflow:auto;padding:6px 0}
.favTplList div[data-id]{display:flex;align-items:center;gap:10px;padding:7px 14px;cursor:pointer;font-size:13px}
.favTplList div[data-id]:hover{background:#e8f3e9}
.favTplList .n{flex:1;color:#1f2933;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.favTplList .c{flex:none;color:#6b7785;font-size:12px}
.favTplList b{flex:none;width:20px;height:20px;line-height:18px;text-align:center;border-radius:4px;color:#9ca3af;font-weight:400;font-size:16px}
.favTplList b:hover{background:#fdecea;color:#c62828}
.favTplList .empty{padding:24px 14px;color:#9ca3af;text-align:center}
.favDlg .tplAmt{display:flex;align-items:center;gap:6px;color:#374151!important}
.favDlg .tplAmt input{height:auto}
/* v10（js v20）：数量 / 外币列 */
.favTbl .cell.fxw{display:flex;align-items:center;gap:2px}
.favTbl .cell.fxw input{flex:1 1 0;min-width:0;text-align:right;padding:0 4px;font-variant-numeric:tabular-nums}
.favTbl .cell.fxw input.rt{flex:0 0 70px;color:var(--sub)}
.favTbl .cell.fxw select{flex:0 0 58px;height:26px;border:1px solid var(--line-d);border-radius:3px;background:#fff;font:12px "Microsoft YaHei",sans-serif;padding:0 2px}
.favTbl .cell.fxw .cu{flex:0 0 auto;padding:0 4px;color:var(--sub);font-size:12px}
.favTbl td.fx .txt,.favTbl td.qp .txt{text-align:right;font-size:12px;color:var(--sub)}
.favTbl .cell.fxw .cu.bad{color:var(--red)}.favTbl .cell.fxw select.bad{border-color:var(--red);color:var(--red)}
