.account-section{padding:22px 0;margin-bottom:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.account-heading{display:flex;align-items:center;gap:13px}.account-heading>div{flex:1;min-width:0}.account-heading h2{font-size:16px;overflow-wrap:anywhere}.account-heading p{font-size:11px;color:var(--muted);margin-top:4px}.account-monogram{display:grid;place-items:center;width:45px;height:45px;background:var(--raised);color:var(--accent);border-radius:14px;font-size:21px;flex-shrink:0}.account-row{display:flex;align-items:center;justify-content:space-between;text-align:left;width:100%;min-height:62px;padding:14px 0;border-bottom:1px solid var(--line);gap:14px}.account-row span:first-child{min-width:0}.account-row strong{font-size:14px;font-weight:500;overflow-wrap:anywhere}.account-row small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.account-row>span:last-child{font-size:18px;color:var(--accent)}.account-legal{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:16px;font-size:11px}.account-legal a,.account-legal button{color:var(--muted);text-decoration:none;padding:4px 0;min-height:30px}.sync-summary{display:flex;align-items:center;gap:10px;justify-content:space-between;margin-top:13px;font-size:11px;color:var(--muted)}.sync-summary>span{min-width:0;display:flex;gap:8px;align-items:center}.sync-summary .text-btn{white-space:nowrap}.sync-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0}.sync-dot.warning{background:var(--danger)}.auth-intro{padding:2px 0 20px}.auth-intro p{font-size:20px;line-height:1.65;letter-spacing:-.03em;margin-top:9px}.auth-form label{display:block;color:var(--muted);font-size:12px;margin-bottom:18px}.auth-form input{min-width:0}.auth-form .code-input{display:flex;gap:9px;align-items:center;margin-top:7px}.code-input input{flex:1;min-width:0;margin:0}.code-input button{font-size:12px;min-width:100px;min-height:48px;padding:10px 13px;white-space:nowrap}.auth-form .password-input{position:relative;display:block}.password-input input{padding-right:62px}.password-input>button{position:absolute;right:12px;top:2px;min-height:44px}.auth-form .consent-line{display:flex;align-items:flex-start;gap:11px;font-size:11px;line-height:1.9;margin:20px 0}.consent-line input[type=checkbox]{appearance:auto;-webkit-appearance:checkbox;border-radius:3px;width:18px;height:18px;min-height:18px;margin-top:3px;accent-color:var(--accent)}.consent-line input:before{display:none}.consent-line a{color:var(--accent);text-underline-offset:3px}.auth-error{color:var(--danger);font-size:12px;line-height:1.8;min-height:0;margin:10px 0;overflow-wrap:anywhere}.auth-error:not(:empty){min-height:24px}.auth-footer{display:flex;justify-content:space-between;gap:15px;margin-top:16px}.environment-note{padding:10px 12px;background:var(--raised);border-radius:10px;color:var(--muted);font-size:11px;line-height:1.8;margin-bottom:20px}.account-profile{text-align:center;padding:10px 0 24px}.account-profile .account-monogram{margin:0 auto 12px;width:60px;height:60px;font-size:28px}.account-profile strong{display:block;overflow-wrap:anywhere;font-size:17px}.account-profile p{margin-top:7px}.sync-choices{display:grid;gap:12px;margin:24px 0}.device-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 0;border-bottom:1px solid var(--line)}.device-row>div{min-width:0}.device-row strong{display:block;font-size:13px;overflow-wrap:anywhere;font-weight:500}.device-row small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.account-section,.auth-form{animation:account-in .18s ease-out}@keyframes account-in{from{opacity:.5;transform:translateY(4px)}to{opacity:1;transform:none}}.legal-page{max-width:760px;margin:auto;padding:36px 24px 80px}.legal-page h1{margin:20px 0}.legal-page h2{margin:30px 0 10px}.legal-page p,.legal-page li{font-size:14px;line-height:1.95;margin:10px 0}.legal-page a{color:var(--accent)}.legal-page .environment-note{font-size:13px}@media(max-width:360px){.account-heading{flex-wrap:wrap}.account-heading>.text-btn{margin-left:58px}.code-input button{min-width:88px;padding:9px;font-size:11px}}@media(prefers-reduced-motion:reduce){.account-section,.auth-form{animation:none}}

.page-settings>.account-section{max-width:580px;margin-left:auto;margin-right:auto}

/* Required account entry shares the study workspace's quiet palette. */
main.auth-page{width:min(100%,500px);min-height:100vh;min-height:100svh;margin:0 auto;padding:48px 28px max(28px,env(safe-area-inset-bottom));display:flex;flex-direction:column;justify-content:center;gap:30px}
.auth-brand{display:flex;align-items:baseline;gap:14px;color:var(--accent)}
.auth-brand>span{font-size:38px;line-height:1.25;font-weight:650;letter-spacing:.12em}
.auth-brand>small{font-size:12px;letter-spacing:.22em;color:var(--muted)}
.auth-page>section{min-width:0}
.auth-page .auth-intro{padding:0 0 22px}
.auth-page .auth-intro h1{font-size:24px;line-height:1.5;letter-spacing:-.03em;font-weight:600}
.auth-page .auth-intro p{font-size:13px;color:var(--muted);line-height:1.8;margin-top:6px;letter-spacing:0}
.auth-page .auth-tabs{margin-bottom:20px}
.auth-page .auth-tabs button{min-height:44px}
.auth-page .auth-form label{margin-bottom:14px}
.auth-page .auth-form input:not([type=checkbox]){font-size:16px}
.auth-page .auth-form .consent-line{margin:18px 0;font-size:11px}
.auth-page .auth-form>.primary{min-height:50px;font-size:15px}
.auth-page .environment-note{margin-bottom:20px}
.auth-page .auth-footer{margin-top:12px;align-items:center}
.auth-page .auth-footer .text-btn{min-height:44px}
.auth-footnote{font-size:11px;line-height:1.8;color:var(--muted);padding-top:18px;border-top:1px solid var(--line)}
.auth-legacy{padding-top:20px;margin-top:20px;border-top:1px solid var(--line)}
.auth-legacy p{font-size:12px;line-height:1.8;color:var(--muted);margin-bottom:12px}
.auth-backup{margin-top:12px;font-size:12px;min-height:44px}
.auth-brand,.auth-page>section{animation:account-in .2s ease-out}
.auth-page .primary{transition:background-color .15s ease,transform .15s ease}
.auth-page .primary:active{transform:translateY(1px)}
@media(max-width:360px){main.auth-page{padding:30px 20px 24px;gap:24px}.auth-brand>span{font-size:34px}.auth-page .auth-intro h1{font-size:22px}.auth-page .auth-form .code-input{gap:6px}}
@media(min-width:700px){main.auth-page{padding-top:56px;padding-bottom:48px;gap:36px}}
@media(prefers-reduced-motion:reduce){.auth-brand,.auth-page>section{animation:none}.auth-page .primary{transition:none}}
