.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:#ffffff;position:relative;margin-top:80px;padding-top:40px}.auth-card{background:#ffffff;border-radius:12px;padding:48px;box-shadow:0 2px 8px rgba(0,0,0,0.08),0 1px 3px rgba(0,0,0,0.05);border:1px solid #e5e7eb;width:100%;max-width:480px;position:relative;z-index:10;animation:slideUp 0.6s ease-out}@keyframes slideUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.auth-header{text-align:center;margin-bottom:40px}.auth-logo{margin-bottom:24px}.auth-logo-img{height:60px;width:auto;transition:transform 0.3s ease}.auth-logo:hover .auth-logo-img{transform:scale(1.05)}.auth-title{font-size:2.5rem;font-weight:700;color:#1a1a1a;margin:0 0 8px 0;font-family:'Inter', sans-serif}.auth-subtitle{font-size:1.1rem;color:#6c757d;margin:0;font-weight:500}.auth-form{width:100%}.form-group{margin-bottom:24px}.input-wrapper{position:relative}.input-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#6c757d;font-size:16px;z-index:2;transition:color 0.3s ease}.form-input{width:100%;padding:16px 16px 16px 48px;border:1px solid #e5e7eb;border-radius:8px;font-size:16px;background:#ffffff;transition:all 0.3s ease;font-family:'Inter', sans-serif;color:#1a1a1a;box-sizing:border-box}.form-input:focus{outline:none;border-color:#1a1a1a;background:#ffffff;box-shadow:0 0 0 3px rgba(0,0,0,0.05)}.form-input:focus+.input-icon{color:#1a1a1a}.form-input::placeholder{color:#adb5bd}.form-help-text{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:0.875rem;color:#6c757d;font-weight:500}.form-help-text i{font-size:14px;color:#dc3545}.form-options{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.remember-me{display:flex;align-items:center;gap:8px}.checkbox-input{width:18px;height:18px;accent-color:#1a1a1a;cursor:pointer}.checkbox-label{font-size:14px;color:#6b7280;font-weight:500;cursor:pointer;transition:color 0.3s ease}.checkbox-label:hover{color:#1a1a1a}.forgot-link{color:#1a1a1a;text-decoration:none;font-size:14px;font-weight:500;transition:color 0.3s ease}.forgot-link:hover{color:#374151;text-decoration:underline}.form-actions{margin-bottom:24px}.btn{padding:16px 24px;font-family:'Inter', sans-serif;font-size:16px;font-weight:600;border-radius:12px;border:2px solid;transition:all 0.3s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;position:relative;overflow:hidden;cursor:pointer;width:100%}.btn::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);transition:left 0.5s ease}.btn:hover::before{left:100%}.btn-primary{background:#1a1a1a;border-color:#1a1a1a;color:white;box-shadow:0 2px 4px rgba(0,0,0,0.1)}.btn-primary:hover{background:#374151;border-color:#374151;box-shadow:0 4px 8px rgba(0,0,0,0.15);color:white;text-decoration:none}.btn-google{background:white;border-color:#e5e7eb;color:#1a1a1a;box-shadow:0 1px 3px rgba(0,0,0,0.1)}.btn-google:hover{background:#f9fafb;border-color:#1a1a1a;color:#1a1a1a;text-decoration:none;box-shadow:0 2px 4px rgba(0,0,0,0.1)}.divider{position:relative;text-align:center;margin:32px 0}.divider::before{content:'';position:absolute;top:50%;left:0;right:0;height:1px;background:rgba(0,0,0,0.1)}.divider-text{background:rgba(255,255,255,0.95);padding:0 16px;color:#6c757d;font-size:14px;font-weight:500}.social-auth{margin-bottom:32px}.auth-footer{text-align:center}.auth-footer-text{color:#6c757d;margin:0;font-size:14px}.auth-link{color:#1a1a1a;text-decoration:none;font-weight:600;transition:color 0.3s ease}.auth-link:hover{color:#374151;text-decoration:underline}#error_explanation{background:#f9fafb;color:#1a1a1a;padding:20px 24px;border-radius:8px;margin-bottom:30px;box-shadow:0 2px 4px rgba(0,0,0,0.05);border:1px solid #e5e7eb;border-left:3px solid #1a1a1a;position:relative;overflow:hidden;animation:slideDown 0.4s ease-out}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}#error_explanation h2{font-size:1rem;font-weight:600;margin:0 0 16px 0;color:#1a1a1a;font-family:'Inter', sans-serif;display:flex;align-items:center;gap:10px}#error_explanation h2::before{content:'\f071';font-family:'Font Awesome 5 Free';font-weight:900;font-size:18px;color:#1a1a1a;background:#f3f4f6;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}#error_explanation ul{margin:0;padding:0;list-style:none}#error_explanation li{background:#ffffff;padding:12px 16px;border-radius:6px;margin-bottom:8px;font-size:0.95rem;font-weight:500;color:#1a1a1a;border:1px solid #e5e7eb;transition:all 0.3s ease;display:flex;align-items:center;gap:8px}#error_explanation li::before{content:'\f00d';font-family:'Font Awesome 5 Free';font-weight:900;font-size:12px;color:#1a1a1a;flex-shrink:0}#error_explanation li:last-child{margin-bottom:0}#error_explanation li:hover{background:#f9fafb;border-color:#d1d5db;box-shadow:0 1px 3px rgba(0,0,0,0.1)}.field_with_errors .form-input{border-color:#1a1a1a !important;background:#f9fafb !important;box-shadow:0 0 0 3px rgba(0,0,0,0.05) !important}.field_with_errors .form-input:focus{border-color:#1a1a1a !important;background:#ffffff !important;box-shadow:0 0 0 3px rgba(0,0,0,0.1) !important}.field_with_errors .input-icon{color:#1a1a1a !important}.alert-success{background:#f9fafb !important;color:#1a1a1a !important;border:1px solid #e5e7eb !important;border-left:3px solid #1a1a1a !important;border-radius:8px !important;padding:16px 24px !important;margin-bottom:30px !important;box-shadow:0 2px 4px rgba(0,0,0,0.05) !important;font-family:'Inter', sans-serif !important;font-weight:500 !important;position:relative !important}@media (max-width: 768px){#error_explanation{padding:16px;margin-bottom:25px}#error_explanation h2{font-size:1rem}#error_explanation li{padding:8px 12px;font-size:0.9rem}}@media (max-width: 480px){#error_explanation{padding:14px;margin-bottom:20px}#error_explanation h2{font-size:0.95rem}#error_explanation li{padding:6px 10px;font-size:0.85rem}}@media (max-width: 768px){.auth-container{padding:16px;margin-top:70px;padding-top:30px}.auth-card{padding:32px 24px}.auth-title{font-size:2rem}.auth-subtitle{font-size:1rem}.form-options{flex-direction:column;gap:16px;align-items:flex-start}}@media (max-width: 480px){.auth-container{margin-top:60px;padding-top:20px}.auth-card{padding:24px 20px}.auth-title{font-size:1.8rem}.btn{padding:14px 20px;font-size:15px}}.role-selection{margin-top:20px}.role-label{font-weight:600;color:#333;margin-bottom:15px;display:block}.role-options{display:flex;flex-direction:column;gap:12px}.role-option{position:relative}.role-radio{position:absolute;opacity:0;pointer-events:none}.role-radio-label{display:flex;align-items:center;padding:16px 20px;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all 0.3s ease;background:white}.role-radio-label:hover{border-color:#1a1a1a;background:#f9fafb}.role-radio:checked+.role-radio-label{border-color:#1a1a1a;background:#f9fafb;box-shadow:0 0 0 3px rgba(0,0,0,0.05)}.role-radio-label i{font-size:24px;color:#1a1a1a;margin-right:15px;width:30px;text-align:center}.role-radio-label span{font-weight:600;color:#333;margin-bottom:4px;display:block}.role-radio-label small{color:#6c757d;font-size:0.85rem;display:block}.recruiter-login-section{margin-top:30px;padding-top:20px;border-top:1px solid #e9ecef}.recruiter-text{color:#6c757d;font-size:0.9rem;margin-bottom:15px;text-align:center}.recruiter-btn{border-color:#1a1a1a;color:#1a1a1a;background:white}.recruiter-btn:hover{background-color:#1a1a1a;color:white;border-color:#1a1a1a}@media (max-width: 768px){.role-options{gap:8px}.role-radio-label{padding:12px 16px}.role-radio-label i{font-size:20px;margin-right:12px}}
