/* One vertical purchase form: prize, quantity/total, details, payment, receipt, consent, send. */
.campaign-app .checkout:not(.is-complete){--purchase-bg:#101014;--purchase-muted:#c1bcc8;--purchase-ink:#fff;min-width:0;width:min(880px,calc(100vw - 48px));max-width:880px;max-height:calc(100dvh - 48px);height:auto;margin:auto;background:var(--purchase-bg);color:var(--purchase-ink);border:1px solid #64505a;border-radius:24px;overflow:clip;box-shadow:0 32px 120px #000c;font-family:'Plus Jakarta Sans',Arial,sans-serif}
.campaign-app .checkout::backdrop{background:#030407dc;backdrop-filter:blur(12px)}
.campaign-app .checkout:not(.is-complete) .checkout-heading{padding:16px 24px;background:#171318;border-bottom:1px solid #47323d;gap:16px;flex:none}
.campaign-app .checkout .checkout-brand{display:flex;align-items:center;gap:12px}
.campaign-app .checkout .checkout-brand>img{width:40px;height:40px;border-radius:50%;object-fit:cover;flex:none}
.campaign-app .checkout:not(.is-complete) .checkout-heading h2{font:700 22px/1.3 'Plus Jakarta Sans',Arial,sans-serif;color:#fff;margin:0;letter-spacing:-.5px}
.campaign-app .checkout:not(.is-complete) .checkout-heading .eyebrow{display:block;font-size:12px;line-height:1.5;letter-spacing:1px;color:#d2b9c6;margin:0 0 4px}
.campaign-app .checkout .icon-button{width:44px;height:44px;background:#2c242d;border:1px solid #6a5663;border-radius:12px;color:#fff;flex:none}
.campaign-app .checkout .icon-button:hover{background:#46313e}
.campaign-app .checkout:not(.is-complete) .checkout-scroll{padding:24px;min-height:0;overflow:auto;scroll-padding:24px;scrollbar-color:#897080 #121015;flex:1}
.campaign-app .checkout .checkout-layout{display:block;max-width:100%;margin:0}
.campaign-app .checkout .checkout-summary{display:block;margin:0 0 32px;border:0;border-radius:0;background:none}
.campaign-app .checkout .order-prize{display:block;position:relative;margin:0 0 32px;padding:0;min-height:0;overflow:hidden;border:1px solid #714051;border-radius:16px;background:#292a2e}
.campaign-app .checkout .order-prize img{position:static;display:block;width:100%;height:auto;max-height:440px;aspect-ratio:4/3;object-fit:contain;object-position:center;border-radius:0;mix-blend-mode:normal;opacity:1}
.campaign-app .checkout .order-prize figcaption{display:grid;gap:8px;padding:16px 24px 24px;text-align:center;background:#191218;border-top:1px solid #5c303f}
.campaign-app .checkout .order-prize b{font:700 26px/1.2 'Plus Jakarta Sans',Arial,sans-serif;letter-spacing:-.5px;color:#fff}
.campaign-app .checkout .order-prize figcaption>span:not(.brand-eyebrow){font-size:13px;color:#d3bdcd;line-height:1.5}
.campaign-app .checkout .order-prize .brand-eyebrow{font-size:12px;color:#f5aebf}
.campaign-app .checkout .order-prize .prize-caption{font-size:12px;line-height:1.5;color:#bfaeb9}
.campaign-app .checkout .purchase-block{min-width:0;padding:0;margin:0;border:0;border-radius:0;background:none;scroll-margin:0}
.campaign-app .checkout .purchase-section-title{display:flex;align-items:flex-start;gap:12px;margin:0 0 24px}
.campaign-app .checkout .purchase-section-title>span{width:32px;height:32px;flex:none;display:grid;place-items:center;border:1px solid #965268;border-radius:8px;background:#38212d;color:#ffd4df;font:600 12px/1 'Plus Jakarta Sans',Arial,sans-serif;margin:0}
.campaign-app .checkout .purchase-section-title h3{font:700 24px/1.3 'Plus Jakarta Sans',Arial,sans-serif;letter-spacing:-.5px;color:#fff;margin:0 0 4px;outline-offset:4px}
.campaign-app .checkout .purchase-section-title p{font-size:14px;line-height:1.6;color:var(--purchase-muted);margin:0;max-width:60ch}
.campaign-app .checkout #checkoutUnit{align-self:center;margin-left:auto;font-size:12px;white-space:nowrap;padding:8px;border:1px solid #63404e;background:#281920;border-radius:8px;color:#ffd5df}
.campaign-app .checkout .quantity-and-total{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;padding:24px;border:1px solid #765363;border-radius:16px;background:#21171f}
.campaign-app .checkout .checkout-layout .quantity-entry{display:grid;gap:8px;margin:0;padding:0;border:0;border-radius:0;background:none}
.campaign-app .checkout .quantity-entry label{font:500 12px/1.5 'Plus Jakarta Sans',Arial,sans-serif;color:#decbd6}
.campaign-app .checkout .quantity-entry .stepper{display:flex;align-items:center;gap:8px;border:1px solid #7c6071;border-radius:12px;background:#100d12;box-shadow:none;width:100%;padding:8px}
.campaign-app .checkout .quantity-entry .stepper button{width:44px;height:44px;min-height:44px;flex:none;border:1px solid #7c5466;border-radius:8px;background:#38212f;color:#fff;font-size:24px;line-height:1}
.campaign-app .checkout .quantity-entry .stepper button:hover:not(:disabled){background:#5f2e45}
.campaign-app .checkout .quantity-entry .stepper input{flex:1;min-width:0;width:100%;height:48px;padding:0;border:0;border-radius:0;background:transparent;color:#fff;font:700 32px/1.2 'Plus Jakarta Sans',Arial,sans-serif;text-align:center;appearance:textfield}
.campaign-app .checkout .quantity-entry .stepper input::-webkit-inner-spin-button,.campaign-app .checkout .quantity-entry .stepper input::-webkit-outer-spin-button{appearance:none;margin:0}
.campaign-app .checkout .quantity-entry .stepper input::placeholder{color:#b19cae;opacity:1}
.campaign-app .checkout .quantity-entry>small{color:#dccbd6;font-size:12px;line-height:1.5;margin:0}
.campaign-app .checkout .quantity-help{color:#bdaab9;font-size:12px;line-height:1.5;margin:4px 0 0}
.campaign-app .checkout .quantity-error{color:#ffe1e9;background:#5b1d30;border:1px solid #ae5775;font-size:14px;line-height:1.5;padding:12px;border-radius:8px;margin:16px 0 0}
.campaign-app .checkout .quantity-total{display:flex;flex-direction:column;justify-content:center;gap:8px;padding-left:24px;border-left:1px solid #674958;min-width:0}
.campaign-app .checkout .quantity-total>span{font-size:14px;color:#ebd1df;line-height:1.5}
.campaign-app .checkout .quantity-total>b{font:800 clamp(30px,5vw,42px)/1.15 'Plus Jakarta Sans',Arial,sans-serif;letter-spacing:-1px;color:#fff;overflow-wrap:anywhere}
.campaign-app .checkout .quantity-total>small{color:#d0bcca;font-size:12px;line-height:1.5}
.campaign-app .checkout .checkout-details{display:grid;gap:32px}
.campaign-app .checkout .contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:24px;border:1px solid #564650;border-radius:16px;background:#1c181e}
.campaign-app .checkout .contact-name{grid-column:1/-1}
.campaign-app .checkout .field{display:grid;gap:8px;margin:0;min-width:0}
.campaign-app .checkout .field>span{font-size:14px;font-weight:500;color:#f5ecf2;line-height:1.5}
.campaign-app .checkout .field :is(small,em){font-size:12px;font-weight:400;font-style:normal;color:#c7b8c6;margin-left:4px}
.campaign-app .checkout .field input{width:100%;min-height:56px;padding:16px;border:1px solid #7d6979;border-radius:8px;background:#100e13;color:#fff;font-size:16px;line-height:1.5}
.campaign-app .checkout .field input::placeholder{color:#b6a9b9;opacity:1}
.campaign-app .checkout .field input[aria-invalid=true]{border-color:#ff9ab0;background:#391c29}
.campaign-app .checkout .checkout-socials{margin-top:24px}
.campaign-app .checkout .checkout-socials>p{font-size:12px;color:#d1c1cc;margin-bottom:12px;line-height:1.5}
.campaign-app .checkout .checkout-socials>div{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.checkout-social{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid #574350;background:#1f1820;border-radius:12px;min-width:0}
.checkout-social:hover{background:#30212e;border-color:#b87992}
.checkout-social .official-contact-icon{width:36px;height:36px;border-radius:10px}
.checkout-social.whatsapp-contact .social-logo{width:28px;height:28px}
.checkout-social.instagram-contact .social-logo{width:24px;height:24px}
.checkout-social>span:nth-child(2){display:grid;gap:4px;min-width:0}
.checkout-social small{color:#c3b7c1;font-size:12px;line-height:1.5}
.checkout-social b{color:#fff;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.checkout-social>i{margin-left:auto;width:16px;height:16px;color:#efc0d3}
.campaign-app .checkout .payment-selection {display:flex;align-items:center;gap:8px;padding:16px;margin-bottom:24px;background:#30202b;border:1px solid #9f6375;border-radius:8px;color:#ffe7ee;font-size:14px;line-height:1.5}
.campaign-app .checkout .payment-options {display:grid;gap:32px;margin:0;padding:0;border:0;min-width:0}
.campaign-app .checkout .payment-group {min-width:0}
.campaign-app .checkout .payment-group-title {display:flex;align-items:center;gap:16px;margin:0 0 16px}
.campaign-app .checkout .payment-group-title:after {content:'';height:1px;background:#454957;flex:1}
.campaign-app .checkout .payment-group-title h4 {font:500 14px/1.5 'Plus Jakarta Sans',Arial,sans-serif;letter-spacing:.4px;margin:0;color:#d9dde7}
.campaign-app .checkout .payment-cards {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.campaign-app .checkout .pay-option {--bank-edge:#66889f;--bank-bg:#1c3040;position:relative;min-width:0;padding:24px 24px 0;display:flex;flex-direction:column;gap:16px;background:linear-gradient(120deg,var(--bank-bg),#191e29 90%);color:#fff;border:1px solid var(--bank-edge);border-radius:16px;overflow:hidden;box-shadow:0 8px 24px #0003;isolation:isolate}
.campaign-app .checkout .pay-option:before {content:'';width:184px;height:184px;border:1px solid #ffffff0a;border-radius:50%;position:absolute;top:-100px;right:-48px;box-shadow:0 0 0 24px #ffffff03,0 0 0 48px #ffffff02;z-index:-1}
.campaign-app .checkout .bank-cibao {--bank-edge:#8f836b;--bank-bg:#38301f}
.campaign-app .checkout .bank-popular {--bank-edge:#558c99;--bank-bg:#163941}
.campaign-app .checkout .bank-zelle {--bank-edge:#9680b1;--bank-bg:#36234f}
.campaign-app .checkout .pay-option.selected {border-color:#ff9ab0;box-shadow:0 0 0 2px #ec5571,0 8px 24px #0003}
.campaign-app .checkout .pay-header {display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin:0;cursor:pointer}
.campaign-app .checkout .pay-logo {width:144px;height:40px;padding:8px;display:flex;align-items:center;justify-content:center;background:#f2f5f8;border-radius:6px;flex:none}
.campaign-app .checkout .pay-logo .bank-logo {width:100%;max-width:128px;max-height:28px;height:auto;object-fit:contain;object-position:center}
.campaign-app .checkout .pay-logo:has(.payment-monogram) {width:64px;background:#7134cc}
.campaign-app .checkout .pay-logo .payment-monogram {height:24px;width:32px;line-height:1;font-size:26px;border-radius:0;background:none;color:#fff}
.campaign-app .checkout .pay-bank-title {display:grid;gap:4px;order:3;flex-basis:100%;min-width:0}
.campaign-app .checkout .pay-bank-title>b {font:700 20px/1.25 'Plus Jakarta Sans',Arial,sans-serif;letter-spacing:-.3px;color:#fff}
.campaign-app .checkout .pay-currency {font-size:13px;line-height:1.5;color:#ccd5e2}
.campaign-app .checkout .pay-header>input {margin:0 0 0 auto;width:24px;height:24px;flex:none;accent-color:#dd2445;cursor:pointer}
.campaign-app .checkout .pay-account {display:grid;gap:4px;padding-top:8px}
.campaign-app .checkout .pay-account>span {font-size:12px;line-height:1.5;color:#cbd4e2;letter-spacing:.5px}
.campaign-app .checkout .pay-account>div {display:flex;align-items:center;justify-content:space-between;gap:8px}
.campaign-app .checkout .pay-account strong {font:600 28px/1.3 'Plus Jakarta Sans',Arial,sans-serif;letter-spacing:1px;min-width:0;color:#fff;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.campaign-app .checkout .pay-account .pay-zelle {font-size:24px;letter-spacing:0}
.campaign-app .checkout .pay-copy {width:44px;min-height:44px;flex:none;display:flex;justify-content:center;align-items:center;gap:8px;padding:8px;border:1px solid #8392aa;border-radius:8px;background:#ffffff0c;color:#fff;font-size:13px}
.campaign-app .checkout .pay-copy svg {width:18px;height:18px;flex:none}
.campaign-app .checkout .pay-copy>span {display:none}
.campaign-app .checkout .pay-copy:hover {background:#ffffff20}
.campaign-app .checkout .pay-holder {display:grid;gap:4px}
.campaign-app .checkout .pay-holder>span {font-size:12px;line-height:1.5;color:#cbd4e2;letter-spacing:.5px}
.campaign-app .checkout .pay-holder b {font-size:14px;line-height:1.5;font-weight:500;letter-spacing:.5px;color:#f2f4fc;overflow-wrap:anywhere}
.campaign-app .checkout :is(.pay-rate,.pay-instructions) {font-size:13px;line-height:1.5;color:#ccd5e2;margin:0}
.campaign-app .checkout .pay-bottom {display:flex;align-items:center;justify-content:space-between;gap:16px;margin:8px -24px 0;padding:16px 24px;border-top:1px solid #ffffff2a;background:#080d1699;margin-top:auto}
.campaign-app .checkout .pay-total {display:grid;gap:4px;min-width:0}
.campaign-app .checkout .pay-total>span {font-size:12px;line-height:1.5;color:#cbd4e2}
.campaign-app .checkout .pay-total b {font:700 24px/1.25 'Plus Jakarta Sans',Arial,sans-serif;color:#fff}
.campaign-app .checkout .pay-choose {display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 16px;border:1px solid #a1aec4;border-radius:8px;background:#e6ebf4;color:#172033;font-size:13px;font-weight:700;cursor:pointer;flex:none}
.campaign-app .checkout .pay-choose:hover {background:#fff}
.campaign-app .checkout .pay-choose svg {width:16px;height:16px}
.campaign-app .checkout .pay-idle,.campaign-app .checkout .pay-chosen {display:flex;align-items:center;gap:8px}
.campaign-app .checkout .pay-chosen {display:none}
.campaign-app .checkout .pay-option.selected .pay-idle {display:none}
.campaign-app .checkout .pay-option.selected .pay-chosen {display:flex}
.campaign-app .checkout .pay-option.selected .pay-choose {background:#b61936;border-color:#fb9eb0;color:#fff}

.campaign-app .checkout .receipt-layout{display:grid;grid-template-columns:1fr;gap:24px;padding:24px;border:1px solid #5f4d5b;background:#1d1820;border-radius:16px}
.campaign-app .checkout .receipt-uploader{min-width:0;margin:0}
.campaign-app .checkout .upload-area{min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;margin:0;border:1px dashed #bb809a;border-radius:12px;background:#291924;color:#fff;text-align:center}
.campaign-app .checkout .upload-area:hover{background:#382232;border-color:#ffc1d5}
.campaign-app .checkout .upload-icon{display:grid;place-items:center;width:48px;height:48px;padding:12px;margin:0 0 8px;border:1px solid #9a5976;border-radius:12px;background:#49253b;color:#ffd6e5}
.campaign-app .checkout .upload-area i{width:24px;height:24px;color:inherit}
.campaign-app .checkout .upload-area>b{color:#fff;font-size:17px;font-weight:700;line-height:1.5}
.campaign-app .checkout .upload-area>span:not(.upload-icon){color:#e0c8d9;font-size:13px;line-height:1.5}
.campaign-app .checkout .upload-area>small{color:#c8b3c4;font-size:12px;line-height:1.5}
.campaign-app .checkout .has-receipt .upload-area{min-height:56px;flex-direction:row;padding:8px;gap:8px}
.campaign-app .checkout .has-receipt .upload-area>small,.campaign-app .checkout .has-receipt .upload-area>span:not(.upload-icon){display:none}
.campaign-app .checkout .has-receipt .upload-icon{height:24px;width:24px;margin:0;padding:0;border:0;background:none}
.campaign-app .checkout .receipt-preview{border:1px solid #957486;border-radius:12px;background:#211721}
.campaign-app .checkout .receipt-file{padding:16px;border-color:#675266}
.campaign-app .checkout .receipt-file b{font-size:14px;color:#fff}
.campaign-app .checkout .receipt-file span{font-size:12px;color:#cbb9cb}
.campaign-app .checkout .purchase-review{display:grid;gap:24px;min-width:0}
.campaign-app .checkout .checkout-layout .review-order{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;padding:16px 0;border:0;border-top:1px solid #645061;border-bottom:1px solid #645061;border-radius:0;margin:0;background:none;font-size:14px;line-height:1.5}
.campaign-app .checkout .review-order span{color:#d5bfcd}
.campaign-app .checkout .review-order b{color:#fff;font-size:24px}
.campaign-app .checkout .consent{display:flex;align-items:flex-start;gap:12px;margin:0;color:#e3cedd;font-size:14px;line-height:1.7}
.campaign-app .checkout .consent input{width:24px;height:24px;flex:none;margin:0;accent-color:#da2343}
.campaign-app .checkout .consent button{font-size:inherit;color:#ffb4c9;text-decoration:underline;text-underline-offset:3px}
.campaign-app .checkout .validation-info{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#31202d;border:1px solid #86546d;border-radius:12px}
.campaign-app .checkout .validation-info i{width:24px;height:24px;flex:none;color:#ffb3cb;margin-top:4px}
.campaign-app .checkout .validation-info p{font-size:13px;line-height:1.65;color:#d8bed1;margin:0}
.campaign-app .checkout .validation-info b{display:block;font-size:15px;font-weight:700;color:#fff;margin-bottom:8px}
.campaign-app .checkout .checkout-footer{display:grid;gap:16px;padding:24px 0 8px;background:transparent;border:0;box-shadow:none;margin:0;position:static}
.campaign-app .checkout .submission-note{display:block;text-align:center;margin:0;font-size:12px;line-height:1.6;color:#c7b6c4;max-width:60ch;justify-self:center}
.campaign-app .checkout #nextStep{width:100%;justify-content:center;gap:16px;min-height:60px;padding:16px 24px;border-radius:12px;background:#d71c38;border:1px solid #ff839a;color:#fff;font:700 18px/1.4 'Plus Jakarta Sans',Arial,sans-serif}
.campaign-app .checkout #nextStep:hover{background:#b31631}
.campaign-app .checkout #checkoutError{flex:none;margin:0;padding:12px 24px;background:#511c2b;border-color:#ac5a71;color:#ffe0e9;font-size:14px;line-height:1.5}
.campaign-app .checkout :is(input,button,a):focus-visible{outline:3px solid #ffa6bd;outline-offset:3px}
@media(max-width:640px){
 .campaign-app .checkout:not(.is-complete){width:100vw;min-width:100vw;max-width:100vw;max-height:100dvh;height:100dvh;border:0;border-radius:0;inset:0;margin:0}
 .campaign-app .checkout:not(.is-complete) .checkout-heading{padding:12px 16px}
 .campaign-app .checkout:not(.is-complete) .checkout-scroll{padding:16px;scroll-padding:16px}
 .campaign-app .checkout:not(.is-complete) .checkout-heading h2{font-size:20px}
 .campaign-app .checkout .checkout-brand>img{width:36px;height:36px}
 .campaign-app .checkout .checkout-heading .eyebrow{font-size:12px;letter-spacing:.5px}
 .campaign-app .checkout .order-prize img{height:auto;max-height:none}
 .campaign-app .checkout .order-prize figcaption{padding:16px;gap:4px}
 .campaign-app .checkout .order-prize b{font-size:22px}
 .campaign-app .checkout .order-prize figcaption>span:not(.brand-eyebrow){font-size:12px}
 .campaign-app .checkout .order-prize .prize-caption{font-size:12px}
 .campaign-app .checkout .purchase-section-title{gap:12px;margin-bottom:16px;flex-wrap:wrap}
 .campaign-app .checkout .purchase-section-title h3{font-size:20px}
 .campaign-app .checkout .purchase-section-title p{font-size:13px;max-width:28ch}
 .campaign-app .checkout .purchase-section-title>div{flex:1}
 .campaign-app .checkout #checkoutUnit{display:none}
 .campaign-app .checkout .quantity-and-total{grid-template-columns:1fr;gap:24px;padding:16px}
 .campaign-app .checkout .quantity-total{padding:16px 0 0;border-left:0;border-top:1px solid #674958;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}
 .campaign-app .checkout .quantity-total>b{font-size:28px;text-align:right;max-width:190px}
 .campaign-app .checkout .quantity-total>small{grid-column:1/-1;font-size:12px}
 .campaign-app .checkout .quantity-entry>small,.campaign-app .checkout .quantity-help{font-size:12px}
 .campaign-app .checkout .contact-fields{grid-template-columns:1fr;padding:16px;gap:24px}
 .campaign-app .checkout .contact-name{grid-column:auto}
 .campaign-app .checkout .checkout-socials>div{grid-template-columns:1fr;gap:12px}
 .campaign-app .checkout .payment-cards{grid-template-columns:1fr;gap:16px}
 .campaign-app .checkout .pay-option{padding:24px 16px 0}
 .campaign-app .checkout .pay-account strong{font-size:25px;letter-spacing:.5px}
 .campaign-app .checkout .pay-account .pay-zelle{font-size:21px}
 .campaign-app .checkout .pay-bottom{margin-inline:-16px;padding-inline:16px}
 .campaign-app .checkout .pay-total b{font-size:22px}
 .campaign-app .checkout .pay-choose{font-size:12px;padding:8px 12px}
 .campaign-app .checkout .receipt-layout{padding:16px}
 .campaign-app .checkout .upload-area{padding:24px 16px}
 .campaign-app .checkout .upload-area>b{font-size:15px}
 .campaign-app .checkout .consent{font-size:13px}
 .campaign-app .checkout .validation-info{padding:16px 12px}
 .campaign-app .checkout .validation-info b{font-size:14px}
 .campaign-app .checkout .validation-info p{font-size:12px}
 .campaign-app .checkout .checkout-footer{padding-bottom:max(16px,env(safe-area-inset-bottom))}
 .campaign-app .checkout #checkoutError{padding:12px 16px;font-size:13px}
}
@media(max-width:360px){.campaign-app .checkout .pay-account strong{font-size:22px}.campaign-app .checkout .pay-account .pay-zelle{font-size:19px}.campaign-app .checkout .pay-choose{padding-inline:8px}.campaign-app .checkout .quantity-total>b{font-size:24px;max-width:150px}}

/* Readable purchase instructions on every screen size. */
.campaign-app .checkout :is(.purchase-section-title p,.field>span,.consent,.validation-info p,.checkout-socials>p){font-size:16px;line-height:1.6}
.campaign-app .checkout :is(.quantity-entry>small,.quantity-help,.pay-rate,.pay-instructions,.pay-holder b,.submission-note){font-size:14px;line-height:1.6}
.campaign-app .checkout .validation-info b{font-size:16px}
.campaign-app .checkout .checkout-social b{font-size:15px}
.campaign-app .checkout .quantity-total{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}

/* Keep the private lookup code prominent before the assigned numbers. */
.campaign-app .checkout.is-complete{width:min(680px,calc(100vw - 48px));max-width:680px;max-height:calc(100dvh - 48px);border:1px solid #6d505c;border-radius:24px}
.campaign-app .checkout.is-complete .checkout-scroll{padding:32px;min-height:0;overflow:auto}
.campaign-app .checkout .registration-success{max-width:560px;margin:auto}
.campaign-app .checkout .registration-success .success-icon{width:56px;height:56px;margin:0 auto 16px}
.campaign-app .checkout .registration-success h3{font-size:30px;line-height:1.2;margin:0 0 12px}
.campaign-app .checkout #registrationTitle:focus{outline:none}
.campaign-app .checkout .registration-success .registration-pending{font-size:16px;line-height:1.5;margin:0 auto 8px;max-width:40ch}
.campaign-app .checkout .registration-success .registration-time{font-size:14px;line-height:1.6;margin:0 auto 24px;max-width:40ch}
.campaign-app .checkout .registration-code{display:grid;gap:16px;margin:0 0 24px;padding:24px;border:1px solid #cb9b5f;border-radius:16px;background:linear-gradient(135deg,#32211d,#21181c);text-align:left;color:#fff}
.campaign-app .checkout .save-code-eyebrow{display:flex;align-items:center;gap:8px;color:#ffdc9d;font-size:12px;font-weight:700;line-height:1.5;letter-spacing:.8px}
.save-code-eyebrow i{width:16px;height:16px;flex:none}
.campaign-app .checkout .registration-code h4{font:800 22px/1.3 'Plus Jakarta Sans',Arial,sans-serif;color:#fff;margin:0;letter-spacing:-.5px}
.campaign-app .checkout .registration-code>p{font-size:15px;line-height:1.6;color:#f1dfd5;margin:0}
.campaign-app .checkout .registration-code .private-code-value{display:block;min-width:0;width:100%;padding:16px;border:1px solid #ad875c;border-radius:8px;background:#100d10;color:#ffe0a6;font:700 22px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.4px;text-align:center;overflow-wrap:anywhere;word-break:normal;direction:ltr;user-select:all;-webkit-user-select:all}
.private-code-value:focus-visible{outline:3px solid #ffd38d;outline-offset:4px}
.campaign-app .checkout .copy-ticket-button{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:56px;padding:16px;border:1px solid #ffe1a5;border-radius:12px;background:#ffce7a;color:#231607;font:800 16px/1.4 'Plus Jakarta Sans',Arial,sans-serif}
.campaign-app .checkout .copy-ticket-button:hover{background:#ffe2aa;color:#231607}
.copy-ticket-button i{width:20px;height:20px;flex:none}
.campaign-app .checkout .registration-code .copy-ticket-feedback{font-size:14px;line-height:1.5;color:#fff0d6;padding:12px;border-radius:8px;background:#423020}
.campaign-app .checkout .capture-reminder{display:flex;align-items:flex-start;gap:12px;padding-top:16px;border-top:1px solid #7b5844}
.capture-reminder>i{width:24px;height:24px;flex:none;color:#ffd68f;margin-top:2px}
.campaign-app .checkout .capture-reminder p{font-size:14px;line-height:1.6;color:#e6d6ce;margin:0}
.capture-reminder b{display:block;color:#fff;margin-bottom:4px;font-weight:700}
.campaign-app .checkout .success-quantity{display:block;margin:0 0 8px;font-size:14px;line-height:1.5;color:#dfd2dc}
.campaign-app .checkout .registration-success .assigned-numbers-panel{padding:24px 16px;margin-bottom:24px;border-radius:16px}
.campaign-app .checkout .registration-success .understood-button{min-height:52px;border-radius:12px;background:#31252d;border:1px solid #8c6779;color:#fff;font-size:16px}
.campaign-app .checkout .registration-success .understood-button:hover{background:#49313f}
.campaign-app .checkout .registration-success .success-actions{margin:16px 0 0;justify-content:center}
.campaign-app .checkout .registration-success .success-actions .text-button{min-height:44px;font-size:16px;color:#ffbbcc}
@media(max-width:640px){
 .campaign-app .checkout.is-complete{width:100vw;min-width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;inset:0;border:0;border-radius:0}
 .campaign-app .checkout.is-complete .checkout-scroll{padding:64px 16px max(24px,env(safe-area-inset-bottom))}
 .campaign-app .checkout .registration-success h3{font-size:28px}
 .campaign-app .checkout .registration-code{padding:16px}
 .campaign-app .checkout .registration-code h4{font-size:20px}
 .campaign-app .checkout .registration-code .private-code-value{font-size:18px;padding:12px;letter-spacing:.3px}
}
