*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:#f8fafc;height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.login-container,body{display:flex;align-items:center;justify-content:center}.login-container{background:linear-gradient(135deg,#f8fafc,#e2e8f0);width:100%;min-height:100vh;padding:20px;position:relative;overflow:hidden}.login-card{background:white;border-radius:24px;box-shadow:0 20px 60px rgba(0,0,0,.15);width:100%;max-width:440px;padding:48px;position:relative;z-index:10}.login-header{text-align:center;margin-bottom:40px}.logo{width:80px;height:80px;margin:0 auto 24px;border-radius:20px;display:flex;align-items:center;justify-content:center;background:#f8fafc;border:3px solid #e2e8f0;padding:8px;overflow:hidden;position:relative}.logo-img{width:100%;height:100%;object-fit:contain;border-radius:12px}.logo-fallback{font-size:36px;color:#374151;font-weight:700;display:flex;align-items:center;justify-content:center;width:100%;height:100%;position:absolute;top:0;left:0}h1{font-size:28px;font-weight:700;color:#1a202c;margin-bottom:8px;letter-spacing:-.5px}.login-card h2{color:#1f2937;font-size:1.5rem;font-weight:600;margin-bottom:.75rem;text-align:center}.subtitle{font-size:15px;color:#64748b;font-weight:400}.enterprise-badge{display:inline-block;padding:6px 12px;background:#f1f5f9;border-radius:8px;font-size:12px;font-weight:600;color:#475569;margin-top:16px;letter-spacing:.5px;text-transform:uppercase}.form-group{margin-bottom:24px}label{display:block;font-size:14px;font-weight:600;color:#374151;margin-bottom:8px}input[type=email],input[type=password],input[type=text]{width:100%;padding:14px 16px;background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;font-size:15px;transition:all .3s;font-family:inherit}input[type=email]:focus,input[type=password]:focus,input[type=text]:focus{outline:none;background:white;border-color:#374151;box-shadow:0 0 0 4px rgba(55,65,81,.1)}input[type=email]::placeholder,input[type=password]::placeholder,input[type=text]::placeholder{color:#9ca3af}.form-options{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.checkbox-wrapper{display:flex;align-items:center;gap:8px}.checkbox-wrapper input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-wrapper label{margin:0;font-size:14px;color:#64748b;cursor:pointer}.forgot-password{font-size:14px;color:#64748b;text-decoration:none;transition:color .2s}.forgot-password:hover{color:#374151}.forgot-password-link{text-align:right;margin-bottom:1rem}.link-button{background:none;border:none;color:#4f46e5;cursor:pointer;font-size:.875rem;text-decoration:underline;padding:0;transition:color .2s}.link-button:hover{color:#6366f1}.reset-instructions{color:#6b7280;font-size:.875rem;margin-bottom:1.5rem;text-align:center;line-height:1.5}.btn{width:100%;padding:14px 24px;border-radius:12px;font-size:16px;font-weight:600;border:none;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;gap:8px}.btn-primary{background:white;color:#1a202c;border:2px solid #e2e8f0;box-shadow:0 4px 14px rgba(0,0,0,.1)}.btn-primary:hover:not(:disabled){background:#f8fafc;transform:translateY(-2px);box-shadow:0 10px 25px rgba(0,0,0,.15);border-color:#cbd5e1}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:#6b7280;border:none;color:white;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;width:100%;margin-top:.75rem;transition:all .3s ease}.btn-secondary:hover:not(:disabled){background:#4b5563;transform:translateY(-1px)}.btn:disabled{opacity:.6;cursor:not-allowed}.loading-spinner{width:20px;height:20px;border:2px solid #e5e7eb;border-top-color:#374151;border-radius:50%;animation:spin .8s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(1turn)}}.message{padding:12px 16px;border-radius:10px;margin-top:16px;font-size:14px;text-align:center;word-wrap:break-word}.message-error{background:#fef2f2;color:#991b1b;border:1px solid #fca5a5}.message-success{background:#ecfdf5;color:#065f46;border:1px solid #6ee7b7}.message-info{background:#eff6ff;color:#1e3a8a;border:1px solid #93c5fd}.message-warning{background:#fef3c7;color:#92400e;border:1px solid #fbbf24}.divider{text-align:center;margin:32px 0;position:relative}.divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#e5e7eb}.divider span{background:white;padding:0 16px;color:#9ca3af;font-size:13px;position:relative}.signup-prompt{margin-top:20px}.signup-prompt p{color:#64748b}.signup-prompt a{color:#374151;font-weight:600;text-decoration:none;transition:color .2s}.signup-prompt a:hover{color:#1a202c}.contact-admin{text-align:center;padding:20px;background:#f8fafc;border-radius:12px;margin-top:24px}.contact-admin p{font-size:14px;color:#64748b;margin-bottom:8px}.contact-admin a{color:#374151;font-weight:600;text-decoration:none}.bg-decoration{position:absolute;border-radius:50%;opacity:.1;background:white}.bg-decoration-1{width:400px;height:400px;top:-200px;left:-200px}.bg-decoration-2{width:300px;height:300px;bottom:-150px;right:-150px}.bg-decoration-3{width:200px;height:200px;top:50%;left:10%}.signup-prompt{text-align:center;margin-top:24px;padding-top:24px;border-top:1px solid var(--border-primary)}.signup-prompt p{color:var(--text-tertiary);font-size:14px;margin-bottom:8px}.payment-view{padding:20px 0}.payment-info{text-align:center}.payment-icon{font-size:64px;margin-bottom:20px;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.payment-description{color:var(--text-secondary);font-size:16px;line-height:1.6;margin-bottom:30px}.payment-description strong{color:var(--primary);font-size:20px}.payment-features{background:var(--gray-50);border-radius:12px;padding:24px;margin:30px 0;text-align:left}.payment-features h3{color:var(--text-primary);font-size:16px;font-weight:600;margin-bottom:16px;text-align:center}.payment-features ul{list-style:none;padding:0}.payment-features li{color:var(--text-secondary);font-size:14px;padding:8px 0;display:flex;align-items:center}.payment-amount{background:linear-gradient(135deg,var(--primary-lightest) 0,var(--primary-lighter) 100%);border-radius:12px;padding:24px;margin:30px 0;display:flex;flex-direction:column;align-items:center;gap:8px}.amount-label{color:var(--text-tertiary);font-size:14px;text-transform:uppercase;letter-spacing:.1em}.amount-value{color:var(--primary-dark);font-size:36px;font-weight:700}.btn-payment{font-size:18px;padding:16px 48px;margin-top:20px}.payment-note{color:var(--text-muted);font-size:12px;margin-top:16px}.payment-result{text-align:center;padding:40px 20px}.result-icon{font-size:80px;margin-bottom:24px;animation:scaleIn .5s ease}.result-icon.success{color:var(--primary)}.result-icon.error{color:var(--accent-red)}.result-icon .loading-spinner.large{width:60px;height:60px;border-width:4px}@keyframes scaleIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.payment-result h2{color:var(--text-primary);font-size:28px;font-weight:700;margin-bottom:12px}.result-message{color:var(--text-secondary);font-size:16px;line-height:1.6;margin-bottom:24px}.success-features{background:var(--gray-50);border-radius:12px;padding:24px;margin-top:30px;text-align:left}.success-features p{color:var(--text-primary);font-size:16px;font-weight:600;margin-bottom:16px;text-align:center}.success-features ul{list-style:none;padding:0}.success-features li{color:var(--text-secondary);font-size:14px;padding:8px 0}