/* 当前活动地区收款；样式限定在独立收款页。 */
.journal{border:1px solid #dfe7f1;border-radius:10px;overflow:hidden;background:#fff}
.journal .fw-heading{padding:14px 16px;flex-wrap:wrap}
.journal-notice{margin:0;padding:10px 12px;background:#f7f9fc;color:#607089;font-size:13px;line-height:1.6;white-space:normal}
.journal-filters{display:flex;gap:8px;flex-wrap:wrap;align-items:end;padding:0 16px 8px}
.journal-filters>label{display:flex;flex-direction:column;gap:4px;color:#607089;font-size:12px;min-width:0}
.journal-filters .fw-search{flex:1 1 200px;max-width:100%;width:auto}
.journal-filters input,.journal-filters select{height:36px;padding:6px 8px;border:1px solid #bdcbdd;border-radius:6px;max-width:100%;background:#fff;color:#172b4d}
.journal-filters [data-j-filter=account_id]{max-width:180px}
.journal-table td{white-space:pre-wrap!important;overflow-wrap:anywhere;vertical-align:middle;max-width:300px}
.journal-table th,.journal-table td{padding:10px 12px;text-align:left;border-bottom:1px solid #edf1f6}
.journal-table th{background:#f7f9fc;color:#52667f}
.journal-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.journal-actions button,.journal-more summary{font-size:12px}
.journal-more summary{cursor:pointer;color:#607089;padding:6px 2px}
.journal-more>div{display:flex;gap:5px;flex-wrap:wrap;padding:5px 0}
.journal-badge{display:inline-block;border-radius:4px;background:#f1f3f6;color:#6b7280;font-size:12px;padding:1px 6px;margin-bottom:5px}
.journal-legacy{margin-top:20px;border:1px solid #dfe7f1;border-radius:10px;background:#fff}
.journal-legacy>summary{padding:16px 20px;color:#52667f;cursor:pointer;font-size:14px}
.journal [hidden]{display:none!important}
.journal-dialog-bg .fw-dialog{width:min(560px,100%)}
.journal-dialog-bg .fw-field{margin:6px 0}
.journal-dialog-bg .fw-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:700px){
 .journal .fw-heading{display:flex!important;padding:12px;gap:10px}.journal .fw-heading h2{white-space:normal}
 .journal-filters{padding:0 12px 6px;gap:8px}.journal-filters>label{flex:1 1 120px}
 .journal-filters .fw-search{flex-basis:100%}.journal-filters input,.journal-filters select{font-size:16px;min-height:44px;width:100%}
 .journal-filters [data-j-filter=account_id]{max-width:100%}
 .journal-table tbody tr{padding:10px 12px;border-bottom:1px solid #dfe7f1}
 .journal-table td{display:grid!important;grid-template-columns:72px minmax(0,1fr);gap:8px;padding:5px 0!important;max-width:none;border:0!important;min-width:0}
 .journal-table td[data-label]::before{content:attr(data-label);color:#607089;font-size:12px}
 .journal-table td[colspan]{display:block!important}
 .journal-table td[data-label="操作"]{display:flex!important;flex-wrap:wrap;align-items:center}
 .journal-table td[data-label="操作"]::before{margin-right:auto}
 .journal-actions button,.journal-more summary{min-height:40px}
 .journal-actions{justify-content:flex-end}
 .journal-dialog-bg{padding:12px}
 .journal-dialog-bg .fw-form-grid{grid-template-columns:1fr}
 .journal-dialog-bg .fw-dialog{max-height:calc(100dvh - 24px)}
}

/* 财务工作台：只作用于收款信息及其弹框，不改变公共表格布局。 */
#subPanelPayInfo{min-width:0;max-width:100%;overflow-x:hidden;background:#f4f7fb}
#subPanelPayInfo .collection-shell{min-width:0;margin-top:0;border:0;box-shadow:none;background:transparent}
#payInfoBody{min-width:0;overflow:hidden}
.fw{--blue:#1d4ed8;--ink:#172b4d;--heading:#123b67;--muted:#607089;--line:#dfe7f1;color:var(--ink);font-size:15px;line-height:1.55;background:#fff;min-width:0}
.fw *{box-sizing:border-box}
.fw-simple{max-width:1080px;margin-inline:auto;border-radius:8px}
.fw button,.fw input,.fw select,.fw textarea{font:inherit}
.fw button{cursor:pointer;border:1px solid #cbd7e6;border-radius:6px;padding:5px 10px;min-height:32px;background:#fff;color:#243b5d;line-height:1.4;white-space:nowrap}
.fw button:hover{background:#f4f7fb}
.fw button:disabled{opacity:.5;cursor:not-allowed}
.fw .fw-primary{background:var(--blue);border-color:var(--blue);color:#fff}
.fw .fw-primary:hover{background:#1e40af}
.fw .fw-link{border:0;background:transparent;color:var(--blue);padding:4px 5px;text-align:left}
.fw .fw-link:hover{background:#eef4ff}
.fw-muted{color:var(--muted);font-size:13px;line-height:1.55}
.fw-heading{display:flex;align-items:center;gap:16px;padding:10px 16px 8px}
.fw-heading-info{flex:1 1 auto;min-width:0;position:relative}
.fw-title-line{display:flex;align-items:center;gap:10px}
.fw-heading h2{margin:0;font-size:20px;font-weight:700;line-height:1.4;color:var(--heading);white-space:nowrap}
.fw-event{overflow-wrap:anywhere;line-height:1.4;margin-top:1px}
.fw-heading .fw-receipt-top{flex:none;min-height:36px;padding:6px 14px}
.fw-search{display:block;flex:0 1 280px;width:280px;min-width:140px;margin:0}
.fw-search input{width:100%;min-width:0;height:36px;border:1px solid #bdcbdd;border-radius:6px;padding:6px 10px;color:var(--ink);background:#fff;outline:none}
.fw-search input:focus{border-color:#6b9ce9;box-shadow:0 0 0 3px rgba(29,78,216,.12)}
.fw-metrics{display:flex;align-items:center;flex-wrap:wrap;gap:6px 0;margin:0;padding:8px 16px 10px;border-bottom:1px solid var(--line);background:#fafcff}
.fw-metric{display:flex;align-items:baseline;gap:6px;padding:0 14px;white-space:nowrap;border-left:1px solid var(--line)}
.fw-metric:first-child{padding-left:0;border-left:0}
.fw-metric span{color:var(--muted);font-size:13px}
.fw-metric strong{font-size:20px;font-weight:700;color:var(--blue);line-height:1.4;font-variant-numeric:tabular-nums}
.fw-allocated-note{margin-left:4px;white-space:nowrap}
.fw-snapshot{color:var(--muted);font-size:13px;position:static}
.fw-snapshot summary{cursor:pointer;color:#496681;font-weight:500;list-style:none;min-height:32px;display:flex;align-items:center;white-space:nowrap}
.fw-snapshot summary::-webkit-details-marker{display:none}
.fw-snapshot summary:hover{color:var(--blue);text-decoration:underline}
.fw-snapshot-content{position:absolute;z-index:10;left:0;top:36px;width:360px;max-width:calc(100vw - 64px);padding:10px 12px;background:#fff;border:1px solid #cedbee;border-radius:8px;box-shadow:0 6px 18px #173f701a;white-space:normal}
.fw-snapshot p{margin:0}
.fw-snapshot .fw-foot{padding:4px 0 0}
.fw-table-wrap{width:100%;overflow-x:auto;border-bottom:1px solid var(--line)}
.fw-table{width:100%;min-width:0;border-collapse:collapse;white-space:nowrap;font-size:14px}
/* ID 限定覆盖后加载的 admin-ui 单元格 padding，避免改动其他面板。 */
#payInfoBody .fw-table th{padding:8px 10px;text-align:left;background:#f7f9fc;color:#52667f;font-weight:700;border-bottom:1px solid var(--line)}
#payInfoBody .fw-table td{padding:8px 10px;border-bottom:1px solid #edf1f6;vertical-align:middle}
#payInfoBody .fw-table tbody tr:last-child>td{border-bottom:0}
.fw-table tbody tr:hover>td{background:#fbfdff}
.fw-num{font-variant-numeric:tabular-nums;white-space:nowrap}
#payInfoBody .fw-company-table .fw-num{text-align:right}
.fw-company-cell{display:flex;align-items:center;gap:7px;min-width:0}
.fw .fw-company-name{white-space:normal;overflow-wrap:anywhere;text-align:left;color:var(--heading);font-weight:700;font-size:15px;padding:3px 0;min-width:0}
.fw-people-count{flex:none;white-space:nowrap}
.fw-company-table td:first-child{white-space:normal}
.fw-company-table td.fw-num .fw-muted{white-space:nowrap;font-size:12px}
.fw-money-link{border:0!important;padding:3px 0!important;font-weight:700;color:var(--blue)!important;font-variant-numeric:tabular-nums;background:transparent!important}
.fw-negative{color:#b42318!important}
.fw-row-actions{display:flex;align-items:center;gap:4px}
.fw .fw-small-button{padding:4px 8px;color:var(--blue);border-color:#d9e3f1;font-size:14px}
.fw .fw-invoice-chip{padding:3px 8px;font-size:13px;border-color:#dce4ef;background:#f3f6fa;color:#53657e;border-radius:5px;min-height:32px}
.fw .fw-status-matched{background:#edf8f2;color:#176145;border-color:#d4eadd}
.fw .fw-status-conflict{background:#fff3ec;color:#9a491b;border-color:#f0daca}
#payInfoBody .fw-table .fw-detail-cell{padding:0 10px 8px;background:#f7faff}
.fw-account-detail{border-left:2px solid #9bbbe7;padding:7px 10px 0}
.fw-detail-head{display:flex;align-items:center;gap:6px 10px;padding-bottom:5px;min-width:0;flex-wrap:wrap}
.fw-detail-head>strong{overflow-wrap:anywhere;white-space:normal}
.fw-detail-actions{margin-left:auto;display:flex;gap:4px}
.fw-remark-inline{display:flex;align-items:center;gap:5px;min-width:0;font-size:13px}
.fw-remark-inline input{min-width:0;width:145px;max-width:100%;border:1px solid #bdcbdd;border-radius:5px;padding:4px 8px;min-height:32px;color:var(--ink);background:#fff}
.fw-account-list{display:flex;flex-direction:column}
.fw-account-row{border-top:1px solid #e6edf6}
.fw-account-main{display:flex;align-items:center;gap:10px;min-height:40px;white-space:nowrap}
.fw .fw-account-toggle{display:flex;flex-direction:column;align-items:flex-start;min-width:0;flex:1 1 220px;border:0;background:transparent;text-align:left;padding:4px 0;color:var(--ink);white-space:normal}
.fw-account-toggle strong{overflow-wrap:anywhere}
.fw-account-toggle .fw-muted{font-size:12px}
.fw-account-toggle:hover{background:#edf5ff}
.fw-account-main>span{font-size:14px;flex:none}
.fw-account-actions{display:flex;gap:3px;margin-left:2px}
.fw-account-open{padding:2px 0 7px;overflow-x:auto;max-width:100%}
.fw-account-summary{display:flex;align-items:center;gap:6px 12px;flex-wrap:wrap;color:#53657a;font-size:14px;padding:2px 0 5px}
.fw-allocation-total b,.fw-account-main b,.fw-account-summary b{display:inline-block;white-space:nowrap;font-variant-numeric:tabular-nums}
.fw-account-invoice{font-size:13px;color:#64748b;padding:4px 0;border-top:1px dashed #d7e2ef;overflow-wrap:anywhere;white-space:normal}
.fw-similar{margin-top:5px;color:var(--muted);font-size:13px;white-space:normal}
.fw-similar summary,.fw-foot summary{cursor:pointer;color:#496681}
.fw-foot{padding:7px 16px;color:var(--muted);font-size:13px}
.fw-foot:empty{display:none}
.fw-blank{padding:18px;text-align:center;color:#8091a8}
.fw-error{padding:24px 16px;color:#b42318}
.fw-error strong{display:block;margin-bottom:6px}
.fw-dialog-bg :focus-visible,.fw :focus-visible{outline:3px solid #83a9f2;outline-offset:2px}

.fw-dialog-bg{position:fixed;inset:0;z-index:1200;background:rgba(15,35,65,.42);display:flex;align-items:center;justify-content:center;padding:16px;overflow:auto;overscroll-behavior:contain}
.fw-dialog{display:flex;flex-direction:column;width:min(760px,100%);max-height:90vh;max-height:90dvh;overflow:hidden;background:#fff;border:1px solid #dbe5f0;border-radius:10px;box-shadow:0 18px 60px rgba(15,35,65,.24);padding:0;font-size:15px;line-height:1.55;color:var(--ink)}
.fw-dialog-head{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--line);flex:0 0 auto;background:#fff}
.fw-dialog-head h3{margin:0;font-size:17px;color:var(--heading);min-width:0;overflow-wrap:anywhere}
.fw-dialog-head .fw-dialog-x{margin-left:auto;border:0;padding:3px 7px;font-size:21px;color:#52667f;min-width:40px;min-height:40px;flex-shrink:0}
.fw-dialog-body{flex:1 1 auto;padding:12px 16px;overflow:auto;min-height:0;overscroll-behavior:contain}
.fw-dialog-body>p:first-child{margin-top:0;margin-bottom:8px}
.fw-dialog-footer{display:flex;justify-content:flex-end;gap:8px;padding:9px 16px;border-top:1px solid var(--line);flex:0 0 auto;background:#fff}
.fw-form-error{margin-top:7px;color:#b42318;font-size:13px}
.fw-form-error:empty{display:none}
.fw-field{display:flex;flex-direction:column;gap:4px;margin:7px 0;color:#52667f;font-size:13px}
.fw-field input,.fw-field select,.fw-field textarea{width:100%;min-width:0;border:1px solid #bdcbdd;border-radius:6px;padding:7px 9px;color:var(--ink);background:#fff}
.fw-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}
.fw-allocation-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:6px;margin-top:9px;overscroll-behavior:contain;max-width:100%}
.fw-allocation-table{width:100%;min-width:630px;border-collapse:collapse;font-size:14px}
.fw-dialog .fw-allocation-table th,.fw-dialog .fw-allocation-table td{padding:8px 9px;border-bottom:1px solid #edf1f6;text-align:left;vertical-align:middle;height:44px;font-size:14px!important}
.fw-allocation-table thead th{background:#f7f9fc;color:#52667f;font-weight:700}
.fw-allocation-table tbody th{font-weight:700;background:#fff}
.fw-allocation-table tbody th small{display:block;color:#8091a8;font-weight:400;font-size:13px}
.fw-fee-check{display:flex;align-items:center;gap:7px;cursor:pointer;white-space:nowrap;min-height:28px}
.fw-dialog .fw-allocation-table .fw-fee-check,.fw-dialog .fw-allocation-table .fw-fee-check span{font-size:14px}
.fw-dialog .fw-allocation-table input[type=checkbox]{width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;flex-shrink:0;accent-color:var(--blue)}
.fw-allocation-table .is-disabled{color:#bdc8d6;text-align:center}
.fw-allocation-table .is-locked{color:#71839a;white-space:normal;min-width:130px}
.fw-allocation-table th:first-child{position:sticky;left:0;z-index:1;box-shadow:1px 0 #dfe7f1;min-width:125px;max-width:150px;overflow-wrap:anywhere}
.fw-allocation-table thead th:first-child{z-index:2}
.fw-allocation-total{padding:8px 0 0;color:#52667f;font-size:14px}
.fw-invoice-source{display:inline-block;padding:3px 8px;border-radius:4px;background:#edf4ff;color:#315f9c;font-size:13px}
.fw-invoice-list{margin:8px 0}
.fw-invoice-list div{display:flex;gap:12px;padding:7px 0;border-bottom:1px solid #eef2f6}
.fw-invoice-list dt{width:70px;flex:0 0 70px;color:#63758b}
.fw .fw-invoice-list dd{margin:0;min-width:0;overflow-wrap:anywhere;word-break:break-word}
.fw-history{margin-top:10px;color:#52667f;font-size:13px}
.fw-history summary{cursor:pointer;color:#315f9c}
.fw-invoice-account-list{margin-top:9px;padding-top:6px;border-top:1px dashed #d7e2ef;color:#607089;font-size:13px;line-height:1.8;overflow-wrap:anywhere}
.fw-invoice-actions{display:flex;gap:8px}
.fw-invoice-actions button{font-size:13px}
#collectionReceiptModal .collection-modal{padding:18px 20px;font-size:15px}
#collectionReceiptModal h3{margin-bottom:10px}
#collectionReceiptModal .modal-field{margin:8px 0}
#collectionReceiptModal .modal-buttons{margin-top:12px}

@media(min-width:701px){
 .fw-company-table{table-layout:fixed}
 .fw-company-table th:first-child{width:26%}
 .fw-company-table th:nth-child(5){width:100px}
 .fw-company-table th:nth-child(6){width:134px}
 .fw-company-table .fw-num{width:auto}
 #payInfoBody .fw-company-table th:first-child,#payInfoBody .fw-company-table td:first-child{padding-left:16px}
 #payInfoBody .fw-company-table th:last-child,#payInfoBody .fw-company-table td:last-child{padding-right:16px}
}
@media(min-width:701px) and (max-width:1100px){
 .fw-heading{gap:12px}
 .fw-search{flex-basis:220px;width:220px}
 .fw-metric{padding:0 10px}
 .fw-metric strong{font-size:19px}
 .fw-company-cell{gap:5px}
 .fw-account-main{gap:8px;flex-wrap:wrap}
 .fw-account-main .fw-account-toggle{flex-basis:190px}
}
@media(max-width:700px){
 .fw-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;padding:10px 12px 8px;align-items:center}
 .fw-heading-info{grid-column:1;min-width:0}
 .fw-heading h2{font-size:19px}
 .fw-title-line{gap:8px;flex-wrap:wrap}
 .fw-snapshot summary{min-height:32px}
 .fw-snapshot-content{top:36px;max-width:calc(100vw - 76px)}
 .fw-heading .fw-receipt-top{grid-column:2;grid-row:1;min-height:40px;padding:6px 10px}
 .fw-heading .fw-search{grid-column:1/-1;grid-row:2;width:100%;min-width:0;max-width:none;margin:0}
 .fw-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:3px 12px;padding:6px 12px}
 .fw-metric{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:0;min-width:0;border:0}
 .fw-metric span{font-size:12px;line-height:16px}
 .fw-metric:nth-child(even){border-left:1px solid var(--line);padding-left:12px}
 .fw-metric strong{font-size:18px;line-height:22px}
 .fw-allocated-note{grid-column:1/-1;margin:0;font-size:12px;line-height:16px}
 .fw-table-wrap{overflow:visible}
 .fw-table{min-width:0;display:block;white-space:normal}
 .fw-table thead{display:none}
 .fw-table tbody,.fw-table tr{display:block}
 #payInfoBody .fw-table tbody tr.fw-company-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 10px;padding:6px 12px;border-bottom:1px solid var(--line)}
 #payInfoBody .fw-table tbody tr.fw-company-row>td{display:grid;grid-column:1/-1;grid-template-columns:64px minmax(0,1fr);gap:6px;padding:4px 0;border:0;min-width:0;align-items:center}
 .fw-table tbody tr.fw-company-row>td::before{content:attr(data-label);color:#71839a;font-size:13px;text-align:left}
 .fw-table tbody tr.fw-company-row>td:nth-child(1)::before{content:'公司'}
 .fw-table tbody tr.fw-company-row>td:nth-child(2)::before{content:'应收'}
 .fw-table tbody tr.fw-company-row>td:nth-child(3)::before{content:'已收'}
 .fw-table tbody tr.fw-company-row>td:nth-child(4)::before{content:'余额'}
 .fw-table tbody tr.fw-company-row>td:nth-child(5)::before{content:'开票资料'}
 .fw-table tbody tr.fw-company-row>td:nth-child(6)::before{content:'操作'}
 #payInfoBody .fw-table tbody tr.fw-company-row>td:nth-child(6){display:flex;justify-content:flex-end;flex-wrap:wrap}
 .fw-table tbody tr.fw-company-row>td:nth-child(6)::before{margin-right:auto}
 .fw-table tbody tr.fw-company-row>td.fw-num .fw-muted{grid-column:2}
 .fw-table tbody tr.fw-company-row>td:nth-child(5) button{justify-self:start}
 .fw-table tbody tr.fw-company-row>td .fw-money-link{justify-self:end}
 .fw-table tbody tr.fw-company-row>td button{min-height:40px}
 .fw-company-cell{flex-wrap:wrap;gap:0 6px}
 .fw-company-cell .fw-company-name{width:100%}
 #payInfoBody .fw-table .fw-detail-cell{display:block;padding:0 12px 8px}
 .fw-detail-cell::before{display:none}
 .fw-account-detail{padding:7px 8px 0}
 .fw-detail-head{align-items:center;gap:5px 8px}
 .fw-detail-head>strong{width:100%}
 .fw-detail-actions{margin-left:0;gap:4px}
 .fw-remark-inline{width:100%}
 .fw-remark-inline input{flex:1;width:auto}
 .fw-account-main{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px 6px;white-space:normal;padding:6px 0;min-width:0}
 .fw-account-main .fw-account-toggle{grid-column:1/-1;min-width:0;min-height:40px;padding:2px 0}
 .fw-account-main>span:not(.fw-account-actions){font-size:12px;min-width:0}
 .fw-account-main b{display:block;font-size:14px}
 .fw-account-actions{grid-column:1/-1;justify-content:flex-end;margin:0}
 .fw-account-actions button{min-height:40px}
 .fw-account-open{padding:2px 0 7px}
 .fw-account-summary{gap:4px 10px;font-size:13px}
 .fw-foot{padding:7px 12px}
 .fw-dialog{width:100%;max-height:90dvh}
 .fw-dialog-head{padding:10px 12px}
 .fw-dialog-body{padding:10px 12px}
 .fw-dialog-footer{padding:9px 12px}
 .fw-dialog input:not([type=checkbox]),.fw-dialog select,.fw-dialog textarea,.fw-search input,.fw-remark-inline input{font-size:16px!important;min-height:44px}
 .fw-form-grid{grid-template-columns:1fr}
 .fw-allocation-table thead{display:table-header-group}
 .fw-allocation-table tbody{display:table-row-group}
 .fw-allocation-table tr{display:table-row}
 .fw-allocation-table th,.fw-allocation-table td{display:table-cell}
 .fw-dialog-footer button{min-height:44px;flex:1}
 .fw-invoice-list div{display:block}
 .fw-invoice-list dt{width:auto;margin-bottom:3px}
 #collectionReceiptModal .collection-modal{padding:16px}
}
