.paid-page .paid-card { max-width: 520px; text-align: center; }
.paid-ic { position: relative; width: 92px; height: 92px; margin: 18px auto 8px; display: grid; place-items: center; }
.paid-ic .sym { font-size: 2.4rem; position: relative; z-index: 1; }
.paid-ic .ring { position: absolute; inset: 0; border-radius: 50%; border: 4px solid color-mix(in srgb, var(--brand, #2b1cf5) 20%, transparent); border-top-color: var(--brand, #2b1cf5); animation: paidSpin 1s linear infinite; }
.paid-ic.ok .ring { animation: none; border-color: #0e9f6e; background: color-mix(in srgb, #0e9f6e 12%, transparent); transform: scale(1.04); transition: all .4s; }
.paid-list { list-style: none; padding: 0; margin: 18px 0; text-align: left; }
.paid-list li { padding: 8px 0 8px 28px; position: relative; border-bottom: 1px solid var(--line); animation: paidIn .45s both; animation-delay: calc(var(--i) * 70ms); }
.paid-list li::before { content: '✓'; position: absolute; left: 4px; color: #0e9f6e; font-weight: 800; }
.paid-actions { margin: 16px 0 8px; }
.paid-burst { position: fixed; left: 50%; top: 32%; width: 0; height: 0; pointer-events: none; z-index: 50; }
.paid-burst i { position: absolute; width: 10px; height: 14px; border-radius: 3px; background: hsl(var(--h), 90%, 58%); transform: rotate(var(--a)); animation: paidFly 1.8s cubic-bezier(.2,.8,.2,1) forwards; animation-delay: var(--d); }
@keyframes paidFly { to { transform: rotate(var(--a)) translateY(-260px) rotate(540deg); opacity: 0; } }
@keyframes paidSpin { to { transform: rotate(360deg); } }
@keyframes paidIn { from { opacity: 0; transform: translateY(6px); } }
@media (prefers-reduced-motion: reduce) { .paid-ic .ring, .paid-list li { animation: none; } }
