:root{--auth-primary:#155f3a;--auth-primary-hover:#0d462b;--auth-accent:#00a264;--auth-bg-gradient:linear-gradient(135deg,#f1f5f2,#e2e8e4);--auth-card-bg:rgba(255,255,255,0.9);--auth-card-border:rgba(21,95,58,0.1);--auth-shadow:0 10px 40px -10px rgba(21,95,58,0.12);--auth-text-main:#1c2e3d;--auth-text-muted:#5f6e7a;--auth-input-bg:#ffffff;--auth-input-focus:#00a264}.auth-page-wrapper{min-height:80vh;display:flex;align-items:center;justify-content:center;padding:3rem 1rem;background:#e5ede9;border-radius:0;margin:0}.auth-card{background:var(--auth-card-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--auth-card-border);border-radius:15px;padding:3rem;width:100%;max-width:768px;box-shadow:var(--auth-shadow);transition:transform .3s ease}.auth-header{text-align:center;margin-bottom:2.5rem}.auth-title{font-size:2rem;font-weight:800;color:var(--auth-text-main);margin-bottom:.5rem;letter-spacing:-.025em}.auth-subtitle{color:var(--auth-text-muted);font-size:1rem}.auth-form-group{margin-bottom:1rem;position:relative}.auth-label{display:block;font-size:.875rem;font-weight:600;color:var(--auth-text-main);margin-bottom:.5rem;margin-left:.25rem}.auth-input-wrapper{position:relative;display:flex;align-items:center}.auth-input{width:100%;padding:.875rem 1.25rem;background:var(--auth-input-bg);border:1px solid rgba(0,0,0,.05);border-radius:12px;font-size:1rem;color:var(--auth-text-main);transition:all .2s ease;box-shadow:0 1px 2px rgba(0,0,0,.05)}.auth-input:focus{outline:none;border-color:#9ea4af;background:#fff}.auth-input:disabled{background:#f1f5f9;cursor:not-allowed}.auth-input:-moz-read-only{background:#f1f5f9;cursor:not-allowed;color:var(--auth-text-muted)}.auth-input-readonly,.auth-input:read-only{background:#f1f5f9;cursor:not-allowed;color:var(--auth-text-muted)}.auth-help-text{font-size:.75rem;color:var(--auth-text-muted);margin-top:.8rem;margin-left:.25rem;display:flex;align-items:flex-start;line-height:14px;gap:5px}.auth-help-icon{color:var(--auth-accent);opacity:.8}.auth-error-text{font-size:.75rem;color:#ef4444;margin-top:.4rem;margin-left:.25rem;font-weight:500}.auth-submit-btn{width:100%;padding:1rem;background:linear-gradient(135deg,var(--auth-primary) 0,var(--auth-primary-hover) 100%);color:white;border:none;border-radius:30px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);margin-top:1rem;box-shadow:0 4px 12px rgba(21,95,58,.2)}.auth-submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px rgba(21,95,58,.3);filter:brightness(1.1)}.auth-submit-btn:active:not(:disabled){transform:translateY(0)}.auth-submit-btn:disabled{opacity:.7;cursor:not-allowed;filter:grayscale(.5)}.auth-footer{text-align:center;margin-top:2rem;font-size:.95rem;color:var(--auth-text-muted)}.auth-link{color:var(--auth-primary);font-weight:700;text-decoration:none;transition:all .2s}.auth-link:hover{color:var(--auth-primary-hover);text-decoration:underline}.auth-divider{display:flex;align-items:center;text-align:center;margin:1.5rem 0;color:var(--auth-text-muted);font-size:.875rem}.auth-divider:after,.auth-divider:before{content:"";flex:1 1;border-bottom:1px solid rgba(0,0,0,.08)}.auth-divider span{padding:0 1rem}.social-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:12px;padding:.75rem;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:12px;font-size:.95rem;font-weight:600;color:#334155;cursor:pointer;transition:all .2s}.social-btn:hover:not(:disabled){background:#f8fafc;border-color:rgba(0,0,0,.2);transform:translateY(-1px)}.social-btn.linkedin{background:#0077b5;color:white;border:none}.social-btn.linkedin:hover:not(:disabled){background:#00669c}.social-login-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}@keyframes fadeInSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-in{animation:fadeInSlideUp .6s cubic-bezier(.16,1,.3,1) forwards}.auth-user-type-heading .auth-label{margin-bottom:0}.auth-user-type-badge{font-size:.68rem;font-weight:600;color:var(--auth-primary);background:rgba(0,162,100,.12);padding:.2rem .5rem;border-radius:999px;line-height:1.3}.auth-user-type-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.75rem;gap:.75rem}.auth-user-type-card{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:1rem .85rem;border-radius:12px;border:2px solid rgba(0,0,0,.06);background:var(--auth-input-bg);cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .15s ease;min-height:100%}.auth-user-type-card:hover:not(:disabled){border-color:rgba(21,95,58,.25);transform:translateY(-1px)}.auth-user-type-card:disabled{opacity:.7;cursor:not-allowed}.auth-user-type-card--selected{border-color:var(--auth-accent);box-shadow:0 0 0 3px rgba(0,162,100,.15);background:#fff}.auth-user-type-icon-wrap{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:999px;margin-bottom:.65rem}.auth-user-type-title{font-size:.9rem;font-weight:700;color:var(--auth-text-main);margin-bottom:.35rem;line-height:1.25}.auth-user-type-desc{font-size:.72rem;line-height:1.35;color:var(--auth-text-muted)}@media (max-width:720px){.auth-user-type-grid{grid-template-columns:1fr}}.auth-terms-switch-row{padding-left:1.25rem}.auth-terms-switch-wrap.form-check.form-switch{display:flex;align-items:center;padding-left:0;margin-bottom:0;min-height:0}.auth-terms-switch-wrap .auth-terms-switch.form-check-input{float:none;margin-top:0;margin-left:0;vertical-align:middle}.auth-terms-label{line-height:1.45;padding-top:1px}.auth-terms-switch.form-check-input{width:2.75rem;height:1.35rem;cursor:pointer}.auth-terms-switch.form-check-input:checked{background-color:var(--auth-primary);border-color:var(--auth-primary)}.auth-terms-switch.form-check-input:focus{box-shadow:0 0 0 .2rem rgba(21,95,58,.25)}@media (max-width:640px){.auth-card{padding:1.5rem}.auth-title{font-size:1.75rem}}.auth-split-card{background:#ffffff;border-radius:15px;width:100%;max-width:1000px;box-shadow:0 20px 40px -15px rgba(0,0,0,.07);display:grid;grid-template-columns:1.15fr .85fr;padding:30px;grid-gap:30px;gap:30px}.auth-left-col,.auth-right-col{display:flex;flex-direction:column}.auth-right-col{background:#155f3a;border-radius:15px;padding:30px;color:#ffffff}.auth-promo-content{display:flex;flex-direction:column;justify-content:space-between;height:100%}.auth-promo-badge{display:inline-flex;align-items:center;padding:.35rem .85rem;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);color:#ffffff;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin-bottom:2rem;width:-moz-fit-content;width:fit-content}.auth-promo-title{font-size:2rem;font-weight:800;color:#ffffff;line-height:1.25;letter-spacing:-.025em;margin-bottom:1.25rem}.auth-promo-desc{font-size:.95rem;color:rgba(255,255,255,.88);line-height:1.55;margin-bottom:2.25rem}.auth-promo-list{list-style:none;padding:0;margin:0 0 2.5rem;display:flex;flex-direction:column;gap:1rem}.auth-promo-item{display:flex;align-items:center;gap:12px;color:#ffffff;font-size:.92rem;font-weight:500}.auth-promo-check{display:inline-flex;width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.2);color:#ffffff;flex-shrink:0}.auth-promo-btn,.auth-promo-check{align-items:center;justify-content:center}.auth-promo-btn{display:flex;width:100%;padding:.9rem 1.5rem;background:#ffffff;color:#155f3a;border-radius:30px;font-weight:700;font-size:.95rem;text-decoration:none;transition:all .2s ease;box-shadow:0 2px 8px rgba(0,0,0,.1);margin-top:1.5rem;text-align:center}.auth-promo-btn:hover{background:#f8fafc;color:#0d462b;transform:translateY(-1px);box-shadow:0 4px 14px rgba(0,0,0,.15)}.auth-email-box{border:1px solid #e5e7eb;border-radius:15px;padding:1.5rem;background:#ffffff;box-shadow:0 1px 3px rgba(0,0,0,.02)}.auth-email-box-header{display:flex;align-items:center;gap:12px;margin-bottom:1.25rem}.auth-email-icon-badge{width:38px;height:38px;border-radius:10px;background:#ecfdf5;color:#155f3a;display:flex;align-items:center;justify-content:center;flex-shrink:0}.auth-email-box-title{font-size:.95rem;font-weight:700;color:#111827;margin:0;line-height:1.2}.auth-email-box-subtitle{font-size:.78rem;color:#6b7280;margin:0}.auth-link-forgot{font-size:.8rem;font-weight:600;color:#155f3a;text-decoration:none}.auth-link-forgot:hover{text-decoration:underline;color:#0d462b}.social-login-grid .social-btn{background:#ffffff;border:1px solid #e5e7eb;color:#1f2937;border-radius:10px;font-size:.875rem;font-weight:600;padding:.75rem 1rem}.social-login-grid .social-btn:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}@media (max-width:1024px){.auth-split-card{max-width:920px;grid-template-columns:1fr 1fr}.auth-left-col{padding:2rem}.auth-right-col{padding:2.25rem 2rem}.auth-promo-title{font-size:1.9rem}.auth-title{font-size:1.85rem}}@media (max-width:840px){.auth-split-card{grid-template-columns:1fr;max-width:540px;border-radius:20px;padding:8px}.auth-left-col{padding:1.75rem 1.5rem}.auth-right-col{border-radius:16px;padding:2rem 1.5rem;margin-top:8px}.auth-promo-title{font-size:1.75rem}.auth-promo-badge{margin-bottom:1.25rem}.auth-promo-desc{margin-bottom:1.5rem}.auth-promo-list{margin-bottom:1.75rem}}@media (max-width:540px){.auth-page-wrapper{padding:1rem .5rem;min-height:auto}.auth-split-card{border-radius:16px;padding:6px;box-shadow:0 10px 30px -10px rgba(0,0,0,.08)}.auth-left-col{padding:1.25rem 1rem}.auth-title{font-size:1.5rem}.auth-subtitle{font-size:.875rem}.social-login-grid{grid-template-columns:1fr;gap:8px}.social-login-grid .social-btn{padding:.7rem .85rem;font-size:.85rem}.auth-email-box{padding:1.15rem .85rem;border-radius:14px}.auth-email-box-header{gap:10px;margin-bottom:1rem}.auth-email-icon-badge{width:32px;height:32px;border-radius:8px}.auth-email-icon-badge svg{width:16px;height:16px}.auth-email-box-title{font-size:.9rem}.auth-email-box-subtitle{font-size:.75rem}.auth-right-col{padding:1.75rem 1.15rem;border-radius:12px}.auth-promo-title{font-size:1.5rem}.auth-promo-desc{font-size:.875rem}.auth-promo-item{font-size:.85rem}.auth-promo-btn{padding:.8rem 1.25rem;font-size:.9rem}}