/* Seasonal presentation; all selectors are scoped to the Halloween additions. */
.nm-halloween{display:contents}
.nm-halloween-banner-visible{--nm-halloween-bar-height:68px}
.nm-halloween-banner-visible #app{padding-top:var(--nm-halloween-bar-height)}
.nm-halloween-banner-visible .nm-nav-navbarContainer{top:calc(2rem + var(--nm-halloween-bar-height))}
.nm-halloween-banner-visible .nm-floating-container{top:calc(2rem + var(--nm-halloween-bar-height))}
.nm-halloween-banner{
  position:fixed;inset:0 0 auto;z-index:1042;
  color:#fff4ed;border-bottom:1px solid rgba(255,143,64,.23);
  background:radial-gradient(ellipse at 20% 0,rgba(255,93,27,.14),transparent 58%),linear-gradient(100deg,#211016,#150e13 55%,#241019);
  box-shadow:0 4px 22px rgba(0,0,0,.18);font-family:var(--nm-font,'Outfit',sans-serif);
}
.nm-halloween-bannerInner{display:flex;align-items:center;justify-content:center;gap:19px;min-height:68px;max-width:1200px;margin:0 auto;padding:9px 24px}
.nm-halloween-pumpkin{flex-shrink:0;font-family:'Apple Color Emoji','Segoe UI Emoji','Noto Color Emoji',sans-serif;font-size:31px;line-height:1.2;filter:drop-shadow(0 0 12px rgba(255,117,39,.19))}
.nm-halloween-message{display:flex;align-items:center;gap:17px;line-height:1.4;min-width:0}
.nm-halloween-message strong{color:#ffad6a;font-size:12px;font-weight:750;text-transform:uppercase;letter-spacing:1.5px;white-space:nowrap}
.nm-halloween-message>span{font-size:13px;color:#d9c7ce}
.nm-halloween-message b{color:#fff5ec;font-weight:700}
.nm-halloween-code{display:grid;grid-template-columns:minmax(0,1fr) 17px;align-items:center;column-gap:13px;row-gap:1px;min-width:156px;max-width:240px;min-height:46px;padding:6px 13px;border:1px dashed rgba(255,173,106,.65);border-radius:9px;background:rgba(255,143,64,.08);color:#ffb77d;transition:background .2s,border-color .2s;line-height:1.3;text-align:left}
.nm-halloween-code:hover{background:rgba(255,143,64,.15);border-color:#ffc18d}
.nm-halloween-codeValue{font-size:13px;font-weight:800;letter-spacing:1.1px;overflow-wrap:anywhere}
.nm-halloween-copyLabel{grid-column:1;grid-row:2;color:#dbc4b7;font-size:10px;font-weight:500;letter-spacing:.2px}
.nm-halloween-code>svg{grid-column:2;grid-row:1 / 3}
.nm-halloween-code[data-copied="true"]{border-color:#a2dfa8;color:#b7f2bc}
.nm-halloween-code[data-copied="true"] .nm-halloween-copyLabel{color:#b7f2bc}
.nm-halloween-toggle{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid rgba(255,255,255,.1);border-radius:9px;background:rgba(255,255,255,.025);color:#cebfc4}
.nm-halloween-toggle:hover{background:rgba(255,255,255,.07);color:#fff}
.nm-halloween-toggle .nm-halloween-playIcon,.nm-halloween-toggle[aria-pressed="false"] .nm-halloween-pauseIcon{display:none}
.nm-halloween-toggle[aria-pressed="false"] .nm-halloween-playIcon{display:block}
.nm-halloween-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.nm-halloween-particles{position:fixed;inset:0;z-index:1010;overflow:hidden;pointer-events:none!important;user-select:none;contain:strict}
.nm-halloween-particles *{pointer-events:none!important}
.nm-halloween-particle{position:absolute;top:-75px;left:var(--nm-hw-left);display:block;width:46px;height:46px;text-align:center;font-family:'Apple Color Emoji','Segoe UI Emoji','Noto Color Emoji',sans-serif;font-size:var(--nm-hw-size);line-height:1.4;opacity:var(--nm-hw-opacity);animation:nm-halloween-fall var(--nm-hw-duration) var(--nm-hw-delay) linear infinite;will-change:transform}
.nm-halloween-particle>span{display:block;animation:nm-halloween-sway var(--nm-hw-sway) ease-in-out infinite alternate;animation-delay:var(--nm-hw-delay)}
.nm-halloween-particles.is-paused .nm-halloween-particle,.nm-halloween-particles.is-paused .nm-halloween-particle>span{animation-play-state:paused}
@keyframes nm-halloween-fall{from{transform:translate3d(-23px,0,0)}to{transform:translate3d(-23px,calc(100vh + 150px),0)}}
@keyframes nm-halloween-sway{from{transform:translateX(-13px) rotate(-17deg)}to{transform:translateX(13px) rotate(21deg)}}
@supports(height:100dvh){@keyframes nm-halloween-fall{from{transform:translate3d(-23px,0,0)}to{transform:translate3d(-23px,calc(100dvh + 150px),0)}}}
@media(max-width:768px){
  .nm-halloween-banner-visible{--nm-halloween-bar-height:74px}
  .nm-halloween-banner-visible .nm-nav-navbarContainer{top:calc(1rem + var(--nm-halloween-bar-height))!important}
  .nm-halloween-banner-visible .nm-floating-container{top:calc(1rem + var(--nm-halloween-bar-height))}
  .nm-halloween-bannerInner{gap:10px;min-height:74px;padding:10px 16px}
  .nm-halloween-pumpkin{font-size:26px}
  .nm-halloween-message{flex:1;flex-direction:column;align-items:flex-start;gap:3px}
  .nm-halloween-message strong{font-size:11px;letter-spacing:1px}
  .nm-halloween-message>span{font-size:12px}
  .nm-halloween-code{flex-shrink:0;min-width:140px;max-width:42%;column-gap:9px;padding:7px 10px}
  .nm-halloween-codeValue{font-size:12px;letter-spacing:.8px}
  .nm-halloween-particle{opacity:calc(var(--nm-hw-opacity) * .86)}
}
@media(max-width:480px){
  .nm-halloween-pumpkin{display:none}
  .nm-halloween-bannerInner{padding-inline:12px;gap:8px}
  .nm-halloween-message strong{font-size:10px;letter-spacing:.6px}
  .nm-halloween-message>span{font-size:11px}
  .nm-halloween-code{min-width:130px;column-gap:7px;padding-inline:9px}
  .nm-halloween-codeValue{font-size:11px;letter-spacing:.6px}
}
@media(prefers-reduced-motion:reduce){
  .nm-halloween-particles,.nm-halloween-toggle{display:none!important}
  .nm-halloween-code{transition:none}
}
