#cc-donations { --ccd-purple: #160b45; --ccd-green: #167d46; font-family: Alata, Arial, sans-serif; color: var(--ccd-purple); }
#cc-donations *, #cc-donations *::before, #cc-donations *::after { box-sizing: border-box; }
#cc-donations [hidden] { display: none !important; }
#cc-donations button { font: inherit; cursor: pointer; }
#cc-donations a { text-decoration: none; }
#cc-donations button:focus-visible, #cc-donations a:focus-visible { outline: 3px solid #8c64d9; outline-offset: 4px; }
#cc-donations .ccd-launch { position: fixed; right: max(24px, env(safe-area-inset-right)); bottom: max(24px, env(safe-area-inset-bottom)); z-index: 100000; display: flex; align-items: center; gap: 10px; padding: 14px 22px; border: 2px solid white; border-radius: 999px; background: var(--ccd-purple); color: white; box-shadow: 0 6px 28px #160b4533; font-size: 16px; font-weight: 700; line-height: 1.5; }
#cc-donations .ccd-launch span { color: #ffe500; font-size: 21px; }
#ccd-dialog { position: fixed; inset: auto max(24px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) auto; width: min(420px, calc(100% - 32px)); max-width: none; max-height: calc(100dvh - 48px); margin: 0; padding: 32px; overflow-y: auto; border: 1px solid #ded9ed; border-radius: 22px; background: #fffefa; color: #160b45; box-shadow: 0 16px 80px #160b4533; font-size: 15px; line-height: 1.6; }
#ccd-dialog::backdrop { background: #160b4559; }
#ccd-dialog:not([open]) { display: none; }
#cc-donations .ccd-close { position: absolute; top: 8px; right: 10px; width: 40px; height: 40px; padding: 0; border: none; border-radius: 50%; background: transparent; color: #160b45; font: 30px/1 Arial, sans-serif; }
#cc-donations .ccd-eyebrow { margin: 0 18px 10px 0; color: #167d46; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
#ccd-title { padding: 0; margin: 0 0 14px; color: #160b45; font: 700 27px/1.15 Alata, Arial, sans-serif; overflow-wrap: anywhere; }
#ccd-message { margin: 0 0 22px; padding: 0; color: #554e65; overflow-wrap: anywhere; }
#cc-donations .ccd-pay { display: block; width: 100%; border: none; border-radius: 10px; background: var(--ccd-green); color: white; padding: 14px; font-weight: 700; text-align: center; }
#cc-donations .ccd-secure { margin: 10px 0 0; padding: 0; font-size: 12px; color: #554e65; text-align: center; }
#cc-donations .ccd-status { margin: 12px 0 20px; padding: 0; overflow-wrap: anywhere; }
#cc-donations .ccd-status:empty { display: none; }
@media (max-width: 480px) {
    #cc-donations .ccd-launch { right: max(16px, env(safe-area-inset-right)); bottom: max(16px, env(safe-area-inset-bottom)); padding: 11px 17px; }
    #ccd-dialog { right: max(16px, env(safe-area-inset-right)); bottom: max(16px, env(safe-area-inset-bottom)); padding: 28px 22px; max-height: calc(100dvh - 32px); }
}
