.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:#f9fafb;padding:3rem 1rem}.auth-card{max-width:28rem;width:100%;background:#ffffff;padding:2.5rem;border-radius:.75rem;box-shadow:0 10px 15px -3px rgba(0,0,0,.1);border:1px solid #f3f4f6}.auth-title{margin-top:1.5rem;text-align:center;font-size:1.875rem;font-weight:800;color:#111827;margin-bottom:2rem}.auth-subtitle{text-align:center;font-size:.875rem;color:#4b5563;margin-top:.5rem}.auth-form{gap:1.5rem}.auth-form,.auth-input-group{display:flex;flex-direction:column}.auth-input-group{gap:1rem}.auth-input-label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.25rem}.auth-input{appearance:none;display:block;width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;color:#111827;box-sizing:border-box}.auth-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px rgba(59,130,246,.5)}.auth-button{width:100%;display:flex;justify-content:center;padding:.5rem 1rem;border:none;border-radius:.375rem;background-color:#2563eb;color:#ffffff;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s;box-sizing:border-box}.auth-button:hover:not(:disabled){background-color:#1d4ed8}.auth-button:disabled{background-color:#93c5fd;cursor:not-allowed}.auth-link{font-size:.875rem;font-weight:500;color:#2563eb;text-decoration:none}.auth-link:hover{color:#1d4ed8;text-decoration:underline}.auth-error{background-color:#fef2f2;color:#dc2626;padding:.75rem;border-radius:.375rem;font-size:.875rem;text-align:center}