.billing-page{min-height:100svh;display:flex;flex-direction:column}.billing-main{width:100%;max-width:1200px;flex:1;margin-block:0;padding-block:36px 48px}.billing-nav{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;font-size:13px}.billing-nav a{color:var(--green);min-height:44px;display:inline-flex;align-items:center;text-underline-offset:4px}.billing-gate{max-width:680px;margin:32px auto;text-align:center;padding:40px 24px}.billing-gate p{margin:14px 0 24px;color:var(--muted)}.billing-button{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;padding:10px 16px;border-radius:9px}.billing-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:24px;align-items:start}.billing-grid>*{min-width:0}.billing-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 16px}.billing-page .field{font-size:13px;margin:16px 0}.billing-page .field input,.billing-page .field select,.billing-page .field textarea{font:inherit;font-size:16px;min-height:46px;background:#fff}.billing-page button{min-height:44px;white-space:normal;font-size:13px}.billing-shop-label{min-width:220px;max-width:360px}.billing-check{display:flex;gap:12px;align-items:flex-start;font-size:13px;line-height:1.8;margin:18px 0;padding:14px;background:#f5f8f5;border:1px solid var(--line);border-radius:10px;cursor:pointer}.billing-check input{width:22px;height:22px;min-height:22px;flex:0 0 22px;accent-color:var(--green);margin-top:2px}.billing-check small{display:block;font-size:11px;color:var(--muted)}.billing-check:has(input:disabled){color:var(--muted)}.billing-quote{position:static}.billing-totals{display:grid;gap:12px;margin:20px 0}.billing-totals p{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px}.billing-totals strong{font-weight:600;overflow-wrap:anywhere}.billing-totals .billing-total-due{border-top:1px solid var(--line);padding-top:16px;font-size:17px;align-items:center}.billing-total-due strong{font-size:26px;color:var(--green)}.billing-tax-note{border-top:1px solid var(--line);padding-top:16px;margin-top:20px}.billing-page .notice{font-size:13px}.billing-purchase,.billing-history{margin-top:24px}.billing-section-head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:18px}.billing-status{display:inline-flex;padding:6px 12px;border-radius:8px;font-size:12px;background:#fff3dc;color:#805618;max-width:100%;overflow-wrap:anywhere}.billing-status[data-status=paid]{color:#176542;background:#e6f3e9}.billing-status[data-status=cancelled],.billing-status[data-status=expired]{color:#6e7773;background:#edf0ed}.billing-payment-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}.billing-payment-grid>*{min-width:0}.billing-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.billing-qr{text-align:center;padding:18px;border:1px solid var(--line);border-radius:12px;background:#fafcf9}.billing-qr img{display:block;width:min(100%,300px);height:auto;aspect-ratio:1;object-fit:contain;background:white;margin:16px auto}.billing-qr .hint{margin-top:12px}.billing-bank{margin:14px 0;padding:16px;border:1px solid var(--line);border-radius:10px}.billing-bank dt{font-size:11px;color:var(--muted);margin-top:9px}.billing-bank dt:first-child{margin-top:0}.billing-bank dd{margin:2px 0 0;font-size:15px;overflow-wrap:anywhere}.billing-subsection{border-top:1px solid var(--line);padding-top:22px;margin-top:24px}.billing-subsection form{max-width:620px}.billing-documents{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}.billing-document{padding:10px 14px;min-height:44px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:9px;font-size:12px;color:var(--green);overflow-wrap:anywhere;text-decoration:none}.billing-document-pending{background:#f7f8f6;color:var(--muted)}.billing-history-list{display:grid;gap:14px;margin-top:14px}.billing-history-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 24px;padding:18px;border:1px solid var(--line);border-radius:12px}.billing-history-item h3{font-size:16px}.billing-history-item .hint{margin-top:5px}.billing-history-item .billing-documents{grid-column:1/-1;margin:0}.billing-history-side{text-align:right;display:grid;gap:10px;justify-items:end;align-content:start}.billing-history-amount{font-size:19px;font-weight:600;color:var(--ink)}.billing-empty{padding:28px 18px;border:1px dashed var(--line);border-radius:10px;text-align:center;color:var(--muted);font-size:13px}.billing-page input[type=file]{padding:8px;max-width:100%;font-size:13px}.billing-page input[type=file]::file-selector-button{font:inherit;border:1px solid var(--line);border-radius:7px;padding:9px;background:#edf4ef;color:#295b47;margin-right:10px}.billing-page :is(p,h2,h3,a){overflow-wrap:anywhere}.billing-page [hidden]{display:none!important}
@media(max-width:850px){.billing-grid{grid-template-columns:minmax(0,1fr);gap:18px}.billing-quote{position:static}.billing-payment-grid{gap:22px}.billing-main{padding-block:28px}.billing-page .intro{align-items:flex-start}}
@media(max-width:600px){.billing-page .topbar{height:auto;min-height:76px;align-items:flex-start;flex-wrap:wrap;padding-block:14px}.billing-nav{gap:4px 14px}.billing-page .intro{display:block}.billing-shop-label{max-width:none;min-width:0}.billing-fields,.billing-payment-grid{grid-template-columns:minmax(0,1fr);gap:0}.billing-page .card{padding:22px 17px}.billing-page .field{margin:14px 0}.billing-page .intro p{font-size:13px}.billing-history-item{grid-template-columns:minmax(0,1fr);padding:16px}.billing-history-side{text-align:left;justify-items:start;display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between}.billing-history-item .billing-documents{grid-column:auto}.billing-page .notice{font-size:12px}.billing-totals .billing-total-due{font-size:16px}.billing-total-due strong{font-size:24px}.billing-section-head>button,.billing-actions button,#upload-slip,#upload-wht{width:100%}.billing-gate{padding:30px 20px}.billing-gate h1{font-size:26px}.billing-documents{display:grid;grid-template-columns:minmax(0,1fr)}.billing-document{width:100%}.billing-check{padding:12px}.billing-page textarea{font-size:16px}}
@media(prefers-reduced-motion:reduce){.billing-page button{transition:none}}
.billing-tax-details{min-width:0;margin:0 0 18px;padding:2px 16px 16px;border:1px solid var(--line);border-radius:12px;background:#fafcf9}.billing-tax-details legend{max-width:100%;padding:0 8px;font-size:14px;font-weight:600;color:var(--green)}.billing-tax-choice{margin-bottom:22px}.billing-tax-details .billing-check{background:#fff;margin-bottom:0}.billing-tax-details .billing-fields{gap:0 14px}.billing-tax-details .field select{width:100%;min-width:0}.billing-tax-details .hint{overflow-wrap:anywhere}
@media(max-width:600px){.billing-tax-details{padding:0 12px 14px}.billing-tax-details legend{font-size:13px}.billing-tax-details .billing-fields{gap:0}}
.billing-coupon{margin:20px 0 0;padding-top:20px;border-top:1px solid var(--line);min-width:0;overflow-wrap:anywhere}.billing-coupon form{display:grid;grid-template-columns:minmax(0,1fr);gap:10px 16px;align-items:end;margin-top:16px}.billing-coupon .field{min-width:0;margin:0}.billing-coupon form>button{margin:0;min-height:46px;border-radius:10px;padding:12px 20px}.billing-coupon #coupon-code-note{grid-column:1/-1}.billing-coupon #coupon-feedback{margin-top:14px}.coupon-summary{display:grid;gap:8px;padding:16px;border:1px solid var(--line);border-radius:10px;margin:14px 0;background:#f5faf6}.coupon-summary p{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.coupon-summary strong{overflow-wrap:anywhere}.billing-coupon #coupon-redeem-button{width:100%;border-radius:10px;min-height:46px;padding:12px 20px}.billing-coupon :is(input,button):focus-visible{outline:3px solid #9bcab8;outline-offset:3px}
@media(max-width:600px){.billing-coupon{margin-top:18px}.billing-coupon form{grid-template-columns:minmax(0,1fr)}.billing-coupon form>button,.billing-coupon #coupon-redeem-button{width:100%}.billing-coupon #coupon-code-note{grid-column:auto}}

.billing-checkout-actions{grid-column:1/-1;min-width:0}.billing-checkout-actions>.hint{margin-top:12px}.billing-payment-choice{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:16px}.billing-payment-choice .field{margin-bottom:0}.billing-payment-choice #create-purchase{margin:0;min-height:48px;border-radius:10px}
@media(max-width:600px){.billing-payment-choice{grid-template-columns:minmax(0,1fr);gap:14px}}

.billing-credit-balance{margin:20px 0}.billing-credit-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:16px 0}.billing-credit-summary>div{border:1px solid var(--line);border-radius:12px;padding:16px;background:#f8fbf9}.billing-credit-summary strong{display:block;font-size:24px;color:var(--green)}.billing-credit-summary p{font-size:12px;color:var(--muted);margin-top:5px}.billing-credit-balance .hint{margin-top:12px}@media(max-width:600px){.billing-credit-summary{grid-template-columns:1fr}}

.billing-line-items{display:grid;gap:12px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.billing-line-item{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#f7faf8;font-size:13px}.billing-line-item>div{min-width:0}.billing-line-item strong,.billing-line-item span{display:block;overflow-wrap:anywhere}.billing-line-item span{font-size:12px;color:var(--muted);margin-top:4px}.billing-line-item b{flex-shrink:0;font-variant-numeric:tabular-nums}#billing-bundle-note{margin-top:16px}@media(max-width:420px){.billing-line-item{flex-wrap:wrap}.billing-line-item b{margin-left:auto}}
