.p8s-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;border:0;border-radius:999px;background:var(--p8s-bg,#c51f64);color:var(--p8s-fg,#fff);font:700 15px/1 system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer;box-shadow:0 10px 22px -12px rgba(0,0,0,.55);transition:transform .15s,box-shadow .2s,filter .2s;-webkit-tap-highlight-color:transparent}
.p8s-btn:hover{transform:translateY(-2px);filter:brightness(1.06)}
.p8s-btn:active{transform:scale(.96)}
.p8s-btn:focus-visible{outline:3px solid #fff;outline-offset:2px;box-shadow:0 0 0 5px var(--p8s-bg,#c51f64)}
.p8s-btn--float{position:fixed;right:16px;bottom:calc(var(--p8s-bottom,92px) + env(safe-area-inset-bottom));z-index:9990}
.p8s-btn--inline{margin:6px 8px 6px 0}
.p8s-btn--ghost{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.4);color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:none}
.p8s-btn--outline{background:#fff;color:var(--p8s-bg,#c51f64);border:2px solid var(--p8s-bg,#c51f64);box-shadow:none}
.p8s-hl{animation:p8s-hl 1.6s ease-out}
@keyframes p8s-hl{0%{box-shadow:0 0 0 0 var(--p8s-bg,#c51f64)}30%{box-shadow:0 0 0 8px color-mix(in srgb,var(--p8s-bg,#c51f64) 45%,transparent)}100%{box-shadow:0 0 0 0 transparent}}
.p8s-conf{position:fixed;z-index:2147483000;pointer-events:none;font-size:1.5rem;animation:p8s-conf 1.2s cubic-bezier(.15,.7,.3,1) forwards}
@keyframes p8s-conf{0%{transform:translate(-50%,-50%) scale(.4);opacity:1}100%{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy) + 240px)) rotate(var(--rot)) scale(1);opacity:0}}
#p8s-toast{position:fixed;left:50%;bottom:calc(var(--p8s-bottom,92px) + 56px + env(safe-area-inset-bottom));transform:translate(-50%,16px);max-width:min(90vw,420px);padding:11px 18px;border-radius:14px;background:#1f1a17;color:#fff;font:600 14px/1.35 system-ui,sans-serif;text-align:center;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;z-index:2147483001}
#p8s-toast.on{opacity:1;transform:translate(-50%,0)}
@media(prefers-reduced-motion:reduce){.p8s-hl,.p8s-conf{animation:none}.p8s-btn,#p8s-toast{transition:none}}
.p8s-btn--qc{min-height:52px;padding:0 24px;font:800 16px/1 Inter,system-ui,sans-serif}
