*{margin:0;padding:0;box-sizing:border-box;font-family:Segoe UI,system-ui,-apple-system,sans-serif}:root{--primary-color: #4a6bdf;--primary-dark: #3451b2;--secondary-color: #2d3748;--accent-color: #00cc88;--light-color: #f7fafc;--gray-color: #718096;--error-color: #e53e3e;--success-color: #38a169;--box-shadow: 0 20px 40px rgba(0, 0, 0, .1);--transition: all .3s cubic-bezier(.4, 0, .2, 1)}body{background:linear-gradient(135deg,#f6f9fc,#e9effd);min-height:100vh;display:flex;justify-content:center;align-items:center;padding:20px;color:var(--secondary-color)}.login-container{width:100%;max-width:440px;background:#fffffffa;border-radius:16px;box-shadow:var(--box-shadow),0 0 0 1px #4a6bdf0d;overflow:hidden;backdrop-filter:blur(10px)}.login-form-container{padding:2.5rem}.form-header{text-align:center;margin-bottom:2.5rem}.logo{font-size:2.5rem;font-weight:700;background:linear-gradient(135deg,var(--primary-color),var(--accent-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.5rem}.logo-container{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:.5rem}.logo-container img{width:auto;height:40px}.form-header h2{font-size:1.25rem;color:var(--gray-color);font-weight:500}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;font-size:.9rem;color:var(--secondary-color)}.input-group{position:relative;transition:var(--transition)}.input-group i{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--gray-color);transition:var(--transition)}.input-group input{width:100%;padding:.875rem 1rem .875rem 2.75rem;border:2px solid #e2e8f0;border-radius:10px;font-size:1rem;transition:var(--transition);background-color:#f8fafc}.input-group input:focus{border-color:var(--primary-color);background-color:#fff;box-shadow:0 0 0 4px #4a6bdf1a;outline:none}.input-group input:focus+i{color:var(--primary-color)}.toggle-password{position:absolute;right:1rem;top:50%;transform:translateY(-50%);cursor:pointer;color:var(--gray-color);transition:var(--transition)}.toggle-password:hover{color:var(--primary-color)}.form-options{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.remember-me{display:flex;align-items:center;gap:.5rem}.remember-me input[type=checkbox]{width:1.125rem;height:1.125rem;border-radius:4px;accent-color:var(--primary-color)}.remember-me label{font-size:.875rem;color:var(--gray-color)}.forgot-password{font-size:.875rem;color:var(--primary-color);text-decoration:none;transition:var(--transition)}.login-btn{width:100%;padding:1rem;background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);box-shadow:0 4px 12px #4a6bdf33}.login-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #4a6bdf4d}.login-btn:active{transform:translateY(0)}.form-footer{margin-top:2rem;text-align:center;color:var(--gray-color);font-size:.875rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-form-container{animation:fadeInUp .6s ease-out}@media screen and (max-width: 480px){.login-container{max-width:100%;border-radius:12px}.login-form-container{padding:1.5rem}.logo{font-size:2rem}.form-header h2{font-size:1.125rem}}*{margin:0;padding:0;box-sizing:border-box;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}:root{--primary-color: #3498db;--primary-dark: #2980b9;--secondary-color: #2c3e50;--accent-color: #1abc9c;--light-color: #ecf0f1;--gray-color: #95a5a6;--error-color: #e74c3c;--success-color: #2ecc71;--box-shadow: 0 10px 25px rgba(0, 0, 0, .1);--transition: all .3s ease}body{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh;display:flex;justify-content:center;align-items:center;padding:20px}.container{width:100%;max-width:400px;background-color:#fff;border-radius:12px;box-shadow:var(--box-shadow);overflow:hidden;position:relative}.login-header{background-color:var(--primary-color);color:#fff;padding:25px 20px;text-align:center}.login-header h1{font-size:2.2rem;margin-bottom:10px;font-weight:600}.login-header p{font-size:1rem;opacity:.9}.login-form{padding:30px 25px}.form-group{margin-bottom:25px;position:relative}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--secondary-color);font-size:.95rem}.input-group{position:relative}.input-group i{position:absolute;left:15px;top:50%;transform:translateY(-50%);color:var(--gray-color);transition:var(--transition)}.form-control{width:100%;padding:15px 15px 15px 45px;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:var(--transition);outline:none}.form-control:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #3498db33}.form-control:focus+i{color:var(--primary-color)}.form-control:not(:placeholder-shown){border-color:var(--primary-color)}.form-control:not(:placeholder-shown)+i{color:var(--primary-color)}.form-check{display:flex;align-items:center;margin-bottom:20px}.form-check-input{width:18px;height:18px;margin-right:10px;cursor:pointer;accent-color:var(--primary-color)}.form-check-label{color:var(--secondary-color);font-size:.9rem;cursor:pointer}.login-btn{width:100%;padding:15px;background-color:var(--primary-color);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);box-shadow:0 4px 6px #3498db33;margin-bottom:15px}.login-btn:hover{background-color:var(--primary-dark);transform:translateY(-2px);box-shadow:0 6px 8px #3498db4d}.login-btn:active{transform:translateY(0);box-shadow:0 2px 4px #3498db33}.forgot-password{display:block;text-align:center;color:var(--primary-color);text-decoration:none;font-size:.9rem;margin-top:10px;transition:var(--transition)}.forgot-password:hover{color:var(--primary-dark);text-decoration:underline}.login-footer{text-align:center;padding:15px;border-top:1px solid #eee;color:var(--gray-color);font-size:.85rem}.error-message{color:var(--error-color);font-size:.85rem;margin-top:5px;display:none}@media screen and (max-width: 480px){.container{max-width:100%;border-radius:8px}.login-header{padding:20px 15px}.login-header h1{font-size:1.8rem}.login-form{padding:20px 15px}.form-control{padding:12px 12px 12px 40px}.login-btn{padding:12px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.container{animation:fadeIn .5s ease-out}.divider{display:flex;align-items:center;text-align:center;margin:20px 0}.divider:before,.divider:after{content:"";flex:1;border-bottom:1px solid #eee}.divider span{padding:0 10px;color:var(--gray-color);font-size:.9rem}
