#state-loading,#state-error,#state-checkout{width:100%}#state-loading:not([hidden]),#state-error:not([hidden]),#state-checkout:not([hidden]){display:flex;justify-content:center}.checkout-shell{width:100%;box-sizing:border-box;max-width:36rem;border:1px solid rgba(228,228,231,.7);border-radius:1rem;background:#fffffff2;padding:1.5rem 2rem 2rem;box-shadow:0 25px 50px -12px #18181b1a,0 12px 24px -8px #18181b0f;backdrop-filter:blur(8px)}@media(max-width:640px){.checkout-shell{min-height:100dvh;border:none;border-radius:0;box-shadow:none;padding:1.5rem 1rem 2rem}}.checkout-header{display:flex;flex-direction:column;align-items:center;gap:1.25rem;text-align:center;margin-bottom:1.5rem}.checkout-header-trust{display:flex;flex-direction:column;align-items:center;gap:.75rem}.brand-logo-wrap{max-width:100%;padding:0;border:none;background:none;cursor:pointer}.brand-logo-wrap:disabled{opacity:.5;cursor:not-allowed}.checkout-header-leading{display:flex;flex-direction:column;align-items:center;width:100%;min-width:0}.checkout-mobile-title{display:none;margin:0}.brand-logo-wrap img{display:block;margin:0 auto;max-height:5rem;width:auto;max-width:100%;object-fit:contain}.checkout-cart-btn{position:relative;display:none;flex-shrink:0;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;padding:0;border:none;border-radius:9999px;background:none;color:var(--zinc-900);cursor:pointer;transition:background-color .14s ease}.checkout-cart-btn:hover:not(:disabled){background:#0000000f}.checkout-cart-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.checkout-cart-btn:disabled{opacity:.5;cursor:not-allowed}.checkout-cart-icon{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;font-family:Material Symbols Outlined;font-size:1.5rem;font-weight:400;font-style:normal;line-height:1;letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;-webkit-font-smoothing:antialiased}.checkout-cart-badge{position:absolute;top:.125rem;right:.125rem;display:flex;align-items:center;justify-content:center;min-width:1.125rem;height:1.125rem;padding:0 .25rem;border-radius:9999px;background:var(--accent);font-size:.6875rem;font-weight:600;line-height:1;color:#fff;pointer-events:none}@media(max-width:639px){.checkout-header{flex-direction:row;align-items:center;justify-content:space-between;gap:.75rem;box-sizing:border-box;height:55px;margin:-1.5rem -1rem 1rem;padding:0 1rem;border-top:1px solid rgba(228,228,231,.8);border-bottom:1px solid rgba(228,228,231,.8);background:#fff;text-align:left}.checkout-header-leading{flex-direction:row;align-items:center;justify-content:flex-start;gap:.75rem;flex:1;width:auto;min-width:0}.checkout-mobile-title{display:block;font-size:1rem;font-weight:600;color:var(--zinc-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;width:100%}.brand-logo-wrap{flex-shrink:0}.brand-logo-wrap img{margin:0;max-height:2rem;max-width:6.5rem}.checkout-header-trust{display:none}.checkout-cart-btn:not([hidden]){display:inline-flex}}@media(min-width:768px){.checkout-header.checkout-header--has-brand-logo{flex-direction:row;align-items:flex-start;justify-content:space-between;text-align:left}.checkout-header.checkout-header--has-brand-logo .checkout-header-leading{flex-direction:row;align-items:flex-start;width:auto}.checkout-header.checkout-header--has-brand-logo .brand-logo-wrap{align-self:flex-start}.checkout-header.checkout-header--has-brand-logo .brand-logo-wrap img{margin:0;max-height:none;max-width:12.5rem;height:auto;object-fit:contain}.checkout-header.checkout-header--has-brand-logo .checkout-header-trust{align-items:flex-end;text-align:right}}.security-pill{display:inline-flex;align-items:center;gap:.5rem;border-radius:9999px;border:1px solid var(--emerald-200);background:#ecfdf5cc;padding:.375rem .75rem;backdrop-filter:blur(4px)}.security-pill svg{width:1rem;height:1rem;color:var(--emerald-600)}.security-pill span{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:var(--emerald-700)}.security-sub-badges{display:flex;align-items:center;gap:.75rem;color:var(--zinc-500)}.security-sub-badge{display:flex;align-items:center;gap:.375rem}.security-sub-badge svg{width:.875rem;height:.875rem}.security-sub-badge span{font-size:.625rem;font-weight:500;text-transform:uppercase;letter-spacing:.16em}.badge-divider{width:1px;height:.75rem;background:var(--zinc-300)}.amount-card{border-radius:.75rem;border:1px solid rgba(228,228,231,.8);background:#fafafa99;padding:.75rem 1.25rem 1rem}.amount-card-desktop,.amount-card-mobile{display:none}@media(max-width:639px){.amount-card-mobile{display:flex;flex-direction:column;gap:.75rem}}@media(min-width:640px){.amount-card-desktop{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.amount-card-desktop .details-button{margin-top:.5rem}}.amount-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.2em;color:var(--zinc-500);margin:0}.amount-value{margin:.25rem 0 0;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:1.5rem;font-weight:600;letter-spacing:-.025em;color:var(--zinc-900);font-variant-numeric:tabular-nums}.amount-subtext{margin:.35rem 0 0;font-size:.8125rem;line-height:1.45;color:var(--zinc-600)}.amount-card--setup .amount-label{color:var(--emerald-700);font-weight:600}.amount-card--setup .amount-value{font-family:inherit;font-variant-numeric:normal;letter-spacing:-.03em}@media(max-width:639px){.amount-card--setup .amount-row-mobile{flex-direction:column;align-items:flex-start;gap:.125rem}.amount-card--setup .amount-row-mobile .amount-value{font-size:1.5rem}}.amount-right{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;text-align:right;min-width:0;flex-shrink:1}.customer-name{margin:0;font-size:.875rem;font-weight:500;color:var(--zinc-900);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.customer-email{margin:0;font-size:.75rem;color:var(--zinc-600);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.order-id{margin:0;font-size:.875rem;font-weight:600;letter-spacing:.02em;color:var(--zinc-900);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.order-id:empty{display:none}.amount-row-mobile{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.amount-row-mobile .amount-value{font-size:1.25rem}.mobile-divider{display:block;height:1px;width:100%;background:#e4e4e7cc}.order-details-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.details-button{flex-shrink:0;background:none;border:none;padding:0;font-family:inherit;font-size:.875rem;font-weight:500;color:var(--zinc-600);text-decoration:underline;text-underline-offset:2px;cursor:pointer;transition:color .14s ease}.details-button:hover{color:var(--zinc-900)}.payment-section{margin-top:1.5rem}.billing-address-section{margin-top:1.75rem}.billing-address-heading{margin:0 0 .75rem;font-size:.925rem;font-weight:600;color:var(--zinc-800)}.express-checkout-section{margin-bottom:.25rem}.pay-divider{display:flex;align-items:center;gap:.75rem;margin:1rem 0 1.25rem;font-size:.75rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--zinc-400)}.pay-divider:before,.pay-divider:after{content:"";flex:1;height:1px;background:#e4e4e7e6}.countdown{margin:.75rem 0 0;font-size:.875rem;color:var(--muted);text-align:center}.session-expired-panel{margin:1.25rem 0 0;padding:1.25rem 1rem;border-radius:.75rem;border:1px solid rgba(228,228,231,.85);background:#ffffffb8;text-align:center}.session-expired-title{margin:0;font-size:1rem;font-weight:600;letter-spacing:-.02em;color:var(--zinc-900)}.session-expired-body{margin:.65rem 0 0;font-size:.875rem;line-height:1.6;color:var(--zinc-600)}.error-card{width:100%;max-width:28rem;border-radius:1rem;border:1px solid rgba(228,228,231,.7);background:#fffffff2;padding:2rem;box-shadow:0 20px 25px -5px #18181b0a,0 8px 10px -6px #18181b05}.error-icon{display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:50%;background:var(--zinc-100);margin-bottom:1.5rem}.error-icon svg{width:1.5rem;height:1.5rem;color:var(--zinc-500)}.error-message{margin:.75rem 0 0;font-size:.875rem;line-height:1.6;color:var(--zinc-600)}.loading-card{width:100%;max-width:36rem;text-align:center;padding:3rem 2rem}.loading-card p{color:var(--muted);font-size:.9375rem}.details-dialog{box-sizing:border-box;max-height:85vh;width:calc(100% - 2rem);max-width:36rem;overflow-y:auto;border-radius:1rem;border:1px solid rgba(228,228,231,.7);background:#fffffff2;padding:1.5rem;box-shadow:0 25px 50px -12px #18181b14;backdrop-filter:blur(8px)}.details-dialog::backdrop{background:#00000080}.dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid rgba(228,228,231,.8)}.dialog-header>div:first-child{min-width:0}.dialog-header h2{font-size:1.125rem;font-weight:600;letter-spacing:-.025em;color:var(--zinc-900);margin:0}.dialog-header .order-subtitle{margin:.25rem 0 0;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.18em;color:var(--zinc-500);overflow-wrap:anywhere}.dialog-close-btn{display:inline-flex;align-items:center;border-radius:.5rem;border:1px solid var(--zinc-200);background:#fffc;padding:.375rem .75rem;font-family:inherit;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.12em;color:var(--zinc-600);cursor:pointer;transition:border-color .14s ease,background-color .14s ease,color .14s ease}.dialog-close-btn:hover{border-color:var(--zinc-300);background:var(--zinc-100);color:var(--zinc-900)}.order-summary-panel{box-sizing:border-box;border-radius:.75rem;border:1px solid rgba(228,228,231,.8);background:#fafafa99;padding:1rem 1.25rem}.order-summary-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(228,228,231,.8)}.order-summary-total{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:1.5rem;font-weight:600;letter-spacing:-.025em;color:var(--zinc-900);font-variant-numeric:tabular-nums;margin:.25rem 0 0}.order-lines{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem;font-size:.875rem}.order-line{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem}.order-line-label{min-width:0;word-break:break-word}.order-line-name{font-weight:500;color:var(--zinc-900);margin:0}.order-line-detail{font-size:.75rem;color:var(--zinc-500);margin:.125rem 0 0}.order-line-amount{flex-shrink:0;text-align:right;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-variant-numeric:tabular-nums;color:var(--zinc-800)}.order-row{display:flex;justify-content:space-between;gap:1rem;margin-top:.5rem;font-size:.9375rem}.order-row.muted{color:var(--muted)}.order-total{display:flex;justify-content:space-between;align-items:baseline;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border);font-weight:700;font-size:1.125rem}.order-customer{margin:0 0 1rem;font-weight:600}.order-reference{margin:0 0 .75rem;font-size:.875rem;color:var(--muted)}.payment-error{min-height:1.25rem;margin:.75rem 0 0;font-size:.875rem;color:#b91c1c}.save-card-notice,.saved-card-label{margin:0 0 .75rem;font-size:.8125rem;line-height:1.45;color:var(--muted)}.pay-actions{margin-top:1.25rem}@media(max-width:28rem){.pay-actions{flex-direction:column;align-items:stretch}.pay-actions .btn{width:100%;justify-content:center}}.checkout-footer{margin-top:1.5rem;text-align:center}.cancel-link{display:inline-block;margin-top:0;font-size:.875rem;font-weight:500;color:var(--zinc-600);text-decoration:underline;text-underline-offset:2px;transition:color .14s ease}button.cancel-link{font:inherit;background:none;border:none;cursor:pointer;padding:0}button.cancel-link:disabled{opacity:.5;cursor:not-allowed}.cancel-link:hover{color:var(--zinc-900)}.powered-by{margin-top:1.5rem;margin-bottom:0;font-size:.75rem;color:var(--zinc-400)}.powered-by strong{font-weight:500;color:var(--zinc-500)}.contact-link{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;margin-top:.25rem;font-size:.75rem;font-weight:500;color:var(--zinc-500);text-decoration:none;transition:color .14s ease}.contact-link:hover{color:var(--zinc-700)}.contact-link span{text-decoration:underline;text-underline-offset:2px}.preview-banner{box-sizing:border-box;margin:0 0 1.25rem;padding:.75rem 1rem;border-radius:.75rem;border:1px solid rgba(167,243,208,.9);background:#ecfdf5e6;color:var(--emerald-700);font-size:.8125rem;line-height:1.45;text-align:left}.preview-banner strong{display:block;font-size:.6875rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;margin-bottom:.2rem}.card-setup-mock{display:flex;flex-direction:column;gap:.75rem}.card-setup-mock-split{display:flex;gap:.75rem}.card-setup-mock-field{flex:1;min-width:0}.card-setup-mock-label{display:block;margin-bottom:.35rem;font-size:.75rem;font-weight:500;color:var(--zinc-600)}.card-setup-mock-box{display:flex;align-items:center;min-height:44px;padding:0 .75rem;border-radius:.625rem;border:1px solid var(--zinc-200);background:#fff}.card-setup-mock-placeholder{font-size:.9375rem;color:var(--zinc-400)}
