@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap");@keyframes lp-gradient-shift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes lp-float-1{0%,to{transform:translate(0) rotate(0deg)}25%{transform:translate(30px,-40px) rotate(5deg)}50%{transform:translate(-20px,-60px) rotate(-3deg)}75%{transform:translate(15px,-20px) rotate(2deg)}}@keyframes lp-float-2{0%,to{transform:translate(0) rotate(0deg)}33%{transform:translate(-35px,25px) rotate(-4deg)}66%{transform:translate(25px,-30px) rotate(6deg)}}@keyframes lp-float-3{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-15px,35px) scale(1.08)}}@keyframes lp-pulse-ring{0%{transform:scale(.9);opacity:.5}50%{transform:scale(1.1);opacity:.2}to{transform:scale(.9);opacity:.5}}@keyframes lp-slide-up{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}@keyframes lp-shine{0%{left:-75%}to{left:125%}}@keyframes lp-grid-fade{0%{opacity:.03}50%{opacity:.07}to{opacity:.03}}@keyframes lp-particle{0%{transform:translateY(0) scale(1);opacity:.6}to{transform:translateY(-100vh) scale(0);opacity:0}}@keyframes lp-spin{to{transform:rotate(1turn)}}.lp-root{position:relative;flex-direction:row;min-height:100vh;width:100%;font-family:Inter,Outfit,system-ui,-apple-system,sans-serif;max-width:100vw}.lp-brand-panel,.lp-root{display:flex;overflow:hidden}.lp-brand-panel{position:absolute;inset:0;flex-direction:column;justify-content:center;align-items:center;padding:3rem 3rem 3rem 45%;background:linear-gradient(135deg,#0c1929,#1e3a5f 15%,#2563eb 35%,#3b82f6 50%,#1e40af 65%,#0c1929 80%,#1d4ed8);background-size:400% 400%;animation:lp-gradient-shift 10s ease infinite}.lp-brand-panel:before{background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 0);background-size:40px 40px;animation:lp-grid-fade 8s ease-in-out infinite}.lp-brand-panel:after,.lp-brand-panel:before{content:"";position:absolute;inset:0;pointer-events:none}.lp-brand-panel:after{background:linear-gradient(0deg,rgba(15,23,42,.4),transparent 50%)}.lp-shape{position:absolute;border-radius:30% 70% 70% 30%/30% 30% 70% 70%;pointer-events:none}.lp-shape-1{width:400px;height:400px;background:rgba(255,255,255,.1);top:-5%;right:15%;animation:lp-float-1 20s ease-in-out infinite}.lp-shape-1,.lp-shape-2{backdrop-filter:blur(2px)}.lp-shape-2{width:300px;height:300px;background:rgba(255,255,255,.07);bottom:5%;right:5%;animation:lp-float-2 16s ease-in-out infinite;border-radius:50%}.lp-shape-3{width:200px;height:200px;background:rgba(0,0,0,.12);top:50%;right:25%;animation:lp-float-3 14s ease-in-out infinite;border-radius:50%}.lp-shape-4{width:150px;height:150px;border:2px solid rgba(255,255,255,.12);top:10%;right:5%;animation:lp-float-2 22s ease-in-out infinite reverse;border-radius:50%;background:none}.lp-particle{position:absolute;width:3px;height:3px;background:rgba(255,255,255,.5);border-radius:50%;animation:lp-particle linear infinite;pointer-events:none}.lp-pulse-ring{position:absolute;width:220px;height:220px;border:2px solid rgba(255,255,255,.12);border-radius:50%;animation:lp-pulse-ring 4s ease-in-out infinite}.lp-pulse-ring-2{width:280px;height:280px;animation-delay:1s}.lp-brand-content{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;text-align:center;max-width:460px;animation:lp-slide-up .9s cubic-bezier(.16,1,.3,1) forwards;opacity:0}.lp-brand-logo{width:260px;margin-bottom:1rem;filter:brightness(0) invert(1) drop-shadow(0 4px 20px rgba(0,0,0,.3));transition:transform .4s ease}.lp-brand-logo:hover{transform:scale(1.04)}.lp-brand-title{font-size:2rem;font-weight:800;color:white;letter-spacing:-.03em;line-height:1.1;margin:0 0 .5rem}.lp-brand-tagline{font-size:1.15rem;font-weight:400;color:rgba(255,255,255,.7);letter-spacing:.04em;line-height:1.6;margin-bottom:2.5rem}.lp-form-panel{position:relative;flex:0 0 60%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:3rem 3.5rem;background:linear-gradient(90deg,#ffffff 40%,rgba(255,255,255,.85) 55%,rgba(255,255,255,.4) 70%,rgba(255,255,255,0));z-index:1}.lp-form-wrapper{width:100%;max-width:400px;margin-left:5%;animation:lp-slide-up .8s cubic-bezier(.16,1,.3,1) .15s forwards;opacity:0}.lp-form-header{margin-bottom:1.5rem;text-align:center}.lp-mascot{position:relative;width:200px;height:200px;margin:0 auto .75rem}.lp-mascot-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transform:scale(.92);transition:opacity .35s cubic-bezier(.4,0,.2,1),transform .35s cubic-bezier(.4,0,.2,1);filter:drop-shadow(0 4px 12px rgba(0,0,0,.1))}.lp-mascot-active{opacity:1;transform:scale(1)}.lp-form-title{font-size:1.85rem;font-weight:800;color:#0f172a;letter-spacing:-.03em;line-height:1.2;margin:0 0 .5rem}.lp-form-subtitle{font-size:.95rem;color:#64748b;font-weight:400;margin:0;line-height:1.5}.lp-field{position:relative;margin-bottom:1.5rem}.lp-field-input{width:100%;padding:.95rem 1rem .95rem 2.75rem;font-size:.92rem;font-weight:500;color:#0f172a;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:14px;outline:none;transition:all .25s cubic-bezier(.4,0,.2,1);font-family:inherit;box-sizing:border-box}.lp-field-input::placeholder{color:#94a3b8;font-weight:400}.lp-field-input:hover{border-color:#cbd5e1;background:#f1f5f9}.lp-field-input:focus{border-color:#3b82f6;background:#ffffff;box-shadow:0 0 0 4px rgba(59,130,246,.08),0 1px 3px rgba(0,0,0,.06)}.lp-field-input.lp-field-error{border-color:#ef4444;background:#fef2f2}.lp-field-icon{position:absolute;left:.9rem;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none;transition:color .25s ease;display:flex;align-items:center}.lp-field-input:focus~.lp-field-icon{color:#3b82f6}.lp-field-toggle{position:absolute;right:.9rem;top:50%;transform:translateY(-50%);background:none;border:none;padding:4px;cursor:pointer;color:#94a3b8;transition:color .2s ease;display:flex;align-items:center}.lp-field-toggle:hover{color:#64748b}.lp-field-err-text{font-size:.75rem;color:#ef4444;font-weight:600;margin-top:6px;padding-left:4px;animation:lp-slide-up .3s ease forwards}.lp-btn-primary{position:relative;width:100%;padding:.95rem;font-size:.95rem;font-weight:700;color:#ffffff;background:linear-gradient(135deg,#3b82f6,#2563eb 50%,#1d4ed8);border:none;border-radius:14px;cursor:pointer;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;gap:.5rem;letter-spacing:.01em;font-family:inherit;box-shadow:0 4px 14px -3px rgba(59,130,246,.4)}.lp-btn-primary:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 8px 25px -4px rgba(59,130,246,.5)}.lp-btn-primary:not(:disabled):active{transform:translateY(0)}.lp-btn-primary:disabled{opacity:.7;cursor:not-allowed}.lp-btn-primary:after{content:"";position:absolute;top:0;left:-75%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transform:skewX(-20deg);pointer-events:none}.lp-btn-primary:not(:disabled):hover:after{animation:lp-shine .7s ease forwards}.lp-error-banner{display:flex;align-items:center;gap:.65rem;padding:.85rem 1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;margin-bottom:1.5rem;animation:lp-slide-up .3s ease forwards}.lp-error-banner-icon{flex-shrink:0;width:20px;height:20px;color:#ef4444}.lp-error-banner-text{font-size:.82rem;font-weight:600;color:#dc2626;line-height:1.4}.lp-2fa-banner{display:flex;align-items:flex-start;gap:.65rem;padding:.85rem 1rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;margin-bottom:1.5rem;animation:lp-slide-up .3s ease forwards}.lp-2fa-banner-text{font-size:.82rem;font-weight:500;color:#1e40af;line-height:1.4}.lp-2fa-banner a{color:#2563eb;font-weight:600;text-decoration:underline}.lp-footer{margin-top:1.5rem;text-align:center}.lp-footer-text{font-size:.75rem;color:#94a3b8;font-weight:400}.lp-spinner{width:22px;height:22px;border:2.5px solid rgba(255,255,255,.3);border-top-color:white;border-radius:50%;animation:lp-spin .7s linear infinite}@media (max-width:900px){.lp-root{flex-direction:column}.lp-brand-panel{position:relative;inset:auto;flex:none;min-height:260px;padding:2rem}.lp-brand-title{font-size:2rem}.lp-brand-tagline{display:none}.lp-form-panel{flex:1;padding:2rem 1.5rem;background:#ffffff}.lp-form-wrapper{margin-left:0}.lp-mascot{width:160px;height:160px}}