*{box-sizing:border-box}body{margin:0}.auth-container{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.auth-card{background-color:#0f2c3f;border:1px solid #fff;border-radius:16px;width:100%;max-width:450px;transition:all .3s;animation:.5s ease-out fadeIn;overflow:hidden;box-shadow:0 10px 25px #0000004d}.auth-header{color:#fff;background:linear-gradient(145deg,#78350f 0%,#0c2233 100%);padding:30px;position:relative;overflow:hidden}.auth-header:after{content:"";background:#ffffff0d;border-radius:50%;width:200px;height:200px;position:absolute;top:-100px;right:-100px}.auth-header:before{content:"";background:#ffffff0d;border-radius:50%;width:150px;height:150px;position:absolute;bottom:-75px;left:-75px}.auth-header h2{z-index:1;margin:0 0 10px;font-size:28px;font-weight:600;position:relative}.auth-header p{opacity:.85;z-index:1;margin:0;font-size:16px;position:relative}.auth-form{padding:30px}.form-group{margin-bottom:20px}.form-group label{color:#e5e7eb;margin-bottom:8px;font-size:14px;font-weight:500;display:block}.input-container{align-items:center;display:flex;position:relative}.input-icon{color:#9ca3af;justify-content:center;align-items:center;font-size:18px;display:flex;position:absolute;left:15px}.input-container input{color:#e5e7eb;background-color:#112742;border:1px solid #cec496;border-radius:10px;width:100%;padding:12px 12px 12px 45px;font-size:15px;transition:all .3s}.input-container input:focus{background-color:#112742;outline:none;box-shadow:0 0 0 3px #d9770633}.input-container :hover{border-color:#d97706}.input-container input::placeholder{color:#9aa3b8}.password-toggle{color:#9ca3af;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:18px;display:flex;position:absolute;right:15px}.password-toggle:hover{color:#d97706}.auth-links{justify-content:flex-end;margin-bottom:20px;display:flex}.forgot-password{color:#d97706;font-size:14px;text-decoration:none;transition:all .3s}.forgot-password:hover{color:#f59e0b;text-decoration:underline}.auth-button{color:#fff;cursor:pointer;background:linear-gradient(145deg,#92400e 0%,#78350f 100%);border:none;border-radius:10px;justify-content:center;align-items:center;width:100%;padding:14px;font-size:16px;font-weight:500;transition:all .3s;display:flex;position:relative;overflow:hidden}.auth-button:after{content:"";background:linear-gradient(90deg,#fff0 0%,#ffffff1a 50%,#fff0 100%);width:100%;height:100%;transition:all .6s;position:absolute;top:0;left:-100%}.auth-button:hover{transform:translateY(-2px);box-shadow:0 5px 15px #78350f80}.auth-button:hover:after{left:100%}.auth-button:active{transform:translateY(1px)}.auth-button:focus{outline:none}.auth-button.submitting{cursor:not-allowed;background:linear-gradient(145deg,#7c3608 0%,#662e0a 100%)}.spinner{width:20px;height:20px;margin-right:10px;animation:1s linear infinite spin}.spinner-track{fill:none;stroke:#ffffff4d;stroke-width:3px}.spinner-path{fill:none;stroke:#fff;stroke-width:3px;stroke-dasharray:62.83;stroke-dashoffset:62.83px;animation:1.5s ease-in-out infinite dash}.auth-switch{text-align:center;margin-top:25px}.auth-switch p{color:#9aa3b8;margin:0;font-size:14px}.auth-switch a{color:#d97706;font-weight:500;text-decoration:none;transition:all .3s}.auth-switch a:hover{color:#f59e0b;text-decoration:underline}.error-message-bottom{color:red}.forgot-password-container{justify-content:flex-end;margin-top:6px;display:flex}.forgot-password-link{color:#d97706;cursor:pointer;background:0 0;border:none;padding:0;font-size:.9rem;text-decoration:none;transition:color .2s}.forgot-password-link:hover{color:#89b4ee;text-decoration:underline}.auth-card{transition:all .3s}.auth-card:hover{transform:translateY(-2px);box-shadow:0 15px 30px #0000001a}.auth-button{transition:all .3s}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dashoffset:62.83px}50%{stroke-dashoffset:0}to{stroke-dashoffset:-62.83px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:480px){.auth-card{max-width:100%}.auth-header{padding:25px}.auth-form{padding:20px}.auth-header h2{font-size:24px}}
