:root{color-scheme:light;--bg: #f5f4f1;--bg-raised: #ffffff;--bg-sunken: #efeee9;--line: #e3e1da;--text: #1a1c1f;--muted: #6d7178;--accent: #1a1c1f;--accent-ink: #ffffff;--note: #8a5a24;--protein: #2c6e9e;--carbs: #2f7d57;--fat: #b7791f;--fibre: #6d5b8c;--shadow: 0 1px 2px rgba(22, 22, 24, .04), 0 10px 28px rgba(22, 22, 24, .05);--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, sans-serif;--serif: var(--font);--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe: var(--safe-bottom)}:root[data-theme=dark]{color-scheme:dark;--bg: #101114;--bg-raised: #191b20;--bg-sunken: #0c0d10;--line: #2c3038;--text: #f3f4f6;--muted: #9aa0aa;--accent: #f3f4f6;--accent-ink: #111214;--note: #e4c48a;--protein: #7eb6e0;--carbs: #7dcea0;--fat: #e2b15a;--fibre: #c3b0e0;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 12px 32px rgba(0, 0, 0, .28)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{overflow-x:hidden}html{background:var(--bg)}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;line-height:1.45;font-feature-settings:"ss01" on,"tnum" on}body:before{content:"";position:fixed;z-index:2;top:0;right:0;left:0;height:var(--safe-top);background:var(--bg);pointer-events:none}.safe-screen{box-sizing:border-box;min-height:100dvh;padding-top:var(--safe-top);padding-right:var(--safe-right);padding-left:var(--safe-left)}.auth-screen{max-width:480px;margin:0 auto;min-height:calc(100dvh - var(--safe-top));padding:1rem 1rem calc(1rem + var(--safe-bottom))}button,input,select{font:inherit;color:inherit}button,.button-link{background:var(--bg-raised);border:1px solid var(--line);border-radius:10px;padding:.55rem .9rem;min-height:44px}button.primary,a.primary{background:var(--accent);color:var(--accent-ink);border-color:transparent;width:100%}.text-button,.text-link{background:none;border:0;color:var(--accent);padding:.4rem 0;min-height:0}a{color:var(--accent)}.frame{max-width:480px;margin:0 auto;min-height:calc(100dvh - var(--safe-top));padding-bottom:calc(5.2rem + var(--safe-bottom))}main{padding:1rem 1rem 2rem}h1{font-weight:620;font-size:1.7rem;letter-spacing:-.035em;margin:.1rem 0 .8rem}h2{font-size:.98rem;font-weight:620;margin:0;letter-spacing:-.01em}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.68rem;font-weight:620;color:var(--muted);margin:0}.muted{color:var(--muted)}.note{color:var(--note)}.day-head,.meal header,.entry-main,.macro-top,.draft header{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.icon-button{width:44px;height:44px;border-radius:50%}.hero{padding:.2rem 0 .9rem}.kcal-hero{font-size:3.5rem;font-weight:600;line-height:.95;letter-spacing:-.05em;margin:0;font-variant-numeric:tabular-nums}.macro-grid,.stack,.menu{display:grid;gap:.75rem}.macro-grid.compact{gap:.45rem;margin-top:.9rem}.bar{height:4px;background:var(--bg-sunken);border-radius:99px;overflow:hidden}.bar span{display:block;height:100%;background:var(--text)}.bar.protein span{background:var(--protein)}.bar.carbs span{background:var(--carbs)}.bar.fat span{background:var(--fat)}.bar.fibre span{background:var(--fibre)}.meal,.card,.banner,.draft{background:var(--bg-raised);border:1px solid var(--line);border-radius:14px;padding:.9rem;margin:.75rem 0;box-shadow:var(--shadow)}.entry-main,.result,.menu a{width:100%;text-align:left;background:transparent;border:0;border-radius:12px;padding:.7rem 0;display:flex;flex-direction:column;gap:.15rem;min-height:44px}.menu a{border-bottom:1px solid var(--line);text-decoration:none;color:inherit}.results{display:grid}.chip-row{display:flex;flex-wrap:wrap;gap:.4rem;margin:.5rem 0}.chip.on{background:var(--accent);color:var(--accent-ink)}label{display:grid;gap:.3rem;margin:.55rem 0}input,select{background:var(--bg-raised);border:1px solid var(--line);border-radius:10px;padding:.7rem .8rem;min-height:44px}.check{display:flex;gap:.6rem;align-items:flex-start}.check input{width:1.2rem;min-height:1.2rem;margin-top:.2rem}.split{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.tabs{position:fixed;z-index:3;left:var(--safe-left);right:var(--safe-right);bottom:0;width:auto;max-width:480px;margin-inline:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:.25rem;padding:.35rem .7rem calc(.4rem + var(--safe-bottom));background:color-mix(in srgb,var(--bg) 88%,transparent);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.tabs a{text-align:center;text-decoration:none;color:var(--muted);padding:.55rem 0 .4rem;border-radius:0;font-size:.82rem;letter-spacing:-.01em;background:transparent}.tabs a.active{color:var(--text);font-weight:650;background:transparent;box-shadow:inset 0 -2px 0 var(--text)}.sheet-backdrop{position:fixed;inset:0;background:#00000073;display:grid;align-items:end;z-index:5}.sheet{width:min(480px,calc(100% - var(--safe-left) - var(--safe-right)));margin:0 auto;background:var(--bg-raised);border-radius:22px 22px 0 0;padding:.6rem 1rem calc(1rem + var(--safe-bottom));max-height:calc(100dvh - var(--safe-top));overflow:auto;box-shadow:var(--shadow)}.sheet-handle{width:42px;height:4px;border-radius:99px;background:var(--line);margin:.3rem auto .8rem}.preview{width:100%;border-radius:16px;background:#000;max-height:240px;object-fit:cover}a.button-link{display:flex;align-items:center;justify-content:center;text-decoration:none;margin-top:.6rem}.secret{display:block;overflow-wrap:anywhere;font:.8rem ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--bg-sunken);border-radius:8px;padding:.6rem;margin:.6rem 0;-webkit-user-select:all;user-select:all}.row-buttons{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.4rem}.steps{padding-left:1.2rem;margin:.6rem 0 .9rem;display:grid;gap:.45rem;line-height:1.45}.file-button{position:relative;overflow:hidden}.file-button input{position:absolute;inset:0;opacity:0}.chart{width:100%;height:auto}.trend-line{fill:none;stroke:var(--accent);stroke-width:2.5}.weight-dot{fill:var(--text)}.goal-line{stroke:var(--muted);stroke-dasharray:4 4}.attribution,.sync-line{color:var(--muted);font-size:.85rem}.row-actions,.inline-form{display:flex;gap:.4rem;align-items:center}.plain{list-style:none;padding:0}.grams-line{font-size:1.2rem;font-weight:600;letter-spacing:-.02em}input[type=range]{padding:0}.hub{display:grid;gap:.75rem}a.hub-card{display:block;color:inherit;text-decoration:none;background:var(--bg-raised);border:1px solid var(--line);border-radius:16px;padding:1rem 1rem 1.05rem;box-shadow:var(--shadow)}.hub-kicker,.workout-history,.set-head,.set-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.hub-stat{font-size:2.7rem;font-weight:600;letter-spacing:-.05em;line-height:1;margin:.65rem 0 .25rem;font-variant-numeric:tabular-nums}.hub-title{font-size:1.45rem;font-weight:620;letter-spacing:-.03em;margin:.7rem 0 .3rem}.hub-go{color:var(--muted);font-size:.82rem}.home-note{margin-top:.4rem}.home-note a{color:var(--muted);text-decoration:none}.title-input{width:100%;border:0;background:transparent;padding:0;min-height:0;font-size:1.7rem;font-weight:620;letter-spacing:-.035em;margin:.1rem 0 .8rem}.set-head,.set-row{display:grid;grid-template-columns:1.4rem minmax(0,1fr) minmax(0,1fr) 1.6rem;gap:.45rem;align-items:center}.set-head{color:var(--muted);font-size:.75rem;margin:.45rem 0}.set-row input:not(.set-check){min-width:0;width:100%;padding:.45rem .55rem}.set-check{width:1.25rem;height:1.25rem;min-height:0;min-width:0;padding:0;accent-color:var(--text)}.rest{margin:0 0 .8rem;font-variant-numeric:tabular-nums;font-weight:600}.macro-top span:first-child{text-transform:capitalize}.step{display:grid;grid-template-columns:2rem 1fr;gap:.75rem;align-items:start}.step-number{width:2rem;height:2rem;border-radius:50%;display:grid;place-items:center;margin:0;background:var(--text);color:var(--bg-raised);font-weight:650;font-size:.9rem}.step-done .step-number{background:var(--carbs)}.step-later{opacity:.6}.step h2{margin-bottom:.2rem}.step p{margin:.25rem 0 .4rem}.health-done{text-align:center}.health-check{width:3rem;height:3rem;margin:.2rem auto .5rem;border-radius:50%;display:grid;place-items:center;background:var(--carbs);color:#fff;font-size:1.5rem;font-weight:700}details.card summary{cursor:pointer;font-weight:620;min-height:28px}details.card[open] summary{margin-bottom:.5rem}details.card>button{margin:.4rem .4rem .4rem 0}.health-prompt h2{margin-bottom:.2rem}.health-prompt .text-button{display:block;margin:.3rem auto 0;color:var(--muted)}.health-refresh{display:block;text-align:center;padding:.7rem;margin:.25rem 0 .5rem;border-radius:10px;background:var(--bg-raised);border:1px solid var(--line);text-decoration:none;color:var(--text)}
