.profile-form fieldset{border:0;border-top:1px solid var(--line);margin:2.5rem 0;padding:1.75rem 0 0}.profile-form legend{font-family:Georgia,serif;font-size:1.65rem;font-weight:700}.section-intro{max-width:760px;color:var(--muted);margin:.25rem 0 1.25rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;max-width:820px}.compact-grid{max-width:680px}.form-field{display:flex;flex-direction:column;gap:.35rem;min-width:0}.form-field label{font-weight:700}.form-field input,.form-field select{width:100%;min-height:46px;padding:.7rem .75rem;border:1px solid var(--line);background:#fffdf7;border-radius:4px}.form-field small{color:var(--muted);line-height:1.35}.form-field>span{color:var(--red)}.activity-guide{max-width:820px;margin-top:1.5rem;padding:1rem 1.25rem;border:1px solid var(--line);background:rgba(255,255,255,.22)}.activity-guide h3{font-size:1.15rem;margin:0 0 .75rem}.activity-guide dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1.5rem;margin:0}.activity-guide dl div{display:grid}.activity-guide dt{font-weight:700}.activity-guide dd{margin:0;color:var(--muted)}.goal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.goal-option{display:flex;align-items:flex-start;gap:.8rem;padding:1rem;border:1px solid var(--line);border-radius:5px;background:rgba(255,255,255,.25);cursor:pointer}.goal-option:has(input:checked){border-color:var(--green);background:rgba(49,91,69,.08);box-shadow:inset 4px 0 var(--green)}.goal-option input{width:1.1rem;height:1.1rem;margin-top:.2rem;accent-color:var(--green);flex:0 0 auto}.goal-option span{display:grid;gap:.2rem}.goal-option strong{line-height:1.25}.goal-option small{color:var(--muted);line-height:1.4}.override-section{background:rgba(255,255,255,.2);padding-left:1.25rem!important;padding-right:1.25rem!important}.target-details,.goal-fit{border:1px solid var(--line);padding:1.75rem;margin-top:3rem;background:rgba(255,255,255,.28)}.target-heading{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.target-heading h2{margin:.1rem 0 1rem}.estimate-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.estimate-cards article{padding:1.25rem;border-top:3px solid var(--green);background:#fffdf7;display:grid}.estimate-cards article>span{color:var(--muted);font-weight:700}.estimate-cards strong{font-family:Georgia,serif;font-size:clamp(2rem,5vw,3rem);line-height:1.1;margin-top:.35rem}.estimate-cards small{color:var(--muted)}.estimate-cards p{margin:.8rem 0 0}.protein-explainer{max-width:760px;margin:1.5rem 0;padding:1rem 1.25rem;border-left:4px solid var(--amber);background:rgba(138,93,24,.07)}.protein-explainer p{margin:.25rem 0 0}.target-details details{margin-top:1.25rem}.target-details summary{cursor:pointer;font-weight:700;color:var(--green)}.warning-text{color:var(--amber)}.weight-form{display:grid;grid-template-columns:1fr 1.35fr 1.5fr auto;gap:1rem;align-items:start;margin:2rem 0;padding:1.25rem;border:1px solid var(--line);background:rgba(255,255,255,.25)}.weight-form>.validation{grid-column:1/-1}.weight-form>.button{margin-top:1.85rem}.weight-chart{color:var(--green);border-bottom:1px solid var(--line);margin:2rem 0}.weight-chart svg{display:block;width:100%;height:auto;max-height:280px}.entry-list article,.daily-row{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-top:1px solid var(--line)}.entry-list article div{display:grid}.entry-list span,.entry-list small,.daily-row small{color:var(--muted)}.target-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin:2rem 0}.target-cards article{border:1px solid var(--line);padding:1.4rem;display:grid}.target-cards strong{font-family:Georgia,serif;font-size:2rem}.daily-list{margin-top:2rem}.daily-row{display:grid;grid-template-columns:1.1fr 1fr 1fr 1.5fr;align-items:center}.daily-row>div{display:grid}.incomplete,.validation,span.field-validation-error{color:var(--red)}.muted{color:var(--muted)}
.analysis-summary{margin:1.25rem 0 2rem;padding:1.5rem;border:1px solid var(--line);background:rgba(255,255,255,.35)}.summary-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.summary-heading h3{font-size:1.75rem;margin:0}.summary-heading>span{color:var(--muted);font-weight:700}.summary-lead{max-width:760px;font-size:1.05rem}.analysis-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:1rem}.analysis-summary-grid article{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:#fffdf7;border-top:3px solid var(--line)}.analysis-summary-grid article>span{display:grid;place-items:center;flex:0 0 1.6rem;width:1.6rem;height:1.6rem;border-radius:50%;font-weight:800}.analysis-summary-grid h4{font-size:1rem;margin:.1rem 0 .5rem}.analysis-summary-grid ul{margin:0;padding-left:1.1rem}.analysis-summary-grid p{margin:0;color:var(--muted)}.summary-positive{border-top-color:var(--green)!important}.summary-positive>span{background:rgba(49,91,69,.12);color:var(--green)}.summary-attention{border-top-color:var(--amber)!important}.summary-attention>span{background:rgba(138,93,24,.13);color:var(--amber)}.summary-context>span{background:rgba(103,105,95,.12);color:var(--muted)}
@media(max-width:800px){.weight-form{grid-template-columns:repeat(2,minmax(0,1fr))}.weight-form .button{margin-top:1.85rem}.analysis-summary-grid{grid-template-columns:1fr}}
@media(max-width:700px){.form-grid,.goal-grid,.activity-guide dl,.estimate-cards,.target-cards,.daily-row,.weight-form{grid-template-columns:1fr}.weight-form>.button{margin-top:0}.daily-row{gap:.6rem}.entry-list article{align-items:flex-start}.target-details{padding:1.25rem}.target-heading{display:block}.goal-option{padding:.9rem}}
.photo-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:1.5rem 0}.photo-gallery figure{margin:0;padding:.75rem;border:1px solid var(--line);background:rgba(255,255,255,.25)}.photo-gallery .meal-photo{width:100%;height:260px;object-fit:cover}.photo-gallery figcaption{display:grid;gap:.5rem;margin-top:.65rem}.photo-gallery figcaption form{display:flex;gap:.5rem;align-items:center}.photo-gallery figcaption input{min-width:0;flex:1}
