.invoice-dialog{width:min(960px,calc(100% - 24px))}
.portal-invoice-actions{display:flex;justify-content:flex-end;margin:0 0 12px}
.portal-invoice-document{--invoice-bronze:#a66c32;--invoice-ink:#241b14;--invoice-muted:#6e6257;overflow:hidden;border:1px solid #dfd2c4;border-radius:20px;background:#fffdf9;color:var(--invoice-ink);padding:clamp(20px,5vw,48px);box-shadow:0 24px 80px rgba(0,0,0,.25);font-family:Inter,Arial,sans-serif}
.portal-invoice-header{display:flex;justify-content:space-between;gap:28px;align-items:flex-start;padding-bottom:25px;border-bottom:3px solid var(--invoice-ink)}
.invoice-brand{display:flex;gap:17px;align-items:center}.invoice-brand img{width:58px;height:58px;object-fit:contain;border-radius:12px}.invoice-brand h2{font-size:clamp(1.8rem,5vw,2.7rem);line-height:1;margin:5px 0 7px;letter-spacing:.04em}.invoice-brand p{margin:0;color:var(--invoice-muted)}
.invoice-kicker{color:var(--invoice-bronze);font-size:10px;font-weight:900;letter-spacing:.17em;text-transform:uppercase}
.portal-invoice-number{display:grid;justify-items:end;align-content:start;gap:8px}.portal-invoice-number strong{font-size:24px}.invoice-status{display:inline-flex;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.09em}.invoice-status.due{background:#f8e8d4;color:#754515}.invoice-status.paid{background:#e2f1e8;color:#245b39}
.portal-invoice-parties{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding:25px 0}.portal-invoice-parties dl{margin:0}.portal-invoice-parties dl div{display:grid;grid-template-columns:minmax(78px,.45fr) 1fr;gap:12px;padding:8px 0;border-top:1px solid #e8e0d7}.portal-invoice-parties dt{color:var(--invoice-muted);font-size:12px}.portal-invoice-parties dd{margin:0;text-align:right;overflow-wrap:anywhere}.portal-invoice-parties dd strong{font-size:15px}
.portal-invoice-description{margin:0 0 20px;padding:14px 16px;border-left:3px solid var(--invoice-bronze);background:#f7f1e9;color:#51463d;line-height:1.6}
.portal-invoice-table-wrap{overflow-x:auto}.portal-invoice-table-wrap table{width:100%;border-collapse:collapse}.portal-invoice-table-wrap th,.portal-invoice-table-wrap td{padding:12px 10px;border-bottom:1px solid #ded5cb;text-align:right}.portal-invoice-table-wrap th{background:#f2ebe2;color:#65584c;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.portal-invoice-table-wrap th:first-child,.portal-invoice-table-wrap td:first-child{text-align:left}
.portal-invoice-totals{width:min(370px,100%);margin:23px 0 25px auto}.portal-invoice-totals div{display:flex;justify-content:space-between;gap:18px;padding:7px 0}.portal-invoice-totals .balance{margin-top:7px;padding-top:13px;border-top:2px solid var(--invoice-ink);font-size:19px}
.invoice-payment-state{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:26px;align-items:center;margin:28px 0;padding:22px;border:1px solid #ddcdbb;border-radius:16px;background:#f8f2ea}.invoice-payment-state h3{margin:5px 0 9px;font-size:22px}.invoice-payment-state p{margin:7px 0;line-height:1.55;color:#554a40}.invoice-payment-state figure{margin:0;text-align:center}.invoice-payment-state img{display:block;width:172px;max-width:100%;height:auto;margin:auto;background:#fff;padding:9px;border:1px solid #ddd;border-radius:10px}.invoice-payment-state figcaption{margin-top:7px;color:var(--invoice-muted);font-size:11px;font-weight:700}.invoice-payment-state.paid{grid-template-columns:auto 1fr;background:#eef7f1;border-color:#c7dfce}.invoice-state-mark{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#2c7550;color:#fff;font-size:25px}.invoice-verification-note{font-size:12px}
.portal-invoice-history{padding:18px 0;border-top:1px solid #ded5cb}.portal-invoice-history h3{margin:0 0 11px;font-size:15px}.portal-invoice-history p{color:#4d433a}.portal-invoice-history ul{list-style:none;padding:0;margin:0}.portal-invoice-history li{display:flex;justify-content:space-between;gap:18px;padding:8px 0;border-top:1px solid #eee7df}
.portal-invoice-footer{display:grid;gap:4px;margin-top:26px;padding-top:19px;border-top:2px solid var(--invoice-ink);color:var(--invoice-muted);font-size:12px;line-height:1.5}.portal-invoice-footer strong{color:var(--invoice-ink);font-size:14px}.portal-invoice-footer p{margin:8px 0 0}
.invoice-print-page{margin:0;padding:12mm;background:#fff;color:#241b14}
@media(max-width:700px){.portal-invoice-header{display:grid}.portal-invoice-number{justify-items:start}.portal-invoice-parties{grid-template-columns:1fr;gap:12px}.invoice-payment-state{grid-template-columns:1fr}.invoice-payment-state figure{order:-1}.portal-invoice-document{padding:18px}.portal-invoice-table-wrap th,.portal-invoice-table-wrap td{padding:9px 7px;font-size:13px}}
@media(max-width:390px){.invoice-dialog{width:calc(100% - 10px)}.invoice-brand{align-items:flex-start}.invoice-brand img{width:46px;height:46px}.portal-invoice-parties dl div{grid-template-columns:70px 1fr}.portal-invoice-document{padding:14px}.invoice-payment-state{padding:15px}.portal-invoice-table-wrap{margin-inline:-14px}.portal-invoice-table-wrap table{min-width:460px}.portal-invoice-actions .card-button{width:100%;min-height:46px}}
@media print{.invoice-print-page{padding:0}.portal-invoice-document{border:0;border-radius:0;box-shadow:none;padding:0;font-size:12px}.portal-invoice-header{padding-bottom:16px}.invoice-brand img{width:48px;height:48px}.invoice-brand h2{font-size:30px}.portal-invoice-parties{padding:15px 0}.portal-invoice-parties dl div{padding:5px 0}.portal-invoice-description{margin-bottom:12px;padding:9px 12px}.portal-invoice-table-wrap{overflow:visible}.portal-invoice-table-wrap th,.portal-invoice-table-wrap td{padding:8px}.portal-invoice-totals{margin:14px 0 14px auto}.portal-invoice-totals div{padding:4px 0}.portal-invoice-totals .balance{padding-top:8px;font-size:16px}.invoice-payment-state{break-inside:avoid;margin:14px 0;padding:14px;grid-template-columns:minmax(0,1fr) 128px;gap:16px}.invoice-payment-state h3{font-size:18px}.invoice-payment-state p{margin:4px 0;line-height:1.4}.invoice-payment-state img{width:110px;padding:5px}.portal-invoice-history{padding:10px 0}.portal-invoice-history li{padding:5px 0}.portal-invoice-footer{break-inside:avoid;margin-top:10px;padding-top:10px}@page{size:letter;margin:10mm}}
