/* The reference's invoice structure, adapted to the official hosted checkout. */
.checkout-main{width:min(100% - 32px,474px);margin:28px auto 40px}
.payment-sheet{overflow:hidden;background:var(--surface);border-radius:20px;box-shadow:0 16px 45px var(--sheet-shadow,#0003)}
.invoice-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:23px 24px 19px}
.invoice-brand img{display:block;width:116px;height:auto;filter:var(--logo-filter,none)}
.invoice-security{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;min-height:26px;border-radius:20px;background:var(--surface-raised);color:var(--muted);font-size:11px;white-space:nowrap}
.invoice-security svg{width:13px;height:13px}
.invoice-overview{padding:0 24px 17px}
.invoice-summary{display:flex;align-items:center;gap:12px;min-height:82px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--summary-bg,#1c202c)}
.invoice-avatar{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:12px;background:var(--accent-soft,#382d50);color:var(--accent-ink);font-weight:700;font-size:20px}
.invoice-avatar svg{width:25px;height:25px}
.invoice-product{flex:1;min-width:0}
.invoice-product h1{font-size:15px;font-weight:650;line-height:1.5}
.invoice-product p{font-size:12px;margin-top:5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.invoice-total{max-width:126px;flex-shrink:0;font-size:14px;font-weight:650;line-height:1.5;text-align:end}
.invoice-total bdi{display:block;font-size:18px;font-weight:700}
.invoice-total small{display:block;margin-top:3px;color:var(--muted);font-size:11px;font-weight:400}
.invoice-reference{padding:9px 4px 0;color:var(--muted);font-size:12px;line-height:1.65;overflow-wrap:anywhere}
.invoice-reference bdi{font-size:12px;letter-spacing:.025em}
.invoice-band{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 24px;min-height:42px;border-block:1px solid var(--warning-line,#544429);background:var(--warning-bg);color:var(--warning);font-size:12px}
.invoice-band .number{font-size:14px;font-weight:650;letter-spacing:.06em}
.invoice-band[data-tone=danger]{background:var(--danger-bg);border-color:var(--danger-line,#613040);color:var(--danger)}
.invoice-band[data-tone=success]{background:var(--success-bg);border-color:var(--success-line,#265341);color:var(--success)}
.invoice-band[data-tone=accent]{background:var(--accent-soft,#2c2440);border-color:var(--line);color:var(--accent-ink)}
.invoice-band[data-tone=muted]{background:var(--surface-raised);border-color:var(--line);color:var(--muted)}
.steps{display:flex;align-items:center;gap:10px;padding:19px 24px 17px}
.step{display:flex;align-items:center;gap:7px;white-space:nowrap;color:var(--muted);font-size:12px;font-weight:500}
.step__number{display:grid;place-items:center;width:21px;height:21px;border:1px solid var(--muted);border-radius:50%;font-size:11px;line-height:1}
.step__number svg{width:12px;height:12px;stroke-width:2.3}
.step.is-current{color:var(--accent-ink)}
.step.is-current .step__number{background:var(--accent-strong);border-color:var(--accent-strong);color:white}
.step.is-complete{color:var(--success)}
.step.is-complete .step__number{background:var(--success);border-color:var(--success);color:var(--surface)}
.step.is-expired{color:var(--danger)}
.step.is-expired .step__number{background:var(--danger);border-color:var(--danger);color:var(--surface)}
.steps__line{height:1px;min-width:20px;flex:1;background:var(--line)}
.payment-sheet[data-state=expired] .steps__line{background:var(--danger)}
.payment-sheet[data-state=success] .steps__line{background:var(--success)}
.invoice-method{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:0 24px 4px}
.method-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;background:var(--summary-bg,#212633);border:1px solid var(--line);border-radius:20px;color:var(--muted);font-size:11px}
.method-chip svg{width:14px;height:14px;color:var(--accent-ink)}
.status-chip{display:flex;align-items:center;gap:5px;padding:2px 9px;border-radius:20px;background:var(--warning-bg);color:var(--warning);font-size:11px;white-space:nowrap}
.status-chip::before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor}
.status-chip[data-tone=success]{background:var(--success-bg);color:var(--success)}
.status-chip[data-tone=accent]{background:var(--accent-soft,#302646);color:var(--accent-ink)}
.status-chip[data-tone=danger]{background:var(--danger-bg);color:var(--danger)}
.screen{padding:20px 24px 28px}
.screen h2{font-size:20px;font-weight:650;margin-bottom:9px;line-height:1.55}
.screen-copy{color:var(--muted);font-size:13px;line-height:1.95;max-width:49ch}
.account-form{margin-top:24px}
.label{font-size:14px;font-weight:600;margin-bottom:9px}
.input{border-radius:10px;font-size:16px;min-height:50px}
.field-help{margin-top:9px;color:var(--muted);font-size:12px;line-height:1.8}
.field-error{margin-top:11px;color:var(--danger);font-size:12px;line-height:1.8}
.field-error:empty{display:none}
.account-form>.button{margin-top:23px}
.button{min-height:48px;font-size:14px}
.button svg{width:17px;height:17px}
.button.tertiary{min-height:44px;font-size:12px}
.found-head{display:flex;align-items:center;gap:12px;margin:6px 0 10px}
.found-head>div{min-width:0}
.found-icon{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border-radius:12px;background:var(--success-bg);color:var(--success)}
.found-icon svg{width:24px;height:24px}
.found-head h2{margin:0;color:var(--success)}
.found-head .screen-copy{margin-top:4px;font-size:12px}
.found-details{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:22px;padding:16px 0;border-block:1px solid var(--line)}
.found-details strong{font-size:17px;display:block;min-width:0;overflow-wrap:anywhere;text-align:end}
.found-details>.muted{font-size:13px;flex-shrink:0}
.found-details .muted{font-size:11px}
.found-actions{display:flex;flex-direction:column;gap:4px;margin-top:24px}
.payment-controls{display:grid;grid-template-columns:1fr 137px;gap:12px;margin-top:23px}
.amount-input{font-size:24px;font-weight:650;line-height:1.3;min-height:58px;text-align:left;padding:11px 14px}
.currency-input{min-height:58px;font-size:16px;padding-inline:10px}
.quote{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 16px;margin-top:20px;border:1px solid var(--line);border-radius:12px;background:var(--summary-bg,#1c202c)}
.quote__label{font-size:12px;color:var(--muted)}
.quote__amount{font-size:22px;font-weight:650;white-space:nowrap;direction:ltr;unicode-bidi:isolate;text-align:left}
.quote__amount span{font-size:11px;font-weight:400}
.quote__rate{display:block;color:var(--muted);font-size:11px;margin-top:4px;font-weight:400;line-height:1.7}
.payment-submit{margin-top:22px}
.payment-footnote{font-size:11px;line-height:1.85;text-align:center;color:var(--muted);margin-top:11px}
.change-account{display:block;margin:8px auto -9px}
.result{text-align:center}
.result__symbol{display:grid;place-items:center;width:64px;height:64px;margin:22px auto 17px;border-radius:50%;background:var(--accent-soft,#302646);color:var(--accent-ink)}
.result__symbol svg{width:29px;height:29px}
.result[data-tone=danger] .result__symbol{background:var(--danger-bg);color:var(--danger)}
.result[data-tone=success] .result__symbol{background:var(--success-bg);color:var(--success)}
.result[data-tone=warning] .result__symbol{background:var(--warning-bg);color:var(--warning)}
.result h2{font-size:21px;margin-bottom:7px}
.result .screen-copy{max-width:42ch;margin-inline:auto;font-size:13px}
.result__amount{font-size:30px;line-height:1.4;font-weight:700;margin:20px 0 0;direction:ltr;unicode-bidi:isolate}
.result__amount>span{font-size:14px;color:var(--muted);font-weight:400}
.result__details{overflow:hidden;margin:24px 0 0;border:1px solid var(--line);border-radius:12px;text-align:start;font-size:12px}
.result__row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;border-bottom:1px solid var(--line)}
.result__row:last-child{border-bottom:0}
.result__row dt{color:var(--muted);min-width:63px}
.result__row dd{margin:0;text-align:end;overflow-wrap:anywhere;min-width:0}
.result__row dd bdi{font-variant-numeric:tabular-nums}
.result__actions{display:flex;flex-direction:column;gap:7px;margin-top:22px}
.result__actions:empty{display:none}
.result__hint{color:var(--muted);font-size:11px;line-height:1.85;margin-top:12px}
.result .notice{text-align:start;margin:18px 0 0;font-size:12px;line-height:1.85}
.result .notice+.result__actions{margin-top:18px}
.ready-description{max-width:32ch!important}
.provider-preview{padding:5px 0 0}
.provider-preview h2{margin-top:17px}
.provider-preview>.button{margin-top:11px}
.provider-preview .result__details{margin-bottom:20px}
.spinner{width:19px;height:19px;border:2px solid #ffffff4d;border-top-color:white;border-radius:50%;animation:turn .8s linear infinite}
.result__symbol .spinner{width:28px;height:28px;border-color:var(--line);border-top-color:var(--accent-ink)}
@keyframes turn{to{transform:rotate(360deg)}}
.sheet-foot{display:flex;align-items:center;justify-content:center;gap:6px;min-height:46px;padding:14px 24px;border-top:1px solid var(--line);color:var(--muted);font-size:11px}
.sheet-foot svg{width:13px;height:13px}
.sheet-foot span>span{padding-inline:4px}
.transfer-qr{width:190px;margin:17px auto 23px;padding:10px 8px 7px;background:#fff;border:1px solid #e5e5e5;border-radius:15px;text-align:center}
.transfer-qr img{display:block;width:170px;height:170px;margin:auto}
.transfer-qr figcaption{font-size:10px;color:#656565;margin-top:0;line-height:1.6}
.transfer-field{border:1px solid var(--line);border-radius:12px;background:var(--summary-bg);padding:11px 14px;margin-top:13px}
.transfer-field__head{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted)}
.copy-control{display:flex;align-items:center;justify-content:center;gap:5px;min-width:62px;min-height:34px;padding:4px 9px;border:0;border-radius:8px;background:var(--text);color:var(--surface);font-size:11px;font-weight:600}
.copy-control svg{width:13px;height:13px}
.copy-control:hover{opacity:.86}
.transfer-value{display:block;direction:ltr;overflow-wrap:anywhere;text-align:start;font-family:ui-monospace,'Cascadia Code',monospace;font-size:12px;color:var(--text);padding-top:7px;letter-spacing:.02em}
.transfer-field>p{font-size:11px;color:var(--muted);margin-top:6px;line-height:1.8}
.open-amount{border:1px solid var(--line);border-radius:12px;background:var(--summary-bg);padding:17px 15px;margin-top:14px;text-align:center}
.open-amount>span{font-size:11px;color:var(--muted)}
.open-amount strong{display:block;font-size:14px;font-weight:600;margin-top:5px}
.open-amount p{font-size:11px;color:var(--muted);line-height:1.85;margin-top:5px}
.transfer-view>.button{margin-top:18px}
.scenario-lab{margin-top:20px;border:1px dashed var(--line);border-radius:12px;background:var(--surface);font-size:12px}
.scenario-lab summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;min-height:44px;padding:11px 14px;color:var(--accent-ink);font-size:11px}
.scenario-lab summary .muted{font-size:11px}
.scenario-lab[open] summary{border-bottom:1px solid var(--line)}
.scenario-lab__body{padding:16px}
.scenario-lab__controls{display:flex;flex-direction:column;align-items:stretch;gap:10px}
.scenario-lab__controls .input{font-size:12px;min-height:44px}
.scenario-lab__controls .button{align-self:flex-start;font-size:12px}
.lab-actions{display:flex;flex-wrap:wrap;gap:1px;margin:9px -6px}
.lab-actions .button{font-size:11px}
.scenario-lab .small{font-size:11px;line-height:1.9}
.screen h2:focus{outline:none}
.screen h2:focus-visible{outline:none}
@media(min-width:900px){.checkout-main{margin-top:30px}}
@media(max-width:500px){
  .checkout-main{width:calc(100% - 24px);margin-top:18px;margin-bottom:26px}
  .payment-sheet{border-radius:18px}
  .invoice-header{padding:21px 20px 17px}
  .invoice-overview{padding:0 20px 16px}
  .invoice-summary{gap:10px;padding:12px;min-height:80px}
  .invoice-avatar{width:44px;height:48px;flex-basis:44px;font-size:19px;border-radius:11px}
  .invoice-product h1{font-size:14px}
  .invoice-product p{font-size:11px}
  .invoice-total{max-width:109px;font-size:12px}
  .invoice-total bdi{font-size:17px}
  .invoice-reference{font-size:12px}
  .invoice-band{padding-inline:20px;font-size:11px}
  .steps{padding:17px 20px 15px;gap:9px}
  .step{font-size:11px;gap:6px}
  .step__number{width:20px;height:20px}
  .invoice-method{padding-inline:20px}
  .screen{padding:21px 20px 26px}
  .screen h2{font-size:19px}
  .screen-copy{font-size:12px}
  .account-form{margin-top:22px}
  .payment-controls{grid-template-columns:1fr 126px;gap:10px}
  .quote{padding:14px 12px;gap:10px}
  .quote__amount{font-size:20px}
  .quote__label{font-size:11px}
  .result__symbol{margin-top:22px}
  .result h2{font-size:20px}
  .result .screen-copy{font-size:12px}
  .result__row{padding:12px;font-size:11px;gap:10px}
  .sheet-foot{padding:13px 20px}
  .scenario-lab__body{padding:13px}
}
@media(max-width:350px){.invoice-summary{gap:8px;padding:10px}.invoice-avatar{width:38px;flex-basis:38px;height:44px}.invoice-product h1{font-size:13px}.invoice-total bdi{font-size:15px}.invoice-total{font-size:11px}.invoice-product p{max-width:120px}.payment-controls{grid-template-columns:1fr 114px}}
@media(prefers-reduced-motion:reduce){.spinner{animation:none}}
