.auth-body{background:var(--app-bg)}.auth-bg,.auth-glow{display:none}.auth-card{background:var(--app-surface);border:1px solid var(--app-border);border-radius:var(--radius-lg);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}.auth-card h1{color:var(--app-text-primary);font-family:var(--font-app-sans)}.auth-sub{color:var(--app-text-secondary);font-family:var(--font-app-sans)}.auth-card .field input{background:var(--app-bg);border-color:var(--app-border);color:var(--app-text-primary);font-family:var(--font-app-sans);border-radius:var(--radius-md)}.auth-card .field input:focus{border-color:var(--app-info);box-shadow:0 0 0 3px color-mix(in srgb,var(--app-info) 18%,transparent)}.input-wrap .input-icon{color:var(--app-text-secondary)}.input-wrap:focus-within .input-icon{color:var(--app-info)}.pw-toggle{color:var(--app-text-secondary)}.pw-toggle:hover{color:var(--app-text-primary)}.pw-toggle:focus-visible{outline-color:var(--app-info)}.field-error{color:var(--app-danger)}.remember{color:var(--app-text-secondary)}.remember input{accent-color:var(--app-success)}.remember input:focus-visible{outline-color:var(--app-info)}.forgot-link{color:var(--app-text-secondary)}.forgot-link:focus-visible,.forgot-link:hover{color:var(--app-success)}.btn-gradient{background:var(--app-success);color:var(--app-bg);border-radius:var(--radius-md);transition:background var(--motion-duration) var(--motion-ease)}.btn-gradient:hover:not(:disabled){transform:none;box-shadow:none;filter:none;background:color-mix(in srgb,var(--app-success) 88%,#000)}.btn-gradient:focus-visible{outline-color:var(--app-info)}.auth-card .btn-gradient+.btn-outline{margin-top:1rem}.auth-divider{color:var(--app-text-secondary)}.auth-divider::after,.auth-divider::before{background:var(--app-border)}.auth-alt{color:var(--app-text-secondary)}.auth-alt a{background:0 0;-webkit-background-clip:initial;background-clip:initial;color:var(--app-success)}.pw-checklist{color:var(--app-text-secondary)}.pw-checklist .check{color:color-mix(in srgb,var(--app-text-secondary) 45%,transparent)}.pw-checklist li.met{color:var(--app-text-primary)}.pw-checklist li.met .check{color:var(--app-success)}.auth-card.is-otp-step{max-width:446px;padding:32px 34px 28px;border-color:color-mix(in srgb,var(--app-border) 82%,var(--app-success) 18%);border-radius:20px;box-shadow:0 18px 46px color-mix(in srgb,var(--color-shadow-card) 78%,transparent)}.auth-main{padding:32px 16px}.auth-card{width:min(100%,470px);padding:34px 36px 28px;border-radius:18px;box-shadow:0 18px 46px color-mix(in srgb,var(--color-shadow-card) 72%,transparent)}.auth-logo{margin-bottom:22px}.auth-wordmark{color:var(--app-text-primary);font-family:var(--font-app-sans);font-size:15px;font-weight:760;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}.auth-wordmark:focus-visible,.auth-wordmark:hover{color:var(--app-success)}.verify-brand{margin-bottom:20px}.verify-brand-link{display:inline-flex;flex-direction:column;align-items:center;gap:4px;max-width:100%;color:var(--app-text-primary);font-family:var(--font-app-sans);text-align:center;text-decoration:none}.verify-brand-name{font-size:18px;font-weight:700;line-height:1.2;letter-spacing:-.02em}.verify-brand-tagline{color:var(--app-text-muted);font-size:9px;font-weight:600;line-height:1.3;letter-spacing:.13em;text-transform:uppercase;white-space:nowrap}.verify-brand-link:focus-visible .verify-brand-name,.verify-brand-link:hover .verify-brand-name{color:var(--app-success)}.verify-brand-link:focus-visible{outline:2px solid var(--app-info);outline-offset:4px;border-radius:4px}.auth-card h1{margin-bottom:7px;font-size:27px;font-weight:760;letter-spacing:-.025em}.auth-card>.auth-sub{margin-bottom:22px;font-size:13.5px;line-height:1.5}.auth-card form{display:grid;gap:0}.auth-card .field{margin-bottom:15px}.auth-card .field label{margin-bottom:7px;color:var(--app-text-primary);font-size:12px;font-weight:700}.auth-card .field input{min-height:44px}.pw-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px;margin:9px 0 0;padding:10px 12px;border:1px solid var(--app-border);border-radius:10px;background:var(--app-bg);font-size:11px;line-height:1.35}.pw-checklist li{display:flex;align-items:center;gap:6px;min-width:0}.pw-checklist .check{flex:0 0 auto;width:13px;height:13px}.auth-card .cf-turnstile{display:flex;justify-content:center;margin:2px 0 9px;min-height:65px}.auth-card .btn-gradient{min-height:44px;font-weight:750}.auth-legal-note{margin:14px 0 0;color:var(--app-text-secondary);font-size:11px;line-height:1.55;text-align:center}.auth-legal-note a{color:var(--app-success);text-underline-offset:2px}.auth-legal-note a:focus-visible,.auth-legal-note a:hover{text-decoration-thickness:2px}.verify-email-chip{display:block;width:fit-content;max-width:100%;margin:-10px auto 10px;padding:7px 11px;overflow-wrap:anywhere;border:1px solid color-mix(in srgb,var(--app-info) 30%,var(--app-border));border-radius:9px;background:color-mix(in srgb,var(--app-info) 8%,var(--app-bg));color:var(--app-text-primary);font-size:13px;line-height:1.35;text-align:center}.verify-instruction{margin-bottom:22px!important}.verify-resend-section{margin-top:22px;padding-top:18px;border-top:1px solid var(--app-border);text-align:center}.verify-resend-section h2{margin:0 0 14px;color:var(--app-text-secondary);font-size:12px;font-weight:650}.verify-resend-section .field{margin-bottom:10px}.verify-resend-section .btn-outline{width:100%;min-height:42px}.auth-alt{margin-top:18px}.auth-alt a{text-underline-offset:3px}@media (max-width:520px){.auth-main{padding:20px 12px}.auth-card{padding:27px 20px 22px}.pw-checklist{grid-template-columns:1fr}}.auth-card.is-otp-step>.auth-logo{display:none}.otp-brand{display:flex;flex-direction:column;align-items:center;gap:5px;margin-bottom:24px;text-align:center}.otp-brand-wordmark{color:var(--app-text-primary);font-family:var(--font-app-sans);font-size:17px;font-weight:680;line-height:1.25;letter-spacing:-.015em}.otp-brand-security{color:var(--app-text-muted);font-family:var(--font-app-sans);font-size:9.5px;font-weight:650;line-height:1.3;letter-spacing:.14em;text-transform:uppercase}.otp-step #login-device-otp-title{margin:0 0 8px;color:var(--app-text-primary);font-size:24px;font-weight:720;line-height:1.25;letter-spacing:-.025em}.otp-step .auth-sub{max-width:350px;margin:0 auto 22px;color:var(--app-text-secondary);font-size:13.5px;line-height:1.55}.otp-step .auth-sub strong{color:var(--app-text-primary);font-weight:650}.otp-step .otp-expiry{display:block;margin-top:2px;color:var(--app-text-muted);font-size:12px}.otp-field{position:relative;margin-bottom:18px}.otp-label{display:block;margin-bottom:9px;color:var(--app-text-secondary);font-size:10.5px;font-weight:700;line-height:1.35;letter-spacing:.09em;text-transform:uppercase}.otp-digits{display:grid;grid-template-columns:repeat(6,minmax(0,52px));justify-content:space-between;gap:7px;width:100%}.auth-card .otp-digits .otp-digit{width:100%;height:52px;min-width:0;max-width:52px;margin:0;padding:0;text-align:center;font-family:var(--font-app-sans);font-size:1.3rem;font-weight:680;font-variant-numeric:tabular-nums;line-height:1;color:var(--app-text-primary);background:var(--app-bg);border:1px solid var(--app-border);border-radius:11px;caret-color:var(--app-info);transition:background-color var(--motion-duration) var(--motion-ease),border-color var(--motion-duration) var(--motion-ease),box-shadow var(--motion-duration) var(--motion-ease),opacity var(--motion-duration) var(--motion-ease)}.auth-card .otp-digits .otp-digit:not(:placeholder-shown){background:color-mix(in srgb,var(--app-info) 6%,var(--app-surface));border-color:color-mix(in srgb,var(--app-info) 38%,var(--app-border))}.auth-card .otp-digits .otp-digit:focus{outline:0;border-color:var(--app-info);box-shadow:0 0 0 3px color-mix(in srgb,var(--app-info) 16%,transparent)}.auth-card .otp-digits .otp-digit[aria-invalid=true],.otp-field:has(.otp-code-value[aria-invalid=true]) .otp-digit,.otp-step:has(#login-device-otp-form-error:not([hidden])) .otp-digit{border-color:var(--app-danger);background:color-mix(in srgb,var(--app-danger) 5%,var(--app-surface))}.otp-step:has(#login-device-otp-submit:disabled) .otp-digit{opacity:.72}.auth-card .otp-field .otp-code-value{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}.otp-resend{margin:14px 0 0;text-align:center;font-size:12.5px;color:var(--app-text-secondary)}.otp-resend-btn{border:0;min-height:32px;padding:4px 7px;background:0 0;color:var(--app-success);font:inherit;font-weight:650;border-radius:7px;cursor:pointer;transition:color var(--motion-duration) var(--motion-ease),background-color var(--motion-duration) var(--motion-ease)}.otp-resend-btn:hover:not(:disabled){color:color-mix(in srgb,var(--app-success) 84%,var(--app-text-primary));background:color-mix(in srgb,var(--app-success) 8%,transparent)}.otp-resend-btn:focus-visible{outline:2px solid color-mix(in srgb,var(--app-info) 72%,transparent);outline-offset:2px}.otp-resend-btn:disabled{color:var(--app-text-dim);cursor:not-allowed;background:0 0}.otp-step #login-device-otp-submit{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:50px;min-height:50px;border-radius:10px;font-size:14px;font-weight:680}.otp-step .form-error{margin:0 0 14px;padding:10px 12px;background:color-mix(in srgb,var(--app-danger) 7%,transparent);border:1px solid color-mix(in srgb,var(--app-danger) 22%,transparent);border-radius:9px;font-size:12px;line-height:1.45}.otp-step #login-device-otp-code-error{margin-top:7px}.otp-back-link{display:flex;align-items:center;justify-content:center;gap:6px;min-height:34px;margin:8px auto 0;padding:5px 8px;color:var(--app-text-secondary);background:0 0;border:0;border-radius:7px;font-family:var(--font-app-sans);font-size:12.5px;font-weight:600;cursor:pointer;transition:color var(--motion-duration) var(--motion-ease),background-color var(--motion-duration) var(--motion-ease)}.otp-back-link svg{width:15px;height:15px;flex:0 0 auto;stroke-width:1.9}.otp-back-link:hover{color:var(--app-text-primary);background:color-mix(in srgb,var(--app-text-primary) 5%,transparent)}.otp-back-link:focus-visible{outline:2px solid color-mix(in srgb,var(--app-info) 72%,transparent);outline-offset:2px}@media (max-width:420px){.auth-card.is-otp-step{padding:27px 20px 23px;border-radius:17px}.otp-brand{margin-bottom:20px}.otp-step #login-device-otp-title{font-size:22px}.otp-digits{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}.auth-card .otp-digits .otp-digit{height:auto;max-width:none;aspect-ratio:1;font-size:1.15rem}}