@charset "UTF-8";body,html{height:100%}.container,html{overflow:hidden}.alert,body{display:flex}.container,.input-wrapper,body{position:relative}.btn.loading,.input-icon,body::before{pointer-events:none}.footer-links a:hover,.forgot-password a:hover{color:var(--primary-dark)}.bottom-links a,.footer-links a,.forgot-password a{text-decoration:none;transition:color .3s}.bottom-links a,.footer-links a,.forgot-password a,.input-icon{transition:color .3s}:root{--primary-color:#D14B2A;--primary-dark:#B23D20;--primary-light:#E86D4D;--dark-bg:#1a1a1a;--text-dark:#2c2c2c;--text-gray:#6c757d;--border-color:#e0e0e0;--success-color:#28a745;--error-color:#dc3545;--bg-light:#f5f5f5}*{margin:0;padding:0;box-sizing:border-box}body{font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;background:linear-gradient(135deg,#f5f5f5 0,#e8e8e8 100%);min-height:100vh;justify-content:center;align-items:center;padding:20px;overflow-x:hidden;overflow-y:auto}.alert,.home-link{align-items:center}body::before{content:'';position:fixed;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(209,75,42,.03) 1px,transparent 1px);background-size:50px 50px;z-index:0}.container{background:#fff;border-radius:24px;box-shadow:0 20px 60px rgba(0,0,0,.08);width:100%;max-width:480px;animation:.6s cubic-bezier(.4,0,.2,1) slideIn;z-index:1;border:1px solid rgba(209,75,42,.1);margin:auto}@keyframes slideIn{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.header{background:#fff;padding:40px 40px 30px;text-align:center;border-bottom:2px solid #f5f5f5}.logo-container{margin-bottom:20px}.logo-text{font-size:36px;font-weight:700;color:var(--primary-color);letter-spacing:-.5px;margin-bottom:6px}.logo-tagline{font-size:13px;color:var(--text-gray);font-weight:500;letter-spacing:.5px}.form-group label,.header-title{margin-bottom:8px;color:var(--text-dark)}.header-title{font-size:26px;font-weight:700;letter-spacing:-.3px}.alert,.forgot-password,.form-group{margin-bottom:20px}.header-subtitle{color:var(--text-gray);font-size:15px;font-weight:400}.form-container{padding:35px 40px 40px}.alert{padding:14px 16px;border-radius:12px;font-size:14px;animation:.4s ease-in fadeIn;gap:10px;font-weight:500;border:1px solid}.btn,.form-control{font-size:15px;width:100%}@keyframes fadeIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.alert-error{background-color:rgba(220,53,69,.05);color:#dc3545;border-color:rgba(220,53,69,.2)}.alert-success{background-color:rgba(40,167,69,.05);color:#28a745;border-color:rgba(40,167,69,.2)}.alert-icon{width:18px;height:18px;flex-shrink:0}.form-group label{display:block;font-weight:600;font-size:14px;letter-spacing:.2px}.forgot-password a,.form-control:focus+.input-icon{color:var(--primary-color)}.input-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--text-gray);z-index:1}.btn.loading,.divider,.divider span{position:relative}.form-control{padding:14px 15px 14px 48px;border:2px solid #e5e7eb;border-radius:12px;transition:.3s;font-family:inherit;background:#fafafa;color:var(--text-dark)}.form-control:focus{outline:0;border-color:var(--primary-color);box-shadow:0 0 0 4px rgba(209,75,42,.08);background:#fff}.form-control::placeholder{color:#9ca3af}.forgot-password{text-align:right;margin-top:-8px}.bottom-links,.divider,.footer-links{text-align:center}.forgot-password a{font-size:13px;font-weight:600}.forgot-password a:hover{text-decoration:underline}.btn{padding:15px;background:linear-gradient(135deg,var(--primary-color) 0,var(--primary-dark) 100%);color:#fff;border:none;border-radius:12px;font-weight:700;cursor:pointer;transition:.3s cubic-bezier(.4, 0, .2, 1);letter-spacing:.5px;box-shadow:0 8px 20px rgba(209,75,42,.25);text-transform:uppercase}.btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 28px rgba(209,75,42,.35)}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.7;cursor:not-allowed}.btn.loading{color:transparent}.btn.loading::after,.divider::before{content:'';position:absolute;top:50%}.btn.loading::after{width:20px;height:20px;left:50%;margin-left:-10px;margin-top:-10px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.divider{margin:25px 0}.divider::before{left:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,#e5e7eb,transparent)}.divider span{background:#fff;padding:0 16px;color:var(--text-gray);font-size:12px;font-weight:700;letter-spacing:1.5px}.footer-links p{color:var(--text-gray);margin-bottom:16px;font-size:14px;font-weight:500}.footer-links a{color:var(--primary-color);font-weight:600}.bottom-links a:hover,.home-link:hover{color:var(--primary-color)}.home-link{display:inline-flex;gap:8px;margin-top:4px;padding:10px 18px;border:2px solid #e5e7eb;border-radius:10px;transition:.3s;font-size:14px;font-weight:600;color:var(--text-gray)}.home-link:hover{border-color:var(--primary-color);background:rgba(209,75,42,.05);transform:translateX(-3px)}.bottom-links{margin-top:25px;padding-top:20px;border-top:2px solid #f5f5f5}.bottom-links a{color:var(--text-gray);margin:0 10px;font-size:13px;font-weight:500}.auth-alert{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px}.auth-alert-success{background:#f0fdf4;border:1px solid #86efac;color:#166534}@media (max-width:576px){body{padding:15px}.container{max-width:100%;border-radius:16px}.header{padding:30px 25px 25px}.logo-text{font-size:30px}.header-title{font-size:22px}.btn,.form-control,.header-subtitle{font-size:14px}.form-container{padding:25px 25px 30px}.form-control{padding:13px 15px 13px 46px}.btn{padding:14px}.footer-links p,.home-link{font-size:13px}.home-link{padding:9px 14px}.divider{margin:20px 0}}@media (max-width:400px){body{padding:10px}.header{padding:25px 20px 20px}.form-container{padding:20px 20px 25px}.logo-text{font-size:26px}.header-title{font-size:20px}.form-control{padding:12px 12px 12px 42px}.input-icon{width:18px;height:18px;left:14px}.bottom-links a{display:block;margin:6px 0}}@keyframes inputFocus{0%,100%{transform:scale(1)}50%{transform:scale(1.01)}}.input-wrapper.focused{animation:.3s inputFocus}