.auth-page{background:#f8fafc;position:relative}.auth-page:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:0;overflow:hidden;background-image:radial-gradient(circle at 70% -20%,rgba(28,167,110,.1) 0%,transparent 70%),radial-gradient(circle at 30% 120%,rgba(28,167,110,.05) 0%,transparent 70%);background-size:200% 200%;animation:floatBackground 20s ease-in-out infinite}.auth-page:after{content:"";position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:0;overflow:hidden;background-image:radial-gradient(circle at 20% 80%,rgba(28,167,110,.1) 0%,transparent 50%);background-size:150% 150%;opacity:.5;animation:floatBackground 20s ease-in-out infinite reverse}@keyframes floatBackground{0%,to{transform:translate(0) rotate(0);background-position:0% 50%}33%{transform:translate(3%,-3%) rotate(120deg);background-position:50% 0%}66%{transform:translate(-2%,2%) rotate(240deg);background-position:100% 50%}}.auth-container{position:relative;z-index:1;width:100%;max-width:750px;margin:0 auto;padding:2rem 1rem}.auth-header{text-align:center;margin-bottom:2.5rem}.auth-header h1{font-size:2rem;font-weight:700;color:#1a1a1a;margin-bottom:.5rem}.auth-header p{color:#6b7280;font-size:1rem}.auth-header p a{color:#1ca76e;text-decoration:none;font-weight:600;transition:all .3s ease;position:relative}.auth-header p a:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background-color:#1ca76e;transition:width .3s ease}.auth-header p a:hover{color:#158f5a}.auth-header p a:hover:after{width:100%}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#1a1a1a;font-size:.95rem}.form-group label:before{content:none}.form-group input{width:100%;padding:.875rem 1.25rem;border:2px solid #e5e7eb;border-radius:10px;font-size:1rem;transition:all .3s ease;background-color:#fff}.form-group input:focus{outline:none;border-color:#1ca76e;box-shadow:0 0 0 4px #1ca76e1a}.form-group input::-moz-placeholder{color:#9ca3af;font-size:.95rem}.form-group input::placeholder{color:#9ca3af;font-size:.95rem}.form-group input.error{border-color:#ef4444;background-color:#fef2f2}.form-group input.error:focus{box-shadow:0 0 0 4px #ef44441a}.form-group input{display:block}.form-group .error-message{display:block;margin-top:.5rem;color:#ef4444;font-size:.875rem;font-weight:500}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 640px){.form-row{grid-template-columns:1fr}}.form-checkbox{display:flex;align-items:center;gap:.5rem}.form-checkbox input[type=checkbox]{width:1.25rem;height:1.25rem;border:2px solid #e5e7eb;border-radius:4px;cursor:pointer}.form-checkbox input[type=checkbox]:checked{background-color:#1ca76e;border-color:#1ca76e}.form-checkbox label{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;color:#6b7280;font-size:.95rem}.form-footer{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}@media (max-width: 640px){.form-footer{flex-direction:column;gap:1rem;align-items:flex-start}}.submit-button{width:100%;padding:1rem 2rem;background-color:#1ca76e;color:#fff!important;border:solid 1px #1ca76e;font-weight:600;font-size:1rem;border-radius:10px;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.75px;position:relative;overflow:hidden}.submit-button span{color:#fff}.submit-button:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(45deg,transparent,rgba(255,255,255,.1),transparent);transform:translate(-100%);transition:transform .6s}.submit-button:hover{background-color:#fff;transform:translateY(-2px);box-shadow:0 8px 20px #1ca76e4d}.submit-button:hover span{color:#1ca76e}.submit-button:hover:before{transform:translate(100%)}.submit-button:active{transform:translateY(0)}.submit-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.submit-button{margin-top:1rem}.alert{padding:1rem 1.25rem;border-radius:10px;margin-bottom:1.5rem;font-weight:500}.alert.alert-success{background-color:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.alert.alert-error{background-color:#fee2e2;color:#991b1b;border:1px solid #fecaca}.auth-logo{text-align:center;margin-bottom:2rem}.auth-logo img{height:50px;width:auto}.form-container{background:#fff;border-radius:16px;box-shadow:0 10px 25px -5px #0000001a,0 10px 10px -5px #0000000a;padding:3rem}@media (max-width: 640px){.form-container{padding:2rem}}.auth-links{text-align:center;margin-top:2rem;font-size:.95rem}.auth-links .auth-link{color:#1ca76e;text-decoration:none;font-weight:600;transition:all .3s ease;position:relative}.auth-links .auth-link:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background-color:#1ca76e;transition:width .3s ease}.auth-links .auth-link:hover{color:#158f5a}.auth-links .auth-link:hover:after{width:100%}.auth-links .auth-link{font-weight:500;font-size:.95rem;color:#6b7280}.auth-links .auth-link .highlight{color:#1ca76e;font-weight:600}@media (max-width: 640px){.auth-links{font-size:.875rem}.auth-links .separator{display:block;margin:.5rem 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite;display:inline-block;margin-right:.5rem}
