.auth-page{padding:4rem 0;min-height:60vh}.auth-container{max-width:600px;margin:0 auto}.auth-container h1{text-align:center;margin-bottom:.5rem;color:var(--text-dark)}.auth-form{background:#fff;border-radius:var(--radius-md);padding:2rem;box-shadow:var(--shadow-md);max-width:600px;margin:0 auto}.auth-description{color:var(--text-muted);font-size:.95rem;line-height:1.5;margin-bottom:1.5rem}.form-group{text-align:left;margin-bottom:1.25rem}.form-group label{display:block;font-weight:600;font-size:.875rem;margin-bottom:.5rem;color:var(--text-dark)}.form-group input[type=text],.form-group input[type=email]{width:100%;padding:.75rem 1rem;border:1px solid #ddd;border-radius:var(--radius-sm);font-size:1rem;transition:border-color .2s;box-sizing:border-box}.form-group input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #6c3ce11f}.form-group input:disabled{background:#f5f5f5;cursor:not-allowed}.auth-form input[inputmode=numeric]{font-size:1.75rem;letter-spacing:.5rem;text-align:center;font-family:monospace}.auth-message{font-size:.875rem;margin-bottom:1rem;padding:.75rem;border-radius:var(--radius-sm);background:#e8f5e9;color:#2e7d32}.auth-message.error{background:#ffebee;color:#c62828}.auth-form .btn{width:100%;margin-top:.5rem}.btn-text{background:none;border:none;color:var(--primary);font-size:.875rem;cursor:pointer;margin-top:.75rem;padding:.4rem 0}.btn-text:hover{text-decoration:underline}.btn-outline{background:transparent;border:1px solid #ccc;color:var(--text-muted);padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:.95rem;cursor:pointer;transition:all .2s}.btn-outline:hover{border-color:var(--primary);color:var(--primary)}.auth-more-options{margin-top:.75rem}.auth-more-options summary{font-size:.875rem;color:var(--text-muted);cursor:pointer;padding:.5rem 0}.auth-more-options summary:hover{color:var(--primary)}.passkey-login-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;margin-top:.5rem}.passkey-login-btn svg{flex-shrink:0}.social-login-section{margin-bottom:.5rem}.auth-divider{display:flex;align-items:center;margin:1.25rem 0;color:#999;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}.auth-divider:before,.auth-divider:after{content:"";flex:1;border-bottom:1px solid #ddd}.auth-divider span{padding:0 .75rem}.btn-google{width:100%;display:flex!important;align-items:center;justify-content:center;gap:.75rem;padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:.95rem;font-weight:500;cursor:pointer;transition:background-color .2s,box-shadow .2s;background:#4285f4;border:1px solid #3367d6;color:#fff}.btn-google svg{flex-shrink:0;min-width:20px}.btn-google:hover{background:#3367d6;box-shadow:0 1px 3px #0003}.btn-apple{width:100%;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:.95rem;font-weight:500;cursor:pointer;transition:background-color .2s,box-shadow .2s;background:#000;border:1px solid #000;color:#fff}.btn-apple:hover{background:#1a1a1a}.btn-facebook{width:100%;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:.95rem;font-weight:500;cursor:pointer;transition:background-color .2s,box-shadow .2s;background:#1877f2;border:1px solid #1877F2;color:#fff}.btn-facebook svg{flex-shrink:0}.btn-facebook:hover{background:#166fe5}.btn-google:disabled,.btn-apple:disabled,.btn-facebook:disabled{opacity:.6;cursor:not-allowed}.stepup-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:100000;padding:1rem}.stepup-modal{max-width:420px;width:100%;background:#fff;border-radius:var(--radius-md);padding:2rem;box-shadow:var(--shadow-lg);animation:stepup-slide-in .2s ease-out;max-height:calc(100vh - 2rem);overflow-y:auto}.stepup-modal h3{margin:0 0 .75rem;font-size:1.125rem;color:var(--text-dark)}.stepup-methods{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.stepup-method-btn{display:flex;align-items:center;gap:.75rem;justify-content:center}@keyframes stepup-slide-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){.auth-form{padding:1.5rem}}
