.ledger-filter-shell{display:flex;flex-direction:column;gap:16px;width:100%}
.ledger-tabs-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.ledger-tabs{display:inline-grid!important;width:auto!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
.usage-request-records-label{display:inline-flex;align-items:center;justify-content:center}
.group-request-tabs{display:inline-grid!important;width:auto!important;grid-template-columns:minmax(0,1fr)!important;margin-bottom:1rem}
.ledger-preview-badge{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--text-secondary,#7a746b);border:1px solid var(--border-color,#e7e2d9);padding:5px 10px;border-radius:6px;background:var(--bg-secondary,#faf9f6)}
.ledger-status-dot{width:6px;height:6px;border-radius:50%;background:#b79352}
.ledger-stat-grid .data-stat-card{min-height:102px}
.ledger-stat-icon{color:#8b7d65;background:#f2eee6}
.ledger-stat-icon.income{background:#edf6f0;color:#3a8062}
.ledger-stat-icon.expense{background:#fbf0e8;color:#b7784d}
.ledger-stat-value{font-variant-numeric:tabular-nums;letter-spacing:-.025em}
.income{color:#358362!important}.expense{color:#b97b50!important}
.ledger-filter-area{display:flex;flex-direction:column;gap:12px}
.ledger-filter-grid{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}
.ledger-field{display:flex;flex-direction:column;gap:7px;min-width:132px;flex:1;color:inherit;font-size:13px;font-weight:500}
.ledger-field>span{opacity:.74}.ledger-field .input{width:100%;min-height:38px;font-size:13px}
.ledger-search-field{min-width:208px;flex:1.5}
.ledger-search{position:relative}.ledger-search>svg{position:absolute;left:11px;top:11px;opacity:.4;pointer-events:none}.ledger-search .input{padding-left:35px}
.ledger-filter-buttons{display:flex;gap:8px;align-items:center}.ledger-filter-buttons .btn{min-height:38px;font-size:13px;gap:6px;white-space:nowrap}
.ledger-help{display:flex;align-items:center;gap:7px;font-size:12px;line-height:1.6;opacity:.66}
.ledger-help-dot{width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:50%;font-size:10px;font-family:serif;font-weight:600;flex-shrink:0}
.ledger-error{font-size:13px;color:#c45151}
.ledger-panel{display:flex;flex-direction:column;flex:1;min-height:0;width:100%;overflow:hidden}
.ledger-table-caption{padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #ebe7e0;font-size:12px}
.ledger-table-caption>div{display:flex;align-items:center;gap:10px}.ledger-table-caption>div>strong{font-weight:600;font-size:14px}.ledger-table-caption>div>span{opacity:.5}
.ledger-table-caption>span{opacity:.7}.ledger-current-balance{font-size:14px;letter-spacing:.01em;color:inherit;font-variant-numeric:tabular-nums}
.ledger-table-scroll{overflow:auto;flex:1;min-height:0;scrollbar-width:thin}
.ledger-table{border-collapse:separate;border-spacing:0;min-width:920px;width:100%;font-size:13px;text-align:left}
.ledger-table th{position:sticky;top:0;background:#f8f7f4;z-index:1;padding:13px 20px;font-weight:500;font-size:12px;white-space:nowrap;color:#79776e;border-bottom:1px solid #ebe7e0}
.ledger-table td{padding:15px 20px;border-bottom:1px solid #efede7;vertical-align:middle}
.ledger-table tbody>tr:hover>td{background:#fcfbf8}.ledger-table tbody>tr.ledger-row-open>td{background:#faf8f3}
.ledger-time{font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}.ledger-time span{display:block;margin-top:4px;opacity:.45;font-size:11px}
.ledger-kind{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:#50816b}
.ledger-kind.debit{color:#a17c60}.ledger-kind-dot{height:5px;width:5px;border-radius:50%;background:currentColor}
.ledger-source{margin-top:5px;opacity:.5;font-size:11px;white-space:nowrap}
.ledger-amount{font-weight:600;font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap}
.ledger-balance{font-size:13px;font-variant-numeric:tabular-nums;color:#7d7b74}
.ledger-remark{font-size:12px;max-width:300px;min-width:210px}.ledger-remark>div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.73}
.ledger-remark code{display:block;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;opacity:.35;margin-top:5px}
.ledger-detail-button{display:flex;align-items:center;gap:4px;white-space:nowrap;border:0;background:transparent;color:#a9874d;font-size:12px;padding:7px 0;cursor:pointer}
.ledger-detail-button svg{width:13px;height:13px}.ledger-detail-button>span{display:flex;transition:transform .15s}.ledger-chevron-open{transform:rotate(90deg)}
.ledger-detail-row td{padding:0 20px 16px!important;background:#faf8f3!important}
.ledger-detail-box{padding:16px 18px;border:1px solid #e8e2d6;border-radius:8px;background:#fffdfa}
.ledger-detail-top{display:flex;justify-content:space-between;align-items:center;font-size:12px;margin-bottom:16px}.ledger-detail-top>span{opacity:.42;font-size:11px}
.ledger-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px 24px}.ledger-detail-grid dt{opacity:.5;font-size:11px;margin-bottom:5px}.ledger-detail-grid dd{font-size:12px;margin:0;word-break:break-all}
.ledger-settlement-note{border-top:1px solid #ebe7de;font-size:11px;padding-top:12px;margin-top:15px;opacity:.5}
.ledger-empty{min-height:250px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;color:#99958b;font-size:12px}.ledger-empty>svg{width:28px;height:28px;opacity:.6}.ledger-empty strong{font-size:14px;font-weight:500;color:inherit}.ledger-empty .btn{margin-top:6px}
.ledger-pagination{display:flex;align-items:center;justify-content:space-between;width:100%;padding:4px 0;font-size:12px;color:#8c877c;gap:12px}
.ledger-pagination-controls{display:flex;gap:12px;align-items:center}.ledger-pagination-controls>label{display:flex;align-items:center;gap:5px}.ledger-pagination-controls .input{font-size:12px;min-width:66px;padding:5px 8px;min-height:31px}.ledger-pagination-controls .btn{font-size:12px;min-height:31px;padding:5px 11px}
.dark .ledger-preview-badge{background:#262521;border-color:#3c3930;color:#a29c90}
.dark .ledger-stat-icon{background:#333027}.dark .ledger-stat-icon.income{background:#20372d}.dark .ledger-stat-icon.expense{background:#3c2f25}
.dark .ledger-table-caption,.dark .ledger-table th,.dark .ledger-table td{border-color:#35332d}
.dark .ledger-table th{background:#26251f;color:#aaa59a}.dark .ledger-table tbody>tr:hover>td,.dark .ledger-table tbody>tr.ledger-row-open>td,.dark .ledger-detail-row td{background:#2b2923!important}
.dark .ledger-detail-box{background:#25241f;border-color:#444034}.dark .ledger-settlement-note{border-color:#444034}.dark .ledger-balance{color:#aaa59a}
@media(max-width:1100px){.ledger-field{min-width:140px}.ledger-search-field{min-width:210px}.ledger-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.ledger-preview-badge{font-size:10px;padding:4px 7px}.ledger-field{min-width:calc(50% - 10px)}.ledger-search-field{min-width:100%}.ledger-filter-buttons{width:100%;justify-content:flex-end}.ledger-help{font-size:11px}.ledger-table-caption{padding:12px}.ledger-pagination{flex-wrap:wrap}.ledger-pagination-controls{gap:8px;flex-wrap:wrap}.ledger-detail-grid{grid-template-columns:1fr}}
