.ftn-guide-shell{--guide-high:#8d5c16;--guide-high-tint:#f6eddd;--guide-mod:#3e6e8e;--guide-mod-tint:#e5eef4;--guide-light:#4a6b4f;--guide-light-tint:color-mix(in srgb, var(--color-accent-muted) 55%, white);--guide-warn:#9e3b2f;--guide-warn-tint:#f5e6e3;min-height:100dvh}.ftn-guide{box-sizing:border-box;color:var(--color-ink);font-family:var(--font-body);width:min(46rem,100% - 2.5rem);max-width:46rem;margin:0 auto;padding:7rem 1.25rem 6rem;font-size:1.0625rem;line-height:1.55}.ftn-guide *,.ftn-guide :before,.ftn-guide :after{box-sizing:border-box}.ftn-guide a{color:var(--color-accent-strong);text-underline-offset:.15em;font-weight:600;text-decoration:underline}.ftn-guide a:hover{color:var(--color-accent)}.ftn-guide>header{border-bottom:1px solid var(--color-border);padding:0 0 2.5rem}.ftn-guide .kicker{color:var(--color-accent-strong);font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;margin:0 0 1rem;font-size:.875rem;font-weight:600;line-height:1}.ftn-guide h1{font-family:var(--font-display);letter-spacing:-.03em;text-wrap:balance;margin:0 0 1.25rem;font-size:clamp(2.75rem,2.8vw + 2rem,4.25rem);font-weight:600;line-height:1}.ftn-guide .standfirst{color:var(--color-ink-muted);max-width:38rem;margin:0;font-size:clamp(1.125rem,.35vw + 1rem,1.35rem);line-height:1.4}.ftn-guide .standfirst strong{color:var(--color-ink);font-weight:600}.ftn-guide .section{margin-top:clamp(3.5rem,6vw,5.5rem)}.ftn-guide h2{font-family:var(--font-display);letter-spacing:-.03em;text-wrap:balance;margin:0 0 .75rem;font-size:clamp(1.85rem,1.6vw + 1.35rem,2.75rem);font-weight:600;line-height:1.05}.ftn-guide .section-intro{color:var(--color-ink-muted);max-width:40rem;margin:0 0 1.75rem;line-height:1.45}.ftn-guide h3{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:clamp(1.15rem,.4vw + 1.05rem,1.4rem);font-weight:600;line-height:1.2}.ftn-guide .tag{background:var(--color-surface-muted);color:var(--color-ink-muted);font-family:var(--font-display);letter-spacing:.02em;border-radius:999px;padding:.28rem .7rem;font-size:.75rem;font-weight:500;line-height:1.2;display:inline-block}.ftn-guide .tag-high{background:var(--guide-high-tint);color:var(--guide-high)}.ftn-guide .tag-mod{background:var(--guide-mod-tint);color:var(--guide-mod)}.ftn-guide .tag-light{background:var(--guide-light-tint);color:var(--guide-light)}.ftn-guide .tag-accent{background:var(--color-accent-muted);color:var(--color-accent-strong)}.ftn-guide .tag-warn{background:var(--guide-warn-tint);color:var(--guide-warn)}.ftn-guide .timeline{border-left:2px solid var(--color-border);margin-left:.35rem;padding-left:0}.ftn-guide .slot{padding:0 0 2.5rem 1.75rem;position:relative}.ftn-guide .slot:last-child{padding-bottom:.25rem}.ftn-guide .slot:before{background:var(--color-accent);border:3px solid var(--color-wash);box-shadow:0 0 0 1px color-mix(in srgb, var(--color-accent) 35%, transparent);content:"";border-radius:50%;width:.85rem;height:.85rem;position:absolute;top:.35rem;left:-.5rem}.ftn-guide .slot-time{color:var(--color-accent-strong);font-family:var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:.02em;margin-bottom:.35rem;font-size:.875rem;font-weight:600}.ftn-guide .slot-head{flex-wrap:wrap;align-items:baseline;gap:.55rem .75rem;margin-bottom:.5rem;display:flex}.ftn-guide .slot-why{color:var(--color-ink-muted);max-width:40rem;margin:0 0 1rem}.ftn-guide .plates{grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:.75rem;display:grid}.ftn-guide .plate{background:var(--color-surface);border:1px solid var(--color-border);border-radius:1rem;flex-direction:column;gap:.35rem;padding:1rem 1.1rem .95rem;display:flex}.ftn-guide .plate-name{font-family:var(--font-display);letter-spacing:-.02em;font-size:1.05rem;font-weight:600;line-height:1.2}.ftn-guide .plate-desc{color:var(--color-ink-muted);margin:0;font-size:.95rem;line-height:1.45}.ftn-guide .plate-note{color:var(--color-ink-soft);margin:.15rem 0 0;font-size:.875rem;font-style:italic}.ftn-guide .callout{background:var(--color-accent-muted);border-left:3px solid var(--color-accent);color:var(--color-ink-muted);border-radius:0 .85rem .85rem 0;max-width:42rem;margin:1.15rem 0 0;padding:.9rem 1.1rem;font-size:.95rem}.ftn-guide .callout strong{color:var(--color-ink)}.ftn-guide .callout.warn{background:var(--guide-warn-tint);border-left-color:var(--guide-warn)}.ftn-guide .day{background:var(--color-surface);border:1px solid var(--color-border);border-radius:1.25rem;margin-top:1.15rem;padding:1.35rem 1.4rem 1.15rem}.ftn-guide .day-head{border-bottom:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:1rem;padding-bottom:.85rem;display:flex}.ftn-guide .day-title{flex-wrap:wrap;align-items:baseline;gap:.65rem;display:flex}.ftn-guide .meal-row{border-bottom:1px dashed var(--color-border);grid-template-columns:6.5rem 1fr;gap:.75rem;padding:.7rem 0;display:grid}.ftn-guide .meal-row:last-child{border-bottom:none;padding-bottom:.15rem}.ftn-guide .meal-label{color:var(--color-ink-soft);font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;padding-top:.15rem;font-size:.8rem;font-weight:600}.ftn-guide .meal-opts{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.ftn-guide .meal-opts li{font-size:.98rem}.ftn-guide .meal-opts .dish{font-weight:600}.ftn-guide .meal-opts .how{color:var(--color-ink-muted)}.ftn-guide .rules{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.75rem;margin-top:.25rem;display:grid}.ftn-guide .rule{background:var(--color-surface);border:1px solid var(--color-border);border-radius:1rem;padding:1.1rem 1.15rem 1rem}.ftn-guide .rule-num{color:var(--color-accent-strong);font-family:var(--font-display);letter-spacing:.02em;margin-bottom:.4rem;font-size:.85rem;font-weight:600}.ftn-guide .rule p{color:var(--color-ink-muted);margin:0;font-size:.95rem}.ftn-guide .rule p strong{color:var(--color-ink)}.ftn-guide footer{border-top:1px solid var(--color-border);color:var(--color-ink-soft);max-width:40rem;margin-top:4.5rem;padding-top:1.25rem;font-size:.9rem}.ftn-guide .calc{background:var(--color-surface);border:1px solid var(--color-border);border-radius:1.5rem;grid-template-columns:minmax(14rem,5fr) minmax(16rem,7fr);gap:1.75rem;margin-top:.25rem;padding:1.5rem;display:grid;box-shadow:0 18px 40px -28px #0f151159}.ftn-guide .calc-form{flex-direction:column;gap:1rem;display:flex}.ftn-guide .field label,.ftn-guide .field-label{color:var(--color-ink-soft);font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;margin-bottom:.35rem;font-size:.8rem;font-weight:600;display:block}.ftn-guide .field input,.ftn-guide .field select{background:var(--color-wash);border:1px solid var(--color-border);color:var(--color-ink);font:inherit;border-radius:.75rem;width:100%;padding:.65rem .85rem;font-size:1rem}.ftn-guide .field input:focus,.ftn-guide .field select:focus{border-color:var(--color-accent);outline:2px solid color-mix(in srgb, var(--color-accent) 35%, transparent);outline-offset:1px}.ftn-guide .field-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.ftn-guide .seg{border:1px solid var(--color-border);border-radius:999px;display:flex;overflow:hidden}.ftn-guide .seg button{color:var(--color-ink-muted);cursor:pointer;font-family:var(--font-display);background:0 0;border:none;flex:1;padding:.65rem .5rem;font-size:.9rem;font-weight:500}.ftn-guide .seg button+button{border-left:1px solid var(--color-border)}.ftn-guide .seg button[aria-pressed=true]{background:var(--color-pitch);color:var(--color-on-pitch)}.ftn-guide .calc-out{flex-direction:column;gap:1rem;min-width:0;display:flex}.ftn-guide .kcal-hero{background:var(--color-accent-muted);border-radius:1rem;padding:1.1rem 1.25rem 1rem}.ftn-guide .kcal-label{color:var(--color-accent-strong);font-family:var(--font-display);letter-spacing:.02em;font-size:.85rem;font-weight:600}.ftn-guide .kcal-num{color:var(--color-ink);font-family:var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:-.03em;margin-top:.2rem;font-size:clamp(2.4rem,3vw + 1.5rem,2.9rem);font-weight:600;line-height:1}.ftn-guide .kcal-num small{color:var(--color-ink-muted);letter-spacing:0;font-size:1rem;font-weight:500}.ftn-guide .kcal-sub{color:var(--color-ink-muted);margin-top:.4rem;font-size:.9rem}.ftn-guide .macros{grid-template-columns:repeat(3,1fr);gap:.65rem;display:grid}.ftn-guide .macro{background:var(--color-surface-muted);border-radius:.9rem;padding:.85rem .9rem .75rem}.ftn-guide .macro-name{font-family:var(--font-display);letter-spacing:.02em;margin-bottom:.15rem;font-size:.8rem;font-weight:600}.ftn-guide .macro-carb .macro-name{color:var(--guide-high)}.ftn-guide .macro-prot .macro-name{color:var(--guide-mod)}.ftn-guide .macro-fat .macro-name{color:var(--guide-light)}.ftn-guide .macro-num{font-family:var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:1.55rem;font-weight:600;line-height:1.1}.ftn-guide .macro-num small{color:var(--color-ink-muted);font-size:.9rem;font-weight:500}.ftn-guide .macro-per{color:var(--color-ink-soft);margin-top:.15rem;font-size:.8rem}.ftn-guide .calc-note{color:var(--color-ink-soft);margin:0;font-size:.875rem}.ftn-guide .calc-flag{display:none}.ftn-guide .calc-flag.on{background:var(--guide-warn-tint);color:var(--guide-warn);border-radius:.85rem;padding:.75rem .95rem;font-size:.9rem;display:block}.ftn-guide .sleep-wake{background:var(--color-wash);border:1px solid var(--color-border);color:var(--color-ink);font:inherit;border-radius:.65rem;padding:.4rem .65rem;font-size:.95rem}.ftn-guide .sleep-out{font-variant-numeric:tabular-nums}.ftn-guide :focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media (max-width:680px){.ftn-guide .calc{grid-template-columns:1fr}.ftn-guide .macros{grid-template-columns:repeat(auto-fit,minmax(7rem,1fr))}}@media (max-width:560px){.ftn-guide{padding-top:6rem}.ftn-guide .meal-row{grid-template-columns:1fr;gap:.25rem}}
