/* Protein Only web tools: GLP-1 protein calculator, answer pages, guides.
   Light, matching the Protein Only landing page; numerals in the app's condensed voice. */
:root{color-scheme:light;--po-card:#fff;--po-line:#f3e6cf;--po-line-strong:#e8bd76;--po-ink:#141C28;--po-body:#46464b;--po-faint:#6f6b63;--po-rust:#A85E00;--po-link:#8F5000;--po-amber:#F0820E;--po-marigold:#F9A21B;--po-gold:#FFC53D;--po-on-accent:#241500;--po-slate:#1E2A3A;--po-slate-deep:#141C28;--po-slate-ink:#EEF3F9;--po-slate-ink2:#9fb0c4;--po-tint:rgba(240,130,14,.08);--po-tint-strong:rgba(240,130,14,.16);--font-body:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;--font-num:'Fira Sans Extra Condensed',var(--font-body);--t-h1:2.1rem;--t-h2:1.6rem;--t-h3:1.08rem;--t-body:1.05rem;--t-small:.92rem;--t-label:.72rem;--t-num:3.4rem;--r-card:14px;--r-field:10px;--r-pill:999px;--r-panel:22px;--w-wide:1100px;--w-read:760px}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--font-body);color:var(--po-body);font-size:var(--t-body);line-height:1.6;background:radial-gradient(120% 80% at 8% 0%,rgba(240,130,14,.14),rgba(240,130,14,0) 45%),linear-gradient(170deg,#fefbf5,#fdf5e8 52%,#fcf0de);min-height:100vh;overflow-x:hidden}
a{color:var(--po-link)}
.wrap{max-width:var(--w-wide);margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.wrap--read{max-width:calc(var(--w-read) + 32px)}
.po-header{background:linear-gradient(180deg,#fff,#fff9ef);border-bottom:1px solid var(--po-line)}
.po-header .wrap{display:flex;align-items:center;justify-content:space-between;height:60px;gap:1rem}
.po-brand{display:inline-flex;align-items:center;gap:.6rem;font-weight:700;color:var(--po-ink);text-decoration:none}
.po-brand img{width:30px;height:30px;border-radius:8px}
.po-header__cta{color:var(--po-link);font-weight:600;text-decoration:none;font-size:var(--t-small)}
.po-crumbs{font-size:var(--t-small);color:var(--po-faint);margin:1.5rem 0 1rem}
.po-crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.35rem}
.po-crumbs a{text-decoration:none}
.po-eyebrow{font-size:var(--t-label);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--po-link);margin:0 0 .5rem}
h1{font-size:var(--t-h1);color:var(--po-ink);line-height:1.18;margin:0 0 1rem;text-wrap:balance}
h2{font-size:var(--t-h2);color:var(--po-rust);margin:3rem 0 .75rem;line-height:1.25}
h3{font-size:var(--t-h3);color:var(--po-ink);margin:1.5rem 0 .4rem}
.po-lede{font-size:1.15rem;color:var(--po-ink);max-width:66ch;margin:0 0 2rem}
.po-meta{font-size:var(--t-small);color:var(--po-faint);margin:-1rem 0 1.5rem}
/* calculator */
.po-calc{display:grid;grid-template-columns:5fr 7fr;gap:2rem;align-items:start}
.po-calc__form,.po-mini-calc{background:var(--po-card);border:1px solid var(--po-line);border-radius:var(--r-card);padding:1.5rem;box-shadow:0 14px 30px -26px rgba(20,28,40,.5)}
.po-field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem;border:0;min-width:0}
.po-field label,.po-field legend{font-weight:600;color:var(--po-ink);font-size:var(--t-small);margin-bottom:.1rem}
.po-field .opt{font-weight:400;color:var(--po-faint)}
.po-help{font-size:var(--t-small);color:var(--po-faint)}
.po-row{display:flex;gap:.5rem;align-items:center}
.po-calc input[type=number],.po-mini-calc input[type=number]{height:44px;border:1px solid var(--po-line-strong);border-radius:var(--r-field);font:inherit;padding:0 .8rem;width:100%;min-width:0;color:var(--po-ink);background:#fff;font-variant-numeric:tabular-nums}
.po-calc input:focus-visible,.po-seg label:focus-within{outline:3px solid rgba(240,130,14,.45);outline-offset:2px}
.is-invalid input{border-color:#b45309}
.po-seg{display:inline-flex;border:1px solid var(--po-line-strong);border-radius:var(--r-pill);background:#fff;padding:3px;gap:2px;flex-shrink:0}
.po-seg--full{display:flex;width:100%}
.po-seg--full label{flex:1}
.po-seg input{position:absolute;opacity:0;width:1px;height:1px}
.po-seg label{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:.2rem .9rem;border-radius:var(--r-pill);font-size:var(--t-small);font-weight:600;color:var(--po-body);text-align:center;line-height:1.15;cursor:pointer;position:relative}
.po-seg label:has(input:checked){background:var(--po-marigold);color:var(--po-on-accent)}
.po-seg label:has(input:disabled){opacity:.45;cursor:not-allowed}
.po-btn{display:block;width:100%;text-align:center;min-height:48px;border-radius:var(--r-field);border:0;font:inherit;font-weight:700;cursor:pointer;text-decoration:none}
.po-btn--primary{background:linear-gradient(135deg,var(--po-marigold),#E07A05);color:var(--po-on-accent);margin-top:.5rem}
.po-privacy{text-align:center;font-size:var(--t-small);color:var(--po-faint);margin:.6rem 0 0}
.po-calc__result,.po-cta{background:linear-gradient(160deg,var(--po-slate-deep),var(--po-slate));color:var(--po-slate-ink);border-radius:var(--r-panel);padding:2rem;box-shadow:0 30px 50px -28px rgba(20,28,40,.7)}
.po-calc__result .po-eyebrow,.po-cta .po-eyebrow{color:var(--po-gold)}
.po-result-num{font-family:var(--font-num);font-weight:800;font-size:var(--t-num);line-height:.95;color:#fff;font-variant-numeric:tabular-nums}
.po-result-unit{font-size:1.6rem;color:var(--po-gold);margin-left:.15rem}
.po-sub{color:var(--po-slate-ink2);margin:.35rem 0 1.25rem}
.po-range{position:relative;padding-bottom:1.8rem;margin:0 .6rem 1.25rem}
.po-range__tr{height:10px;border-radius:6px;background:linear-gradient(90deg,var(--po-amber),var(--po-gold))}
.po-range__mk{position:absolute;top:-4px;width:18px;height:18px;border-radius:50%;background:#fff;border:3px solid var(--po-marigold);transform:translateX(-50%);transition:left .2s}
.po-range__t{position:absolute;top:18px;font-size:.8rem;color:var(--po-slate-ink2);transform:translateX(-50%);white-space:nowrap;font-variant-numeric:tabular-nums}
.po-range [data-low]{transform:none;left:0}.po-range [data-high]{transform:none;right:0;left:auto}
.po-split{border-top:1px solid rgba(238,243,249,.15);padding-top:1rem}
.po-split__hd{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;flex-wrap:wrap}
.po-split .po-seg{border-color:rgba(238,243,249,.25);background:transparent}
.po-split .po-seg label{color:var(--po-slate-ink2);min-height:32px}
.po-split .po-seg label:has(input:checked){background:var(--po-gold);color:var(--po-on-accent)}
.po-meals{display:grid;grid-template-columns:repeat(var(--meals,3),1fr);gap:2px;background:rgba(238,243,249,.12);border-radius:10px;overflow:hidden}
.po-split__meal{background:rgba(20,28,40,.6);padding:.7rem .8rem}
.po-split__meal small{display:block;font-size:var(--t-label);letter-spacing:.08em;text-transform:uppercase;color:var(--po-slate-ink2)}
.po-split__meal b{font-family:var(--font-num);font-size:1.5rem;font-weight:800;color:#fff}
.po-example{margin:.5rem 0 0;list-style:none}
.po-example li{display:flex;justify-content:space-between;gap:1rem;padding:.5rem 0;border-top:1px solid rgba(238,243,249,.15);font-size:.95rem;color:#dfe7f1}
.po-example li b{font-variant-numeric:tabular-nums;color:var(--po-gold);font-weight:600;white-space:nowrap}
.po-fine{font-size:.85rem;color:var(--po-slate-ink2);margin:.5rem 0 0}
.is-empty .po-split,.is-empty .po-example-wrap,.is-empty .po-range{display:none}
.po-cta__buttons{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1rem}
.po-store{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 1.2rem;border-radius:10px;background:#fff;color:var(--po-ink);font-weight:700;text-decoration:none}
.po-store:hover{background:#fff8ec}
.po-cta{margin:3rem 0}
.po-cta h2{color:#fff;margin:.2rem 0 .5rem}
.po-cta p{color:var(--po-slate-ink2);max-width:60ch}
.po-cta--compact{padding:1.5rem}
/* prose */
.po-prose p,.po-prose ul,.po-prose ol{max-width:68ch;margin:0 0 1rem}
.po-prose ul,.po-prose ol{padding-left:1.3rem}
.po-prose li{margin:.3rem 0}
.po-callout{background:rgba(30,42,58,.06);border:1px solid rgba(30,42,58,.14);padding:1rem 1.2rem;border-radius:12px;max-width:68ch;color:var(--po-ink);margin:1.5rem 0}
.po-callout--guidance{border:0;border-left:3px solid var(--po-amber);background:var(--po-tint);border-radius:0 10px 10px 0}
.po-answer-box{background:var(--po-card);border:1px solid var(--po-line);border-left:4px solid var(--po-marigold);border-radius:var(--r-card);padding:1.4rem;margin:0 0 1.5rem}
.po-answer{font-size:1.12rem;color:var(--po-ink);margin:0 0 .5rem}
.po-answer-box small{color:var(--po-faint)}
.po-mini-calc{margin:1.5rem 0;padding:1.1rem}
.po-mini-calc .po-mini-out{font-family:var(--font-num);font-weight:800;font-size:2rem;color:var(--po-rust);line-height:1.1;margin:.4rem 0}
.po-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--po-line);border-radius:var(--r-card);overflow:hidden;margin:1rem 0;font-size:.97rem}
.po-table th,.po-table td{text-align:left;padding:.6rem .8rem;border-top:1px solid var(--po-line)}
.po-table th{background:#fff8ec;color:var(--po-ink)}
.po-table td.n,.po-table th.n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.po-sources{background:var(--po-card);border:1px solid var(--po-line);border-radius:var(--r-card);padding:1.2rem 1.4rem}
.po-sources li{margin:.6rem 0 .6rem 1.1rem;font-size:.95rem}
.po-sources q{color:var(--po-ink)}
.po-faq details{background:var(--po-card);border:1px solid var(--po-line);border-radius:var(--r-card);padding:1rem 1.2rem;margin:.75rem 0}
.po-faq summary{font-weight:700;color:var(--po-ink);cursor:pointer}
.po-faq details p{margin:.6rem 0 0;max-width:68ch}
.po-chips{display:flex;flex-wrap:wrap;gap:.6rem;list-style:none}
.po-chips a{display:inline-flex;padding:.5rem .9rem;border-radius:var(--r-pill);background:#fff;border:1px solid var(--po-line);color:var(--po-ink);text-decoration:none;font-size:.92rem}
.po-chips a:hover{border-color:var(--po-line-strong);color:var(--po-link)}
.po-article{display:grid;grid-template-columns:220px minmax(0,1fr);gap:2.5rem;align-items:start}
.po-toc{position:sticky;top:1.5rem;font-size:var(--t-small)}
.po-toc summary{font-weight:700;color:var(--po-ink);cursor:pointer;margin-bottom:.4rem}
.po-toc ol{list-style:none}
.po-toc a{display:block;padding:.3rem .6rem;border-left:2px solid var(--po-line);text-decoration:none;color:var(--po-body)}
.po-toc a:hover{border-left-color:var(--po-marigold);color:var(--po-rust)}
.po-footer{text-align:center;padding:2rem 1rem;border-top:1px solid var(--po-line);color:var(--po-faint);margin-top:3rem;font-size:var(--t-small)}
.po-footer a{text-decoration:none}
@media (max-width:999px){.po-article{grid-template-columns:1fr;gap:0}.po-toc{position:static;background:#fff;border:1px solid var(--po-line);border-radius:var(--r-card);padding:.8rem 1rem;margin-bottom:1rem}}
@media (max-width:720px){:root{--t-h1:1.65rem;--t-h2:1.3rem;--t-num:2.6rem}.po-calc{grid-template-columns:1fr}.po-calc__result,.po-calc__form,.po-cta{padding:1.1rem}.po-split__meal{padding:.6rem .55rem}.po-split__meal b{font-size:1.3rem}.po-store{flex:1}.po-seg--full{flex-direction:column;border-radius:14px}.po-seg--full label{border-radius:11px}}
