:root{--fv-green:#1f8a5b;--fv-green-dark:#14603f;--fv-green-light:#e6f4ec;--fv-ink:#1a2b23;--fv-muted:#5f7168;--fv-border:#d7e2db;--fv-danger:#c0392b;--fv-bg:#f4f7f5}*{box-sizing:border-box}html,body{min-height:100vh;margin:0;padding:0}body{background:var(--fv-bg);color:var(--fv-ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif}#app{min-height:100vh}a{color:var(--fv-green-dark)}img,video,canvas{max-width:100%}@media (width<=768px){html,body{overflow-x:clip}input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{font-size:16px!important}button,[role=button],select{touch-action:manipulation}:where([class*=modal]:not([class*=overlay]):not([class*=backdrop])){max-width:calc(100vw - 1.5rem)}}.login-page[data-v-8eec35c3]{background-position:50%;background-repeat:no-repeat;background-size:cover;justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex;position:relative;overflow:hidden}.login-page[data-v-8eec35c3]:before{content:"";z-index:0;background:linear-gradient(135deg,#10442dd9 0%,#14603fb3 50%,#10442dcc 100%);position:absolute;inset:0}.particles[data-v-8eec35c3]{pointer-events:none;z-index:0;position:absolute;inset:0}.dot[data-v-8eec35c3]{background:#ffffff1a;border-radius:50%;animation:linear infinite drift-8eec35c3;position:absolute}.d1[data-v-8eec35c3]{width:4px;height:4px;animation-duration:18s;top:15%;left:8%}.d2[data-v-8eec35c3]{width:6px;height:6px;animation-duration:22s;animation-delay:2s;top:80%;left:20%}.d3[data-v-8eec35c3]{width:3px;height:3px;animation-duration:15s;animation-delay:4s;top:25%;left:35%}.d4[data-v-8eec35c3]{width:5px;height:5px;animation-duration:20s;animation-delay:1s;top:70%;left:50%}.d5[data-v-8eec35c3]{width:4px;height:4px;animation-duration:17s;animation-delay:3s;top:10%;left:65%}.d6[data-v-8eec35c3]{width:7px;height:7px;animation-duration:24s;animation-delay:5s;top:60%;left:78%}.d7[data-v-8eec35c3]{width:3px;height:3px;animation-duration:16s;animation-delay:2.5s;top:35%;left:88%}.d8[data-v-8eec35c3]{width:5px;height:5px;animation-duration:19s;animation-delay:6s;top:50%;left:45%}@keyframes drift-8eec35c3{0%{opacity:0;transform:translate(0)scale(0)}10%{opacity:1;transform:translate(10px,-20px)scale(1)}50%{opacity:.7;transform:translate(-15px,-40px)scale(.8)}90%{opacity:.3}to{opacity:0;transform:translate(20px,-80px)scale(.3)}}.blob[data-v-8eec35c3]{filter:blur(80px);z-index:0;pointer-events:none;border-radius:50%;position:absolute}.b1[data-v-8eec35c3]{background:#a7e8c426;width:350px;height:350px;animation:12s ease-in-out infinite blob-float-8eec35c3;top:-100px;left:-100px}.b2[data-v-8eec35c3]{background:#1f8a5b1f;width:280px;height:280px;animation:15s ease-in-out 3s infinite reverse blob-float-8eec35c3;bottom:-80px;right:-80px}@keyframes blob-float-8eec35c3{0%,to{transform:translate(0)scale(1)}33%{transform:translate(30px,-20px)scale(1.05)}66%{transform:translate(-20px,15px)scale(.95)}}.login-card[data-v-8eec35c3]{z-index:1;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border:1px solid #ffffff4d;border-radius:20px;width:100%;max-width:420px;padding:2.5rem;animation:.7s cubic-bezier(.16,1,.3,1) both card-in-8eec35c3;position:relative;box-shadow:0 25px 50px #0003,inset 0 0 0 1px #ffffff1a}@keyframes card-in-8eec35c3{0%{opacity:0;transform:translateY(30px)scale(.96)}to{opacity:1;transform:none}}.brand[data-v-8eec35c3]{text-align:center;margin-bottom:1.75rem;animation:.6s .2s both fade-in-8eec35c3}@keyframes fade-in-8eec35c3{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.brand-logo[data-v-8eec35c3]{width:220px;max-width:100%;height:auto;margin:0 auto .5rem;transition:transform .3s;display:block}.brand-logo[data-v-8eec35c3]:hover{transform:scale(1.03)}.brand-sub[data-v-8eec35c3]{color:var(--fv-muted);letter-spacing:.02em;margin:.4rem 0 0;font-size:.9rem}.login-form h2[data-v-8eec35c3]{color:var(--fv-green-dark);align-items:center;gap:.5rem;margin:0 0 1.25rem;font-size:1.05rem;animation:.6s .3s both fade-in-8eec35c3;display:flex}.lock-icon[data-v-8eec35c3]{width:18px;height:18px;color:var(--fv-green)}.field[data-v-8eec35c3]{margin-bottom:1rem;animation:.5s both field-in-8eec35c3;display:block}.field[data-v-8eec35c3]:nth-child(3){animation-delay:.35s}.field[data-v-8eec35c3]:nth-child(4){animation-delay:.45s}@keyframes field-in-8eec35c3{0%{opacity:0;transform:translate(-15px)}to{opacity:1;transform:none}}.field span[data-v-8eec35c3]{color:var(--fv-ink);align-items:center;gap:.4rem;margin-bottom:.35rem;font-size:.85rem;font-weight:600;transition:color .2s;display:flex}.field.active span[data-v-8eec35c3]{color:var(--fv-green-dark)}.field span svg[data-v-8eec35c3]{width:14px;height:14px;color:var(--fv-muted);transition:color .2s}.field.active span svg[data-v-8eec35c3]{color:var(--fv-green)}.field input[data-v-8eec35c3]{border:1.5px solid var(--fv-border);background:var(--fv-bg,#f8faf9);border-radius:10px;outline:none;width:100%;padding:.75rem .9rem;font-size:.95rem;transition:border-color .25s,background .25s,box-shadow .25s}.field input[data-v-8eec35c3]:focus{border-color:var(--fv-green);background:#fff;box-shadow:0 0 0 3px #1f8a5b1a}.field input[data-v-8eec35c3]::placeholder{color:#b0b8b4}.password-wrapper[data-v-8eec35c3]{align-items:center;display:flex;position:relative}.password-wrapper input[data-v-8eec35c3]{padding-right:3.2rem}.toggle[data-v-8eec35c3]{color:var(--fv-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;padding:.35rem;transition:color .2s,background .2s;display:flex;position:absolute;right:.5rem}.toggle[data-v-8eec35c3]:hover{color:var(--fv-green-dark);background:var(--fv-green-light)}.toggle svg[data-v-8eec35c3]{width:18px;height:18px}.submit[data-v-8eec35c3]{background:linear-gradient(135deg, var(--fv-green), var(--fv-green-dark));color:#fff;cursor:pointer;border:none;border-radius:10px;width:100%;margin-top:.75rem;padding:0;font-size:1rem;font-weight:600;transition:transform .2s,box-shadow .2s;animation:.6s .55s both fade-in-8eec35c3;position:relative;overflow:hidden}.submit[data-v-8eec35c3]:before{content:"";background:linear-gradient(120deg,#0000 30%,#ffffff26 50%,#0000 70%);transition:transform .6s;position:absolute;inset:0;transform:translate(-100%)}.submit[data-v-8eec35c3]:hover:not(:disabled):before{transform:translate(100%)}.submit[data-v-8eec35c3]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 20px #1f8a5b4d}.submit[data-v-8eec35c3]:active:not(:disabled){transform:translateY(0)}.submit[data-v-8eec35c3]:disabled{opacity:.65;cursor:not-allowed}.submit-content[data-v-8eec35c3]{justify-content:center;align-items:center;gap:.5rem;padding:.85rem;display:flex}.submit .arrow[data-v-8eec35c3]{width:17px;height:17px;transition:transform .2s}.submit:hover:not(:disabled) .arrow[data-v-8eec35c3]{transform:translate(3px)}.submit .spinner[data-v-8eec35c3]{width:18px;height:18px;animation:.8s linear infinite spin-8eec35c3}@keyframes spin-8eec35c3{to{transform:rotate(360deg)}}.alert[data-v-8eec35c3]{color:var(--fv-danger);background:#fdecea;border:1px solid #f5c6cb;border-radius:10px;align-items:center;gap:.5rem;margin:0 0 1rem;padding:.7rem .85rem;font-size:.88rem;animation:.4s shake-8eec35c3;display:flex}.alert svg[data-v-8eec35c3]{flex-shrink:0;width:16px;height:16px}@keyframes shake-8eec35c3{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.login-footer[data-v-8eec35c3]{border-top:1px solid var(--fv-border);text-align:center;margin-top:1.75rem;padding-top:1rem;animation:.6s .65s both fade-in-8eec35c3}.login-footer p[data-v-8eec35c3]{color:var(--fv-muted);margin:.15rem 0;font-size:.78rem}@media (width<=480px){.login-page[data-v-8eec35c3]{min-height:100dvh;padding:1rem .85rem}.login-card[data-v-8eec35c3]{border-radius:16px;padding:1.6rem 1.25rem}.brand-logo[data-v-8eec35c3]{width:180px}.particles[data-v-8eec35c3],.blob[data-v-8eec35c3]{display:none}}@media (prefers-reduced-motion:reduce){.login-card[data-v-8eec35c3],.brand[data-v-8eec35c3],.field[data-v-8eec35c3],.submit[data-v-8eec35c3],.login-footer[data-v-8eec35c3],.login-form h2[data-v-8eec35c3]{animation:none}.dot[data-v-8eec35c3]{animation:none;display:none}.blob[data-v-8eec35c3],.alert[data-v-8eec35c3]{animation:none}}.page-loader[data-v-0cde1d00]{z-index:9999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#ffffffeb;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.page-loader-inner[data-v-0cde1d00]{flex-direction:column;align-items:center;gap:1rem;display:flex}.spinner[data-v-0cde1d00]{border:4px solid var(--fv-green-light,#e6f4ec);border-top-color:var(--fv-green,#1f8a5b);border-radius:50%;width:48px;height:48px;animation:.9s linear infinite spin-0cde1d00}@keyframes spin-0cde1d00{to{transform:rotate(360deg)}}.hw[data-v-f2e85bda]{pointer-events:none;z-index:60;--px:0;--py:0;position:fixed;inset:0;overflow:hidden}.hw-glow[data-v-f2e85bda]{background:radial-gradient(60% 35% at 100% 0,#ff8a1f1f,#0000 70%),radial-gradient(50% 30% at 0 100%,#7a3fba1a,#0000 70%),radial-gradient(40% 25% at 100% 30%,#ffc86e14,#0000 70%);position:absolute;inset:0}.hw-vignette[data-v-f2e85bda]{background:radial-gradient(90% 70% at 50% 45%,#0000 62%,#0d061a29 100%),linear-gradient(#0d061a0f,#0000 12% 82%,#0d061a24);position:absolute;inset:0}.hw-layer[data-v-f2e85bda]{will-change:transform;transition:transform .6s cubic-bezier(.22,1,.36,1);position:absolute;inset:0}.hw-layer.far[data-v-f2e85bda]{transform:translate3d(calc(var(--px) * -8px), calc(var(--py) * -5px), 0)}.hw-layer.mid[data-v-f2e85bda]{transform:translate3d(calc(var(--px) * 16px), calc(var(--py) * 9px), 0)}.hw-layer.near[data-v-f2e85bda]{transform:translate3d(calc(var(--px) * -24px), calc(var(--py) * -12px), 0)}.hw-star[data-v-f2e85bda]{background:#fff;border-radius:50%;animation:3.5s ease-in-out infinite hw-twinkle-f2e85bda;position:absolute;box-shadow:0 0 6px 1px #fff0c8b3}.hw-shooting[data-v-f2e85bda]{opacity:0;width:120px;height:2px;animation:14s linear 6s infinite hw-shoot-f2e85bda;position:absolute;top:6%;right:-10%}.hw-shooting-head[data-v-f2e85bda]{background:linear-gradient(270deg,#fff,#ffc87899,#0000);border-radius:2px;width:100%;height:2px;position:absolute;right:0;box-shadow:0 0 8px #ffdc96cc}.hw-cloud[data-v-f2e85bda]{fill:#5a507880;filter:blur(1px);width:78px;height:26px;position:absolute}.cl1[data-v-f2e85bda]{animation:18s linear infinite hw-cloud-f2e85bda;top:104px;right:60px}.cl2[data-v-f2e85bda]{opacity:.7;width:54px;animation:26s linear -9s infinite hw-cloud-f2e85bda;top:76px;right:110px}.hw-witch-track[data-v-f2e85bda]{opacity:0;animation:34s linear 5s infinite hw-witch-f2e85bda;position:absolute;top:8%;left:0}.hw-witch[data-v-f2e85bda]{filter:drop-shadow(0 0 12px #ffaa3c66);width:110px;height:64px;animation:1.6s ease-in-out infinite hw-bob-f2e85bda;overflow:visible}.hw-witch-cape[data-v-f2e85bda]{transform-box:fill-box;transform-origin:100% 0;animation:.5s ease-in-out infinite alternate hw-cape-f2e85bda}.hw-witch-trail[data-v-f2e85bda]{background:linear-gradient(90deg,#0000,#ffbe5abf);border-radius:3px;width:100px;height:3px;position:absolute;top:40px;left:-90px;box-shadow:0 0 10px #ffaa3c99}.hw-flash[data-v-f2e85bda]{opacity:0;background:radial-gradient(80% 60% at 70% 0,#dcd2ffe6,#a08cff59);animation:27s linear 8s infinite hw-lightning-f2e85bda;position:absolute;inset:0}.hw-swarm[data-v-f2e85bda]{opacity:0;animation:44s linear 12s infinite hw-swarm-f2e85bda;position:absolute;top:34%;left:0}.hw-swarm-bat[data-v-f2e85bda]{animation:.3s ease-in-out infinite alternate hw-flap-swarm-f2e85bda;position:absolute;overflow:visible}.hw-garland[data-v-f2e85bda]{width:100%;height:22px;position:absolute;top:0;left:0}.hw-pennants[data-v-f2e85bda]{justify-content:space-around;padding:0 1%;display:flex;position:absolute;top:2px;left:0;right:0}.hw-pennant[data-v-f2e85bda]{width:14px;height:16px;margin-top:var(--sag);clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:top;opacity:.92;animation:3.2s ease-in-out infinite alternate hw-sway-f2e85bda}.hw-bat-track[data-v-f2e85bda]{opacity:0;width:72px;height:72px;animation-name:hw-fly-f2e85bda;animation-timing-function:linear;animation-iteration-count:infinite;position:absolute;left:0}.hw-bat-lottie[data-v-f2e85bda]{filter:brightness(.35)drop-shadow(0 4px 8px #140a2366);display:block}.hw-spider[data-v-f2e85bda]{transform-origin:top;flex-direction:column;align-items:center;animation:7s ease-in-out infinite hw-dangle-f2e85bda;display:flex;position:absolute;top:0;right:120px}.hw-thread[data-v-f2e85bda]{transform-origin:top;background:linear-gradient(#3c32461a,#3c32468c);width:1px;height:110px;animation:9s ease-in-out infinite hw-drop-f2e85bda}.hw-spider-body[data-v-f2e85bda]{width:30px;height:30px;margin-top:-4px;animation:9s ease-in-out infinite hw-drop-body-f2e85bda}.hw-legs[data-v-f2e85bda]{transform-origin:50%;animation:.6s ease-in-out infinite alternate hw-wiggle-f2e85bda}.hw-mini-ghost[data-v-f2e85bda]{opacity:.6;filter:drop-shadow(0 6px 12px #5a468240)brightness(1.05);width:84px;height:84px;animation:22s ease-in-out infinite hw-drift-f2e85bda;position:absolute}.hw-mini-ghost.g1[data-v-f2e85bda]{top:38%;left:8%}.hw-mini-ghost.g2[data-v-f2e85bda]{width:60px;height:60px;animation-duration:28s;animation-delay:-9s;top:56%;right:18%}.hw-web[data-v-f2e85bda]{color:#50465f52;width:130px;height:130px;position:absolute;bottom:0;left:0;transform:scaleY(-1)}.hw-eyes[data-v-f2e85bda]{opacity:0;gap:7px;animation:12s ease-in-out 3s infinite hw-peek-f2e85bda;display:flex;position:absolute;bottom:74px;left:70px}.hw-eye[data-v-f2e85bda]{background:#fc3;border-radius:50%;width:9px;height:6px;animation:12s 3s infinite hw-blink-f2e85bda;box-shadow:0 0 8px 2px #ffbe28b3}.hw-leaf[data-v-f2e85bda]{opacity:0;filter:drop-shadow(0 2px 3px #501e0033);animation-name:hw-leaf-f2e85bda;animation-timing-function:ease-in-out;animation-iteration-count:infinite;position:absolute;top:-40px}.hw-candy[data-v-f2e85bda]{opacity:0;width:30px;height:15px;animation-name:hw-candy-f2e85bda;animation-timing-function:linear;animation-iteration-count:infinite;position:absolute;top:-30px}.hw-spark[data-v-f2e85bda]{opacity:0;background:#ffb347;border-radius:50%;width:5px;height:5px;animation:9s ease-in infinite hw-rise-f2e85bda;position:absolute;bottom:-10px;box-shadow:0 0 8px 2px #ff96288c}.hw-fog[data-v-f2e85bda]{background:radial-gradient(18% 45% at 15% 70%,#aa9bc838,#0000 70%),radial-gradient(22% 50% at 45% 75%,#aa9bc82e,#0000 70%),radial-gradient(16% 40% at 75% 72%,#aa9bc833,#0000 70%);width:200%;height:120px;animation:40s linear infinite hw-fog-f2e85bda;position:absolute;bottom:-30px;left:-50%}.hw-fog.f2[data-v-f2e85bda]{opacity:.7;animation-duration:60s;animation-direction:reverse;bottom:-50px}.hw-trail-spark[data-v-f2e85bda]{border-radius:50%;animation:.8s ease-out forwards hw-trail-f2e85bda;position:fixed;transform:translate(-50%,-50%)}.hw-burst[data-v-f2e85bda]{width:0;height:0;position:absolute}.hw-mini-bat[data-v-f2e85bda]{width:20px;height:10px;animation:1s ease-out forwards hw-burst-f2e85bda;position:absolute;top:-5px;left:-10px}.hw-mini-bat.d1[data-v-f2e85bda]{--bx:-46px;--by:-40px}.hw-mini-bat.d2[data-v-f2e85bda]{--bx:46px;--by:-44px}.hw-mini-bat.d3[data-v-f2e85bda]{--bx:-30px;--by:-70px}.hw-mini-bat.d4[data-v-f2e85bda]{--bx:32px;--by:-66px}.hw-burst-ring[data-v-f2e85bda]{border:2px solid #ff8a1fb3;border-radius:50%;width:28px;height:28px;animation:.6s ease-out forwards hw-ring-f2e85bda;position:absolute;top:-14px;left:-14px}.hw-ghost[data-v-f2e85bda]{z-index:61;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;align-items:center;width:92px;padding:0;animation:4.5s ease-in-out infinite hw-float-f2e85bda;display:flex;position:fixed;bottom:26px;right:22px}.hw-ghost-lottie[data-v-f2e85bda]{filter:drop-shadow(0 8px 14px #5a46824d);width:84px;height:84px;transition:transform .25s}.hw-ghost:hover .hw-ghost-lottie[data-v-f2e85bda],.hw-ghost:focus-visible .hw-ghost-lottie[data-v-f2e85bda]{transform:scale(1.12)rotate(-4deg)}.hw-ghost:active .hw-ghost-lottie[data-v-f2e85bda]{transform:scale(.92)}.hw-ghost-shadow[data-v-f2e85bda]{background:#3c285a33;border-radius:50%;width:40px;height:7px;margin-top:2px;animation:4.5s ease-in-out infinite hw-shadow-f2e85bda}.hw-bubble[data-v-f2e85bda]{color:#ffd27a;white-space:nowrap;z-index:2;background:#2b1838;border-radius:12px 12px 2px;padding:.4rem .7rem;font-size:.78rem;font-weight:700;animation:.3s cubic-bezier(.34,1.56,.64,1) hw-pop-f2e85bda;position:absolute;bottom:calc(100% + 6px);right:10px;box-shadow:0 6px 16px #2b183859}.hw-banner[data-v-f2e85bda]{z-index:62;color:#fff;background:linear-gradient(135deg,#2b1838 0%,#3d1f4f 55%,#5a2a3a 100%);border-radius:14px;align-items:center;gap:.75rem;width:min(480px,100vw - 24px);padding:.75rem 2.4rem .85rem .9rem;display:flex;position:fixed;top:18px;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 14px 34px #2b183866,inset 0 0 0 1px #ffaa4640}.hw-banner-icon[data-v-f2e85bda]{flex-shrink:0;animation:2.4s ease-in-out infinite hw-wobble-f2e85bda}.hw-banner-text[data-v-f2e85bda]{flex-direction:column;gap:.1rem;min-width:0;display:flex}.hw-banner-text strong[data-v-f2e85bda]{color:#ffb347;font-size:.92rem}.hw-banner-text span[data-v-f2e85bda]{color:#ffffffd9;font-size:.82rem}.hw-banner-close[data-v-f2e85bda]{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;width:26px;height:26px;font-size:1.1rem;line-height:1;position:absolute;top:6px;right:8px}.hw-banner-close[data-v-f2e85bda]:hover{background:#ffffff38}.hw-banner-bar[data-v-f2e85bda]{transform-origin:0;background:linear-gradient(90deg,#ff8a1f,#fc3);width:100%;height:3px;animation:10s linear forwards hw-countdown-f2e85bda;position:absolute;bottom:0;left:0}.hw-banner-enter-active[data-v-f2e85bda],.hw-banner-leave-active[data-v-f2e85bda]{transition:opacity .35s,transform .35s cubic-bezier(.34,1.56,.64,1)}.hw-banner-enter-from[data-v-f2e85bda],.hw-banner-leave-to[data-v-f2e85bda]{opacity:0;transform:translate(-50%,-30px)}@keyframes hw-witch-f2e85bda{0%{opacity:0;transform:translate(-140px,40px)rotate(-4deg)}2%{opacity:1}15%{transform:translate(30vw,-10px)rotate(-8deg)}30%{opacity:1;transform:translate(calc(100vw + 140px),30px)rotate(-2deg)}31%,to{opacity:0;transform:translate(calc(100vw + 140px),30px)}}@keyframes hw-bob-f2e85bda{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes hw-cape-f2e85bda{0%{transform:skew(0)}to{transform:skew(-12deg)scaleY(.92)}}@keyframes hw-sway-f2e85bda{0%{transform:rotate(-6deg)}to{transform:rotate(6deg)}}@keyframes hw-fly-f2e85bda{0%{opacity:0;transform:translate(-90px)}4%{opacity:1}25%{transform:translate(25vw,-30px)}50%{transform:translate(50vw,25px)}75%{transform:translate(75vw,-20px)}96%{opacity:1}to{opacity:0;transform:translate(calc(100vw + 90px),10px)}}@keyframes hw-dangle-f2e85bda{0%,to{transform:rotate(3deg)}50%{transform:rotate(-3deg)}}@keyframes hw-drop-f2e85bda{0%,to{transform:scaleY(.75)}50%{transform:scaleY(1.25)}}@keyframes hw-drop-body-f2e85bda{0%,to{transform:translateY(-27px)}50%{transform:translateY(27px)}}@keyframes hw-wiggle-f2e85bda{0%{transform:scaleX(1)}to{transform:scaleX(.9)}}@keyframes hw-drift-f2e85bda{0%,to{opacity:.45;transform:translate(0)rotate(-4deg)}33%{opacity:.65;transform:translate(26px,-34px)rotate(4deg)}66%{opacity:.55;transform:translate(-18px,-16px)rotate(-3deg)}}@keyframes hw-twinkle-f2e85bda{0%,to{opacity:.15;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}@keyframes hw-shoot-f2e85bda{0%,92%{opacity:0;transform:translate(0)}93%{opacity:1}to{opacity:0;transform:translate(-70vw,26vh)}}@keyframes hw-lightning-f2e85bda{0%,96.8%,97.6%,98.6%,to{opacity:0}97%{opacity:.14}97.9%{opacity:.05}98.3%{opacity:.1}}@keyframes hw-swarm-f2e85bda{0%{opacity:0;transform:translate(-120px)}1.5%{opacity:1}10%{opacity:1;transform:translate(calc(100vw + 120px),-60px)}11%,to{opacity:0;transform:translate(calc(100vw + 120px),-60px)}}@keyframes hw-flap-swarm-f2e85bda{0%{transform:translateY(var(--swy,0)) scaleY(1)}to{transform:translateY(var(--swy,0)) scaleY(.6)}}@keyframes hw-cloud-f2e85bda{0%{transform:translate(140px)}to{transform:translate(-100px)}}@keyframes hw-peek-f2e85bda{0%,30%,to{opacity:0;transform:translateY(6px)}36%,60%{opacity:1;transform:translateY(0)}66%{opacity:0;transform:translateY(6px)}}@keyframes hw-blink-f2e85bda{0%,44%,47%,54%,57%,to{transform:scaleY(1)}45.5%,55.5%{transform:scaleY(.1)}}@keyframes hw-leaf-f2e85bda{0%{opacity:0;transform:translate(0)rotate(0)}8%{opacity:.95}25%{transform:translate(var(--drift), 25vh) rotate(120deg)}50%{transform:translateY(50vh)rotate(220deg)}75%{transform:translate(var(--drift), 75vh) rotate(320deg)}92%{opacity:.9}to{opacity:0;transform:translateY(calc(100vh + 40px))rotate(420deg)}}@keyframes hw-candy-f2e85bda{0%{opacity:0;transform:translateY(0)rotate(0)}6%{opacity:.9}94%{opacity:.9}to{opacity:0;transform:translateY(calc(100vh + 40px))rotate(720deg)}}@keyframes hw-rise-f2e85bda{0%{opacity:0;transform:translate(0)}15%{opacity:.8}to{opacity:0;transform:translate(30px,-55vh)}}@keyframes hw-fog-f2e85bda{0%{transform:translate(0)}to{transform:translate(25%)}}@keyframes hw-flicker-f2e85bda{0%,to{opacity:.85;transform:scale(1)}20%{opacity:.6;transform:scale(.94)}40%{opacity:1;transform:scale(1.05)}60%{opacity:.7;transform:scale(.97)}80%{opacity:.95;transform:scale(1.02)}}@keyframes hw-trail-f2e85bda{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-160%)scale(.2)}}@keyframes hw-burst-f2e85bda{0%{opacity:1;transform:translate(0)scale(.4)}to{opacity:0;transform:translate(var(--bx), var(--by)) scale(1.1)}}@keyframes hw-ring-f2e85bda{0%{opacity:1;transform:scale(.3)}to{opacity:0;transform:scale(2)}}@keyframes hw-float-f2e85bda{0%,to{transform:translateY(0)rotate(-3deg)}50%{transform:translateY(-14px)rotate(3deg)}}@keyframes hw-shadow-f2e85bda{0%,to{opacity:1;transform:scaleX(1)}50%{opacity:.55;transform:scaleX(.7)}}@keyframes hw-pop-f2e85bda{0%{opacity:0;transform:scale(.5)translateY(8px)}to{opacity:1;transform:none}}@keyframes hw-wobble-f2e85bda{0%,to{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}@keyframes hw-countdown-f2e85bda{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media (width<=900px){.hw-ghost[data-v-f2e85bda]{display:none}.hw-web[data-v-f2e85bda]{width:90px;height:90px;bottom:64px}.hw-eyes[data-v-f2e85bda]{bottom:126px;left:52px}.hw-spider[data-v-f2e85bda]{right:80px}.hw-witch[data-v-f2e85bda]{width:80px;height:46px}.hw-banner[data-v-f2e85bda]{top:64px}.hw-extra[data-v-f2e85bda],.hw-mini-ghost.g1[data-v-f2e85bda]{display:none}.hw-mini-ghost.g2[data-v-f2e85bda]{top:48%;right:10%}.hw-trail-spark[data-v-f2e85bda]{display:none}}@media (prefers-reduced-motion:reduce){.hw[data-v-f2e85bda] *,.hw-ghost[data-v-f2e85bda],.hw-ghost[data-v-f2e85bda] *,.hw-banner[data-v-f2e85bda] *{transition:none!important;animation:none!important}.hw-bat-track[data-v-f2e85bda],.hw-witch-track[data-v-f2e85bda],.hw-spark[data-v-f2e85bda],.hw-leaf[data-v-f2e85bda],.hw-candy[data-v-f2e85bda],.hw-eyes[data-v-f2e85bda],.hw-burst[data-v-f2e85bda],.hw-shooting[data-v-f2e85bda],.hw-trail-spark[data-v-f2e85bda],.hw-mini-ghost[data-v-f2e85bda],.hw-ghost-lottie[data-v-f2e85bda],.hw-flash[data-v-f2e85bda],.hw-swarm[data-v-f2e85bda],.hw-shooting[data-v-f2e85bda]{display:none}}@media print{.hw[data-v-f2e85bda],.hw-ghost[data-v-f2e85bda],.hw-banner[data-v-f2e85bda]{display:none!important}}body.fv-halloween{background:radial-gradient(ellipse 80% 40% at 50% -10%, #2b18381f, transparent 60%), var(--fv-bg)}body.fv-halloween .sidebar{background:radial-gradient(1px 1px at 20% 12%,#fffc,#0000 60%),radial-gradient(1px 1px at 70% 8%,#ffffffb3,#0000 60%),radial-gradient(1.5px 1.5px at 45% 22%,#ffe6aacc,#0000 60%),radial-gradient(1px 1px at 85% 30%,#fff9,#0000 60%),radial-gradient(1px 1px at 12% 40%,#fff9,#0000 60%),radial-gradient(120% 40% at 50% 100%,#ff8a1f2e,#0000 70%),linear-gradient(#24123a 0%,#1a1530 40%,#0e3324 100%)}body.fv-halloween .sidebar-brand{position:relative}body.fv-halloween .sidebar-brand:after{content:"";filter:drop-shadow(0 0 6px #ff962899);pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M20 8 Q21 4 25 3' stroke='%233f6b2a' stroke-width='2.4' fill='none' stroke-linecap='round'/%3E%3Cellipse cx='13' cy='23' rx='9' ry='12' fill='%23e8741a'/%3E%3Cellipse cx='27' cy='23' rx='9' ry='12' fill='%23e8741a'/%3E%3Cellipse cx='20' cy='23' rx='8' ry='12.5' fill='%23ff8a1f'/%3E%3Cg fill='%233a1a00'%3E%3Cpath d='M11 19 L16 19 L13.5 15 Z M24 19 L29 19 L26.5 15 Z'/%3E%3Cpath d='M10 26 Q20 34 30 26 L27 27 L25 25 L23 28 L20 26 L17 28 L15 25 L13 27 Z'/%3E%3C/g%3E%3C/svg%3E") 50%/contain no-repeat;width:28px;height:28px;animation:3s ease-in-out infinite fv-hw-pumpkin;position:absolute;top:8px;right:12px}body.fv-halloween .topbar{border-bottom:3px solid #0000;border-image:linear-gradient(90deg,#ff8a1f,#7a3fba,#ff8a1f) 1}body.fv-halloween ::selection{color:#2b1838;background:#ffb347}body.fv-halloween :where(:not(input,textarea,select,[contenteditable=true])){cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40' width='28' height='28'%3E%3Cpath d='M20 8 Q21 4 25 3' stroke='%233f6b2a' stroke-width='2.4' fill='none' stroke-linecap='round'/%3E%3Cellipse cx='13' cy='23' rx='9' ry='12' fill='%23e8741a'/%3E%3Cellipse cx='27' cy='23' rx='9' ry='12' fill='%23e8741a'/%3E%3Cellipse cx='20' cy='23' rx='8' ry='12.5' fill='%23ff8a1f'/%3E%3Cg fill='%233a1a00'%3E%3Cpath d='M11 19 L16 19 L13.5 15 Z M24 19 L29 19 L26.5 15 Z'/%3E%3Cpath d='M10 26 Q20 34 30 26 L27 27 L25 25 L23 28 L20 26 L17 28 L15 25 L13 27 Z'/%3E%3C/g%3E%3C/svg%3E") 4 4,auto!important}body.fv-halloween :where(input,textarea,select,[contenteditable=true]){cursor:auto}body.fv-halloween .hw-page-enter-active{transition:opacity .3s,transform .3s}body.fv-halloween .hw-page-enter-from{opacity:0;transform:translateY(10px)}body.fv-halloween .card{transition:box-shadow .25s,transform .25s}body.fv-halloween .card:hover{transform:translateY(-2px);box-shadow:0 8px 26px #e8741a29,0 2px 8px #00000014}body.fv-halloween .btn-publish:not(:disabled){box-shadow:0 0 14px #ff8a1f73}body.fv-halloween .login-page:before{background:radial-gradient(70% 45% at 50% -10%,#7a3fba47,#0000 70%),radial-gradient(55% 35% at 85% 110%,#ff8a1f29,#0000 70%),linear-gradient(#100820d1 0%,#180c2ce0 55%,#0d0718eb 100%)}body.fv-halloween .login-page:after{content:"";pointer-events:none;background:radial-gradient(1.5px 1.5px at 12% 18%,#ffffffe6,#0000 60%),radial-gradient(1px 1px at 28% 8%,#ffffffb3,#0000 60%),radial-gradient(1px 1px at 45% 22%,#ffe6aacc,#0000 60%),radial-gradient(1.5px 1.5px at 62% 10%,#fffc,#0000 60%),radial-gradient(1px 1px at 78% 26%,#fff9,#0000 60%),radial-gradient(1px 1px at 90% 12%,#ffe6aab3,#0000 60%),radial-gradient(1px 1px at 8% 42%,#ffffff8c,#0000 60%),radial-gradient(1.5px 1.5px at 70% 40%,#ffffffb3,#0000 60%),radial-gradient(1px 1px at 38% 34%,#fff9,#0000 60%),radial-gradient(1px 1px at 55% 6%,#ffffffbf,#0000 60%);position:absolute;inset:0}body.fv-halloween .login-card{-webkit-backdrop-filter:blur(14px);background:#1c102edb;border:1px solid #ff8a1f47;position:relative;overflow:hidden;box-shadow:0 24px 60px #08041299,inset 0 0 0 1px #ffffff0a,0 0 40px #7a3fba40}body.fv-halloween .login-card:before{content:"";pointer-events:none;z-index:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120'%3E%3Cg fill='none' stroke='rgba(255,255,255,0.22)' stroke-width='1' stroke-linecap='round'%3E%3Cpath d='M120 0 L0 60 M120 0 L25 95 M120 0 L60 120 M120 0 L0 25 M120 0 L95 120'/%3E%3Cpath d='M98 22 Q100 20 109 22 M101 19 Q106 25 115 25'/%3E%3Cpath d='M75 45 Q62 38 75 22 M80 40 Q90 48 108 50 M72 9 Q74 20 80 40'/%3E%3Cpath d='M50 70 Q38 58 50 34 M54 66 Q70 76 98 78 M44 14 Q48 36 54 66'/%3E%3Cpath d='M24 96 Q20 80 24 47 M32 88 Q54 100 88 104 M16 19 Q22 52 32 88'/%3E%3C/g%3E%3C/svg%3E") 50%/contain no-repeat;width:92px;height:92px;position:absolute;top:0;right:0}body.fv-halloween .login-card:after{content:"";pointer-events:none;z-index:0;filter:drop-shadow(0 4px 10px #0006);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 54'%3E%3Cg%3E%3Cpath d='M22 12 Q23 6 28 5' stroke='%233f6b2a' stroke-width='2.6' fill='none' stroke-linecap='round'/%3E%3Cellipse cx='14' cy='30' rx='11' ry='16' fill='%23d9661a'/%3E%3Cellipse cx='30' cy='30' rx='11' ry='16' fill='%23d9661a'/%3E%3Cellipse cx='22' cy='30' rx='10' ry='17' fill='%23ff8a1f'/%3E%3C/g%3E%3Cg%3E%3Cpath d='M64 22 Q65 16 70 15' stroke='%233f6b2a' stroke-width='2.4' fill='none' stroke-linecap='round'/%3E%3Cellipse cx='58' cy='39' rx='9' ry='13' fill='%23c15a15'/%3E%3Cellipse cx='70' cy='39' rx='9' ry='13' fill='%23c15a15'/%3E%3Cellipse cx='64' cy='39' rx='8' ry='14' fill='%23d9661a'/%3E%3C/g%3E%3Cg%3E%3Cpath d='M88 28 Q89 23 93 22' stroke='%233f6b2a' stroke-width='2.2' fill='none' stroke-linecap='round'/%3E%3Cellipse cx='83' cy='43' rx='7' ry='10' fill='%23b3500f'/%3E%3Cellipse cx='93' cy='43' rx='7' ry='10' fill='%23b3500f'/%3E%3Cellipse cx='88' cy='43' rx='6' ry='11' fill='%23cc6117'/%3E%3C/g%3E%3C/svg%3E") 0 100%/contain no-repeat;width:96px;height:52px;position:absolute;bottom:-8px;left:-6px}body.fv-halloween .login-card>*{z-index:1;position:relative}body.fv-halloween .brand-logo{filter:drop-shadow(0 0 18px #ff962840)saturate(1.05)}body.fv-halloween .brand-sub{color:#b9a8d8}body.fv-halloween .brand-sub:before{content:"🎃 "}body.fv-halloween .login-form h2{color:#ffb347}body.fv-halloween .login-form h2:after{content:"";background:linear-gradient(90deg,#ff8a1f,#0000);border-radius:2px;width:64px;height:2px;margin-top:.4rem;display:block}body.fv-halloween .field span{color:#d9cfec}body.fv-halloween .field.active span{color:#ffb347}body.fv-halloween .field span svg{color:#8f7cb4}body.fv-halloween .field.active span svg{color:#ff8a1f}body.fv-halloween .field input{color:#f3edff;caret-color:#ff8a1f;background:#0f081ca6;border-color:#8b6dbe66}body.fv-halloween .field input::placeholder{color:#6d5e8c}body.fv-halloween .field input:focus{background:#0f081cd9;border-color:#ff8a1f;box-shadow:0 0 0 3px #ff8a1f2e,0 0 18px #ff8a1f26}body.fv-halloween .password-wrapper .toggle{color:#8f7cb4}body.fv-halloween .password-wrapper .toggle:hover{color:#ffb347}body.fv-halloween .alert{color:#ffb4ac;background:#c0392b2e;border-color:#ff6b6b73}body.fv-halloween .submit{background:linear-gradient(135deg,#ff9d2e,#e8741a 45%,#c04e0d);position:relative;overflow:hidden;box-shadow:0 8px 24px #e8741a59,inset 0 1px #ffffff40}body.fv-halloween .submit:after{content:"";background:linear-gradient(100deg,#0000,#ffffff40,#0000);width:40%;height:100%;animation:3.4s ease-in-out infinite fv-hw-sheen;position:absolute;top:0;left:-60%;transform:skew(-20deg)}body.fv-halloween .submit:hover:not(:disabled){background:linear-gradient(135deg,#ffab45,#f07f1f 45%,#cc5a12);transform:translateY(-1px);box-shadow:0 10px 30px #e8741a8c,0 0 24px #ff963259}body.fv-halloween .submit .arrow{filter:drop-shadow(0 0 6px #ffffff80)}body.fv-halloween .login-footer{color:#9d8cc2;border-top-color:#8b6dbe40}@keyframes fv-hw-sheen{0%,55%{left:-60%}to{left:130%}}@media (prefers-reduced-motion:reduce){body.fv-halloween .submit:after{animation:none}}@keyframes fv-hw-pumpkin{0%,to{transform:rotate(-8deg)}50%{transform:rotate(8deg)translateY(-2px)}}@media (prefers-reduced-motion:reduce){body.fv-halloween .sidebar-brand:after{animation:none}body.fv-halloween .card,body.fv-halloween .card:hover{transition:none;transform:none}}@media print{body.fv-halloween .sidebar-brand:after{display:none}}
