.billing-toolbar,.billing-emitter,.billing-card-head,.billing-card-actions,.billing-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.billing-share-sheet #billing-share-direct{width:100%}.billing-share-sheet #billing-share-native{margin-top:14px;font-size:12px}.billing-share-sheet>.dialog-body>.form-field{margin:0}.billing-share-sheet #billing-share-phone-hint{margin-top:-12px}
.billing-share-sheet{width:min(580px,calc(100vw - 32px))}.billing-share-sheet .dialog-body{display:grid;gap:20px}.billing-share-summary{display:grid;gap:7px;padding:18px;background:var(--sage);border-left:3px solid var(--gold);border-radius:8px;color:var(--forest);overflow-wrap:anywhere}.billing-share-summary strong{font-size:16px}.billing-share-summary span{font-size:13px}.billing-share-summary small{font-size:11px;color:var(--muted)}.billing-share-sheet .field-hint{line-height:1.7;margin:10px 0 0;font-size:12px}.billing-share-downloads{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.billing-share-downloads>.button{flex:1;font-size:12px}.billing-share-sheet #billing-share-native{width:100%}.billing-share-chat-options summary{font-size:13px;font-weight:700;cursor:pointer;color:var(--forest)}.billing-share-chat-options .form-field{margin-top:16px;font-size:12px}.billing-share-chat-options textarea{resize:vertical;font:inherit;width:100%}.billing-share-mail-note{font-size:11px;color:var(--muted);line-height:1.8;margin:0;padding-top:15px;border-top:1px solid var(--line)}.billing-share-mail-note strong{color:#76591f;font-weight:600}
@media(max-width:600px){.billing-share-sheet{width:100%;max-width:100%}.billing-share-sheet .dialog-body{padding:20px 16px}.billing-share-downloads>.button{padding:11px 9px;font-size:11px}.billing-detail-footer #billing-share{flex-basis:100%;order:-1}}
.billing-toolbar{margin-bottom:20px;flex-wrap:wrap}.billing-toolbar>div{display:flex;gap:10px;flex-wrap:wrap}
.billing-mode,.billing-badge{display:inline-flex;align-items:center;gap:7px;background:var(--sand);color:#76591f;border-radius:6px;padding:7px 10px;font-size:11px;font-weight:700}.billing-mode svg{width:16px;height:16px}
.billing-emitter{padding:20px 24px;border:1px solid var(--line);border-left:3px solid var(--forest);border-radius:10px;background:var(--white);margin-bottom:16px}.billing-emitter>div{min-width:0}.billing-emitter h2{font-size:16px;margin:0 0 6px;overflow-wrap:anywhere}.billing-emitter p{font-size:12px;margin:0;color:var(--muted);line-height:1.7;overflow-wrap:anywhere}.billing-emitter button{flex-shrink:0}
.billing-notice{font-size:12px;line-height:1.8;color:#68654f;padding:12px 16px;background:#f8f5e9;border:1px solid #ebe5cf;border-radius:8px;margin:0 0 24px}.billing-notice a{text-decoration:underline;text-underline-offset:3px;font-weight:600}
.billing-list{display:grid;gap:12px}.billing-card{border:1px solid var(--line);background:var(--white);border-radius:10px;padding:20px 24px;min-width:0}.billing-card-head{align-items:flex-start}.billing-card h3{font-size:15px;margin:10px 0 6px;overflow-wrap:anywhere}.billing-card p{color:var(--muted);font-size:12px;margin:0;line-height:1.8}.billing-card strong{font-size:22px;font-variant-numeric:tabular-nums;white-space:nowrap}.billing-card-actions{justify-content:flex-start;margin-top:16px;padding-top:14px;border-top:1px solid var(--line);flex-wrap:wrap}.billing-card-actions .danger{margin-left:auto}.billing-reference{font-size:11px;letter-spacing:.4px;font-weight:700;color:var(--forest)}
.billing-sheet{width:min(820px,calc(100vw - 32px));max-width:820px}.billing-sheet .dialog-body{display:grid;gap:18px}.billing-sheet .form-field{margin:0;min-width:0}.billing-sheet .form-row{margin:0;gap:14px}.billing-sheet .dialog-body>h3{margin:4px 0 0;font-size:13px;padding-bottom:10px;border-bottom:1px solid var(--line)}.billing-sheet .field-hint{margin:0;line-height:1.7}.billing-sheet textarea{font:inherit;resize:vertical}
.billing-lines{display:grid;gap:12px}.billing-line{display:grid;grid-template-columns:minmax(160px,1fr) 80px 106px 106px 38px;gap:10px;align-items:end;padding:14px;background:var(--paper);border:1px solid var(--line);border-radius:8px}.billing-line .form-field{font-size:11px}.billing-line input{width:100%;min-width:0;padding:10px}.billing-line>button{margin-bottom:3px}.billing-line .form-field:first-child{grid-column:1}.billing-totals{background:var(--sage);padding:18px 20px;border-radius:8px;display:grid;gap:10px;font-size:13px}.billing-totals>div{display:flex;justify-content:space-between;gap:16px}.billing-totals>div:last-child{border-top:1px solid #173e3525;padding-top:12px;font-size:18px;font-weight:700}.billing-totals span{color:var(--green)}
.billing-detail-heading h3{font-size:18px;margin:0;overflow-wrap:anywhere}.billing-detail-heading p{margin:6px 0 0;color:var(--muted);font-size:12px}.billing-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.billing-detail-grid h4{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin:0 0 10px}.billing-detail-grid p{font-size:13px;line-height:1.8;margin:0;overflow-wrap:anywhere}.billing-detail-table{width:100%;border-collapse:collapse;font-size:12px}.billing-detail-table th{text-align:left;font-size:10px;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);padding:10px 6px}.billing-detail-table td{padding:12px 6px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.billing-detail-table th:last-child,.billing-detail-table td:last-child{text-align:right;white-space:nowrap}.billing-detail-notes{font-size:12px;overflow-wrap:anywhere;line-height:1.8}.billing-detail-footer{flex-wrap:wrap}.billing-search{margin-bottom:18px;max-width:520px}.billing-empty .empty-icon{margin:auto}.billing-count{font-size:12px;color:var(--muted);margin:0 0 16px}.billing-actions-note{font-size:11px;color:var(--muted);line-height:1.6}
@media(max-width:850px){.billing-line{grid-template-columns:1fr 1fr 1fr 38px}.billing-line .form-field:first-child{grid-column:1/-1}.billing-line>button{grid-column:4}.billing-emitter{align-items:flex-start}.billing-toolbar .button{font-size:12px}}
@media(max-width:600px){.billing-emitter{padding:18px;flex-direction:column;gap:12px}.billing-toolbar>div{width:100%}.billing-toolbar>div>.button{flex:1;padding:11px 12px}.billing-card{padding:18px}.billing-card-head{gap:8px}.billing-card strong{font-size:19px}.billing-card-actions .button{padding:9px 11px;font-size:11px}.billing-sheet{width:100%;max-width:100%;margin:0 0 0 auto}.billing-sheet .dialog-body{padding:20px 16px}.billing-sheet .form-row{grid-template-columns:1fr}.billing-line{padding:12px;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.billing-line>button{grid-column:3;justify-self:end}.billing-line input{padding:10px 7px}.billing-line .form-field{font-size:10px}.billing-detail-grid{grid-template-columns:1fr;gap:18px}.billing-detail-table{font-size:11px}.billing-detail-table th,.billing-detail-table td{padding:10px 3px}.billing-detail-footer{gap:8px}.billing-detail-footer .button{flex:1;font-size:11px;padding:11px}.billing-toolbar{gap:12px}.billing-search{max-width:none}.billing-sheet .dialog-header h2{font-size:21px}}
@media print{body.billing-print>*{display:none!important}body.billing-print>#workspace-root{display:block!important}body.billing-print #workspace-root>*{display:none!important}body.billing-print #billing-detail-dialog{display:block!important;position:static;width:100%;max-width:none;max-height:none;overflow:visible;border:0;box-shadow:none;margin:0;padding:0}body.billing-print #billing-detail-dialog .dialog-header,body.billing-print #billing-detail-dialog .dialog-footer{display:none!important}body.billing-print #billing-detail-dialog .dialog-body{overflow:visible;max-height:none;padding:0}body.billing-print .billing-notice{color:#333;background:white;border:1px solid #aaa}body.billing-print .billing-detail-table tr{break-inside:avoid}body.billing-print .billing-totals{break-inside:avoid}body.billing-print #billing-detail-dialog::backdrop{background:transparent}}
.billing-sri-panel{border-top:1px solid var(--line);padding-top:18px}.billing-sri-panel h3{font-size:15px;margin:0 0 14px}.billing-sri-record{border:1px solid var(--line);border-radius:8px;padding:16px;margin-bottom:12px;min-width:0}.billing-sri-record p{font-size:12px;line-height:1.8;overflow-wrap:anywhere}.billing-sri-status{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px}.billing-access-key{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;font-size:12px;line-height:1.8}.billing-status-authorized{color:var(--forest);background:var(--sage)}.billing-status-rejected{background:var(--rose);color:#9b382a}.billing-sri-message{background:var(--paper);border-left:2px solid var(--gold);padding:10px}.billing-ride{display:grid;gap:18px}.billing-ride .billing-notice{margin:0;overflow-wrap:anywhere}.billing-ride .billing-detail-heading h3{font-size:20px}.billing-sri-panel .billing-card-actions{align-items:stretch}
@media print{body.billing-print{overflow:visible!important;height:auto!important}body.billing-print #billing-detail-dialog{height:auto!important}body.billing-print .billing-sri-panel{display:none!important}body.billing-print .billing-ride .billing-detail-grid{grid-template-columns:1fr 1fr}body.billing-print .billing-ride .billing-detail-table{font-size:10px}}
.billing-certificate{border-left-color:var(--gold)}.billing-certificate-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex-shrink:0}.billing-certificate-actions .button{white-space:nowrap}.billing-certificate #billing-certificate-hint{margin-top:4px;font-size:11px}.billing-certificate input[type=file],#billing-certificate-file{max-width:100%;width:100%}
@media(max-width:850px){.billing-certificate{align-items:flex-start;flex-direction:column}.billing-certificate-actions{width:100%}}

/* Shared invoice sheet for the on-screen RIDE and its printable PDF. */
.billing-document{display:block;color:#243b33;font-size:11px;line-height:1.65;min-width:0;background:#fff}
.billing-invoice-header{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:0 0 20px;margin:0 0 18px;border-bottom:3px solid #d6b36a;break-inside:avoid}
.billing-invoice-brand{display:flex;align-items:center;gap:13px;min-width:0}.billing-invoice-brand img{width:76px;height:86px;object-fit:contain;flex:none}.billing-invoice-brand>div{display:flex;flex-direction:column;line-height:1.12}.billing-invoice-brand span{font-size:15px;letter-spacing:3px;text-transform:uppercase}.billing-invoice-brand strong{font-size:28px;letter-spacing:-1px;color:#173e35;font-weight:800}.billing-invoice-brand small{font-size:8px;letter-spacing:.15px;margin-top:9px;color:#64736b;white-space:nowrap}
.billing-invoice-reference{text-align:right;flex:none}.billing-invoice-reference>p{font-size:9px;letter-spacing:1.5px;text-transform:uppercase;font-weight:700;color:#68766d;margin:0 0 8px}.billing-invoice-reference h3{font-size:19px;letter-spacing:-.5px;margin:0 0 9px;color:#173e35;white-space:nowrap;font-variant-numeric:tabular-nums}.billing-invoice-reference>span{font-size:10px;color:#68766d}.billing-invoice-reference>span strong{margin-left:6px;color:#243b33;font-weight:600}
.billing-invoice-state{display:flex;justify-content:space-between;gap:12px;padding:9px 12px;margin-bottom:21px;background:#edf3ec;border-left:3px solid #2c644e;font-size:9px;color:#24513e;break-inside:avoid}.billing-invoice-state strong{font-size:9px;letter-spacing:.45px}.billing-invoice-state.is-test{background:#fcf5e5;border-color:#c3a052;color:#74581f}.billing-invoice-notice{margin-bottom:22px;font-size:10px;border-radius:0;border-width:0 0 0 3px;border-color:#c3a052;padding:10px 13px}
.billing-invoice-parties{display:grid;grid-template-columns:1.1fr 1fr;gap:32px;margin-bottom:26px;break-inside:avoid}.billing-invoice-parties section{min-width:0}.billing-document h4{font-size:9px;letter-spacing:1.1px;text-transform:uppercase;margin:0 0 10px;color:#64736b;font-weight:700}.billing-invoice-parties p{font-size:10px;line-height:1.7;margin:3px 0;overflow-wrap:anywhere}.billing-invoice-parties .billing-party-name{font-size:12px;color:#173e35;font-weight:750;line-height:1.55;margin:0 0 8px}.billing-invoice-parties p strong{font-weight:600}.billing-invoice-parties .billing-regime{font-size:8px;font-weight:700;letter-spacing:.15px;margin-top:10px;color:#3d5c4e}
.billing-invoice-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;font-weight:700;margin:0 0 10px;color:#173e35;break-after:avoid}.billing-invoice-caption>span{font-size:9px;font-weight:400;color:#68766d}
.billing-invoice-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:10px;margin:0 0 22px;font-variant-numeric:tabular-nums}.billing-col-code{width:7%}.billing-col-description{width:36%}.billing-col-quantity{width:8%}.billing-col-unit{width:18%}.billing-col-discount{width:14%}.billing-col-total{width:17%}.billing-invoice-table thead{display:table-header-group}.billing-invoice-table th{font-size:8px;text-transform:uppercase;letter-spacing:.5px;font-weight:700;color:#315545;background:#eef3ed;padding:11px 8px;border-bottom:1px solid #b9cabc;text-align:right;white-space:nowrap}.billing-invoice-table th:first-child,.billing-invoice-table th:nth-child(2){text-align:left}.billing-invoice-table td{padding:13px 8px;border-bottom:1px solid #e5ebe3;vertical-align:top;text-align:right;white-space:nowrap}.billing-invoice-table td:first-child{color:#7a847d;font-size:9px;text-align:left;white-space:normal;overflow-wrap:anywhere}.billing-invoice-table td:nth-child(2){text-align:left;white-space:normal;overflow-wrap:anywhere;font-weight:550}.billing-invoice-table td:last-child{font-weight:650}.billing-invoice-table tr{break-inside:avoid}
.billing-invoice-bottom{display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:30px;align-items:start;margin-bottom:25px;break-inside:avoid}.billing-invoice-additional{min-width:0}.billing-invoice-additional h4{margin:0 0 8px}.billing-invoice-additional h4:not(:first-child){margin-top:21px}.billing-invoice-additional p{font-size:10px;line-height:1.8;margin:4px 0;overflow-wrap:anywhere}.billing-invoice-additional p strong{font-weight:600}.billing-payment-amount{display:block;color:#173e35}.billing-invoice-totals{padding:5px 0 0;gap:0;background:#f5f7f3;border:1px solid #e3e9df;border-radius:0;font-size:10px}.billing-invoice-totals>div{padding:7px 14px;gap:12px;align-items:center}.billing-invoice-totals>div>span{color:#536359}.billing-invoice-totals>div>strong{font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}.billing-invoice-totals>div:last-child{border-top:1px solid #cedacb;border-left:3px solid #d6b36a;padding:13px 14px 13px 11px;margin-top:5px;font-size:19px;background:#e5eee2;color:#173e35}.billing-invoice-totals>div:last-child>span{font-size:10px;text-transform:uppercase;letter-spacing:.8px;color:#173e35;font-weight:700}.billing-invoice-totals>div:last-child>strong{font-weight:800}
.billing-invoice-authorization{display:grid;grid-template-columns:1fr 1fr;gap:13px 25px;padding:17px 18px;background:#fafbf9;border:1px solid #e4e9e1;break-inside:avoid;margin-bottom:22px}.billing-invoice-authorization>div{min-width:0}.billing-invoice-authorization h4{font-size:8px;margin-bottom:6px}.billing-fiscal-key{font-family:Consolas,'Courier New',monospace;font-size:9px;line-height:1.8;letter-spacing:.15px;overflow-wrap:anywhere;margin:0;color:#354f41;font-variant-numeric:tabular-nums}.billing-invoice-authorization>p{grid-column:1/-1;margin:0;font-size:9px;color:#68766d;overflow-wrap:anywhere}.billing-invoice-authorization>p strong{font-weight:600}
.billing-invoice-footer{display:flex;justify-content:space-between;gap:20px;padding-top:14px;border-top:1px solid #e4e9e1;color:#68766d;font-size:8px;break-inside:avoid}.billing-invoice-footer strong{font-size:10px;color:#315545;font-weight:600}.billing-invoice-footer span{text-align:right;max-width:55%}
@media screen and (max-width:600px){.billing-invoice-header{gap:12px;align-items:flex-start;flex-direction:column}.billing-invoice-brand img{width:59px;height:68px}.billing-invoice-brand strong{font-size:25px}.billing-invoice-reference{text-align:left;width:100%;padding-top:12px;border-top:1px solid #e4e9e1}.billing-invoice-reference h3{font-size:20px}.billing-invoice-state{flex-direction:column;gap:3px}.billing-invoice-parties{grid-template-columns:1fr;gap:20px}.billing-invoice-caption{align-items:flex-start;flex-direction:column;gap:4px}.billing-invoice-table{font-size:8px}.billing-invoice-table th{font-size:6px;letter-spacing:0;padding:8px 3px}.billing-invoice-table td{padding:10px 3px}.billing-invoice-table td:first-child{font-size:7px}.billing-col-code{width:7%}.billing-col-description{width:29%}.billing-col-quantity{width:8%}.billing-col-unit{width:22%}.billing-col-discount{width:17%}.billing-col-total{width:17%}.billing-invoice-bottom{grid-template-columns:1fr;gap:20px}.billing-invoice-totals{font-size:11px}.billing-invoice-authorization{grid-template-columns:1fr;padding:14px;gap:15px}.billing-invoice-footer{gap:12px;flex-direction:column}.billing-invoice-footer span{text-align:left;max-width:none}}
@page billing-invoice{size:A4;margin:12mm}
@media print{body.billing-print{page:billing-invoice;background:#fff!important;color:#243b33!important}body.billing-print #billing-detail-dialog{overflow:visible!important;inset:auto!important;transform:none!important;border-radius:0!important;animation:none!important;opacity:1!important}body.billing-print #billing-detail-dialog::backdrop{display:none!important}body.billing-print #billing-detail-content{display:block!important}body.billing-print .billing-document{display:block;font-size:8.5pt;-webkit-print-color-adjust:exact;print-color-adjust:exact}body.billing-print .billing-invoice-header{padding-bottom:16px;margin-bottom:15px}body.billing-print .billing-invoice-parties{margin-bottom:21px}body.billing-print .billing-invoice-table th{padding-top:9px;padding-bottom:9px}body.billing-print .billing-invoice-table td{padding-top:10px;padding-bottom:10px}body.billing-print .billing-invoice-state,body.billing-print .billing-invoice-notice{margin-bottom:18px}body.billing-print .billing-invoice-notice{background:#fcf5e5;border:0;border-left:3px solid #c3a052;color:#74581f}body.billing-print .billing-invoice-bottom{margin-bottom:20px}body.billing-print .billing-invoice-authorization{margin-bottom:18px}body.billing-print .billing-invoice-closing{break-inside:avoid}}

@media print{body.billing-print #workspace-root,body.billing-print #billing-detail-dialog,body.billing-print #billing-detail-content{background:#fff!important;box-shadow:none!important}}
@media print{html:has(body.billing-print){background:#fff!important}}

.billing-confirm-sheet{max-width:720px}.billing-confirm-sheet .dialog-body{gap:16px}.billing-confirm-summary{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:19px 21px;background:var(--sage);border-left:3px solid #c5a15b;border-radius:7px}.billing-confirm-summary>div{display:grid;gap:7px;min-width:0}.billing-confirm-label{font-size:10px;font-weight:700;color:var(--forest);letter-spacing:.6px;text-transform:uppercase}.billing-confirm-summary>div>strong{font-size:20px;letter-spacing:-.5px;color:var(--forest);font-variant-numeric:tabular-nums}.billing-confirm-summary small{font-size:11px;color:#5d7163}.billing-confirm-amount{text-align:right;flex-shrink:0}.billing-confirm-amount>span{font-size:10px;text-transform:uppercase;color:#566b5d}.billing-confirm-summary .billing-confirm-amount>strong{font-size:27px}.billing-confirm-issuer{font-size:10px;line-height:1.7;color:var(--muted);margin:-5px 0 1px;overflow-wrap:anywhere}.billing-confirm-customer{border:1px solid var(--line);border-radius:8px;padding:15px 17px}.billing-confirm-customer>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none}.billing-confirm-customer>summary::-webkit-details-marker{display:none}.billing-confirm-customer>summary>span:first-child{display:grid;gap:6px;min-width:0}.billing-confirm-customer>summary strong{font-size:13px;line-height:1.5;overflow-wrap:anywhere}.billing-confirm-customer>summary small{font-size:11px;line-height:1.8;color:var(--muted);overflow-wrap:anywhere}.billing-confirm-customer>summary>span:last-child{font-size:11px;font-weight:650;color:var(--forest);text-decoration:underline;text-underline-offset:3px;flex-shrink:0}.billing-confirm-customer-fields{display:grid;gap:14px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.billing-confirm-lines{display:grid;gap:0}.billing-confirm-line{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}.billing-confirm-line>div{display:grid;gap:6px;min-width:0}.billing-confirm-line>div>strong{font-size:12px;font-weight:650;overflow-wrap:anywhere}.billing-confirm-line small{color:var(--muted);font-size:11px}.billing-confirm-line>strong{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:13px}.billing-confirm-totals{display:flex;justify-content:flex-end;gap:25px;padding:0 0 4px;font-size:11px}.billing-confirm-totals>div{display:flex;gap:10px}.billing-confirm-totals span{color:var(--muted)}.billing-confirm-options{font-size:11px;color:var(--muted)}.billing-confirm-options>summary{cursor:pointer;width:fit-content}.billing-confirm-options>.form-field{margin-top:13px!important}.billing-confirm-signature{font-size:10px;line-height:1.8;color:#4b6b58;margin:0;overflow-wrap:anywhere}.billing-confirm-intent{font-size:11px;line-height:1.8;color:#42614e;margin:0}.billing-confirm-intent.is-test{padding:9px 12px;background:var(--sand);color:#76591f;border-radius:6px}.billing-confirm-sheet #billing-sign-progress{font-size:12px;color:var(--forest);margin:0}.billing-confirm-sheet .dialog-footer .button{min-width:125px}
@media(max-width:600px){.billing-confirm-summary{padding:16px;gap:12px}.billing-confirm-summary>div>strong{font-size:16px}.billing-confirm-summary .billing-confirm-amount>strong{font-size:23px}.billing-confirm-label{font-size:8px}.billing-confirm-summary small{font-size:10px}.billing-confirm-amount>span{font-size:9px}.billing-confirm-customer{padding:14px}.billing-confirm-customer>summary{gap:12px}.billing-confirm-totals{gap:18px;font-size:10px}.billing-confirm-line{gap:14px}.billing-confirm-sheet .dialog-footer .button{min-width:0;font-size:12px}.billing-confirm-customer-fields .form-row{gap:14px}}
