/* Account screens share the same photographic identity and form geometry. */
.fq-auth-intro{position:relative;isolation:isolate;overflow:hidden;background:#101719}
.fq-auth-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 72%;z-index:-2}
.fq-auth-intro::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(6,13,15,.88),rgba(6,13,15,.46) 70%,rgba(6,13,15,.16)),linear-gradient(0deg,rgba(6,13,15,.76),transparent 60%)}
.fq-auth-brand{width:fit-content}
.fq-auth-description,.fq-auth-feature p,.fq-auth-note{color:#bdc7cb}
.fq-auth-feature-icon{background:rgba(11,20,21,.62);border-color:rgba(213,234,231,.16)}
.fq-auth-access{background:radial-gradient(ellipse at 100% 0,rgba(52,211,153,.035),transparent 65%),var(--panel)}
.fq-auth-form-wrap{max-width:390px}
.fq-auth-form .fq-input:-webkit-autofill{-webkit-text-fill-color:var(--text);box-shadow:0 0 0 1000px var(--card2) inset;caret-color:var(--text)}
.fq-auth-form .fq-input:-webkit-autofill:focus{box-shadow:0 0 0 1000px var(--card2) inset,0 0 0 3px rgba(52,211,153,.1)}
.fq-auth-register .fq-auth-form{gap:16px;margin-top:24px}
.fq-auth-register .fq-auth-signup{margin-top:22px;padding-top:18px}
.fq-auth-goals{display:flex;flex-direction:column;gap:12px;border:0;padding:0;margin:4px 0}
.fq-auth-goals legend{color:var(--soft);font:600 12px var(--man);margin-bottom:12px}
.fq-auth-goals .goal{position:relative;min-height:60px;border-radius:10px;font-size:13px}
.fq-auth-goals input{accent-color:var(--lime);width:18px;height:18px;flex-shrink:0;margin:0}
.fq-auth-goals .goal:has(input:checked){border-color:var(--lime);background:rgba(52,211,153,.08);color:var(--text)}
.fq-auth-goals .goal:focus-within{outline:2px solid var(--lime);outline-offset:3px}
.fq-auth-back{display:inline-flex;align-items:center;gap:6px;font:600 12px var(--man);margin-bottom:28px;color:var(--muted)}
.fq-auth-back:hover{color:var(--text)}
@media (min-width:900px){
  .fq-auth{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr)}
  .fq-auth-intro{padding:40px clamp(32px,5vw,88px);background:#101719}
  .fq-auth-overview{padding:38px 0;max-width:470px}
  .fq-auth-overview h1{font-size:clamp(34px,3.5vw,52px)}
  .fq-auth-description{max-width:350px}
  .fq-auth-features{margin-top:34px;gap:22px}
  .fq-auth-access{padding:48px clamp(32px,5vw,88px)}
  .fq-auth-register .fq-auth-intro,.fq-auth-register .fq-auth-access{min-height:640px}
}
@media (max-width:899px){
  .fq-auth-intro{min-height:164px;padding:28px 24px;display:flex;align-items:flex-start}
  .fq-auth-photo{object-position:70% 64%}
  .fq-auth-intro::after{background:linear-gradient(90deg,rgba(6,13,15,.8),rgba(6,13,15,.18)),linear-gradient(0deg,var(--panel),transparent 90%)}
  .fq-auth-access{align-items:flex-start;padding:24px 24px 40px}
  .fq-auth-register .fq-auth-intro{min-height:118px}
}

/* Small choices first. Optional account details never compete with the next step. */
.fq-auth-register .fq-auth-form-wrap{max-width:440px}
.fq-auth-form [data-flow-step]{display:grid;gap:18px;min-width:0}
.fq-auth-form [data-flow-step][hidden]{display:none}
.fq-auth-form [data-step-heading]{margin:0;font:600 17px/1.5 var(--sora);letter-spacing:-.35px}
.fq-auth-choices{display:grid;gap:12px;min-width:0;margin:0;padding:0;border:0}
.fq-auth-choice{display:flex;align-items:center;gap:12px;min-height:88px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--card);cursor:pointer;color:var(--soft)}
.fq-auth-choice input{accent-color:var(--lime);width:18px;height:18px;flex-shrink:0;margin:0}
.fq-auth-choice>span:last-child{min-width:0;display:grid;gap:5px}
.fq-auth-choice strong{font:700 13px/1.5 var(--man);color:var(--text)}
.fq-auth-choice small{font:400 12px/1.5 var(--man);color:var(--muted)}
.fq-auth-choice-icon{display:flex;align-items:center;justify-content:center;flex:0 0 32px;color:var(--lime)}
.fq-auth-choice-icon svg{width:25px;height:25px}
.fq-auth-choice:has(input:checked){border-color:var(--lime);background:rgba(52,211,153,.07)}
.fq-auth-choice:focus-within{outline:2px solid var(--lime);outline-offset:3px}
.fq-auth-field-note{margin:0;color:var(--muted);font:400 12px/1.6 var(--man)}
.fq-auth-field-note ul{list-style:none;padding:0;margin:0}
.fq-auth-optional{border-top:1px solid var(--line);padding-top:14px}
.fq-auth-optional summary{cursor:pointer;color:var(--soft);font:600 12px/1.7 var(--man)}
.fq-auth-optional summary span{color:var(--muted);font-size:10px;font-weight:400;margin-left:6px}
.fq-auth-optional[open]>.field{margin-top:16px}
.fq-auth-optional summary:focus-visible{outline:2px solid var(--lime);outline-offset:4px;border-radius:3px}
.fq-auth-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.fq-auth-goal-copy{display:grid;gap:4px;min-width:0}
.fq-auth-goal-copy strong{font-size:13px;font-weight:700}
.fq-auth-goal-copy small{font:400 12px/1.6 var(--man);color:var(--muted)}
.fq-auth-goals .goal{min-height:80px}
.fq-account-edit{max-width:720px!important}
.fq-account-edit-form{margin-top:0}
.fq-account-edit-actions{display:flex;flex-wrap:wrap;gap:10px}
@media (max-width:380px){.fq-auth-choice{gap:10px;padding:14px}.fq-auth-choice-icon{display:none}}

/* Compact login, with touch-sized controls and an optional password preview. */
.fq-auth-login .fq-auth-form{gap:20px;margin-top:28px}
.fq-auth-login .fq-auth-helper{font-size:13px}
.fq-auth-login .fq-auth-submit{font-weight:600}
.onne-password-field{position:relative;min-width:0}
.onne-password-field .fq-input{width:100%;padding-right:54px;box-sizing:border-box}
.onne-password-toggle{position:absolute;right:3px;top:50%;transform:translateY(-50%);width:44px;height:44px;display:grid;place-items:center;padding:0;border:0;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer}
.onne-password-toggle[hidden]{display:none}
.onne-password-toggle svg{width:20px;height:20px}
.onne-password-toggle:hover,.onne-password-toggle[aria-pressed="true"]{color:var(--soft)}
.onne-password-toggle:focus-visible{outline:2px solid var(--lime);outline-offset:-3px}
.onne-eye-slash{display:none}.onne-password-toggle[aria-pressed="true"] .onne-eye-slash{display:block}
.onne-login-footer{display:grid;justify-items:center;gap:4px;margin-top:26px;padding-top:18px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
.onne-login-footer p{margin:0;display:flex;align-items:center;gap:6px;line-height:1.5}
.onne-login-footer a{display:inline-flex;align-items:center;min-height:44px;font-weight:500}
.onne-login-footer .onne-legacy-link{font-size:11px;color:var(--muted);font-weight:400}
.onne-login-footer a:focus-visible{outline:2px solid var(--lime);outline-offset:3px;border-radius:4px}
@media(max-width:899px){
  .fq-auth-login{min-height:100svh;background:var(--panel)}
  .fq-auth-login .fq-auth-intro{min-height:0;padding:32px 28px 24px;background:var(--panel);overflow:hidden}
  .fq-auth-login .fq-auth-photo{opacity:.18;object-position:70% 50%;height:100%;mask-image:linear-gradient(#000,transparent)}
  .fq-auth-login .fq-auth-intro::after{background:linear-gradient(90deg,var(--panel) 10%,transparent);height:100%;pointer-events:none}
  .fq-auth-login .fq-auth-access{padding:18px 28px max(24px,env(safe-area-inset-bottom));background:transparent;flex:0 0 auto}
  .fq-auth-login .fq-auth-form-wrap{max-width:390px}
  .fq-auth-login .fq-auth-access h2{font-size:25px;margin:0 0 9px}
  .fq-auth-login .fq-auth-form{margin-top:28px;gap:18px}
  .fq-auth-login .field label{font-size:12px;font-weight:500}
  .fq-auth-login .fq-input{font-size:16px;min-height:50px;border-radius:9px}
  .fq-auth-login .fq-auth-submit{min-height:49px;margin-top:6px;border-radius:9px;font-size:14px}
  .fq-auth-login .onne-login-footer{margin-top:24px;padding-top:14px}
}
@media(max-width:360px){.fq-auth-login .fq-auth-intro{padding:24px 22px 20px}.fq-auth-login .fq-auth-access{padding-left:22px;padding-right:22px}.fq-auth-login .fq-auth-access h2{font-size:23px}}
@media(max-width:899px) and (max-height:600px){.fq-auth-login .fq-auth-intro{padding-top:18px;padding-bottom:10px}.fq-auth-login .fq-auth-access{padding-top:12px}.fq-auth-login .fq-auth-form{margin-top:20px}.fq-auth-login .onne-login-footer{margin-top:16px;padding-top:8px}}
