.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.auth-card{background:#fff;border-radius:12px;padding:40px;max-width:420px;width:100%;box-shadow:0 10px 40px #0000001a}.auth-logo{display:block;margin:0 auto 12px;max-width:260px;width:100%;height:auto}.auth-card h1{margin:0 0 24px;font-size:24px;text-align:center;color:#333;font-weight:600}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#555;font-size:14px}.form-group input{width:100%;padding:12px 16px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:all .3s;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group small{display:block;margin-top:6px;font-size:12px;color:#888;line-height:1.4}.auth-card button[type=submit]{width:100%;padding:14px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;margin-top:10px}.auth-card button[type=submit]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.auth-card button[type=submit]:active:not(:disabled){transform:translateY(0)}.auth-card button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.error-message{background:#fff1f0;color:#cf1322;padding:12px 16px;border-radius:6px;margin-bottom:20px;font-size:14px;border-left:3px solid #cf1322}.auth-links{margin-top:24px;display:flex;flex-direction:column;gap:12px;text-align:center}.auth-links a{color:#667eea;text-decoration:none;font-size:14px;font-weight:500;transition:color .2s}.auth-links a:hover{color:#5568d3;text-decoration:underline}.loading-spinner{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.loading-spinner p{font-size:16px;color:#666;margin:0}.spinner{border:3px solid #f3f3f3;border-top:3px solid #667eea;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:480px){.auth-card{padding:30px 20px}.auth-card h1{font-size:20px}}
