.donation-trigger{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));z-index:30;display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:10px 18px;border:1px solid #a9bcb2;border-radius:999px;background:var(--paper);color:var(--ink);box-shadow:0 4px 18px #20232314;font:inherit;font-size:12px;cursor:pointer;transition:background-color .2s,border-color .2s}.donation-trigger:hover{background:#e7efec;border-color:#32766c}.donation-heart{font-size:24px;line-height:1;color:#32766c}.donation-label-mobile{display:none}.donation-modal{position:fixed;inset:0;width:min(520px,calc(100% - 32px));max-height:calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom));margin:auto;padding:0;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);box-shadow:0 24px 80px #20232340;overscroll-behavior:contain}.donation-modal::backdrop{background:#20232388}.donation-modal-header{position:sticky;top:0;z-index:1;display:flex;align-items:start;justify-content:space-between;gap:12px;padding:24px 24px 18px;background:var(--paper);border-bottom:1px solid var(--line)}.donation-modal-header h2{font-size:26px;line-height:1.2;margin:0}.donation-modal-header h2 span{color:#32766c}.donation-modal-header p{margin:7px 0 0;color:var(--muted);font-size:12px}.donation-close{flex-shrink:0;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:transparent;color:inherit;font:inherit;font-size:26px;cursor:pointer}.donation-close:hover{background:#e7efec}.donation-modal-body{padding:22px 24px 26px}.donation-modal-body p{margin:0 0 16px;color:var(--muted);font-size:13px}.donation-methods{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 18px}.donation-methods button{flex:1;min-height:44px;padding:10px 16px;border:1px solid #a9bcb2;border-radius:3px;background:transparent;color:inherit;font:inherit;font-size:13px;cursor:pointer}.donation-methods button[aria-pressed=true]{background:#e7efec;border-color:#32766c}.donation-payment{border:1px solid var(--line);border-radius:4px;padding:20px;margin-top:24px}.donation-payment h3{font-size:21px;margin-bottom:16px}.donation-payment .donation-recipient{color:var(--ink)}.donation-qr{display:block;max-width:100%;width:300px;height:auto;object-fit:contain;margin:0 auto 18px}.donation-payment .button{min-height:44px;gap:14px;justify-content:center}.donation-modal-footer{padding-top:24px;text-align:center}.donation-modal-footer p{font-size:12px}.donation-modal-footer button{min-height:44px;cursor:pointer;font-family:inherit}@media (max-width:620px){.donation-trigger{right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));min-height:44px;padding:8px 14px}.donation-label-desktop{display:none}.donation-label-mobile{display:inline}.donation-modal{width:calc(100% - 24px)}.donation-modal-header{padding:18px 18px 14px}.donation-modal-header h2{font-size:23px}.donation-modal-body{padding:18px}.donation-payment{padding:16px}}@media (prefers-reduced-motion:reduce){.donation-trigger{transition:none}}