/* wowfarsi - support / donate layer: floating button, nav link, donate page */
html body .dn-nav { color: #f0c75e !important; font-weight: 800; }

/* ---------- floating support button (left side, on every page) ---------- */
html body .dn-float { position: fixed; left: 18px; bottom: 22px; z-index: 70; display: flex; flex-direction: column; align-items: center; gap: 8px; text-decoration: none; }
html body .dn-float-tag { padding: 0.28rem 0.85rem; font-size: 12px; font-weight: 800; color: #f0c75e; background: rgba(8, 10, 18, 0.92); border: 1px solid rgba(240, 199, 94, 0.55); border-radius: 999px; white-space: nowrap; box-shadow: 0 4px 18px rgba(0, 0, 0, 0.5); transition: transform 0.25s ease, border-color 0.25s ease; }
html body .dn-float-orb { position: relative; width: 62px; height: 62px; border-radius: 50%; display: grid; place-items: center; background: radial-gradient(circle at 35% 30%, #1b2338, #0a0e19); border: 2px solid #f0c75e; box-shadow: 0 0 0 0 rgba(240, 199, 94, 0.5), 0 8px 24px rgba(0, 0, 0, 0.55); animation: dn-pulse 2.4s ease-out infinite; transition: transform 0.25s ease; }
html body .dn-float-orb img { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; }
html body .dn-float-heart { position: absolute; top: -6px; right: -4px; width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; font-size: 13px; line-height: 1; color: #fff; background: linear-gradient(135deg, #ff6b8a, #d63a63); border: 2px solid #0a0e19; animation: dn-beat 1.8s ease-in-out infinite; }
html body .dn-float:hover .dn-float-orb { transform: scale(1.08); }
html body .dn-float:hover .dn-float-tag { transform: translateY(-2px); border-color: #f0c75e; }
@keyframes dn-pulse {
  0% { box-shadow: 0 0 0 0 rgba(240, 199, 94, 0.5), 0 8px 24px rgba(0, 0, 0, 0.55); }
  70% { box-shadow: 0 0 0 16px rgba(240, 199, 94, 0), 0 8px 24px rgba(0, 0, 0, 0.55); }
  100% { box-shadow: 0 0 0 0 rgba(240, 199, 94, 0), 0 8px 24px rgba(0, 0, 0, 0.55); }
}
@keyframes dn-beat { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.18); } }
@media (prefers-reduced-motion: reduce) {
  html body .dn-float-orb, html body .dn-float-heart { animation: none; }
}
@media (max-width: 640px) {
  html body .dn-float { left: 10px; bottom: 14px; }
  html body .dn-float-orb { width: 52px; height: 52px; }
  html body .dn-float-orb img { width: 33px; height: 33px; }
  html body .dn-float-tag { font-size: 11px; padding: 0.2rem 0.6rem; }
}

/* ---------- donate page ---------- */
html body .dn-wrap { max-width: 52rem; margin: 0 auto; padding: 0 1rem; }
html body .dn-lead { text-align: center; font-size: 1rem; line-height: 2.1; color: var(--parch); margin-bottom: 2rem; }
html body .dn-lead b { color: #f0c75e; }
html body .dn-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin: 0 0 0.6rem; }
html body .dn-stat { padding: 1.1rem 0.6rem; text-align: center; border-block: 1px solid rgba(240, 199, 94, 0.28); background: linear-gradient(90deg, transparent, rgba(240, 199, 94, 0.07), transparent); }
html body .dn-stat b { display: block; font-size: 1.35rem; font-weight: 900; color: #f0c75e; }
html body .dn-stat span { display: block; margin-top: 0.3rem; font-size: 12px; color: var(--parch-dim); }
html body .dn-updated { text-align: center; font-size: 11.5px; color: var(--mut); margin-bottom: 2.5rem; }
html body .dn-h { margin: 2.5rem 0 1rem; text-align: center; font-size: 1rem; font-weight: 800; color: var(--gold-2); }
html body .dn-list { display: grid; gap: 0.9rem; max-width: 42rem; margin: 0 auto; }
html body .dn-item { position: relative; padding-inline-start: 2rem; font-size: 13px; line-height: 1.9; color: var(--parch-dim); }
html body .dn-item::before { content: ""; position: absolute; inset-inline-start: 0.25rem; top: 0.7rem; width: 8px; height: 8px; background: #f0c75e; box-shadow: 0 0 10px rgba(240, 199, 94, 0.7); transform: rotate(45deg); }
html body .dn-item b { color: var(--parch); }
html body .dn-pay { display: grid; grid-template-columns: auto 1fr; gap: 1.4rem; align-items: center; max-width: 42rem; margin: 0 auto; padding: 1.4rem; border: 1px solid rgba(240, 199, 94, 0.3); background: rgba(8, 10, 18, 0.72); }
html body .dn-qr { width: 150px; height: 150px; background: #fff; padding: 6px; border-radius: 4px; }
html body .dn-net { font-size: 12px; font-weight: 800; color: #8fd4a4; margin-bottom: 0.5rem; }
html body .dn-addr { display: block; direction: ltr; text-align: left; word-break: break-all; padding: 0.7rem 0.8rem; font-family: ui-monospace, Consolas, monospace; font-size: 13px; color: var(--parch); background: rgba(0, 0, 0, 0.4); border: 1px solid rgba(240, 199, 94, 0.22); user-select: all; }
html body .dn-copy { margin-top: 0.8rem; }
html body .dn-warn { margin: 1.2rem auto 0; max-width: 42rem; font-size: 12px; line-height: 1.9; color: #e8b27a; text-align: center; }
html body .dn-soon { max-width: 42rem; margin: 1rem auto 0; padding: 0.9rem 1rem; text-align: center; font-size: 12.5px; color: var(--mut); border: 1px dashed rgba(240, 199, 94, 0.25); }
html body .dn-note { max-width: 42rem; margin: 2rem auto 0; font-size: 12px; line-height: 2; color: var(--mut); text-align: center; }
html body .dn-thanks { margin-top: 2rem; text-align: center; font-size: 1rem; font-weight: 800; color: #f0c75e; }
@media (max-width: 640px) {
  html body .dn-stats { grid-template-columns: 1fr; }
  html body .dn-pay { grid-template-columns: 1fr; justify-items: center; }
}
