/* Openbook — checkout. Layout only: type, colour, buttons, radio cards and form fields come from
   styles.css and account.css. Mobile first: one column, 44px+ tap targets, nothing wider than the screen. */

.checkout{max-width:40rem}
.checkout .account-card .fine{margin-top:.85rem}

.checkout .methods{margin-top:1rem}
.checkout .option{align-items:flex-start;min-height:3.25rem}
.checkout .option span{min-width:0;overflow-wrap:anywhere}
.checkout .option input{margin-top:.15rem}

.method-panel{margin-top:1.1rem;display:grid;gap:.85rem}
.method-panel:empty{display:none}
.method-steps{margin:0;padding-left:1.25rem;display:grid;gap:.5rem;color:var(--text-soft);font-size:.9375rem;line-height:1.5}
.method-steps li{padding-left:.15rem}
.checkout .btn-block{min-height:3rem}

.status-badge{
  display:inline-flex;align-items:center;gap:.45rem;min-height:2rem;padding:.25rem .8rem;
  border-radius:99px;border:1px solid var(--line-strong);font-size:.875rem;font-weight:600;
}
.status-badge[data-state="pending"]{background:rgba(255,206,18,.1);border-color:rgba(255,206,18,.4);color:#ffe27a}
.status-badge[data-state="paid"]{background:rgba(120,220,160,.12);border-color:rgba(120,220,160,.45);color:#9ae6b9}
.order-ref{display:block;margin-top:.2rem;font:600 .9rem ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--muted);overflow-wrap:anywhere}

.support-links{display:flex;flex-wrap:wrap;gap:.35rem 1.25rem}
.support-links a{display:inline-flex;align-items:center;min-height:2.5rem;color:var(--accent-bright);text-decoration:underline;text-underline-offset:.2em;overflow-wrap:anywhere}

.signin{display:grid}
.signin .consent{margin-top:.25rem}
.signin .provider-grid{margin-top:1rem}
.signin .provider{min-height:3rem;justify-content:center}
.signin-form{display:grid}
.signin-form .btn{margin-top:1.1rem}
.signin .text-btn{min-height:2.5rem}

@media (min-width:640px){
  .checkout .tiers{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (prefers-reduced-motion:reduce){
  .checkout *{transition:none !important;animation:none !important}
}
