/* Zen Kloud skin; the shared button kit stays reusable without these overrides. */
body{overflow-y:auto}
.zen-support{display:flex;justify-content:center;flex:none;padding:0 16px max(14px,env(safe-area-inset-bottom));position:relative;z-index:4}
.zen-support .zp-support-button{min-height:56px;gap:4px;padding:0 17px 0 0;border-color:#dfc7a669;border-radius:14px;background:linear-gradient(145deg,#fffdf7,#f1e7d8);box-shadow:inset 0 1px 0 #fff,0 4px 16px #88654209;color:#66513d!important}
.zen-support .zp-support-button::before{background:linear-gradient(120deg,#ffc98212,transparent 60%)}
.zen-support .zp-support-button__sprite{flex-basis:64px;width:64px;height:72px;background-size:1536px 72px;animation-name:zen-support-heart}
.zen-support .zp-support-button__copy{padding:10px 0}
.zen-support .zp-support-button__label{font-size:11px;font-weight:600}
.zen-support .zp-support-button__note{margin-top:5px;font-size:9px;color:#9b7f60;letter-spacing:.1px}
.zen-support .zp-support-button__arrow{width:12px;height:12px;flex-basis:12px;margin-left:14px;color:#bc8654}
.zen-support .zp-support-button:hover,.zen-support .zp-support-button:focus-visible{border-color:#dda36e;background:linear-gradient(145deg,#fffdf7,#f5e2cd);box-shadow:inset 0 1px 0 #fff,0 7px 20px #88654214}
.zen-support .zp-support-button:hover .zp-support-button__arrow,.zen-support .zp-support-button:focus-visible .zp-support-button__arrow{color:#a46d3d}
@keyframes zen-support-heart{to{background-position-x:-1536px}}
@media(prefers-reduced-motion:reduce){.zen-support .zp-support-button__sprite{animation:none}}

.zen-support { gap: 8px; }
.zen-support .zen-plus-card { max-width: 265px; min-width: 0; gap: 8px; padding-left: 12px; }
.zen-plus-card .zp-support-button__label { white-space: normal; }
.zen-plus-card__icon {
  display: grid;
  place-items: center;
  flex: 0 0 36px;
}
.zen-plus-card__icon img {
  display: block;
  animation: zen-plus-pulse 2.4s ease-in-out infinite;
}
@keyframes zen-plus-pulse {
  50% { transform: translateY(-2px) scale(1.08); filter: brightness(1.12); }
}
@media (max-width: 520px) {
  .zen-support { padding-inline: 12px; }
  .zen-support .zp-support-button { min-width: 0; padding-right: 10px; }
  .zen-support .zp-support-button__sprite {
    flex-basis: 40px; width: 40px; height: 45px; background-size: 960px 45px;
    animation-name: zen-support-heart-compact;
  }
  .zen-support .zp-support-button__arrow { display: none; }
  .zen-support .zp-support-button__label, .zen-support .zp-support-button__note { white-space: normal; }
  .zen-support .zen-plus-card { padding-left: 8px; }
  .zen-plus-card__icon { flex-basis: 30px; }
  .zen-plus-card__icon img { width: 30px; height: 30px; }
}
@keyframes zen-support-heart-compact { to { background-position-x: -960px; } }
@media (prefers-reduced-motion: reduce) {
  .zen-plus-card__icon img { animation: none; }
}
