@font-face{font-family:SaitcehFastbuyMontserrat;src:url('fonts/montserrat-400-core-G5-12.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:SaitcehFastbuyMontserrat;src:url('fonts/montserrat-600-core-G5-12.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:SaitcehFastbuyMontserrat;src:url('fonts/montserrat-700-core-G5-12.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
html.sfb-open{overflow:hidden}.sfb-overlay[hidden],.sfb-dialog [hidden]{display:none!important}.sfb-overlay{position:fixed;inset:0;z-index:12000;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(0,0,0,.55);backdrop-filter:blur(5px)}.sfb-dialog{box-sizing:border-box;width:650px;max-width:100%;max-height:calc(100dvh - 48px);overflow:auto;padding:30px 38px 36px;border-radius:24px;background:#fff;box-shadow:0 24px 80px #0003;color:#2d2d2d;font-family:SaitcehFastbuyMontserrat,Montserrat,Arial,sans-serif;font-size:15px;line-height:1.5}.sfb-dialog *{box-sizing:border-box}.sfb-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.sfb-logo{display:block;width:160px;max-height:65px;object-fit:contain;object-position:left}.sfb-close{margin-left:auto;border:0;background:transparent;font:32px/1 sans-serif;cursor:pointer;padding:8px;color:#6c6c6c}.sfb-dialog h2{font-size:30px;font-weight:600;line-height:1.2;margin:0 0 12px}.sfb-summary{font-size:16px;margin:0 0 12px}.sfb-note{font-size:13px;color:#6c6c6c;background:#f4f4f4;padding:12px 15px;border-radius:12px}.sfb-message{color:#7d0808;font-size:14px;margin:10px 0}.sfb-message:empty{display:none}.sfb-form{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px}.sfb-field{display:flex;flex-direction:column;gap:7px;color:#6c6c6c;font-size:13px}.sfb-field:has([name=address]){grid-column:1/-1}.sfb-dialog input:not([type=checkbox]){height:48px;min-width:0;width:100%;border:1px solid #dbdbdb;border-radius:12px;background:#fff;padding:11px 13px;color:#2d2d2d;font:inherit}.sfb-dialog input:focus{outline:2px solid #aa5151;outline-offset:2px}.sfb-dialog input[readonly]{background:#f4f4f4;color:#2d2d2d}.sfb-promo{grid-column:1/-1;display:flex;align-items:end;gap:10px}.sfb-promo label{flex:1}.sfb-primary,.sfb-secondary{display:inline-flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;cursor:pointer;font:inherit;line-height:1.3;border-radius:30px;min-height:46px;padding:12px 22px;transition:background .2s,box-shadow .2s}.sfb-primary{border:1px solid #7d0808;background:#7d0808;color:white;font-weight:500}.sfb-primary:hover{background:#5f0606;box-shadow:0 5px 16px #00000000}.sfb-secondary{border:1px solid #2d2d2d;background:transparent;color:#2d2d2d}.sfb-secondary:hover{background:#f4f4f4}.sfb-dialog button:disabled{opacity:.55;cursor:default}.sfb-consent{grid-column:1/-1;display:flex;gap:9px;font-size:12px;align-items:flex-start;color:#6c6c6c}.sfb-consent input{margin:3px 0;accent-color:#7d0808}.sfb-consent a{color:inherit;text-decoration:underline}.sfb-total{grid-column:1/-1;font-size:22px;font-weight:600;padding-top:6px}.sfb-form>.sfb-primary{grid-column:1/-1;width:100%}.sfb-honey{display:none!important}.sfb-order{display:flex;align-items:center;gap:10px;margin-top:22px}.sfb-order input{flex:1;font-weight:600}.sfb-status{font-size:16px;font-weight:600}.sfb-widget{background:white;border-radius:16px;min-width:288px;overflow:hidden}.sfb-payment>.sfb-secondary{width:100%;margin:12px 0}.sfb-final{margin-top:20px}.sfb-final dl{display:grid;grid-template-columns:110px 1fr;gap:8px 12px;background:#f4f4f4;padding:18px;border-radius:14px}.sfb-final dt{color:#6c6c6c}.sfb-final dd{margin:0;overflow-wrap:anywhere}.sfb-contacts{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.sfb-contacts a,.sfb-contacts button{font-size:13px;padding:10px 15px;min-height:40px}.sfb-catalog-button{width:100%;max-width:440px}.sfb-form.is-locked .sfb-consent{opacity:.7}@media(max-width:600px){.sfb-overlay{padding:10px}.sfb-dialog{padding:22px 18px 28px;max-height:calc(100dvh - 20px);border-radius:18px}.sfb-dialog h2{font-size:25px}.sfb-form{grid-template-columns:1fr;gap:13px}.sfb-promo{align-items:end}.sfb-order{flex-direction:column;align-items:stretch}.sfb-order input{flex:auto}.sfb-final dl{grid-template-columns:1fr;gap:2px}.sfb-final dd{margin-bottom:8px}.sfb-widget{min-width:288px}.sfb-dialog{min-width:324px}}

/* A separate compact payment screen. Customer details reappear on completion. */
.sfb-dialog.is-payment-screen{padding:16px 24px 20px;width:650px}
.sfb-dialog.is-payment-screen .sfb-head{margin-bottom:8px}
.sfb-dialog.is-payment-screen .sfb-logo{width:110px;max-height:40px}
.sfb-dialog.is-payment-screen h2{font-size:20px;line-height:1.2;margin-bottom:8px}
.sfb-dialog.is-payment-screen .sfb-order{margin-top:0;flex-direction:row;align-items:center;gap:8px}
.sfb-dialog.is-payment-screen .sfb-order input{width:0;flex:1;height:40px}
.sfb-dialog.is-payment-screen .sfb-order button{min-height:40px;padding:8px 12px;font-size:13px}
.sfb-dialog.is-payment-screen .sfb-status{margin:8px 0;font-size:13px;line-height:1.3}
.sfb-dialog.is-payment-screen .sfb-message{margin:4px 0;font-size:13px}
@media(max-width:600px){.sfb-dialog.is-payment-screen{padding:10px 12px 14px}.sfb-dialog.is-payment-screen .sfb-close{font-size:26px;padding:4px}}

/* QR contains the provider payment-page URL, not a direct NSPK QR. */
.sfb-link-payment{display:flex;flex-direction:column;align-items:center;gap:8px;padding:8px 12px 12px;text-align:center}
.sfb-qr{background:#fff;color:#2d2d2d;max-width:100%}
.sfb-qr svg{display:block;width:224px;height:224px;max-width:100%;margin:auto}
.sfb-qr-hint{max-width:390px;font-size:13px;line-height:1.35;margin:0;color:#6c6c6c}
.sfb-link-payment>.sfb-primary{min-height:40px;padding:9px 20px;font-size:14px}
@media(max-height:700px){.sfb-qr svg{width:192px;height:192px}.sfb-link-payment{gap:6px;padding-top:4px}}

/* Desktop: visible QR. Mobile: primary link and optional QR for a second device. */
.sfb-qr-details{width:100%;text-align:center}
.sfb-qr-details>summary{display:none}
.sfb-qr-details .sfb-qr-hint{margin:6px auto 0}
.sfb-mobile-payment-hint{display:none}
@media(max-width:600px){
 .sfb-link-payment{gap:12px;padding:12px}
 .sfb-link-payment>.sfb-primary{order:0;width:100%;min-height:48px;font-size:16px}
 .sfb-mobile-payment-hint{display:block;order:1;margin:0;font-size:13px;line-height:1.4;color:#6c6c6c}
 .sfb-qr-details{order:2}
 .sfb-qr-details>summary{display:list-item;width:fit-content;margin:0 auto;color:#2d2d2d;font-size:13px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
 .sfb-qr-details>summary:focus-visible{outline:2px solid #aa5151;outline-offset:4px}
 .sfb-qr-details[open]>summary{margin-bottom:10px}
}

.sfb-lifetime{font-size:12px;color:#6c6c6c;margin:4px 0 8px;font-variant-numeric:tabular-nums}
.sfb-cancel-confirm{padding:14px;background:#f4f4f4;border-radius:12px;font-size:14px}
.sfb-cancel-confirm p{margin:0 0 12px}.sfb-cancel-confirm button{margin:0 6px 6px 0}
.sfb-payment>.sfb-cancel-payment{color:#7d0808;font-size:13px;margin-top:8px;min-height:38px;padding:8px 16px}

/* The same palette, rounded buttons and typography as homepage v14.3. */
.sfb-primary,.sfb-secondary{box-sizing:border-box;border:2px solid #2d2d2d;font-weight:600;box-shadow:none;transition:background-color .3s ease,color .3s ease,border-color .3s ease}
.sfb-primary{background:#7d0808;border-color:#7d0808;color:#fff}
.sfb-secondary{background:transparent;color:#2d2d2d}
.sfb-primary:hover,.sfb-secondary:hover{box-shadow:none}
.sfb-primary:focus-visible,.sfb-secondary:focus-visible,.sfb-close:focus-visible{outline:3px solid #aa5151;outline-offset:4px}
.sfb-form>.sfb-primary{min-height:59px;padding:18px 28px;font-size:16px}
.sfb-catalog-button{min-height:59px;padding:18px 28px;font-family:SaitcehFastbuyMontserrat,Montserrat,Arial,sans-serif;font-size:16px;font-weight:600}
@media(hover:hover){.sfb-primary:hover:not(:disabled){background:transparent;color:#2d2d2d;border-color:#2d2d2d}.sfb-secondary:hover:not(:disabled){background:#7d0808;color:#fff;border-color:#7d0808}}
@media(max-width:767px){.sfb-catalog-button,.sfb-form>.sfb-primary{min-height:52px;padding:15px 18px;font-size:14px}}
@media(prefers-reduced-motion:reduce){.sfb-primary,.sfb-secondary{transition:none}}
.sfb-primary:is(:active,:focus-visible):not(:disabled){background:transparent;color:#2d2d2d;border-color:#2d2d2d}
.sfb-secondary:is(:active,:focus-visible):not(:disabled){background:#7d0808;color:#fff;border-color:#7d0808}
