:root{--teal:#0E3741;--teal-d:#0A2A32;--teal-c:#123F4A;--gold:#C9A96E;--beige:#F4F0E8;--muted:#9FB2B5;--serif:"DM Serif Display",Georgia,serif;--body:"Lora",Georgia,serif;--sans:"Lato","Helvetica Neue",Arial,sans-serif;--p:#C9A96E;--f:#7FB3A8;--k:#E6D9BE}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--teal-d);color:#E9EEEC;font-family:var(--sans);line-height:1.55}
.wrap{max-width:1160px;margin:0 auto;padding:0 20px}
.top{border-bottom:1px solid rgba(201,169,110,.25);padding:16px 0}.top .wrap{display:flex;justify-content:space-between;align-items:center}
.brand{font-family:var(--serif);color:#fff;text-decoration:none;font-size:1.2rem}.brand small{display:block;font-family:var(--sans);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.tag{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--gold);color:var(--gold);padding:4px 10px;border-radius:20px}
.intro{padding:36px 0 22px;max-width:720px}.eyebrow{color:var(--gold);letter-spacing:.2em;text-transform:uppercase;font-size:.72rem;font-weight:700}
h1{font-family:var(--serif);font-weight:400;font-size:clamp(1.9rem,4vw,2.8rem);line-height:1.15;margin:8px 0 10px;color:#fff}h1 em{color:var(--gold)}
.intro p{font-family:var(--body);color:#C9D5D3}
h2{font-family:var(--serif);font-weight:400;font-size:1.3rem;color:#fff;margin-bottom:12px}
.card{background:var(--teal-c);border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:20px;box-shadow:0 10px 30px rgba(0,0,0,.25);margin-bottom:18px}
.grid{display:grid;grid-template-columns:minmax(300px,380px) 1fr;gap:18px;align-items:start}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-content:start}.kpis .card{margin:0}
.kpi span{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700}
.kpi b{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(1.8rem,3.4vw,2.6rem);color:#fff;line-height:1.1;margin:6px 0 2px}
.kpi small{color:var(--muted);font-size:.8rem}.kpi.gold{border-color:var(--gold)}.kpi.gold b{color:var(--gold)}
.more,.warn{grid-column:1/-1}.more summary{cursor:pointer;color:var(--gold);font-weight:700}.more p{margin-top:10px;font-family:var(--body);font-size:.95rem;color:#D3DDDB}.f{background:rgba(0,0,0,.2);padding:10px 12px;border-radius:8px;font-family:var(--sans)!important}
.warn{background:rgba(201,169,110,.15);border:1px solid var(--gold);color:#F1E4C9;padding:10px 14px;border-radius:10px;font-size:.9rem}
label{display:block;font-size:.82rem;color:var(--muted);margin:10px 0}label span{display:block}label b{color:#fff}
.lbl{font-size:.82rem;color:var(--muted);margin:12px 0 6px}
input[type=number],select{display:block;width:100%;margin-top:4px;background:var(--teal-d);color:#fff;border:1px solid rgba(255,255,255,.15);border-radius:8px;padding:9px 10px;font:inherit;font-size:1rem}
input[type=range]{width:100%;accent-color:var(--gold);margin-top:6px}
.row3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.seg{display:flex;background:var(--teal-d);border-radius:10px;padding:3px;gap:3px;margin:6px 0}.seg button{flex:1;border:0;background:none;color:#C9D5D3;padding:9px 6px;border-radius:8px;font:inherit;font-weight:700;cursor:pointer}.seg button.on{background:var(--gold);color:var(--teal-d)}.seg.small button{padding:5px;font-size:.8rem}
svg{width:100%;height:auto;display:block}#donut{max-width:240px;margin:0 auto}#gauge{max-width:340px;margin:0 auto}
.legend{list-style:none;display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:10px;font-size:.88rem}.legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px}
.center{text-align:center;color:#D3DDDB;margin-top:6px}.muted{color:var(--muted);font-size:.88rem;margin-bottom:8px}
.meals{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.bar{margin:14px 0}.bar .h{display:flex;justify-content:space-between;font-size:.9rem;margin-bottom:4px}.bar .h b{color:#fff}
.track{display:flex;height:16px;border-radius:8px;overflow:hidden;background:var(--teal-d)}.track i{display:block;height:100%}
.bar small{color:var(--muted);font-size:.8rem}
.tbl{width:100%;border-collapse:collapse;font-size:.9rem}.tbl th,.tbl td{text-align:left;padding:8px 6px;border-bottom:1px solid rgba(255,255,255,.08)}.tbl th{color:var(--muted);font-weight:700;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.tbl td:last-child{color:var(--gold);font-weight:700}
.foot{text-align:center;margin:10px 0 40px}
@media(max-width:860px){.grid,.grid2{grid-template-columns:1fr}.kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.meals{grid-template-columns:repeat(2,1fr)}.tbl th:nth-child(2),.tbl td:nth-child(2){display:none}.kpi b{font-size:1.9rem}}

.step{margin-bottom:4px}.kpihead{grid-column:1/-1}.kpihead h2{margin-bottom:0}
.bmrbox{margin-top:18px;background:var(--teal-d);border:1px solid var(--gold);border-radius:14px;padding:16px 18px;text-align:center}
.bmrbox span{display:block;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:700}
.bmrbox b{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(2.4rem,5vw,3.2rem);color:#fff;line-height:1.1;margin:6px 0 4px}
.bmrbox small{color:var(--muted);font-size:.82rem}

.bmrbox span{font-size:.95rem;letter-spacing:.08em}.bmrbox b{font-size:2rem}
.kpi.main span{font-size:.92rem;letter-spacing:.06em;color:#DCE6E4}.kpi.gold.main span{color:var(--gold)}
.kpi b,.kpi.main b{font-size:2rem}
@media(max-width:520px){.kpi b{font-size:1.7rem}.kpi.main span{font-size:.82rem}}
.kpi.main span{display:block;min-height:2.6em}
.pnote{font-size:.8rem;color:var(--gold);margin:-4px 0 6px}
