body[data-screen="login"] main{max-width:none;padding:0}body[data-screen="login"] footer,body[data-screen="login"] .bottomnav,body[data-screen="welcome"] .bottomnav,body[data-screen="profile"] .bottomnav{display:none!important}
.auth-shell{min-height:calc(100vh - 78px);display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);background:#f5f6f2}.auth-story{display:flex;flex-direction:column;justify-content:space-between;min-height:660px;padding:72px clamp(42px,7vw,110px);background:linear-gradient(145deg,#0a422f,#123e31 62%,#235d46);color:white}.auth-story .eyebrow{color:#b8dcc8}.auth-story h1{max-width:600px;margin:24px 0 22px;font:700 clamp(44px,5vw,72px)/1.05 var(--font-heading);letter-spacing:-3px}.auth-story p{max-width:500px;margin:0;color:#d6e7de;font-size:14px;line-height:1.9}.auth-story-note{display:flex;align-items:center;gap:12px;color:#c5dbcf;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.auth-story-note:before{content:'';width:34px;height:1px;background:#8cb7a0}
.auth-panel{display:flex;align-items:center;justify-content:center;padding:55px clamp(35px,6vw,92px);background:#fff}.auth-card{width:min(100%,430px)}.auth-card h2{margin:9px 0 10px;color:var(--forest);font:700 34px/1.18 var(--font-heading);letter-spacing:-1px}.auth-card>p{margin:0 0 30px;color:#68796e;font-size:12px;line-height:1.75}.auth-form{display:grid;gap:17px}.auth-field{display:grid;gap:8px}.auth-field span{color:#4d6556;font-size:10px;font-weight:700}.auth-field input{width:100%;height:48px;padding:0 14px;border:1px solid #d6e0d8;border-radius:7px;background:#fafbf9;color:#173d2b;font:12px var(--font-text);outline:none}.auth-field input:focus{border-color:#6a9a78;box-shadow:0 0 0 3px #b9dfc347}.auth-submit{height:48px;margin-top:4px;border:0;border-radius:7px;background:var(--forest);color:#fff;font:700 11px var(--font-text);cursor:pointer}.auth-error{min-height:17px;margin:0!important;color:#a5423c!important;font-size:10px!important}.auth-signup{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:27px;padding-top:22px;border-top:1px solid #e7ece8;color:#64746a;font-size:11px}.auth-signup button{border:0;background:none;color:var(--forest);font:700 11px var(--font-text);cursor:pointer}.demo-access{margin-top:24px;border:1px solid #e4eae5;border-radius:8px;background:#f6f8f5}.demo-access summary{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;color:#587062;font-size:10px;font-weight:700;cursor:pointer;list-style:none}.demo-access summary:after{content:'';width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px)}.demo-access[open] summary:after{transform:rotate(225deg)}.demo-access ul{list-style:none;margin:0;padding:0 14px 13px}.demo-access li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-top:1px solid #e7ece8;color:#65766c;font-size:9px}.demo-access code{color:#1d4934;font:600 10px var(--font-text)}
.profile-button{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid #dce5df;border-radius:50%;background:#f1f5f2;color:var(--forest);cursor:pointer}.profile-button:hover,.profile-button.selected{background:#dfece4;border-color:#afc8b7}.profile-button svg{width:22px;height:22px}.profile-shell{max-width:760px;margin:35px auto 80px}.profile-heading{text-align:center;margin-bottom:26px}.profile-heading h1{margin:10px 0 8px;color:var(--forest);font-size:38px;letter-spacing:-1px}.profile-heading p{margin:0;color:#728078;font-size:12px}.profile-card{padding:32px;border:1px solid #e4eae5;border-radius:12px;background:white;box-shadow:0 12px 34px #163b2809}.profile-card-head{display:flex;align-items:center;gap:19px;padding-bottom:25px;border-bottom:1px solid #e6ebe7}.profile-avatar{display:grid;place-items:center;width:70px;height:70px;border-radius:17px;background:var(--mint);color:var(--forest);font:700 23px var(--font-heading)}.profile-card-head h2{margin:0 0 7px;color:var(--forest);font-size:24px}.profile-card-head p{margin:0;color:#708077;font-size:11px}.profile-role{display:inline-block;margin-top:9px;padding:5px 8px;border-radius:5px;background:#edf3ef;color:#466552;font-size:9px}.profile-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:25px 0}.profile-details>div{padding:15px;border-radius:8px;background:#f6f8f5}.profile-details dt{margin-bottom:7px;color:#819087;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.profile-details dd{margin:0;color:#304f3c;font-size:12px;line-height:1.6}.profile-goal{margin:0 0 25px;padding:17px 18px;border-left:3px solid #76a98a;border-radius:6px;background:#f2f7f3;color:#3e5b49;font-size:11px;line-height:1.75}.sign-out-button{width:100%;height:44px;border:1px solid #d8a8a4;border-radius:7px;background:#fff8f7;color:#9e403a;font:700 11px var(--font-text);cursor:pointer}.sign-out-button:hover{background:#fae9e7}
.role-card.chosen{border-color:#6f9f82;box-shadow:0 0 0 3px #9cc9ad40,0 8px 20px #1a1c1c08}
.signup-form{max-width:560px;margin:32px auto 50px;padding:30px;border:1px solid #dfe8e1;border-radius:12px;background:#fff;text-align:left}
.signup-form[hidden],.auth-notice[hidden]{display:none}
.signup-form h2{margin:10px 0;color:var(--forest);font:700 27px var(--font-heading)}
.signup-help,.auth-field small{font-size:11px;color:#6b7f71;line-height:1.7}
.signup-back{border:0;background:transparent;color:var(--forest);padding:7px;font-size:12px}
.auth-notice{width:min(1100px,calc(100% - 48px));margin:20px auto 0;padding:16px 20px;border:1px solid #c4ddcd;border-radius:10px;background:#edf6f0;color:#234e36;font-size:12px;line-height:1.7}
.auth-notice p{margin:0 0 7px}.auth-notice p:last-child{margin-bottom:0}.auth-notice summary{cursor:pointer;font-weight:600}.auth-notice pre{white-space:pre-wrap;font:12px/1.8 var(--font-text);color:#355b45}.auth-notice details{margin-top:10px;padding-top:10px;border-top:1px solid #d2e2d7}
.profile-mail-button{display:block;width:100%;padding:12px 15px;margin-bottom:12px;border:1px solid #d6e3da;border-radius:7px;background:#eef4ef;color:var(--forest);font-size:12px}
.auth-submit:disabled{opacity:.6;cursor:wait}
@media(max-width:600px){.signup-form{padding:22px}.auth-notice{width:calc(100% - 32px)}}
body[data-screen="login"] .header-links,body[data-screen="login"] .header-right,body[data-screen="welcome"] .header-links,body[data-screen="welcome"] .header-right,body[data-screen="profile"] .header-links{display:none!important}
@media(max-width:800px){.auth-shell{grid-template-columns:1fr}.auth-story{min-height:auto;padding:45px 28px}.auth-story h1{font-size:43px;letter-spacing:-2px}.auth-story-note{margin-top:55px}.auth-panel{padding:45px 25px}.profile-shell{margin-top:22px}.profile-details{grid-template-columns:1fr}}
@media(max-width:600px){.auth-story{padding:35px 22px}.auth-story h1{font-size:36px}.auth-panel{padding:38px 20px}.auth-card h2{font-size:29px}.auth-signup{align-items:flex-start}.profile-card{padding:23px 19px}.profile-card-head{gap:14px}.profile-avatar{width:58px;height:58px;border-radius:13px;font-size:19px}.profile-heading h1{font-size:31px}}
