.coach{max-width:760px;margin:0 auto;--coach-muted:#566150}.coach-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:36px}.coach-wordmark{font-size:19px;font-weight:600;text-decoration:none;display:flex;align-items:center;gap:10px}.coach-wordmark span{font-size:11px;font-weight:400;color:var(--coach-muted);padding-left:10px;border-left:1px solid var(--line)}.coach-reset{border:0;background:transparent;font-size:12px;text-decoration:underline;text-underline-offset:4px;padding:10px 0}.coach-welcome{padding:52px 0 32px;text-align:center}.coach-welcome h1{font-family:Archivo,Arial,sans-serif;text-transform:none;font-size:44px;font-weight:500;letter-spacing:-.035em;line-height:1.12;text-wrap:balance}.coach-welcome p{font-size:16px;line-height:1.7;color:var(--coach-muted);margin-top:20px}.coach-form{border:1px solid #a9b49d;background:#fff;border-radius:16px;padding:18px 18px 12px}.coach-form:focus-within{border-color:var(--forest)}.coach-form textarea{display:block;width:100%;border:0;padding:0;resize:vertical;min-height:70px;max-height:200px;font-size:16px;line-height:1.6;color:var(--forest);background:transparent;caret-color:var(--rust)}.coach-form textarea:focus-visible{outline:none}.coach-form textarea::placeholder{color:#65705f;opacity:1}.coach-compose-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:10px}.coach-compose-bottom>span{font-size:11px;color:var(--coach-muted)}.coach-send{border:0;background:var(--forest);color:var(--paper);width:44px;height:44px;display:grid;place-items:center;border-radius:50%;flex-shrink:0}.coach-send:hover{background:#42523e}.coach-send svg{width:23px;height:23px}.coach-prompts{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:20px}.coach-prompts button,.coach-followups button{display:flex;align-items:center;gap:9px;padding:12px 14px;min-height:44px;border:1px solid var(--line);border-radius:24px;background:transparent;font-size:12px;line-height:1.4;text-align:left}.coach-prompts svg,.coach-followups svg{width:15px;height:15px}.coach-prompts button:hover,.coach-followups button:hover{background:var(--soft);border-color:#a9b49d}.coach-caption{text-align:center;font-size:11px;line-height:1.6;color:var(--coach-muted);margin:16px 0}.coach-about{font-size:12px;color:var(--coach-muted);max-width:640px;margin:24px auto 0;line-height:1.7}.coach-about>summary{width:fit-content;margin:auto;cursor:pointer;padding:8px}.coach-about p{margin:14px 0}.coach-about a{text-underline-offset:3px}.coach-messages{display:grid;gap:40px}.coach-turn{scroll-margin-top:20px;min-width:0}.coach-turn:last-child{margin-bottom:28px}.coach-question{margin-left:auto;max-width:85%;width:fit-content;background:#e9eddf;border-radius:16px 16px 4px 16px;padding:14px 18px;font-size:15px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.coach-answer{margin-top:24px;min-width:0}.coach-byline{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:500;color:var(--coach-muted)}.coach-mark{display:grid;place-items:center;width:29px;height:29px;background:var(--forest);color:var(--paper);border-radius:50%;font-size:18px;font-weight:600;flex-shrink:0}.coach-answer-text{font-size:17px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere;margin:18px 0;max-width:65ch}.coach-meals{display:grid;gap:12px;margin:22px 0}.coach-meal{display:flex;align-items:stretch;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:14px;min-width:0}.coach-meal>img{width:150px;height:auto;min-height:176px;object-fit:cover;align-self:stretch;flex-shrink:0}.coach-meal-info{padding:19px 22px;flex:1;min-width:0}.coach-meal h3{font-family:Archivo,Arial,sans-serif;text-transform:none;font-size:16px;line-height:1.4;letter-spacing:0;font-weight:600;overflow-wrap:anywhere}.coach-portion{font-size:12px;color:var(--coach-muted);margin-top:5px}.coach-macros{display:flex;gap:30px;margin:16px 0 8px;font-variant-numeric:tabular-nums}.coach-macros div{display:flex;flex-direction:column-reverse}.coach-macros dt{font-size:11px;color:var(--coach-muted);margin-top:3px}.coach-macros dd{font-size:23px;line-height:1;font-weight:500;margin:0;letter-spacing:-.02em}.coach-macros small{font-size:13px;margin-left:2px}.coach-nutrition{font-size:11px;color:var(--coach-muted);line-height:1.7}.coach-nutrition summary{cursor:pointer;padding:6px 0;min-height:32px}.coach-nutrition p{padding:4px 0}.coach-actions{display:flex;flex-wrap:wrap;gap:10px 24px;margin:20px 0}.coach-link{display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:500;text-decoration:none;padding:8px 0;min-height:44px}.coach-link:first-child{color:#b83a00}.coach-link:hover{text-decoration:underline;text-underline-offset:4px}.coach-link svg{width:17px;height:17px}.coach-followups{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:12px 0 20px}.coach-followups>span{font-size:12px;color:var(--coach-muted);width:100%;margin-bottom:3px}.coach-sources{font-size:11px;color:var(--coach-muted);line-height:1.7}.coach-sources summary{cursor:pointer;min-height:32px;padding:7px 0;width:fit-content}.coach-sources>div{display:flex;flex-wrap:wrap;gap:10px 20px;margin:5px 0}.coach-sources p{max-width:60ch;margin-top:8px}.coach-source-link{text-underline-offset:3px}.coach-thinking{display:flex;align-items:center;gap:12px;padding:24px 0;font-size:13px;color:var(--coach-muted)}.coach-thinking-dots{animation:coach-wait 1.4s ease-in-out infinite}.coach-error{padding:20px 0;color:#89300c;font-size:14px;line-height:1.7}.coach-error p{margin:8px 0}.coach-error button{display:flex;align-items:center;gap:10px;border:1px solid #c0b2a8;border-radius:8px;background:transparent;padding:10px 16px;min-height:44px;font-size:13px}.coach ::selection{background:#dae3c5;color:var(--forest)}
@keyframes coach-wait{50%{opacity:.3}}
@media(prefers-reduced-motion:reduce){.coach-thinking-dots{animation:none}}
@media(max-width:560px){.coach-toolbar{margin-bottom:20px}.coach-welcome{padding:28px 0 30px}.coach-welcome h1{font-size:34px}.coach-welcome p{font-size:15px;margin-top:16px}.coach-form{padding:16px 14px 10px}.coach-prompts{justify-content:flex-start;gap:8px}.coach-prompts button{font-size:11px;padding:11px 12px}.coach-answer-text{font-size:16px}.coach-question{font-size:14px;max-width:90%}.coach-meal>img{width:100px;min-height:172px}.coach-meal-info{padding:15px 14px}.coach-meal h3{font-size:14px}.coach-portion{font-size:11px}.coach-macros{gap:20px;margin-top:13px}.coach-macros dd{font-size:21px}.coach-compose-bottom>span{font-size:10px;max-width:180px}.coach-followups button{font-size:12px}.coach-actions{gap:8px 20px}.coach-caption{font-size:11px}.coach-empty .coach-messages{display:none}}
