*{margin:0;padding:0;box-sizing:border-box}body{font-family:'Inter',sans-serif;background:#f0f7f0;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem;position:relative}body::before{content:'';position:fixed;inset:0;background:radial-gradient(circle at 20% 30%,rgb(60 130 70 / .04) 0%,transparent 60%),radial-gradient(circle at 80% 70%,rgb(40 100 50 / .05) 0%,transparent 50%);z-index:0;pointer-events:none}.login-card{background:rgb(255 255 255 / .75);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgb(60 130 70 / .15);box-shadow:0 20px 40px -12px rgb(30 60 30 / .25),0 8px 24px -8px rgb(0 30 0 / .1);border-radius:42px;padding:2.5rem 2.2rem;max-width:460px;width:100%;transition:all 0.2s ease;position:relative;z-index:2}.brand-icon{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:1rem}.brand-icon i{font-size:2.6rem;color:#2d6a3b;background:rgb(45 106 59 / .08);padding:.5rem;border-radius:20px;transition:0.2s}.brand-icon h2{font-weight:600;font-size:1.9rem;letter-spacing:-.3px;color:#1f472a;margin:0}.brand-icon h2 small{font-weight:400;font-size:.95rem;color:#3d6b47;letter-spacing:.3px;margin-left:4px}.sub-head{color:#3a6043;font-weight:400;font-size:.95rem;border-bottom:2px solid rgb(60 130 70 / .15);padding-bottom:.9rem;margin-bottom:1.8rem;display:flex;align-items:center;justify-content:space-between}.sub-head span{background:#e6f0e6;padding:.2rem .9rem;border-radius:40px;font-size:.75rem;font-weight:600;color:#1f472a;letter-spacing:.3px}.form-floating{margin-bottom:1.4rem}.form-floating>.form-control{border-radius:30px;background:rgb(255 255 255 / .6);border:1px solid rgb(50 110 60 / .2);box-shadow:inset 0 2px 4px rgb(0 20 0 / .02);transition:0.2s;height:62px;padding:1.2rem 1.2rem .2rem 1.8rem;font-weight:450;color:#1d3a25}.form-floating>.form-control:focus{border-color:#2d7a3e;box-shadow:0 0 0 4px rgb(45 122 62 / .15),inset 0 2px 4px rgb(0 20 0 / .02);background:#fff}.form-floating>label{padding-left:1.8rem;color:#4f755a;font-weight:450;letter-spacing:-.1px}.form-floating>.form-control:focus~label{color:#1f6e31}.input-group-otp{display:flex;align-items:center;gap:.6rem}.input-group-otp .form-floating{flex:1;margin-bottom:0}.input-group-otp .otp-btn{background:#eaf3ea;border:1px solid rgb(50 110 60 / .2);border-radius:40px;padding:.8rem 1.2rem;font-weight:500;font-size:.9rem;color:#1f472a;transition:0.2s;white-space:nowrap;height:62px;display:flex;align-items:center;gap:.4rem;background:rgb(45 106 59 / .04)}.input-group-otp .otp-btn i{font-size:1.1rem}.input-group-otp .otp-btn:hover{background:#d4e8d4;border-color:#2d7a3e;color:#14331d;box-shadow:0 4px 10px rgb(40 100 50 / .08)}.login-btn{background:#1f6e31;border:none;border-radius:60px;padding:.9rem 1.2rem;font-weight:600;font-size:1.1rem;letter-spacing:.3px;color:#fff;width:100%;transition:all 0.2s ease;box-shadow:0 8px 18px -6px rgb(30 80 40 / .25);margin-top:.8rem;display:flex;align-items:center;justify-content:center;gap:.6rem}.login-btn i{font-size:1.2rem}.login-btn:hover{background:#135825;transform:scale(1.01);box-shadow:0 12px 24px -8px rgb(20 70 30 / .35);color:#fff}.login-btn:active{transform:scale(.97)}.extra-links{display:flex;justify-content:space-between;margin-top:1.8rem;font-size:.9rem;color:#3f6a4a;border-top:1px solid rgb(50 110 60 / .08);padding-top:1.4rem}.extra-links a{color:#1f6e31;text-decoration:none;font-weight:500;transition:0.1s;border-bottom:1px dotted #fff0}.extra-links a:hover{color:#0f4620;border-bottom-color:#1f6e31}.extra-links i{margin-right:4px}.leaf-deco{position:absolute;font-size:4.5rem;color:rgb(45 106 59 / .04);z-index:0;pointer-events:none}.leaf-deco-1{top:-20px;right:-10px;transform:rotate(35deg)}.leaf-deco-2{bottom:-30px;left:-20px;transform:rotate(-20deg)}@media (max-width:480px){.login-card{padding:2rem 1.2rem;border-radius:32px}.brand-icon h2{font-size:1.6rem}.input-group-otp{flex-wrap:wrap}.input-group-otp .otp-btn{width:100%;justify-content:center;height:54px}.extra-links{flex-direction:column;gap:.6rem;align-items:center}}.otp-floating .form-control{padding-left:1.8rem}