.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f7f0e8}.login-card{width:min(100%,440px);background:#fffaf5;padding:36px;border:1px solid #e7d9cc;border-radius:22px;box-shadow:0 14px 45px #4d3b2b14}.login-brand{font:700 34px Georgia,serif;color:#4d5141}.login-card h1{font-size:32px;line-height:1.15;margin:32px 0 12px}.login-card p{font-size:17px;line-height:1.5}.login-card label{display:grid;gap:9px;margin:25px 0;font-size:17px}.login-card input{font-size:20px;padding:14px;border:1px solid #c8cabc;border-radius:12px;width:100%}.login-card button{margin-right:10px;margin-bottom:10px}.login-card #auth-message{min-height:24px;color:#845b4c}.sync-banner{position:fixed;z-index:10000;bottom:20px;left:20px;right:20px;max-width:760px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff4dc;color:#3e332e;padding:16px 20px;border:1px solid #cfa85b;border-radius:14px;box-shadow:0 12px 30px #0002;font-size:17px}.sync-banner.conflict{background:#fce8e4;border-color:#c47b68}.sync-banner button{white-space:nowrap}.account-logout{margin-left:8px}@media(max-width:700px){.account-logout{font-size:13px;padding:8px}.sync-banner{display:block}.sync-banner button{margin-top:10px}}

.onboarding-shell{min-height:100vh;display:grid;place-items:center;padding:28px 16px;background:#f7f0e8;color:#403b35}
.onboarding-card{width:min(100%,660px);background:#fffaf5;padding:clamp(24px,5vw,42px);border:1px solid #e7d9cc;border-radius:22px;box-shadow:0 14px 45px #4d3b2b14}
.onboarding-header{display:flex;align-items:center;justify-content:space-between;gap:16px}
.onboarding-header .secondary{flex:none}
.onboarding-kicker{margin-top:32px;color:#806f64;font-size:16px;font-weight:700;letter-spacing:.04em}
.onboarding-card progress{display:block;width:100%;height:10px;margin:14px 0 24px;accent-color:#5a725d}
.onboarding-card h1{font:700 clamp(32px,5vw,42px)/1.14 Georgia,serif;margin:0 0 16px}
.onboarding-card p{font-size:18px;line-height:1.55;margin:0 0 24px}
.onboarding-field{display:grid;gap:9px;margin:20px 0;font-size:18px;font-weight:600}
.onboarding-field input,.onboarding-field select{width:100%;min-height:54px;padding:12px 14px;border:1px solid #c8cabc;border-radius:12px;background:#fff;font:400 19px/1.4 Arial,Helvetica,sans-serif;color:#403b35}
.onboarding-field small{font-size:15px;font-weight:400;color:#706960}
.diet-fixed{display:block;padding:14px;border-radius:12px;background:#e7ebdf;color:#2e4935}
.onboarding-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.onboarding-actions button{min-height:48px;font-size:18px}
.onboarding-message{min-height:24px;color:#845b4c;margin:18px 0 0!important}
.onboarding-summary{padding:20px 22px;margin:8px 0 24px;border-radius:14px;background:#e7ebdf;font-size:18px}
.onboarding-summary p{font-weight:600;margin:8px 0}
.onboarding-summary small{font-size:16px}
.onboarding-card .onboarding-review{padding:16px 18px;border:1px solid #d5b983;border-radius:12px;background:#fff2d9;color:#5a4634}
@media(max-width:600px){.onboarding-header .login-brand{font-size:27px}.onboarding-card{border-radius:16px}.onboarding-field{font-size:17px}}
