[hidden]{display:none!important}
.account-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--bg)}
.account-card{width:min(100%,420px);background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:30px;display:grid;gap:14px}
.account-brand{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.account-brand strong{font-size:15px;letter-spacing:.02em}
.account-brand strong span{font-weight:500}
.account-card h1{font-size:26px;line-height:1.1;letter-spacing:-.04em;margin:0}
.account-lead{font-size:13px;line-height:1.55;color:var(--muted);margin:0}
.account-card form{display:grid;gap:12px}
.account-card label{display:grid;gap:6px;font-size:12px;font-weight:700}
.account-card input[type=email],.account-card input[type=password]{height:44px;border:1px solid var(--line);border-radius:10px;padding:0 12px;font:inherit;font-size:14px;background:var(--panel);color:var(--text)}
.account-card input:focus-visible{outline:2px solid var(--brand);outline-offset:1px}
.account-check{grid-template-columns:18px 1fr;align-items:start;font-weight:500!important;line-height:1.5}
.account-check input{margin-top:2px;width:16px;height:16px}
.account-check .text-link{display:inline;padding:0;font-size:inherit}
.account-card .btn{width:100%;justify-content:center}
.account-card > .text-link{justify-self:center}
.account-error{color:#B4321F;font-size:13px;margin:0}
.account-info{color:var(--brand-strong);font-size:13px;margin:0;line-height:1.5}
.account-legal-overlay{position:fixed;inset:0;z-index:40;background:rgba(5,20,26,.7);display:grid;place-items:center;padding:20px}
.account-legal{position:relative;width:min(100%,640px);max-height:calc(100vh - 40px);overflow:auto;background:var(--panel);color:var(--text);border-radius:18px;padding:28px;font-size:13px;line-height:1.6}
.account-legal h1{font-size:22px;margin:0 40px 12px 0}
.account-legal h2{font-size:15px;margin:18px 0 6px}
.account-legal ul{padding-left:20px}
.account-panel .pref-row button{white-space:nowrap}
.account-danger{color:#B4321F}
.sync-status{font-size:11px;color:var(--muted)}
.nutrition-consent{max-width:640px}
.profile-person .avatar{display:grid;place-items:center;flex:none}
.pref-row > svg{width:18px;height:18px;flex:none}
.profile-grid{align-items:start}
