:root{--billing-blue:#173d63;--billing-bg:#f4f6f9}body{margin:0;color:#203448;background:var(--billing-bg);font-family:Arial,sans-serif}.billing-nav{display:flex;align-items:center;gap:20px;flex-wrap:wrap;background:var(--billing-blue);color:#fff;padding:12px 24px;font-size:13px}.billing-nav a{color:#fff}.billing-nav form{margin:0 0 0 auto}.billing-nav button{background:transparent;color:#fff;border:1px solid #c9d6e5;padding:6px 12px;border-radius:4px;cursor:pointer}.login,.admin{background:#fff;margin:40px auto;padding:32px;border:1px solid #dce3eb;border-radius:10px;max-width:1120px}.login{max-width:390px;margin-top:8vh}.eyebrow{letter-spacing:3px;color:#52708e;font-size:12px}.login h1{margin-bottom:12px}.login label,.admin label{display:block;margin:16px 0}.login input,.admin input,.admin select,.admin textarea{display:block;width:100%;box-sizing:border-box;padding:10px;margin-top:6px;border:1px solid #b5c4d4;border-radius:5px;background:#fff}.login button,.admin button,.button{background:var(--billing-blue);color:#fff;padding:10px 16px;border:0;border-radius:5px;cursor:pointer;text-decoration:none;display:inline-block}.error{background:#fff0ee;padding:12px;color:#962c24}.notice{background:#eaf3fb;padding:12px;line-height:1.5}.admin table{width:100%;border-collapse:collapse}.admin td,.admin th{padding:12px;text-align:left;border-bottom:1px solid #e3e8ef;vertical-align:top}.admin pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f1f4f8;padding:12px;max-height:400px;overflow:auto}.admin .columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.admin p,.admin li{line-height:1.6}.role-requester [data-action="save-accounts"],.role-requester [data-action="mark-processed"],.role-requester [data-action="export-one"],.role-requester #btnExportTally,.role-requester #btnExportAll,.role-requester #tab-masters,.role-requester [data-tab="masters"]{display:none!important}#btnResetAll,#btnLoadSamples{display:none!important}.billing-status{font-size:12px;background:#eaf3fb;padding:8px 24px;color:#173d63}.source-note{background:#fff8dc;padding:12px;margin:12px 0}@media(max-width:720px){.admin,.login{margin:16px;padding:20px}.admin .columns{grid-template-columns:1fr}.admin{overflow:auto}}

/* Pilot fix: keep the expanded review inside the card, with its own line-table scrollbar. */
.shell.wide{max-width:1480px;width:100%;}
#requestsTableWrap{max-width:100%;overflow-x:auto;}
#requestsTableWrap .billing-summary-scroll > table{width:100%;min-width:900px;table-layout:fixed;}
#requestsTableWrap .billing-summary-scroll > table > thead > tr > th:nth-child(1){width:15%;}
#requestsTableWrap .billing-summary-scroll > table > thead > tr > th:nth-child(2){width:9%;}
#requestsTableWrap .billing-summary-scroll > table > thead > tr > th:nth-child(3){width:9%;}
#requestsTableWrap .billing-summary-scroll > table > thead > tr > th:nth-child(4){width:18%;}
#requestsTableWrap .billing-summary-scroll > table > thead > tr > th:nth-child(5){width:5%;}
#requestsTableWrap .billing-summary-scroll > table > thead > tr > th:nth-child(6){width:12%;}
#requestsTableWrap .billing-summary-scroll > table > thead > tr > th:nth-child(7){width:9%;}
#requestsTableWrap .billing-summary-scroll > table > thead > tr > th:nth-child(8){width:12%;}
#requestsTableWrap .billing-summary-scroll > table > thead > tr > th:nth-child(9){width:11%;}
#requestsTableWrap .billing-summary-scroll > table > tbody > tr:not(.detail-row) > td{white-space:normal;overflow-wrap:anywhere;vertical-align:top;}
#requestsTableWrap .badge{white-space:normal;}
#requestsTableWrap .detail-panel{min-width:0;max-width:100%;}
#requestsTableWrap .detail-panel .kv-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
#requestsTableWrap .detail-panel .kv-grid > div{min-width:0;overflow-wrap:anywhere;}
#requestsTableWrap .detail-panel .grid.g3{grid-template-columns:repeat(3,minmax(0,1fr));}
#requestsTableWrap .detail-panel .banner{overflow-wrap:anywhere;}
#requestsTableWrap .detail-panel table{table-layout:auto;}
#requestsTableWrap .detail-panel input{max-width:100%;}
@media(max-width:720px){.shell.wide{padding:16px 10px 60px;}.card-head{flex-wrap:wrap;}.card-head .sub{margin-left:0;text-align:left;}}

.billing-scroll-hint{font-size:12px;color:#52708e;margin:8px 0;}
.billing-line-scroll:focus{outline:2px solid #52708e;outline-offset:2px;}

#requestsTableWrap{overflow:visible;}
.billing-summary-scroll{overflow-x:auto;max-width:100%;}
.billing-review{width:100%;min-width:0;margin-top:18px;border:1px solid #dce3eb;border-radius:8px;scroll-margin-top:110px;background:#fafbfc;}
.billing-review-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;background:#eaf3fb;flex-wrap:wrap;}
.billing-review-head h3{font-size:15px;}
.billing-review .detail-panel{border-top:0;}
#requestsTableWrap .billing-review .kv-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
@media(max-width:720px){#requestsTableWrap .billing-review .kv-grid,#requestsTableWrap .billing-review .grid.g3{grid-template-columns:1fr;}.billing-review .field.span2,.billing-review .field.span3{grid-column:1/-1;}}
