/* Scoped to HotSpy: preserve the native checkout and the site's light/dark theme. */
#checkout-center[data-hotspy] { --hsp-accent:#dc008b; --hsp-muted:var(--bs-secondary-color,#6b7280); }
#checkout-center[data-hotspy] .modal-content { border-radius:20px; overflow:hidden; }
#checkout-center[data-hotspy] .modal-header { border-bottom:0; padding:24px 26px 16px; }
#checkout-center[data-hotspy] .modal-title { font-size:1.3rem; font-weight:700; letter-spacing:-.4px; }
#checkout-center[data-hotspy] .modal-body { padding:0 26px 24px; }
#checkout-center[data-hotspy] #hotspy-purchase-header { padding:4px 0 18px; border-bottom:1px solid rgba(128,128,128,.18); }
#checkout-center[data-hotspy] #hotspy-creator-avatar { object-fit:cover; flex-shrink:0; }
#checkout-center[data-hotspy] #hotspy-creator-name { overflow-wrap:anywhere; }
#checkout-center[data-hotspy] #hotspy-purchase-description { color:var(--hsp-muted); font-size:.875rem; margin-top:2px; }
#checkout-center[data-hotspy] .hsp-state { text-align:center; padding:24px 0 4px; }
#checkout-center[data-hotspy] .hsp-loader { position:relative; width:144px; height:144px; margin:4px auto 26px; color:var(--hsp-accent); background:radial-gradient(circle,rgba(220,0,139,.075),transparent 68%); border-radius:50%; }
#checkout-center[data-hotspy] .hsp-ring { display:block; fill:none; stroke:currentColor; stroke-width:7; }
#checkout-center[data-hotspy] .hsp-track { opacity:.12; }
#checkout-center[data-hotspy] .hsp-arc { stroke-dasharray:104 403; stroke-linecap:round; transform-origin:72px 72px; transform:rotate(-90deg); animation:hsp-spin 1.35s linear infinite; }
#checkout-center[data-hotspy] .hsp-heart { position:absolute; inset:0; margin:auto; animation:hsp-heartbeat 1.6s ease-in-out infinite; }
#checkout-center[data-hotspy] .hsp-title { font-size:1.5rem; font-weight:700; letter-spacing:-.5px; line-height:1.3; margin:0 0 14px; overflow-wrap:anywhere; }
#checkout-center[data-hotspy] .hsp-summary { font-size:1.1rem; line-height:1.5; margin:0 0 18px; overflow-wrap:anywhere; }
#checkout-center[data-hotspy] .hsp-summary strong { color:var(--hsp-accent); font-size:1.5rem; font-weight:700; white-space:nowrap; }
#checkout-center[data-hotspy] .hsp-description { color:var(--hsp-muted); font-size:.95rem; line-height:1.6; margin:0; }
#checkout-center[data-hotspy] .hsp-close-note { color:var(--hsp-muted); font-size:.78rem; line-height:1.6; margin:42px auto 8px; max-width:340px; }
#checkout-center[data-hotspy] .hsp-success-icon { display:block; margin:4px auto 26px; animation:hsp-appear .25s ease-out; }
#checkout-center[data-hotspy] #hotspy-payment-success .hsp-close-note { margin-top:24px; }
#checkout-center[data-hotspy] #hotspy-payment-success .btn { margin-top:16px; }
#checkout-center[data-hotspy] #hotspy-order-link:not(.d-none) { display:block; font-size:.875rem; }
#checkout-center[data-hotspy] #hotspy-check-status { margin-top:16px; }
#checkout-center[data-hotspy] .is-delayed .hsp-arc,
#checkout-center[data-hotspy] .is-delayed .hsp-heart { animation:none; }
#checkout-center[data-hotspy] .hsp-state:focus { outline:none; }
#checkout-center[data-hotspy] #hotspy-checkout-error:focus-visible { outline:2px solid currentColor; outline-offset:2px; }
@keyframes hsp-spin { to { transform:rotate(270deg); } }
@keyframes hsp-heartbeat { 0%,100% { transform:scale(.94); } 50% { transform:scale(1.06); } }
@keyframes hsp-appear { from { opacity:0; transform:scale(.94); } to { opacity:1; transform:scale(1); } }
@media(max-width:575px) {
 #checkout-center[data-hotspy] .modal-header { padding:20px 20px 14px; }
 #checkout-center[data-hotspy] .modal-body { padding:0 20px 20px; }
 #checkout-center[data-hotspy] .hsp-state { padding-top:18px; }
 #checkout-center[data-hotspy] .hsp-loader,#checkout-center[data-hotspy] .hsp-success-icon { width:120px; height:120px; margin-bottom:22px; }
 #checkout-center[data-hotspy] .hsp-ring { width:100%; height:100%; }
 #checkout-center[data-hotspy] .hsp-title { font-size:1.3rem; }
 #checkout-center[data-hotspy] .hsp-summary { font-size:1rem; }
 #checkout-center[data-hotspy] .hsp-summary strong { font-size:1.3rem; }
 #checkout-center[data-hotspy] .hsp-close-note { margin-top:32px; }
}
@media(prefers-reduced-motion:reduce) {
 #checkout-center[data-hotspy] .hsp-arc,#checkout-center[data-hotspy] .hsp-heart,#checkout-center[data-hotspy] .hsp-success-icon { animation:none; }
}
