/* Billing composition and item ranking use the same scoped invoice snapshot. */
.report-fee-breakdown,
.report-fee-ranking{min-width:0;max-width:100%}
.report-fee-breakdown{margin:16px 0;border:1px solid #e0ebed;border-radius:10px;background:#fff;box-shadow:none}
.report-fee-breakdown>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:50px;box-sizing:border-box;padding:13px 18px;list-style:none;color:#365963;font-size:14px;font-weight:600;line-height:1.6;cursor:pointer}
.report-fee-breakdown>summary::-webkit-details-marker{display:none}
.report-fee-breakdown>summary::after{content:'⌄';color:#8fa3aa;flex:none;font-size:15px}
.report-fee-breakdown[open]>summary{border-bottom:1px solid #edf2f3}
.report-fee-breakdown[open]>summary::after{transform:rotate(180deg)}
.report-fee-breakdown>.mobile-report-finance-charts{margin:0}
.desktop-reports .report-fee-breakdown .mobile-report-donut-card,
.mobile-reports .report-fee-breakdown .mobile-report-donut-card{margin:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.report-fee-ranking.card{padding:18px 20px;margin:16px 0;border:1px solid #e0ebed;border-radius:10px;background:#fff;box-shadow:none}
.report-fee-breakdown>.report-fee-ranking.card{margin:0;border:0;border-top:1px solid #edf2f3;border-radius:0;background:transparent}
.report-fee-ranking>h2{margin:0 0 8px;color:#365963;font-size:15px;font-weight:600;line-height:1.5}
.report-fee-ranking .report-fee-note{margin:0 0 12px;color:#7c929b;font-size:12px;line-height:1.7;overflow-wrap:anywhere}
.report-fee-ranking-list{display:grid;gap:0;min-width:0;margin:0}
.report-fee-ranking .report-fee-rank-row{display:grid;grid-template-columns:28px minmax(0,1fr) minmax(70px,110px) minmax(100px,max-content);align-items:center;gap:12px;width:100%;min-width:0;min-height:54px;padding:11px 0;border:0;border-bottom:1px solid #edf2f3;border-radius:0;background:#fff;color:#486b75;text-align:left;box-shadow:none;font-variant-numeric:tabular-nums}
.report-fee-ranking .report-fee-rank-row:last-child{border-bottom:0}
.report-fee-rank-index{display:flex;align-items:center;justify-content:center;align-self:center;width:23px;min-height:23px;color:#90a2a8;font-size:12px;line-height:1.5}
.report-fee-ranking .report-fee-rank-row:nth-child(-n+3) .report-fee-rank-index{color:#049ba6;font-weight:600}
.report-fee-rank-name{min-width:0;color:#446670;font-size:13px;line-height:1.65;overflow-wrap:anywhere}
.report-fee-rank-quantity{min-width:0;color:#879aa2;font-size:12px;line-height:1.6;text-align:right;overflow-wrap:anywhere}
.report-fee-rank-amount{min-width:0;color:#315d69;font-size:14px;font-weight:600;line-height:1.6;text-align:right;overflow-wrap:anywhere}
.report-fee-ranking-source{min-width:0;max-width:100%;margin:10px 0 0;border-top:1px solid #e8eff1}
.report-fee-ranking-source>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;box-sizing:border-box;padding:10px 0;list-style:none;color:#789098;font-size:12px;line-height:1.6;cursor:pointer}
.report-fee-ranking-source>summary::-webkit-details-marker{display:none}
.report-fee-ranking-source>summary::after{content:'⌄';flex:none;color:#8fa3aa;font-size:15px}
.report-fee-ranking-source[open]>summary::after{transform:rotate(180deg)}
.report-fee-ranking-source>.tablewrap{width:100%;min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.report-fee-ranking-source table{width:100%;font-variant-numeric:tabular-nums}
.report-fee-ranking-source th{white-space:nowrap}
.report-fee-ranking-source td{overflow-wrap:anywhere}
.report-fee-ranking-source td button{white-space:nowrap}
.report-fee-ranking button:focus-visible,
.report-fee-ranking summary:focus-visible,
.report-fee-breakdown>summary:focus-visible{outline:2px solid #049ba6;outline-offset:3px}
@media(hover:hover){
 .report-fee-ranking .report-fee-rank-row:hover{background:#f4fbfc}
 .report-fee-ranking-source>summary:hover{color:#168b96}
}
@media screen and (max-width:720px){
 .mobile-reports .report-fee-breakdown{margin:10px 0;border-color:#e1ebed;border-radius:9px}
 .mobile-reports .report-fee-breakdown>summary{min-height:46px;padding:11px 12px;font-size:13px}
 .mobile-reports .report-fee-breakdown>.mobile-report-finance-charts{margin:0}
 .mobile-reports #report-content>section.report-fee-ranking.card{padding:12px;margin:10px 0;border:1px solid #e1ebed;border-radius:9px;box-shadow:none}
 .mobile-reports .report-fee-breakdown>.report-fee-ranking.card{margin:0;padding:12px;border:0;border-top:1px solid #edf2f3;border-radius:0}
 .mobile-reports .report-fee-ranking>h2{margin:0 0 6px;font-size:13px;color:#365963}
 .mobile-reports .report-fee-ranking .report-fee-note{margin:0 0 8px;font-size:10px;line-height:1.65;color:#83989f}
 .mobile-reports .report-fee-ranking .report-fee-rank-row{grid-template-columns:22px minmax(0,1fr) minmax(78px,max-content);grid-template-areas:'rank name amount' 'rank quantity amount';gap:1px 8px;min-height:60px;padding:10px 0}
 .mobile-reports .report-fee-rank-index{grid-area:rank;width:20px;min-height:22px;font-size:11px}
 .mobile-reports .report-fee-rank-name{grid-area:name;font-size:12px;line-height:1.6}
 .mobile-reports .report-fee-rank-quantity{grid-area:quantity;text-align:left;font-size:10px;line-height:1.6}
 .mobile-reports .report-fee-rank-amount{grid-area:amount;max-width:108px;font-size:13px;line-height:1.6}
 .mobile-reports .report-fee-ranking-source{margin-top:4px}
 .mobile-reports .report-fee-ranking-source>summary{min-height:44px;padding:8px 0;font-size:11px}
 .mobile-reports .report-fee-ranking-source>.tablewrap table{min-width:470px}
 .mobile-reports .report-fee-ranking-source>.tablewrap th,
 .mobile-reports .report-fee-ranking-source>.tablewrap td{padding:10px 8px;font-size:12px}
 .mobile-reports .report-fee-ranking-source .mobile-data-cards{margin:0;gap:6px}
 .mobile-reports .report-fee-ranking-source .mobile-data-card{margin:0;padding:10px;border-color:#edf2f3;box-shadow:none}
}
