/* Vanta Donate v1.1 — polished member donation entry + ranking switch */
.wallet-donate{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 15px;border-radius:13px;border:1px solid rgba(245,190,64,.27);background:linear-gradient(145deg,rgba(171,106,15,.18),rgba(245,190,64,.10));color:#ffe8ad;font:inherit;font-size:11px;font-weight:1000;box-shadow:0 12px 28px rgba(171,106,15,.14),inset 0 1px 0 rgba(255,255,255,.05);transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease,color .18s ease}.wallet-donate:hover{transform:translateY(-1px);border-color:rgba(255,214,117,.46);background:linear-gradient(145deg,rgba(198,126,18,.24),rgba(245,190,64,.14));box-shadow:0 16px 34px rgba(184,114,14,.20),0 0 0 1px rgba(255,220,140,.06) inset;color:#fff3cc}.wallet-donate:before,.wallet-donate:after,.wallet-donate>span:before,.wallet-donate>span:after{content:none!important;display:none!important;background:none!important;box-shadow:none!important;animation:none!important}.wallet-donate-cup{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:8px;background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.03));font-size:14px;filter:drop-shadow(0 2px 6px rgba(255,183,45,.20));box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.donate-modal{backdrop-filter:blur(14px)}.donate-shell{position:relative;width:min(520px,calc(100vw - 24px));padding:28px 28px 22px;text-align:center;overflow:hidden;border-color:rgba(245,190,64,.22)!important;background:radial-gradient(circle at 50% -10%,rgba(245,190,64,.12),transparent 34%),linear-gradient(155deg,rgba(18,13,29,.98),rgba(10,8,17,.99))!important;box-shadow:0 26px 90px rgba(0,0,0,.58),0 0 0 1px rgba(255,255,255,.025) inset}.donate-shell:before{content:"";position:absolute;inset:-90px auto auto 50%;width:260px;height:180px;transform:translateX(-50%);background:radial-gradient(circle,rgba(255,194,61,.13),transparent 67%);pointer-events:none}.donate-close{z-index:4}.donate-orbit{width:84px;height:84px;margin:0 auto 12px;position:relative;display:grid;place-items:center;border-radius:50%;background:rgba(245,190,64,.07);border:1px solid rgba(245,190,64,.18);box-shadow:0 0 0 8px rgba(245,190,64,.03)}.donate-orbit i{position:absolute;inset:8px;border-radius:50%;border:2px solid transparent;border-top-color:#f6c85b;border-right-color:rgba(246,200,91,.22);animation:donateSpin 1.1s linear infinite}.donate-cup{font-size:31px;filter:drop-shadow(0 5px 14px rgba(245,173,36,.24))}@keyframes donateSpin{to{transform:rotate(360deg)}}.donate-kicker{font-size:9px;font-weight:950;letter-spacing:.18em;color:#d8ad4d;direction:ltr}.donate-shell h2{margin:4px 0 10px!important;font-size:20px!important;font-weight:1000!important;color:#ffd26c}.donate-sub{margin:0 auto 16px;color:#fff;font-size:17px;line-height:1.85;max-width:390px;font-weight:1000}.donate-code-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:9px;border-radius:16px;border:1px solid rgba(245,190,64,.18);background:rgba(245,190,64,.045);direction:ltr}.donate-code-row code{display:flex;align-items:center;justify-content:center;min-width:0;min-height:54px;padding:8px 14px;border-radius:12px;background:rgba(0,0,0,.20);color:#fff5cf;font-size:12px;font-weight:900;white-space:normal;overflow-wrap:anywhere;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}.donate-code-row button{display:grid;place-items:center;min-width:54px;min-height:54px;border:1px solid rgba(245,190,64,.22);background:linear-gradient(145deg,rgba(245,190,64,.15),rgba(173,118,26,.08));color:#ffe7a0;border-radius:12px;padding:0;font:inherit;font-size:22px;font-weight:1000;box-shadow:none;transition:.18s ease}.donate-code-row button:hover{background:linear-gradient(145deg,rgba(245,190,64,.22),rgba(173,118,26,.12));transform:translateY(-1px)}.donate-code-row button.is-copied{border-color:rgba(74,222,128,.24);background:rgba(74,222,128,.08);color:#baf6cf}.donate-loader-line{display:flex;align-items:center;justify-content:center;gap:8px;margin:16px 0 8px;color:rgba(239,233,248,.72);font-size:11px;font-weight:800}.donate-loader-line b{color:#eec65e;direction:ltr;font-size:15px}.donate-mini-spinner{width:14px;height:14px;border-radius:50%;border:2px solid rgba(245,190,64,.15);border-top-color:#f2c354;animation:donateSpin .8s linear infinite}.donate-progress{height:4px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.055)}.donate-progress i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#9e6815,#f2c354);box-shadow:0 0 12px rgba(242,195,84,.24)}.donate-modal.is-ready .donate-progress i{animation:donateProgress 10s linear forwards}@keyframes donateProgress{to{width:100%}}.donate-actions{display:flex;justify-content:center;gap:10px;margin-top:16px}.donate-actions button{min-height:42px;border-radius:13px;padding:0 18px;font:inherit;font-size:11px;font-weight:950;box-shadow:none}.donate-now{border:1px solid rgba(245,190,64,.28);background:linear-gradient(145deg,rgba(245,190,64,.16),rgba(173,118,26,.10));color:#ffe7a0}.donate-now:hover{background:linear-gradient(145deg,rgba(245,190,64,.23),rgba(173,118,26,.15));box-shadow:0 12px 28px rgba(171,106,15,.20)}.donate-cancel{border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025);color:#e6deef}
.ranking-summary{grid-template-columns:repeat(3,minmax(0,1fr))!important}.ranking-mode-switch{margin:16px auto 14px;width:min(460px,100%);display:flex;align-items:center;justify-content:center;gap:0;padding:8px;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(145deg,rgba(255,255,255,.03),rgba(139,92,246,.035));box-shadow:0 12px 28px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.03)}.ranking-mode-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ranking-mode-actions button{display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 18px;border-radius:14px;border:1px solid transparent;background:rgba(255,255,255,.018);color:rgba(239,233,248,.78);font:inherit;font-size:14px;font-weight:1000;letter-spacing:-.01em;box-shadow:none;transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease}.ranking-mode-actions button:hover{transform:translateY(-1px);color:#fff;background:rgba(255,255,255,.04)}.ranking-mode-actions button.is-active{color:#fff;border-color:rgba(139,92,246,.30);background:linear-gradient(145deg,rgba(139,92,246,.18),rgba(139,92,246,.10));box-shadow:0 10px 22px rgba(139,92,246,.16), inset 0 1px 0 rgba(255,255,255,.04)}.ranking-mode-actions button[data-ranking-mode="donate"].is-active{color:#ffedb6;border-color:rgba(245,190,64,.28);background:linear-gradient(145deg,rgba(245,190,64,.16),rgba(173,118,26,.10));box-shadow:0 10px 22px rgba(171,106,15,.18), inset 0 1px 0 rgba(255,255,255,.04)}.ranking-donate-pill{display:inline-flex!important;align-items:center;justify-content:center;gap:7px;color:#ffe29a!important;background:rgba(245,190,64,.08)!important;border-color:rgba(245,190,64,.15)!important}.ranking-donate-amount{font-size:14px;font-weight:1000;line-height:1}.ranking-donate-currency{font-size:11px;font-weight:950;line-height:1;color:#f8db94}.ranking-shell[data-ranking-active-mode="donate"] .ranking-head-badge{color:#ffe4a0;border-color:rgba(245,190,64,.22);background:rgba(245,190,64,.07)}.ranking-board-donate .ranking-row.is-self{border-color:rgba(245,190,64,.25);background:linear-gradient(180deg,rgba(245,190,64,.09),rgba(245,190,64,.03));box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 0 0 1px rgba(245,190,64,.035)}
@media(max-width:720px){.ranking-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ranking-summary-card:last-child{grid-column:1/-1}.ranking-mode-switch{width:100%;padding:7px}.ranking-mode-actions{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}.ranking-mode-actions button{min-height:44px;font-size:13px;padding:0 12px}.donate-shell{padding:25px 16px 18px}.donate-sub{font-size:15px;line-height:1.8}.donate-code-row{grid-template-columns:1fr}.donate-code-row code{min-height:48px;font-size:11px}.donate-code-row button{justify-content:center;min-height:44px;min-width:100%}}
@media(max-width:460px){.ranking-summary{grid-template-columns:1fr!important}.ranking-summary-card:last-child{grid-column:auto}}
/* Admin donation accents */
.vm-chip.is-donate{color:#f9d675!important;background:rgba(245,190,64,.08)!important;border-color:rgba(245,190,64,.17)!important}.vm-stat.is-donate{border-color:rgba(245,190,64,.11)!important;background:linear-gradient(145deg,rgba(245,190,64,.055),rgba(255,255,255,.018))!important}.vm-stat.is-donate b,.vom-kpi-donate b{color:#f7d576!important}.vom-kpi-donate{border-color:rgba(245,190,64,.14)!important;background:rgba(245,190,64,.045)!important}

/* Member directory donation stat: 5 metrics on desktop, responsive below. */
html body #member-list-modal #member-list .vm-member-card .vm-stats{grid-template-columns:repeat(5,minmax(0,1fr))!important}
@media(max-width:980px){html body #member-list-modal #member-list .vm-member-card .vm-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:640px){html body #member-list-modal #member-list .vm-member-card .vm-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

.donate-shell{padding:30px 28px 24px}.donate-kicker{font-size:10px;font-weight:1000;letter-spacing:.22em;color:#e1b85d}.donate-shell h2{margin:6px 0 12px!important;font-size:24px!important;font-weight:1000!important;color:#ffd978}.donate-sub{margin:0 auto;color:#f7f0ff;max-width:400px;text-align:center}.donate-sub-lead{font-size:28px;line-height:1.35;font-weight:1000;color:#fff8dd;margin-bottom:8px;text-shadow:0 4px 20px rgba(245,190,64,.12)}.donate-sub-help{font-size:16px;line-height:1.9;font-weight:900;color:rgba(255,241,210,.88);margin-bottom:16px}.donate-code-row{display:none!important}.donate-loader-line{margin:18px 0 10px;font-size:11.5px;font-weight:900}.donate-loader-line b{font-size:16px}.donate-progress{margin-top:2px;height:5px}.donate-actions{margin-top:18px}.donate-actions button{min-height:44px;font-size:12px;font-weight:1000}.donate-now{padding-inline:22px}.donate-cancel{padding-inline:18px}.donate-shell:before{background:radial-gradient(circle,rgba(255,200,88,.17),transparent 68%)}
@media(max-width:720px){.donate-shell{padding:26px 16px 20px}.donate-shell h2{font-size:22px!important}.donate-sub-lead{font-size:23px;line-height:1.45}.donate-sub-help{font-size:14px;line-height:1.8;margin-bottom:14px}.donate-loader-line{font-size:10.5px}}

/* Donate modal centering polish v1.5 */
.donate-shell{display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.donate-shell > *:not(.donate-close){width:100%;margin-left:auto;margin-right:auto}.donate-kicker,.donate-shell h2,.donate-sub,.donate-sub-lead,.donate-sub-help,.donate-loader-line{text-align:center}.donate-orbit{align-self:center}.donate-sub{max-width:430px}.donate-sub-lead,.donate-sub-help{width:100%}.donate-loader-line{width:100%;justify-content:center}.donate-progress{width:100%;max-width:438px;margin-left:auto;margin-right:auto}.donate-actions{width:100%;display:flex;align-items:center;justify-content:center;gap:12px}.donate-actions button{display:inline-flex;align-items:center;justify-content:center;text-align:center}.donate-now{min-width:220px}.donate-cancel{min-width:96px}.donate-shell h2{width:100%}.donate-kicker{display:block;width:100%}
@media(max-width:720px){.donate-actions{flex-wrap:wrap}.donate-now,.donate-cancel{min-width:0}.donate-actions button{width:auto;min-width:120px}}


/* Donate modal cute/stable polish v1.6 */
.donate-shell{
  width:min(500px,calc(100vw - 24px));
  padding:30px 30px 24px;
  border:1px solid rgba(245,190,64,.23)!important;
  border-radius:24px!important;
  background:
    radial-gradient(260px 150px at 50% -8%,rgba(255,195,71,.12),transparent 72%),
    radial-gradient(180px 120px at 8% 100%,rgba(139,92,246,.055),transparent 74%),
    linear-gradient(160deg,rgba(19,14,29,.99),rgba(10,8,17,.995))!important;
  box-shadow:0 30px 90px rgba(0,0,0,.62),0 0 0 1px rgba(255,255,255,.025) inset;
}
.donate-shell > *:not(.donate-close):not(.donate-orbit){width:100%;margin-left:auto;margin-right:auto}
.donate-shell > .donate-orbit{
  width:88px!important;
  height:88px!important;
  min-width:88px!important;
  min-height:88px!important;
  flex:0 0 88px!important;
  align-self:center!important;
  margin:1px auto 14px!important;
  border-radius:50%!important;
  position:relative;
  display:grid!important;
  place-items:center!important;
  background:radial-gradient(circle at 50% 42%,rgba(255,218,139,.13),rgba(245,190,64,.055) 55%,rgba(245,190,64,.025) 72%);
  border:1px solid rgba(255,206,97,.24)!important;
  box-shadow:0 0 0 7px rgba(245,190,64,.025),0 12px 32px rgba(196,126,18,.10),inset 0 1px 0 rgba(255,255,255,.055)!important;
  overflow:visible!important;
}
.donate-orbit::before{
  content:"";
  position:absolute;
  inset:-7px;
  border-radius:50%;
  border:1px dashed rgba(255,211,111,.20);
  animation:donateCuteOrbit 8s linear infinite;
  pointer-events:none;
}
.donate-orbit::after{
  content:"✦";
  position:absolute;
  top:-6px;
  right:2px;
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#ffe49a;
  font-size:12px;
  font-weight:1000;
  background:rgba(30,21,13,.96);
  border:1px solid rgba(255,211,111,.20);
  box-shadow:0 5px 16px rgba(211,142,27,.16);
  animation:donateCuteSpark 1.8s ease-in-out infinite;
  pointer-events:none;
}
.donate-orbit i{
  position:absolute!important;
  inset:7px!important;
  width:auto!important;
  height:auto!important;
  border-radius:50%!important;
  border:2px solid rgba(245,190,64,.10)!important;
  border-top-color:#ffd76f!important;
  border-right-color:rgba(255,215,111,.38)!important;
  background:none!important;
  box-shadow:none!important;
  transform-origin:50% 50%!important;
  animation:donateSpin 1.35s linear infinite!important;
}
.donate-orbit .donate-cup{
  position:relative;
  z-index:2;
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border-radius:16px;
  background:linear-gradient(145deg,rgba(255,235,190,.10),rgba(245,190,64,.055));
  border:1px solid rgba(255,215,122,.11);
  font-size:29px;
  filter:drop-shadow(0 6px 12px rgba(245,173,36,.18));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
@keyframes donateCuteOrbit{to{transform:rotate(360deg)}}
@keyframes donateCuteSpark{0%,100%{transform:scale(.88) rotate(-8deg);opacity:.62}50%{transform:scale(1.08) rotate(8deg);opacity:1}}
.donate-kicker{
  color:#d9ad50!important;
  letter-spacing:.25em!important;
  font-size:9.5px!important;
  font-weight:1000!important;
  margin-top:1px!important;
}
.donate-shell h2{
  margin:6px 0 15px!important;
  color:#ffe08a!important;
  font-size:22px!important;
  font-weight:1000!important;
  line-height:1.45!important;
}
.donate-sub-lead{
  margin:0 auto 7px!important;
  color:#fffaf0!important;
  font-size:27px!important;
  font-weight:1000!important;
  line-height:1.45!important;
  letter-spacing:-.02em;
}
.donate-sub-help{
  max-width:360px!important;
  margin:0 auto 18px!important;
  color:rgba(255,248,230,.96)!important;
  font-size:15.5px!important;
  font-weight:1000!important;
  line-height:1.75!important;
}
.donate-loader-line{
  width:auto!important;
  max-width:360px;
  min-height:38px;
  margin:4px auto 9px!important;
  padding:0 12px;
  border-radius:12px;
  background:rgba(255,255,255,.018);
  border:1px solid rgba(255,255,255,.045);
  color:rgba(244,236,250,.67)!important;
  font-size:10.5px!important;
  font-weight:900!important;
}
.donate-loader-line b{margin-inline-start:3px;color:#ffd56a!important;font-size:14px!important;font-weight:1000!important}
.donate-mini-spinner{width:13px!important;height:13px!important;border-width:2px!important}
.donate-progress{
  width:100%!important;
  max-width:390px!important;
  height:5px!important;
  margin:0 auto!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.05)!important;
  box-shadow:inset 0 1px 2px rgba(0,0,0,.24);
}
.donate-progress i{background:linear-gradient(90deg,#a56a16,#f3c650,#ffd979)!important;box-shadow:0 0 14px rgba(243,198,80,.24)!important}
.donate-actions{
  width:100%!important;
  margin-top:18px!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  gap:10px!important;
}
.donate-actions button{
  min-height:44px!important;
  border-radius:13px!important;
  font-size:11.5px!important;
  font-weight:1000!important;
}
.donate-now{
  min-width:210px!important;
  padding-inline:20px!important;
  background:linear-gradient(145deg,rgba(245,190,64,.18),rgba(173,118,26,.11))!important;
  color:#ffe9aa!important;
  border-color:rgba(245,190,64,.28)!important;
  box-shadow:0 12px 26px rgba(171,106,15,.12)!important;
}
.donate-now:hover{transform:translateY(-1px);box-shadow:0 15px 30px rgba(171,106,15,.19)!important}
.donate-cancel{
  min-width:94px!important;
  color:rgba(242,236,248,.72)!important;
  background:rgba(255,255,255,.025)!important;
  border-color:rgba(255,255,255,.07)!important;
}
@media(max-width:720px){
  .donate-shell{width:min(94vw,500px);padding:26px 17px 20px}
  .donate-shell > .donate-orbit{width:80px!important;height:80px!important;min-width:80px!important;min-height:80px!important;flex-basis:80px!important}
  .donate-orbit .donate-cup{width:44px;height:44px;font-size:26px}
  .donate-sub-lead{font-size:23px!important}
  .donate-sub-help{font-size:14.5px!important;line-height:1.7!important;max-width:320px!important}
  .donate-loader-line{max-width:330px}
  .donate-actions{flex-wrap:wrap!important}
  .donate-now{min-width:180px!important}
}

/* Ranking readability & scroll polish v1.1 */
.ranking-donate-currency{font-size:12px!important;font-weight:1000!important;color:#f9dfa0!important;line-height:1.2!important}
@media(max-width:720px){.ranking-donate-currency{font-size:11.5px!important}.ranking-donate-amount{font-size:13.5px!important}}

/* Ranking modal stability v1.2 */
#score-list-modal .ranking-mode-switch{flex:0 0 auto}
#score-list-modal .ranking-board[hidden],#score-list-modal .ranking-summary[hidden]{display:none!important}
#score-list-modal .ranking-board{min-height:150px;flex:1 1 0}
#score-list-modal .ranking-list{min-height:0;flex:1 1 0;-webkit-overflow-scrolling:touch}
@media(max-height:700px){#score-list-modal .ranking-summary-card{min-height:70px!important}#score-list-modal .ranking-mode-switch{margin-block:8px!important}}
