/* LFC Efeitos 0.1.7. Animação isolada de outros elementos WordPress. */
.lfc-seasonal-overlay{position:fixed!important;inset:0!important;pointer-events:none!important;z-index:9990!important;overflow:hidden!important;isolation:isolate!important}
.lfc-seasonal-overlay *{pointer-events:none!important;box-sizing:border-box!important}
.lfc-seasonal-overlay .lfc-web{position:absolute!important;top:0!important;width:clamp(130px,17vw,220px)!important;height:auto!important;color:#8d9398!important;opacity:.65!important;filter:drop-shadow(0 0 1px #fff)}
.lfc-seasonal-overlay .lfc-web-left{left:0!important}.lfc-seasonal-overlay .lfc-web-right{right:0!important;transform:scaleX(-1)}
.lfc-seasonal-overlay .lfc-hanging-spider{position:absolute!important;top:0!important;right:6.7%!important;width:44px!important;height:385px!important;transform-origin:22px 0!important;animation:lfc-efeitos-sway-017 4.8s ease-in-out infinite!important;will-change:transform}
.lfc-seasonal-overlay .lfc-spider-cord{position:absolute!important;top:0!important;left:0!important;width:44px!important;height:286px!important;transition:height 1.7s ease-in-out!important}
/* Estados robustos: CSS controla exclusivamente a altura, JS apenas alterna a classe. */
.lfc-seasonal-overlay .lfc-hanging-spider.lfc-is-raised .lfc-spider-cord{height:75px!important}
.lfc-seasonal-overlay .lfc-spider-thread{position:absolute!important;top:0!important;left:calc(50% - .7px)!important;width:1.4px!important;height:100%!important;background:linear-gradient(#8c8c8c,#292929)!important}
.lfc-seasonal-overlay .lfc-spider-body{position:absolute!important;left:0!important;top:calc(100% - 14px)!important;width:44px!important;height:46px!important}
.lfc-seasonal-overlay .lfc-spider-body svg{display:block!important;width:44px!important;height:46px!important;max-width:none!important;max-height:none!important;filter:drop-shadow(0 1px 1px #fff)}
@keyframes lfc-efeitos-sway-017{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}
@media(max-width:767px){.lfc-seasonal-overlay .lfc-web{width:105px!important;opacity:.48!important}.lfc-seasonal-overlay .lfc-hanging-spider{right:9%!important;width:32px!important}.lfc-seasonal-overlay .lfc-spider-cord{width:32px!important}.lfc-seasonal-overlay .lfc-spider-body{width:32px!important;height:34px!important;top:calc(100% - 10px)!important}.lfc-seasonal-overlay .lfc-spider-body svg{width:32px!important;height:34px!important}}


/* v0.1.7: CSS externo do tema não pode bloquear o balanço ou o fio.
   Altura fica definida inline pelo controlador, acima de regras !important anteriores. */
.lfc-seasonal-overlay .lfc-hanging-spider.lfc-spider-animated{animation:lfc-efeitos-sway-017 4s ease-in-out infinite!important}
.lfc-seasonal-overlay .lfc-spider-cord{transition:height 1.5s ease-in-out!important}

/* Adições 0.1.8: não modificar as regras da aranha funcional 0.1.7. */
.lfc-halloween-pumpkin{position:absolute;left:14px;bottom:14px;width:78px;opacity:.95;filter:drop-shadow(0 3px 5px #2229);animation:lfc-pumpkin-glow 4s ease-in-out infinite}
.lfc-halloween-pumpkin svg{display:block;width:100%;height:auto}
@keyframes lfc-pumpkin-glow{0%,100%{filter:drop-shadow(0 3px 5px #2228)}50%{filter:drop-shadow(0 0 9px #ff8b2877)}}
.lfc-christmas-lights{position:absolute;top:0;left:0;right:0;text-align:center;white-space:nowrap;overflow:hidden;color:#d7edff;font-size:20px;letter-spacing:13px;text-shadow:0 0 7px #ffffff,0 0 10px #4caaff;opacity:.85;animation:lfc-lights 3s ease-in-out infinite}
.lfc-christmas-lights span{color:#57b6ff}
@keyframes lfc-lights{50%{opacity:.42}}
.lfc-season-particle{position:absolute;top:-45px;display:block;opacity:0;animation-name:lfc-season-fall;animation-timing-function:linear;animation-iteration-count:infinite;will-change:transform,opacity;user-select:none}
@keyframes lfc-season-fall{0%{transform:translate3d(0,-45px,0) rotate(0);opacity:0}10%{opacity:.75}90%{opacity:.75}100%{transform:translate3d(25px,110vh,0) rotate(70deg);opacity:0}}
.lfc-snow .lfc-season-particle{color:#d1eaff;text-shadow:0 0 4px #ffffff;font-size:14px}
.lfc-gold .lfc-season-particle{color:#e7bd5b;text-shadow:0 0 7px #f5d790;font-size:18px}
.lfc-hearts .lfc-season-particle{color:#dc4b70;text-shadow:0 0 3px #ffb2ca;font-size:16px}
@media(max-width:767px){.lfc-halloween-pumpkin{width:56px;left:8px;bottom:8px}.lfc-christmas-lights{font-size:14px;letter-spacing:4px}}


/* v0.1.9 — reforço visual por época + anotação superior */
.lfc-season-note{position:fixed!important;top:44px!important;left:14px!important;z-index:9992!important;display:inline-flex!important;align-items:center!important;gap:8px!important;padding:7px 12px!important;border-radius:999px!important;font:700 12px/1.2 Arial,sans-serif!important;letter-spacing:.3px!important;box-shadow:0 6px 16px rgba(0,0,0,.18)!important;backdrop-filter:blur(3px)!important;-webkit-backdrop-filter:blur(3px)!important;opacity:.96!important}
body.admin-bar .lfc-season-note{top:46px!important}
.lfc-season-note-halloween{background:rgba(32,20,14,.82)!important;color:#ffb05c!important;border:1px solid rgba(255,137,34,.45)!important}
.lfc-season-note-black_friday{background:rgba(17,17,17,.88)!important;color:#f1c766!important;border:1px solid rgba(241,199,102,.42)!important}
.lfc-season-note-christmas{background:rgba(18,80,42,.86)!important;color:#f4fff8!important;border:1px solid rgba(185,255,221,.38)!important}
.lfc-season-note-new_year{background:rgba(34,26,8,.86)!important;color:#f6da84!important;border:1px solid rgba(246,218,132,.42)!important}
.lfc-season-note-valentine{background:rgba(123,24,65,.84)!important;color:#ffe7ef!important;border:1px solid rgba(255,193,217,.42)!important}

.lfc-christmas-garland{position:absolute!important;top:0!important;left:0!important;right:0!important;height:46px!important;display:flex!important;justify-content:space-evenly!important;align-items:flex-start!important;padding:2px 16px 0!important;z-index:9991!important}
.lfc-christmas-garland::before{content:''!important;position:absolute!important;left:0!important;right:0!important;top:9px!important;height:16px!important;border-bottom:2px solid rgba(222,247,255,.72)!important;border-radius:0 0 48% 48%!important;opacity:.8!important}
.lfc-christmas-garland span{position:relative!important;display:block!important;width:14px!important;height:14px!important;border-radius:50%!important;background:radial-gradient(circle at 30% 30%,#fff,#bde9ff 45%,#3a84d8 100%)!important;box-shadow:0 0 8px #fff,0 0 14px rgba(80,171,255,.95)!important;animation:lfc-xmas-blink 1.9s ease-in-out infinite!important}
.lfc-christmas-garland span:nth-child(3n){background:radial-gradient(circle at 30% 30%,#fff,#ffe7b1 45%,#cc8e19 100%)!important;box-shadow:0 0 8px #fff4cf,0 0 14px rgba(241,182,60,.95)!important}
.lfc-christmas-garland span:nth-child(4n){background:radial-gradient(circle at 30% 30%,#fff,#d6ffd1 45%,#2f9b46 100%)!important;box-shadow:0 0 8px #eaffeb,0 0 14px rgba(66,190,87,.95)!important}
.lfc-christmas-garland span:nth-child(2n){animation-delay:.65s!important}
.lfc-christmas-garland span:nth-child(5n){animation-delay:1.1s!important}
@keyframes lfc-xmas-blink{0%,100%{opacity:1;transform:translateY(0)}50%{opacity:.42;transform:translateY(1px)}}

.lfc-bf-badge{position:absolute!important;top:68px!important;right:16px!important;background:linear-gradient(135deg,#111 0%,#2b2b2b 56%,#111 100%)!important;color:#f6cf67!important;border:1px solid rgba(246,207,103,.58)!important;padding:10px 12px!important;border-radius:12px!important;font:800 12px/1 Arial,sans-serif!important;letter-spacing:1px!important;box-shadow:0 8px 22px rgba(0,0,0,.28)!important;text-shadow:0 0 10px rgba(246,207,103,.25)!important}
.lfc-bf-badge::after{content:'VOUCHERS'!important;display:block!important;margin-top:5px!important;font:600 10px/1 Arial,sans-serif!important;letter-spacing:1.2px!important;color:#fff8dc!important;opacity:.88!important}

.lfc-newyear-bursts{position:absolute!important;inset:0!important;z-index:9990!important}
.lfc-firework{position:absolute!important;width:74px!important;height:74px!important;border-radius:50%!important;opacity:.78!important;animation:lfc-firework-pulse 2.4s ease-in-out infinite!important}
.lfc-firework::before,.lfc-firework::after{content:''!important;position:absolute!important;left:50%!important;top:50%!important;width:2px!important;height:100%!important;background:linear-gradient(transparent,rgba(247,220,135,.92),transparent)!important;transform-origin:center center!important}
.lfc-firework::after{transform:translate(-50%,-50%) rotate(90deg)!important}
.lfc-firework::before{transform:translate(-50%,-50%) rotate(45deg)!important;box-shadow:0 0 0 0 rgba(0,0,0,0),0 0 0 0 rgba(0,0,0,0)}
.lfc-firework{background:radial-gradient(circle,rgba(255,244,195,.14) 0, rgba(255,220,126,.08) 35%, rgba(255,220,126,0) 70%)!important}
.lfc-firework.fw1{top:70px!important;left:12%!important}
.lfc-firework.fw2{top:90px!important;right:14%!important;animation-delay:.7s!important}
.lfc-firework.fw3{top:135px!important;left:74%!important;width:54px!important;height:54px!important;animation-delay:1.2s!important}
@keyframes lfc-firework-pulse{0%,100%{transform:scale(.72);opacity:.2}40%{transform:scale(1);opacity:.85}65%{transform:scale(.92);opacity:.42}}

.lfc-bf .lfc-season-particle{color:#f0c765;text-shadow:0 0 6px rgba(255,222,144,.95);font-size:16px}

@media(max-width:767px){
  .lfc-season-note{top:42px!important;left:8px!important;padding:6px 10px!important;font-size:11px!important}
  .lfc-christmas-garland{height:32px!important;padding:2px 8px 0!important}
  .lfc-christmas-garland::before{top:8px!important;height:10px!important}
  .lfc-christmas-garland span{width:10px!important;height:10px!important}
  .lfc-bf-badge{top:56px!important;right:8px!important;padding:8px 9px!important;font-size:10px!important}
  .lfc-firework{width:46px!important;height:46px!important}
}


/* v0.1.10 — luzes do Natal colocadas abaixo da barra WordPress.
   A barra de administração tem 32px em desktop e 46px em ecrãs estreitos. */
.lfc-seasonal-overlay.lfc-season-christmas .lfc-christmas-garland{
  top:4px!important;
}
body.admin-bar .lfc-seasonal-overlay.lfc-season-christmas .lfc-christmas-garland{
  top:36px!important;
}
.lfc-seasonal-overlay.lfc-season-christmas .lfc-season-note{
  top:57px!important;
}
body.admin-bar .lfc-seasonal-overlay.lfc-season-christmas .lfc-season-note{
  top:90px!important;
}
@media(max-width:782px){
  body.admin-bar .lfc-seasonal-overlay.lfc-season-christmas .lfc-christmas-garland{
    top:50px!important;
  }
  body.admin-bar .lfc-seasonal-overlay.lfc-season-christmas .lfc-season-note{
    top:93px!important;
  }
}
