.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e8f8fb,#f0fafb,#eaf6f8);position:relative;overflow:hidden;padding:40px 16px}.auth-page .blob{position:absolute;border-radius:50%;filter:blur(80px);opacity:.35;pointer-events:none}.auth-page .blob-1{width:400px;height:400px;background:radial-gradient(circle,#7ecfde,#106c86);top:-100px;right:-100px}.auth-page .blob-2{width:350px;height:350px;background:radial-gradient(circle,#a8e6ef,#5bbcd1);bottom:-80px;left:-80px}.auth-page .auth-card{background:#fff;border-radius:20px;padding:40px 36px;width:100%;max-width:460px;box-shadow:0 4px 24px #106c861a,0 1px 4px #0000000d;position:relative;z-index:1;animation:slideUp .4s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-page .auth-header{text-align:center;margin-bottom:28px}.auth-page .logo-link{display:inline-block;margin-bottom:16px}.auth-page .auth-logo{height:44px;width:auto;-o-object-fit:contain;object-fit:contain}.auth-page .auth-title{font-size:1.75rem;font-weight:700;color:#0f172a;margin:0 0 6px}.auth-page .auth-subtitle{font-size:.875rem;color:#64748b;margin:0}.auth-page .alert{border-radius:10px;padding:10px 14px;font-size:.85rem;margin-bottom:16px}.auth-page .alert-error{background:#fee2e2;border:1px solid #fca5a5;color:#b91c1c}.auth-page .alert-success{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46}.auth-page .auth-form{display:flex;flex-direction:column;gap:16px}.auth-page .form-group{display:flex;flex-direction:column;gap:6px}.auth-page .form-label{font-size:.82rem;font-weight:600;color:#374151}.auth-page .input-wrapper{position:relative;display:flex;align-items:center}.auth-page .input-icon{position:absolute;left:12px;width:16px;height:16px;color:#9ca3af;pointer-events:none}.auth-page .form-input{width:100%;padding:11px 40px 11px 38px;border:1.5px solid #e2e8f0;border-radius:10px;font-size:.875rem;color:#1e293b;background:#f8fafc;outline:none;transition:border-color .2s,box-shadow .2s,background .2s;font-family:inherit}.auth-page .form-input:focus{border-color:#38bcd4;background:#fff;box-shadow:0 0 0 3px #38bcd426}.auth-page .form-input::-moz-placeholder{color:#cbd5e1}.auth-page .form-input::placeholder{color:#cbd5e1}.auth-page .form-input.input-mismatch{border-color:#f87171;box-shadow:0 0 0 3px #f871711f}.auth-page .toggle-password{position:absolute;right:12px;background:none;border:none;cursor:pointer;padding:0;color:#9ca3af;display:flex;align-items:center;transition:color .2s}.auth-page .toggle-password:hover{color:#106c86}.auth-page .toggle-password svg{width:16px;height:16px}.auth-page .terms-text{font-size:.82rem;color:#38bcd4;margin:0}.auth-page .terms-link{color:#38bcd4;font-weight:600;text-decoration:underline;transition:color .2s}.auth-page .terms-link:hover{color:#106c86}.auth-page .btn-primary{width:100%;padding:12px;background:linear-gradient(135deg,#38bcd4,#106c86);color:#fff;border:none;border-radius:50px;font-size:.95rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:opacity .2s,transform .15s,box-shadow .2s;box-shadow:0 4px 14px #106c864d;margin-top:4px;font-family:inherit}.auth-page .btn-primary:hover:not(:disabled){opacity:.92;transform:translateY(-1px);box-shadow:0 6px 18px #106c8659}.auth-page .btn-primary:active:not(:disabled){transform:translateY(0)}.auth-page .btn-primary:disabled{opacity:.7;cursor:not-allowed}.auth-page .spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-page .auth-footer{text-align:center;margin-top:22px;font-size:.875rem;color:#64748b}.auth-page .auth-link{color:#38bcd4;font-weight:600;text-decoration:none;transition:color .2s}.auth-page .auth-link:hover{color:#106c86}
