.ff-pumpkin[hidden], [data-halloween-original-logo][hidden] { display: none !important; }
.ff-pumpkin {
  display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; padding: 0; flex: 0 0 auto;
  border: 0; border-radius: 8px; background: transparent; cursor: pointer;
  vertical-align: middle; touch-action: manipulation;
}
.ff-pumpkin svg { width: 44px; height: 44px; }
.ff-pumpkin__candle { filter: drop-shadow(0 0 2px #ffd073); }
.ff-loading-pumpkin { display: none; }
@media (max-width: 1023px) {
  .ff-halloween-season .ff-loading-spinner { display: none; }
  .ff-halloween-season .ff-loading-pumpkin { display: block; width: 64px; height: 64px; }
  .ff-loading-pumpkin svg { width: 64px; height: 64px; animation: ff-lantern-turn 3s linear infinite; }
}
@keyframes ff-lantern-turn { to { transform: rotate(360deg); } }
.ff-pumpkin:hover { background: rgba(217, 120, 41, .09); }
.ff-pumpkin:focus-visible { outline: 2px solid #b46020; outline-offset: 2px; }
.ff-halloween-ghost {
  position: fixed; z-index: 10000; width: 32px; height: 40px;
  pointer-events: none; animation: ff-ghost-hello 1600ms ease-out forwards;
}
@keyframes ff-ghost-hello {
  0% { opacity: 0; transform: translateY(5px) rotate(-8deg); }
  18% { opacity: 1; }
  65% { opacity: 1; transform: translate(5px, -30px) rotate(8deg); }
  100% { opacity: 0; transform: translate(-3px, -55px) rotate(-4deg); }
}
@media (prefers-reduced-motion: reduce) {
  .ff-halloween-ghost { animation: none; }
  .ff-loading-pumpkin svg { animation: none; }
}
:root { --ff-halloween-ready: 1; }
