@import url('https://fonts.googleapis.com/css2?family=Hind+Siliguri:wght@300;400;500;600;700&display=swap');
*{box-sizing:border-box;margin:0;padding:0}
html,body{min-height:100%}
body{font-family:'Hind Siliguri',sans-serif;background:linear-gradient(180deg,#f0f4f9 0%,#e8f1f9 60%,#e3edf8 100%);min-height:100vh;position:relative;overflow-x:hidden;display:flex;align-items:center;justify-content:center;padding:16px;color:#2d3748}
body:before{content:'';position:fixed;inset:0;background:repeating-linear-gradient(90deg,rgba(0,87,184,.06) 0,rgba(0,87,184,.06) 1px,transparent 1px,transparent 80px),repeating-linear-gradient(0deg,rgba(0,87,184,.05) 0,rgba(0,87,184,.05) 1px,transparent 1px,transparent 80px);pointer-events:none}
.auth-card{width:100%;max-width:448px;padding:40px;background:#fff;border-radius:20px;border:1px solid #e5eaf0;box-shadow:0 16px 40px rgba(13,38,76,.08);position:relative;overflow:hidden;z-index:1}
.auth-card:before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#003366 0%,#0a6ed1 50%,#2a94f4 100%)}
.logo-wrap{display:flex;justify-content:center;margin-bottom:32px}
.logo-circle{width:88px;height:88px;background:radial-gradient(circle at 30% 30%,#2a94f4 0%,#0a6ed1 60%,#003366 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 28px rgba(10,110,209,.25);position:relative;overflow:hidden;animation:logoFloat 6s ease-in-out infinite}
.logo-circle:before{content:'';position:absolute;inset:0;border-radius:50%;box-shadow:inset 0 0 0 2px rgba(255,255,255,.25)}
.logo-circle i{font-size:48px;color:#fff}
@keyframes logoFloat{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-5px) scale(1.05)}}
.auth-heading{text-align:center;margin-bottom:32px}.auth-heading h1{font-size:30px;line-height:1.3;color:#0d264c;font-weight:800;margin-bottom:4px}.auth-heading p{color:#607b9b;font-size:16px;font-weight:500}
.form-group{position:relative;margin-bottom:32px}.form-group label{display:block;font-size:14px;font-weight:600;color:#374151;margin-bottom:8px}.form-input{width:100%;padding:18px 48px 18px 55px;border:2px solid #e1e8ed;border-radius:15px;font-size:16px;background:#f8fafc;transition:all .3s cubic-bezier(.4,0,.2,1);color:#2d3748;font-family:'Hind Siliguri',sans-serif;outline:none}.form-input:focus{border-color:#0a6ed1;background:#fff;box-shadow:0 0 0 4px rgba(10,110,209,.12);transform:translateY(-2px)}.form-input::placeholder{color:#a0aec0;font-weight:400}.input-icon{position:absolute;left:20px;bottom:21px;color:#8aa0c8;font-size:18px;transition:.3s}.form-input:focus~.input-icon{color:#0a6ed1;transform:scale(1.1)}.password-toggle{position:absolute;right:20px;bottom:21px;color:#a0aec0;cursor:pointer;font-size:18px;transition:.3s}.password-toggle:hover{color:#0a6ed1}
.auth-btn{width:100%;padding:18px;background:linear-gradient(135deg,#0a6ed1 0%,#0057b8 100%);color:#fff;border:none;border-radius:15px;font-size:18px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;font-family:'Hind Siliguri',sans-serif}.auth-btn:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(10,110,209,.25)}.auth-btn:active{transform:translateY(-1px)}
.trust-note{display:flex;align-items:center;justify-content:center;gap:8px;color:#5b6f86;font-size:13px;margin-top:16px}.switch-area{text-align:center;margin-top:32px}.switch-area p{color:#4b5563;margin-bottom:16px}.switch-link{display:inline-block;padding:12px 30px;background:#fff;color:#0a6ed1;text-decoration:none;border-radius:25px;border:2px solid #0a6ed1;font-weight:600;transition:.25s;box-shadow:0 4px 16px rgba(13,38,76,.08)}.switch-link:hover{transform:translateY(-2px);background:#0a6ed1;color:#fff}
.alert{padding:12px 14px;border-radius:10px;margin-bottom:18px;font-size:14px}.alert-error{background:#fff1f2;border:1px solid #fecdd3;color:#be123c}
@media(max-width:520px){body{padding:14px}.auth-card{padding:32px 24px}.auth-heading h1{font-size:28px}.form-group{margin-bottom:26px}}
