#food-rhythm { --fr-leaf:#197457; --fr-body:#DCE9AE; --fr-face:#163D32; --fr-tongue:#EF7892; --fr-green:var(--fr-leaf); --fr-soft:color-mix(in srgb,var(--fr-body) 32%,white); --fr-ink:var(--fr-face); --fr-muted:color-mix(in srgb,var(--fr-face) 66%,white); --fr-radius:24px; font:16px/1.5 system-ui,sans-serif; color:var(--fr-ink); max-width:420px; margin:12px auto; color-scheme:light; }
#food-rhythm * { box-sizing:border-box; }
#food-rhythm button,#food-rhythm input,#food-rhythm select { font:inherit; }
#food-rhythm button { cursor:pointer; touch-action:manipulation; }
#food-rhythm button:focus-visible,#food-rhythm input:focus-visible,#food-rhythm select:focus-visible { outline:3px solid var(--fr-leaf); outline-offset:3px; }
#food-rhythm .fr-phone { background:#f6f8f3; border:1px solid #dce3da; border-radius:32px; overflow:hidden; min-height:max(690px,calc(100dvh - 24px)); position:relative; box-shadow:0 18px 65px #203d2812; }
#food-rhythm .fr-top { position:relative; display:flex; align-items:center; justify-content:flex-end; padding:19px 23px 10px; gap:8px; }
#food-rhythm .fr-top[hidden],#food-rhythm .fr-language-switch[hidden] { display:none; }
#food-rhythm .fr-header-mascot { position:absolute; top:6px; left:50%; width:80px; transform:translateX(-50%); pointer-events:none; }
#food-rhythm .fr-header-mascot[hidden] { display:none; }
#food-rhythm .fr-header-mascot .fr-choice-mascot { width:80px; margin:0; }
#food-rhythm .fr-top-back { position:relative; display:inline-flex; align-items:center; justify-content:center; flex:none; width:58px; height:44px; margin-right:auto; padding:0; border:0; border-radius:16px; background:transparent; color:#15362d; transition:transform .3s cubic-bezier(.34,1.56,.64,1); }
#food-rhythm .fr-top-back[hidden] { display:none; }
#food-rhythm .fr-top-back::before { content:''; position:absolute; top:4px; left:4px; width:50px; height:34px; border-radius:12px; background:white; box-shadow:0 2px 8px #14201412,0 1px 2px #1420140a; pointer-events:none; }
#food-rhythm .fr-top-back svg { position:relative; width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:2.3; stroke-linecap:round; stroke-linejoin:round; transform:translateX(-1px); }
@media(hover:hover) { #food-rhythm .fr-top-back:hover { transform:scale(1.04); } }
#food-rhythm .fr-top-back:active { transform:scale(.96); }
@media(prefers-reduced-motion:reduce) { #food-rhythm .fr-top-back { transition:none; } }
#food-rhythm .fr-language-switch { position:relative; flex:none; width:58px; height:44px; border:1px solid transparent; border-radius:16px; background:transparent; overflow:hidden; transition:width .45s cubic-bezier(.34,1.56,.64,1),transform .3s cubic-bezier(.34,1.56,.64,1),background .25s ease; }
#food-rhythm .fr-language-switch:hover { transform:scale(1.04); }
#food-rhythm .fr-language-switch.open { width:112px; border-color:#1420140f; background:#ebf0e8bf; }
#food-rhythm .fr-language-switch.open:hover { background:#e4ebe1f2; }
#food-rhythm .fr-lang-pill { position:absolute; top:4px; left:4px; width:50px; height:34px; border-radius:12px; background:white; box-shadow:0 2px 8px #14201412,0 1px 2px #1420140a; transition:transform .45s cubic-bezier(.34,1.56,.64,1); }
#food-rhythm .fr-language-switch.open[data-lang=ru] .fr-lang-pill { transform:translateX(52px); }
#food-rhythm .fr-lang-option { position:absolute; z-index:1; top:4px; width:50px; height:34px; padding:0; border:0; background:transparent; color:var(--fr-ink); font:600 12px/1 system-ui,sans-serif; letter-spacing:.04em; cursor:pointer; transition:left .45s cubic-bezier(.34,1.56,.64,1); }
#food-rhythm .fr-lang-option[data-value=en] { left:4px; }
#food-rhythm .fr-lang-option[data-value=ru] { left:56px; }
#food-rhythm .fr-language-switch:not(.open)[data-lang=ru] .fr-lang-option[data-value=ru] { left:4px; }
#food-rhythm .fr-language-switch:not(.open) .fr-lang-option[aria-pressed=false] { visibility:hidden; pointer-events:none; }
@media(prefers-reduced-motion:reduce) { #food-rhythm .fr-language-switch,#food-rhythm .fr-lang-pill,#food-rhythm .fr-lang-option { transition:none; } }
#food-rhythm .fr-main { padding:16px 23px 26px; min-height:578px; }
#food-rhythm h1 { font-size:32px; letter-spacing:-1.2px; line-height:1.15; margin:13px 0; font-weight:760; }
#food-rhythm h2 { font-size:19px; letter-spacing:-.4px; margin:0; }
#food-rhythm p { margin:9px 0; }
#food-rhythm .fr-muted { color:var(--fr-muted); font-size:14px; }
#food-rhythm .fr-small { font-size:12px; }
#food-rhythm .fr-row { display:flex; align-items:center; justify-content:space-between; gap:12px; }
#food-rhythm .fr-stack { display:grid; gap:12px; }
#food-rhythm .fr-primary { border:0; border-radius:18px; background:var(--fr-green); color:white; width:100%; min-height:56px; padding:12px 18px; font-weight:650; display:flex; align-items:center; justify-content:center; gap:9px; }
#food-rhythm .fr-secondary { border:1px solid #d8e1d6; background:white; border-radius:16px; min-height:48px; padding:10px 15px; color:var(--fr-ink); }
#food-rhythm .fr-icon { display:inline-grid; place-items:center; min-width:48px; min-height:48px; padding:10px; background:white; border:1px solid #dce4d9; border-radius:50%; color:var(--fr-ink); }
#food-rhythm .fr-ui-icon { display:block; width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
#food-rhythm .fr-card { background:white; padding:20px; border-radius:var(--fr-radius); border:1px solid #e5eade; }
#food-rhythm .fr-hero { text-align:center; min-height:470px; padding:24px 0 30px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:22px; }
#food-rhythm .fr-hero h1 { margin:0; }
#food-rhythm .fr-mascot { width:190px; animation:fr-float 3.8s ease-in-out infinite; transform-origin:center bottom; }
#food-rhythm .fr-mascot svg { display:block; width:100%; overflow:visible; }
#food-rhythm .fr-mascot-body { transform-origin:center bottom; }
#food-rhythm .fr-mascot-leaf { fill:#197457; transform-origin:108px 50px; animation:fr-leaf-idle 3s ease-in-out infinite; }
#food-rhythm .fr-mascot-shadow { fill:var(--fr-face); transform-origin:center; animation:fr-shadow-float 3.8s ease-in-out infinite; }
#food-rhythm .fr-tongue { opacity:0; }
#food-rhythm .fr-tongue-out .fr-tongue { animation:fr-tongue-out .9s ease-in-out both; }
@keyframes fr-tongue-out { 0%,100% { opacity:0; } 25%,70% { opacity:1; } }
#food-rhythm .fr-start { border:0; border-radius:22px; background:#197457; color:white; width:100%; min-height:64px; padding:12px 18px; display:flex; align-items:center; justify-content:center; gap:14px; font-size:17px; font-weight:650; box-shadow:0 10px 30px #19745729; transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s ease; }
#food-rhythm .fr-start:hover { transform:translateY(-2px); box-shadow:0 14px 34px #19745733; }
#food-rhythm .fr-start:active { transform:translateY(2px) scale(.97); }
#food-rhythm .fr-mascot.fr-jump { animation:fr-mascot-jump .7s cubic-bezier(.22,.9,.3,1); }
#food-rhythm .fr-mascot.fr-jump .fr-mascot-body { animation:fr-body-squash .7s cubic-bezier(.22,.9,.3,1); }
#food-rhythm .fr-mascot.fr-jump .fr-mascot-leaf { animation:fr-leaf-jump .7s ease; }
@keyframes fr-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-10px); } }
@keyframes fr-shadow-float { 0%,100% { transform:scaleX(1); opacity:.12; } 50% { transform:scaleX(.82); opacity:.06; } }
@keyframes fr-leaf-idle { 0%,100% { transform:rotate(-2deg); } 50% { transform:rotate(5deg); } }
@keyframes fr-mascot-jump { 0%,100% { transform:translateY(0); } 18% { transform:translateY(6px); } 45% { transform:translateY(-38px); } 70% { transform:translateY(2px); } 84% { transform:translateY(-7px); } }
@keyframes fr-body-squash { 0%,100% { transform:scale(1); } 18% { transform:scaleX(1.08) scaleY(.9); } 45% { transform:scaleX(.94) scaleY(1.08); } 70% { transform:scaleX(1.05) scaleY(.94); } }
@keyframes fr-leaf-jump { 0%,100% { transform:rotate(0); } 25% { transform:rotate(-16deg); } 55% { transform:rotate(13deg); } 75% { transform:rotate(-6deg); } }
@media(prefers-reduced-motion:reduce) { #food-rhythm .fr-mascot,#food-rhythm .fr-mascot-leaf,#food-rhythm .fr-start,#food-rhythm .fr-tongue-out .fr-tongue { animation:none; transition:none; } #food-rhythm .fr-tongue-out .fr-tongue { opacity:1; } }
#food-rhythm .fr-kicker { color:var(--fr-green); letter-spacing:1.7px; font-size:11px; font-weight:750; text-transform:uppercase; }
#food-rhythm .fr-stepbar { height:5px; flex:1; background:#e0e7dc; border-radius:8px; overflow:hidden; }
#food-rhythm .fr-stepbar span { display:block; width:0; height:100%; background:linear-gradient(90deg,var(--fr-body),var(--fr-leaf)); }
#food-rhythm .fr-progress-readout { width:4ch; text-align:right; font:500 13px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace; font-variant-numeric:tabular-nums; }
#food-rhythm .fr-question { min-height:510px; padding-top:28px; display:flex; flex-direction:column; }
#food-rhythm .fr-options { display:grid; gap:12px; margin-top:27px; }
#food-rhythm .fr-option { display:flex; align-items:center; gap:15px; text-align:left; min-height:74px; padding:15px 17px; border:1px solid #dde5d8; border-radius:20px; background:white; color:var(--fr-ink); }
#food-rhythm .fr-option[aria-pressed=true] { background:var(--fr-soft); border-color:var(--fr-green); }
#food-rhythm .fr-option strong { display:block; font-size:16px; }
#food-rhythm .fr-option small { color:var(--fr-muted); font-size:12px; }
#food-rhythm .fr-goal-panel { border:0; background:#f8faf5b8; }
#food-rhythm .fr-choice-head { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:120px; }
#food-rhythm .fr-choice-head h1 { margin:0; font-size:28px; }
#food-rhythm .fr-measure-head { width:100%; min-height:120px; }
#food-rhythm .fr-measure-head > div:first-child { flex:1; min-width:0; }
#food-rhythm .fr-measure-head h1,#food-rhythm .fr-question-ruler .fr-measure-head h1 { margin:0; text-align:left; }
#food-rhythm .fr-measure-head .fr-choice-mascot { flex:0 0 92px; width:92px; margin-top:18px; }
#food-rhythm .fr-choice-mascot { position:relative; flex:0 0 92px; width:92px; margin-top:18px; animation:fr-choice-float 3.5s ease-in-out infinite; }
#food-rhythm .fr-choice-mascot svg { display:block; width:100%; overflow:visible; }
#food-rhythm .fr-choice-mascot-body { transform-origin:50px 95px; }
#food-rhythm .fr-choice-mascot-leaf { transform-origin:51px 25px; animation:fr-choice-leaf 2.8s ease-in-out infinite; }
#food-rhythm .fr-choice-mascot-shadow { fill:#197457; opacity:.1; transform-origin:center; animation:fr-choice-shadow 3.5s ease-in-out infinite; }
#food-rhythm .fr-choice-mascot.fr-pop .fr-choice-mascot-body { animation:fr-choice-pop .7s ease-in-out; }
#food-rhythm .fr-choice-mascot.fr-pop .fr-choice-mascot-leaf { animation:fr-choice-leaf-pop .55s ease; }
#food-rhythm .fr-choice-mascot.fr-pop::after { content:'✦'; position:absolute; top:3px; right:-3px; color:var(--fr-tongue); font-size:20px; animation:fr-choice-spark .55s ease-out both; }
@keyframes fr-choice-float { 50% { transform:translateY(-6px); } }
@keyframes fr-choice-shadow { 50% { transform:scaleX(.78); opacity:.05; } }
@keyframes fr-choice-leaf { 50% { transform:rotate(7deg); } }
@keyframes fr-choice-pop { 0%,100% { transform:translateY(0) scale(1); } 18% { transform:translateY(3px) scale(1.08,.9); } 46% { transform:translateY(-20px) scale(.96,1.06); } 75% { transform:translateY(1px) scale(1.05,.95); } 88% { transform:translateY(-3px) scale(1); } }
@keyframes fr-choice-leaf-pop { 40% { transform:rotate(-18deg); } 70% { transform:rotate(10deg); } }
@keyframes fr-choice-spark { 0% { opacity:0; transform:translateY(8px) scale(.4); } 35% { opacity:1; } 100% { opacity:0; transform:translateY(-8px) scale(1); } }
#food-rhythm .fr-goal-option { position:relative; display:grid; grid-template-columns:46px minmax(0,1fr) 19px; align-items:center; gap:14px; min-height:82px; padding:14px 16px; border:1px solid #20553d1a; border-radius:21px; background:#ffffff94; box-shadow:inset 0 1px 0 #ffffffd9,0 7px 22px #27483509; transition:transform .25s cubic-bezier(.16,1,.3,1),border-color .25s,background .25s,box-shadow .25s; }
#food-rhythm .fr-goal-symbol { width:46px; height:46px; display:grid; place-items:center; border-radius:15px; background:#e6efe1bf; box-shadow:inset 0 1px 0 #ffffffe6; }
#food-rhythm .fr-goal-symbol svg { width:21px; height:21px; fill:none; stroke:var(--fr-leaf); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
#food-rhythm .fr-goal-copy { min-width:0; display:flex; flex-direction:column; gap:5px; }
#food-rhythm .fr-goal-option strong { font-size:15px; }
#food-rhythm .fr-goal-option small { line-height:1.35; }
#food-rhythm .fr-goal-radio { width:19px; height:19px; border:1.5px solid #14463438; border-radius:50%; transition:border .25s ease; }
#food-rhythm .fr-goal-option[aria-pressed=true] { border-color:var(--fr-leaf); background:linear-gradient(135deg,white,color-mix(in srgb,var(--fr-body) 32%,white)); box-shadow:inset 0 1px 0 #fffffff2,0 10px 28px #1b745217; }
#food-rhythm .fr-goal-option[aria-pressed=true] .fr-goal-radio { border:5px solid var(--fr-leaf); background:white; }
#food-rhythm .fr-goal-option[aria-pressed=true] .fr-goal-symbol { background:color-mix(in srgb,var(--fr-body) 42%,white); }
#food-rhythm .fr-goal-option:active { transform:scale(.985); }
@media(hover:hover) { #food-rhythm .fr-goal-option:hover { transform:translateY(-2px); background:#ffffffb8; border-color:#1b745233; box-shadow:inset 0 1px 0 #fffffff2,0 12px 26px #27483512; } }
#food-rhythm .fr-goal-option[aria-pressed=true]:hover { border-color:var(--fr-leaf); background:linear-gradient(135deg,white,color-mix(in srgb,var(--fr-body) 32%,white)); }
#food-rhythm .fr-sex-options { gap:14px; margin-top:26px; }
#food-rhythm .fr-sex-option { display:grid; grid-template-columns:52px minmax(0,1fr) 20px; align-items:center; gap:14px; min-height:92px; padding:18px; border:1px solid #194b3a1a; border-radius:24px; background:#ffffff94; box-shadow:inset 0 1px 0 #ffffffeb,0 8px 24px #133d2d0a; transition:transform .28s cubic-bezier(.16,1,.3,1),border-color .25s,background .25s,box-shadow .25s; }
#food-rhythm .fr-sex-icon { width:52px; height:52px; display:grid; place-items:center; border-radius:16px; background:#e6eee3cc; box-shadow:inset 0 1px 0 #fffffff2; transition:transform .28s cubic-bezier(.16,1,.3,1),background .25s; }
#food-rhythm .fr-sex-icon svg { width:24px; height:24px; fill:none; stroke:var(--fr-leaf); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
#food-rhythm .fr-sex-option strong { font-size:17px; line-height:1.2; }
#food-rhythm .fr-sex-radio { width:20px; height:20px; border:1.5px solid #12433238; border-radius:50%; background:#ffffff80; }
#food-rhythm .fr-sex-option[aria-pressed=true] { border-color:var(--fr-leaf); background:linear-gradient(135deg,#ffffffc7,color-mix(in srgb,var(--fr-body) 36%,white)); box-shadow:inset 0 1px 0 #fffffff9,0 10px 28px #19745414; }
#food-rhythm .fr-sex-option[aria-pressed=true] .fr-sex-icon { background:color-mix(in srgb,var(--fr-body) 42%,white); transform:scale(1.04) rotate(-2deg); }
#food-rhythm .fr-sex-option[aria-pressed=true] .fr-sex-radio { border:5px solid var(--fr-leaf); background:white; }
#food-rhythm .fr-sex-option:active { transform:scale(.985); }
#food-rhythm .fr-activity-options { gap:13px; margin-top:22px; }
#food-rhythm .fr-activity-option { min-height:88px; padding:16px; grid-template-columns:48px minmax(0,1fr) 20px; gap:13px; border:1px solid #dae5db; border-radius:24px; background:linear-gradient(135deg,#fff,#f9fcf8); box-shadow:inset 0 1px 0 #fff,0 7px 20px #204d3410; }
#food-rhythm .fr-activity-option .fr-sex-icon { width:48px; height:48px; border:1px solid #dcebdc; border-radius:17px; background:linear-gradient(145deg,#eef7e8,#e1f0e6); box-shadow:inset 0 1px 0 #fff,0 3px 7px #24573b08; }
#food-rhythm .fr-activity-option .fr-sex-icon svg { width:25px; height:25px; }
#food-rhythm .fr-activity-copy { min-width:0; display:flex; flex-direction:column; gap:5px; }
#food-rhythm .fr-activity-copy strong { font-size:17px; line-height:1.25; }
#food-rhythm .fr-activity-copy small { color:#64776d; font-size:12.5px; line-height:1.45; }
#food-rhythm .fr-activity-option[aria-pressed=true] { border-color:var(--fr-leaf); background:linear-gradient(135deg,white,color-mix(in srgb,var(--fr-body) 32%,white)); box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--fr-body) 30%,transparent),0 8px 22px #24654618; }
#food-rhythm .fr-activity-option[aria-pressed=true] .fr-sex-icon { background:var(--fr-green); border-color:var(--fr-green); box-shadow:0 4px 10px #19745728; }
#food-rhythm .fr-activity-option[aria-pressed=true] .fr-sex-icon svg { stroke:white; }
#food-rhythm .fr-activity-option:focus-visible { outline:3px solid #8ac4a5; outline-offset:3px; }
#food-rhythm .fr-question-activity { padding-top:18px; }
#food-rhythm .fr-question-activity .fr-choice-head { min-height:110px; }
@media(hover:hover) { #food-rhythm .fr-sex-option:not([aria-pressed=true]):hover { transform:translateY(-2px); background:#ffffffbd; box-shadow:inset 0 1px 0 #fffffff5,0 12px 28px #133d2d12; } }
#food-rhythm .fr-goal-cta { width:100%; min-height:62px; padding:0 24px; border:0; border-radius:22px; color:white; background:#197457; font-weight:700; transition:background .2s ease,transform .2s ease; }
#food-rhythm .fr-goal-cta:not(:disabled):active { transform:scale(.98); }
@media(hover:hover) { #food-rhythm .fr-goal-cta:not(:disabled):hover { background:var(--fr-face); } }
#food-rhythm #fr-onboarding button[data-action=submit]:disabled { background:#d4e3d7; color:#607d6b; cursor:default; box-shadow:none; filter:none; }
@media(prefers-reduced-motion:reduce) { #food-rhythm .fr-goal-option,#food-rhythm .fr-goal-radio,#food-rhythm .fr-choice-mascot,#food-rhythm .fr-choice-mascot-leaf,#food-rhythm .fr-choice-mascot-shadow,#food-rhythm .fr-choice-mascot.fr-pop .fr-choice-mascot-body,#food-rhythm .fr-choice-mascot.fr-pop .fr-choice-mascot-leaf,#food-rhythm .fr-sex-option,#food-rhythm .fr-sex-icon,#food-rhythm .fr-goal-cta { transition:none; animation:none; } #food-rhythm .fr-choice-mascot.fr-pop::after { display:none; } }
#food-rhythm .fr-input { width:100%; min-height:48px; background:white; color:var(--fr-ink); border:1px solid #cad6c8; border-radius:13px; padding:10px 12px; }
#food-rhythm label { display:block; font-size:13px; color:var(--fr-muted); }
#food-rhythm label .fr-input { margin-top:5px; }
#food-rhythm .fr-measure { margin:36px auto 12px; display:flex; justify-content:center; align-items:baseline; gap:8px; }
#food-rhythm .fr-measure input { width:145px; border:0; background:transparent; text-align:center; color:var(--fr-ink); font-size:54px; font-weight:700; outline-offset:0; padding:0; }
#food-rhythm .fr-unit-switch { display:flex; gap:4px; padding:4px; margin:0 auto 12px; border-radius:14px; background:#e8efe7; }
#food-rhythm .fr-unit-switch button { min-width:75px; height:36px; border:0; border-radius:11px; background:transparent; color:var(--fr-muted); font-size:13px; font-weight:650; }
#food-rhythm .fr-unit-switch button[aria-pressed=true] { background:white; color:var(--fr-green); box-shadow:0 2px 8px #14201412; }
#food-rhythm .fr-measure-imperial input { width:72px; }
#food-rhythm .fr-measure-imperial span { font-size:18px; }
#food-rhythm .fr-question-age { min-height:510px; }
#food-rhythm .fr-age-picker { position:relative; width:min(320px,86vw); aspect-ratio:1; margin:28px auto; user-select:none; touch-action:none; cursor:grab; }
#food-rhythm .fr-question-age .fr-age-picker { margin-top:12px; }
#food-rhythm .fr-age-picker:active { cursor:grabbing; }
#food-rhythm .fr-age-picker svg { display:block; width:100%; height:100%; overflow:visible; }
#food-rhythm .fr-age-ticks { transform-box:view-box; transform-origin:50% 50%; transition:transform .2s ease-out; }
#food-rhythm .fr-age-picker.is-dragging .fr-age-ticks { transition:none; }
#food-rhythm .fr-age-ticks line { stroke-linecap:round; }
#food-rhythm .fr-age-indicator { position:absolute; top:16px; left:50%; width:4px; height:52px; border-radius:999px; background:var(--fr-leaf); transform:translateX(-50%); box-shadow:0 3px 10px color-mix(in srgb,var(--fr-leaf) 15%,transparent); }
#food-rhythm .fr-age-center { position:absolute; inset:0; display:grid; place-items:center; pointer-events:none; }
#food-rhythm .fr-age-center input { pointer-events:auto; width:3ch; padding:0; border:0; background:transparent; color:#14372d; text-align:center; font-size:66px; line-height:.95; font-weight:800; font-variant-numeric:tabular-nums; touch-action:auto; }
@media(prefers-reduced-motion:reduce) { #food-rhythm .fr-age-ticks { transition:none; } }
#food-rhythm .fr-ruler { background:repeating-linear-gradient(90deg,#c9d5c2 0 1px,transparent 1px 12px); height:37px; margin:24px 0 10px; position:relative; }
#food-rhythm .fr-ruler:after { content:''; height:64px; width:2px; background:var(--fr-green); position:absolute; left:50%; bottom:0; }
#food-rhythm .fr-range { width:100%; accent-color:var(--fr-green); height:40px; }
#food-rhythm .fr-question-ruler { min-height:510px; padding-top:28px; display:flex; flex-direction:column; align-items:center; justify-content:flex-start; text-align:center; }
#food-rhythm .fr-question-ruler h1 { margin:0 0 23px; }
#food-rhythm .fr-question-ruler .fr-measure { margin:0 auto 15px; }
#food-rhythm .fr-question-ruler .fr-ruler { width:100%; height:130px; margin:22px 0 5px; overflow:hidden; touch-action:none; cursor:ew-resize; background:none; }
#food-rhythm .fr-question-ruler .fr-ruler:after { content:none; }
#food-rhythm .fr-question-ruler .fr-ruler:focus-within { outline:3px solid var(--fr-leaf); outline-offset:3px; }
#food-rhythm .fr-ruler-tick { position:absolute; bottom:0; width:2px; height:30px; border-radius:2px; background:#c9d5c2; transform:translateX(-50%); pointer-events:none; }
#food-rhythm .fr-ruler-tick-medium { height:42px; background:#b6c2b9; }
#food-rhythm .fr-ruler-tick-major { height:60px; background:#9eafa3; }
#food-rhythm .fr-ruler-pointer { position:absolute; left:calc(50% - 1.5px); top:0; bottom:0; width:3px; border-radius:2px; background:var(--fr-green); pointer-events:none; }
#food-rhythm .fr-question-ruler .fr-range { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
#food-rhythm .fr-question-height .fr-ruler { width:120px; height:196px; margin-top:8px; cursor:ns-resize; }
#food-rhythm #fr-onboarding .fr-primary { min-height:62px; }
#food-rhythm .fr-question-height .fr-ruler-tick { right:0; bottom:auto; width:30px; height:2px; transform:translateY(-50%); }
#food-rhythm .fr-question-height .fr-ruler-tick-medium { width:42px; }
#food-rhythm .fr-question-height .fr-ruler-tick-major { width:60px; }
#food-rhythm .fr-question-height .fr-ruler-pointer { left:0; right:0; top:calc(50% - 1.5px); bottom:auto; width:auto; height:3px; }
#food-rhythm .fr-error { color:var(--fr-face); font-size:13px; min-height:22px; }
#food-rhythm .fr-error:not(:empty) { padding:7px 9px; border-left:3px solid var(--fr-tongue); border-radius:9px; background:color-mix(in srgb,var(--fr-tongue) 17%,white); }
#food-rhythm .fr-result-screen { min-height:600px; display:flex; flex-direction:column; }
#food-rhythm .fr-result-head { display:grid; grid-template-columns:minmax(0,1fr) 92px; align-items:center; gap:12px; margin-top:41px; }
#food-rhythm .fr-result-head h1 { margin:0; font-size:clamp(38px,10.5vw,46px); line-height:1; letter-spacing:-.045em; }
#food-rhythm .fr-result-mascot { transform:translateY(5px); }
#food-rhythm .fr-result-mascot .fr-choice-mascot { width:92px; margin:0; }
#food-rhythm .fr-result-mascot .fr-choice-mascot::after { content:'✦'; position:absolute; top:7px; right:0; color:var(--fr-tongue); font-size:18px; animation:fr-result-star 1.8s ease-in-out infinite; }
@keyframes fr-result-star { 50% { opacity:.55; transform:scale(.8) rotate(18deg); } }
#food-rhythm .fr-daily-target { margin-top:32px; text-align:center; }
#food-rhythm .fr-daily-target-value { display:flex; align-items:baseline; justify-content:center; gap:10px; margin-top:6px; }
#food-rhythm .fr-daily-target-value strong { color:#10352b; font-size:clamp(68px,19vw,92px); line-height:.95; letter-spacing:-.065em; font-weight:800; font-variant-numeric:tabular-nums; }
#food-rhythm .fr-daily-target-value span { color:#66776f; font-size:19px; font-weight:600; }
#food-rhythm .fr-daily-target-sub { display:flex; align-items:center; justify-content:center; gap:5px; margin-top:5px; color:#84908b; font-size:13px; }
#food-rhythm .fr-result-method { position:relative; z-index:10; }
#food-rhythm .fr-result-method summary { display:grid; place-items:center; width:22px; height:22px; padding:0; border:1px solid #cadbd0; border-radius:50%; background:white; color:var(--fr-green); cursor:pointer; list-style:none; }
#food-rhythm .fr-result-method summary::-webkit-details-marker { display:none; }
#food-rhythm .fr-result-method summary svg { display:block; width:10px; height:14px; fill:currentColor; }
#food-rhythm .fr-result-method-panel { position:absolute; top:30px; left:50%; transform:translateX(-50%); width:min(320px,calc(100vw - 48px)); padding:14px; border:1px solid #dce5dc; border-radius:16px; background:white; box-shadow:0 16px 38px #123d2c24; color:var(--fr-ink); text-align:left; font-size:12px; line-height:1.45; }
#food-rhythm .fr-result-method-panel p { margin:5px 0; }
#food-rhythm .fr-result-method-panel a { color:var(--fr-green); }
#food-rhythm .fr-result-notice { margin:8px 0 0; padding:8px 10px; border-left:3px solid var(--fr-tongue); border-radius:12px; background:color-mix(in srgb,var(--fr-tongue) 15%,white); color:var(--fr-face); font-size:12px; line-height:1.4; }
#food-rhythm .fr-result-macros { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:24px; padding:18px 0; border-top:1px solid #1f4d3b17; border-bottom:1px solid #1f4d3b17; }
#food-rhythm .fr-result-macros > div { text-align:center; }
#food-rhythm .fr-result-macros > div + div { border-left:1px solid #1f4d3b17; }
#food-rhythm .fr-result-macros span { display:block; color:#7a8781; font-size:12px; }
#food-rhythm .fr-result-macros strong { display:block; margin-top:5px; color:#12372d; font-size:19px; font-weight:780; white-space:nowrap; }
#food-rhythm .fr-result-goal { display:grid; grid-template-columns:52px minmax(0,1fr) 20px; align-items:center; gap:14px; width:100%; min-height:86px; margin-top:22px; padding:15px 17px; text-align:left; border:1px solid #1b4d3b17; border-radius:23px; background:#ffffff96; color:var(--fr-ink); box-shadow:inset 0 1px 0 #fffffff2,0 9px 26px #1d44340b; }
#food-rhythm .fr-result-goal-icon { display:grid; place-items:center; width:52px; height:52px; border-radius:17px; background:#e7f0e2e6; }
#food-rhythm .fr-result-goal-icon svg { width:24px; height:24px; fill:none; stroke:#1b785b; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
#food-rhythm .fr-result-goal-copy span { display:block; color:#7b8882; font-size:12px; }
#food-rhythm .fr-result-goal-copy strong { display:block; margin-top:3px; color:#12352c; font-size:18px; font-weight:760; }
#food-rhythm .fr-result-goal-arrow { color:#7d8a84; font-size:26px; line-height:1; }
#food-rhythm .fr-result-footer { margin-top:auto; padding-top:22px; }
#food-rhythm .fr-result-cta { border-radius:22px; min-height:62px; font-weight:700; }
@media(max-height:760px) { #food-rhythm.fr-is-result { margin:0 auto; } #food-rhythm.fr-is-result .fr-phone { min-height:0; } #food-rhythm.fr-is-result .fr-main { padding-bottom:18px; } #food-rhythm .fr-result-screen { min-height:530px; } #food-rhythm .fr-result-head { margin-top:42px; } #food-rhythm .fr-daily-target { margin-top:10px; } #food-rhythm .fr-result-macros { margin-top:10px; padding:15px 0; } #food-rhythm .fr-result-goal { margin-top:9px; min-height:80px; } #food-rhythm .fr-result-footer { padding-top:8px; } }
@media(prefers-reduced-motion:reduce) { #food-rhythm .fr-result-mascot .fr-choice-mascot::after { animation:none; } }
#food-rhythm .fr-week { display:grid; grid-template-columns:repeat(7,1fr); gap:4px; max-height:64px; overflow:hidden; margin:28px 0 16px; opacity:1; transition:max-height .7s cubic-bezier(.4,0,.2,1),margin .7s cubic-bezier(.4,0,.2,1),opacity .45s ease,transform .7s cubic-bezier(.4,0,.2,1); }
#food-rhythm .fr-date { border:0; background:transparent; min-height:64px; border-radius:16px; color:var(--fr-ink); padding:6px 0; font-size:11px; }
#food-rhythm .fr-week .fr-date span { display:block; color:#85918c; font-size:9px; }
#food-rhythm .fr-date strong { display:block; font-size:15px; margin-top:3px; color:var(--fr-ink); }
#food-rhythm .fr-week .fr-date[data-today=true] strong { font-size:18px; }
#food-rhythm .fr-date[data-today=true]:not([aria-pressed=true]) { box-shadow:inset 0 0 0 1.5px #9ec7ad; }
#food-rhythm .fr-date[aria-pressed=true] { background:var(--fr-green); color:#e1f4e8; box-shadow:0 8px 20px #1b7d5c2e; }
#food-rhythm .fr-date[aria-pressed=true] span { color:#e1f4e8; }
#food-rhythm .fr-date[aria-pressed=true] strong { color:white; }
#food-rhythm .fr-calendar-open .fr-week { max-height:0; margin:0; opacity:0; transform:translateY(24px); }
#food-rhythm .fr-calendar-reveal { display:grid; grid-template-rows:0fr; opacity:0; transform:translateY(-14px); transition:grid-template-rows .7s cubic-bezier(.4,0,.2,1),opacity .55s ease,transform .7s cubic-bezier(.4,0,.2,1); }
#food-rhythm .fr-calendar-inner { min-height:0; overflow:hidden; }
#food-rhythm .fr-calendar-open .fr-calendar-reveal { grid-template-rows:1fr; opacity:1; transform:translateY(0); }
#food-rhythm .fr-calendar { display:grid; grid-template-columns:repeat(7,1fr); column-gap:4px; row-gap:6px; margin:24px 0 0; }
#food-rhythm .fr-calendar .fr-date { width:42px; height:42px; min-height:42px; justify-self:center; padding:0; border-radius:15px; font-size:13px; color:var(--fr-ink); }
#food-rhythm .fr-calendar .fr-date[aria-pressed=true] { color:white; }
#food-rhythm .fr-calendar .fr-date[data-today=true] { font-weight:800; }
#food-rhythm .fr-calendar-weekday { display:grid; place-items:center; min-height:23px; color:var(--fr-muted); font-size:10px; }
#food-rhythm .fr-month-head { display:grid; grid-template-columns:38px 1fr 38px; align-items:center; gap:10px; padding:10px 0 0; }
#food-rhythm .fr-month-head strong { text-align:center; font-size:18px; font-weight:750; text-transform:capitalize; }
#food-rhythm .fr-month-arrow { width:38px; height:38px; display:grid; place-items:center; padding:0; border:0; border-radius:13px; background:#edf4ee; color:var(--fr-green); transition:background .2s,transform .2s; }
#food-rhythm .fr-month-arrow .fr-ui-icon { width:19px; height:19px; stroke-width:2.3; }
#food-rhythm .fr-month-arrow:active { transform:scale(.93); }
@media(hover:hover) { #food-rhythm .fr-month-arrow:hover { background:#dcece1; } }
#food-rhythm .fr-calendar-divider { position:relative; height:1px; margin:24px 0 20px; background:#dfe6dc; }
#food-rhythm .fr-calendar-divider::after { content:""; position:absolute; left:50%; top:50%; width:32px; height:5px; border-radius:100px; background:#d6e0d3; transform:translate(-50%,-50%); }
#food-rhythm .fr-meter { height:4px; background:#e8eee1; border-radius:3px; margin-top:7px; overflow:hidden; }
#food-rhythm .fr-meter span { height:100%; display:block; background:var(--fr-green); }
#food-rhythm .fr-section { margin:25px 0 13px; }
#food-rhythm .fr-food { width:100%; display:flex; align-items:center; gap:12px; background:white; border:1px solid #e2e8dc; border-radius:19px; padding:14px; margin-bottom:9px; color:var(--fr-ink); text-align:left; }
#food-rhythm .fr-food-symbol { min-width:44px; height:44px; display:grid; place-items:center; border-radius:14px; background:var(--fr-soft); color:var(--fr-green); }
#food-rhythm .fr-food-detail { flex:1; min-width:0; overflow-wrap:anywhere; }
#food-rhythm .fr-food strong { font-size:14px; }
#food-rhythm .fr-food small { display:block; color:var(--fr-muted); font-size:12px; }
#food-rhythm .fr-nav { position:fixed; z-index:20; bottom:max(12px,env(safe-area-inset-bottom)); left:50%; transform:translateX(-50%); width:min(390px,calc(100vw - 24px)); height:88px; display:grid; grid-template-columns:1fr 86px 1fr; align-items:center; padding:0 35px; isolation:isolate; }
#food-rhythm .fr-nav-shape { position:absolute; inset:0; width:100%; height:100%; z-index:-1; overflow:visible; filter:drop-shadow(0 12px 20px #153a2c1a); }
#food-rhythm .fr-nav-shape path { fill:white; stroke:#dfe7dc; stroke-width:1; }
#food-rhythm .fr-nav-item { position:relative; width:74px; height:62px; justify-self:center; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:4px; padding:0; border:0; background:transparent; color:#82918b; font-size:10px; transition:color .25s; -webkit-tap-highlight-color:transparent; }
#food-rhythm .fr-nav-item[data-action=profile] { grid-column:3; }
#food-rhythm .fr-nav-symbol,#food-rhythm .fr-nav-label { position:relative; transition:color .25s; }
#food-rhythm .fr-nav-symbol .fr-ui-icon { width:21px; height:21px; stroke-width:1.8; }
#food-rhythm .fr-nav-item[aria-current=page] { color:var(--fr-green); font-weight:700; }
#food-rhythm .fr-nav-add { position:absolute; z-index:2; top:-3px; left:50%; width:58px; height:58px; padding:0; border:0; border-radius:50%; background:var(--fr-green); color:white; transform:translateX(-50%); box-shadow:0 10px 24px #17795a47; transition:transform .48s cubic-bezier(.16,1.35,.3,1),background .25s,box-shadow .35s; }
#food-rhythm .fr-plus-mark::before,#food-rhythm .fr-plus-mark::after { content:""; position:absolute; left:50%; top:50%; width:22px; height:2px; border-radius:20px; background:currentColor; transform:translate(-50%,-50%); transition:transform .45s cubic-bezier(.16,1.25,.3,1); }
#food-rhythm .fr-plus-mark::after { transform:translate(-50%,-50%) rotate(90deg); }
#food-rhythm .fr-nav.fr-menu-open .fr-nav-add { background:#0f6247; transform:translateX(-50%) translateY(-4px) rotate(90deg) scale(1.06); box-shadow:0 15px 34px #105d4259; }
#food-rhythm .fr-nav.fr-menu-open .fr-plus-mark::before { transform:translate(-50%,-50%) rotate(45deg); }
#food-rhythm .fr-nav.fr-menu-open .fr-plus-mark::after { transform:translate(-50%,-50%) rotate(-45deg); }
@media(hover:hover) { #food-rhythm .fr-nav-item:not([aria-current=page]):hover { color:#4d6f63; } #food-rhythm .fr-nav-add:hover { background:#0f6247; transform:translateX(-50%) translateY(-3px) scale(1.045); } }
#food-rhythm .fr-nav-add:active { transform:translateX(-50%) translateY(2px) scale(.9); }
#food-rhythm.fr-is-day .fr-main,#food-rhythm.fr-is-progress .fr-main,#food-rhythm.fr-is-profile .fr-main,#food-rhythm.fr-is-family .fr-main,#food-rhythm.fr-is-tariff .fr-main { padding-bottom:115px; }
#food-rhythm.fr-is-day .fr-main { padding-top:30px; }
#food-rhythm .fr-diary button { scroll-margin-bottom:105px; }
#food-rhythm .fr-diary-heading { padding:0 3px; }
#food-rhythm .fr-diary-heading h1 { margin:0; font-size:32px; line-height:1; font-weight:760; letter-spacing:-.025em; }
#food-rhythm .fr-calendar-toggle { flex:none; display:grid; place-items:center; width:50px; height:50px; padding:0; border:1px solid #dce4d9; border-radius:50%; background:white; color:var(--fr-ink); box-shadow:0 5px 14px #183c2d0f; transition:transform .3s cubic-bezier(.16,1,.3,1); }
#food-rhythm .fr-calendar-toggle .fr-ui-icon { width:21px; height:21px; stroke-width:1.8; }
#food-rhythm .fr-calendar-toggle:active { transform:scale(.92); }
#food-rhythm .fr-diary-stats { padding:18px 14px 17px; box-shadow:0 8px 24px #1941310e; }
#food-rhythm .fr-energy-ring { width:160px; height:160px; margin:0 auto 15px; padding:10px; display:grid; place-items:center; border-radius:50%; background:conic-gradient(#43c985 0 var(--fr-fill),#e8eee5 var(--fr-fill) 100%); }
#food-rhythm .fr-energy-core { width:100%; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; border-radius:50%; background:white; text-align:center; }
#food-rhythm .fr-energy-core span { color:var(--fr-muted); font-size:10px; }
#food-rhythm .fr-energy-core strong { margin-top:3px; font-size:38px; line-height:1; letter-spacing:-.05em; }
#food-rhythm .fr-energy-core small { margin-top:6px; color:var(--fr-muted); font-size:10px; }
#food-rhythm .macros-card { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; padding:4px 0 2px; }
#food-rhythm .macro { min-width:0; text-align:center; }
#food-rhythm .macro__label { display:block; color:#5c7066; font-size:12px; font-weight:600; white-space:nowrap; }
#food-rhythm .macro__value { display:block; margin-top:6px; color:#12352c; font-size:17px; line-height:1.2; font-weight:750; letter-spacing:-.03em; white-space:nowrap; }
#food-rhythm .macro__track { height:5px; margin-top:10px; overflow:hidden; border-radius:100px; background:#e7ece4; }
#food-rhythm .macro__fill { position:relative; height:100%; border-radius:inherit; transition:width .6s cubic-bezier(.16,1,.3,1); }
#food-rhythm .macro__fill::after { content:""; position:absolute; right:0; top:50%; width:7px; height:7px; border-radius:50%; background:inherit; transform:translate(50%,-50%); }
#food-rhythm .macro--protein .macro__fill { background:var(--fr-leaf); }
#food-rhythm .macro--fat .macro__fill { background:var(--fr-body); }
#food-rhythm .macro--carbs .macro__fill { background:var(--fr-face); }
#food-rhythm .fr-diary-metrics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:12px; }
#food-rhythm .fr-diary-extra { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,2fr); align-items:center; column-gap:8px; min-width:0; min-height:118px; padding:14px 14px 12px; border:1px solid #e5ebe3; border-radius:22px; background:white; box-shadow:0 8px 22px #16342b0a; }
#food-rhythm .fr-extra-body { display:flex; flex-direction:column; justify-content:center; min-width:0; height:100%; }
#food-rhythm .fr-extra-title { display:block; color:#526b60; font-size:14px; line-height:18px; font-weight:700; letter-spacing:-.02em; white-space:nowrap; }
#food-rhythm .fr-extra-icon { width:38px; height:38px; display:grid; place-items:center; justify-self:center; border-radius:50%; background:#ecf6ef; color:#22a06b; }
#food-rhythm .fr-extra-icon .fr-ui-icon { width:23px; height:23px; }
#food-rhythm .fr-extra-steps .fr-ui-icon { width:28px; height:28px; }
#food-rhythm .fr-extra-water .fr-extra-icon { background:color-mix(in srgb,var(--fr-body) 32%,white); color:var(--fr-face); }
#food-rhythm .fr-extra-sleep .fr-extra-icon { background:color-mix(in srgb,var(--fr-face) 10%,white); color:var(--fr-face); }
#food-rhythm .fr-extra-sport .fr-extra-icon { background:color-mix(in srgb,var(--fr-tongue) 18%,white); color:var(--fr-tongue); }
#food-rhythm .fr-diary-extra strong { display:block; margin-top:4px; color:#16342b; font-size:17px; line-height:19px; font-weight:800; letter-spacing:-.02em; white-space:nowrap; }
#food-rhythm .fr-diary-extra small { display:block; min-height:12px; margin-top:3px; color:#8a9590; font-size:10px; line-height:12px; font-weight:500; }
#food-rhythm .fr-diary-extra .fr-meter { display:block; width:100%; height:4px; margin-top:10px; background:#edf1ec; }
#food-rhythm .fr-diary-extra .fr-meter span { width:0; }
#food-rhythm .fr-extra-steps .fr-meter span { background:var(--fr-leaf); }
#food-rhythm .fr-extra-water .fr-meter span { background:var(--fr-face); }
#food-rhythm .fr-extra-sleep .fr-meter span { background:var(--fr-body); }
#food-rhythm .fr-extra-sport .fr-meter span { background:var(--fr-tongue); }
#food-rhythm .fr-add-overlay { position:fixed; z-index:19; inset:0; pointer-events:none; }
#food-rhythm .fr-add-backdrop { position:absolute; inset:0; width:100%; border:0; background:#0c1c1561; opacity:0; visibility:hidden; transition:opacity .32s,visibility .32s; }
#food-rhythm .fr-add-open .fr-add-backdrop { opacity:1; visibility:visible; pointer-events:auto; }
#food-rhythm .fr-add-panel { position:absolute; left:50%; bottom:calc(max(12px,env(safe-area-inset-bottom)) + 72px); width:0; height:0; }
#food-rhythm .fr-add-source { position:absolute; left:0; bottom:0; width:78px; margin-left:-39px; display:grid; justify-items:center; gap:7px; padding:0; border:0; background:transparent; color:white; font-size:11px; font-weight:700; opacity:0; transform:translate(0,30px) scale(.3); pointer-events:none; transition:transform .52s cubic-bezier(.16,1.45,.3,1),opacity .25s; }
#food-rhythm .fr-add-source-photo { --fr-x:-92px; --fr-y:-38px; }
#food-rhythm .fr-add-source-barcode { --fr-x:0px; --fr-y:-91px; }
#food-rhythm .fr-add-source-manual { --fr-x:92px; --fr-y:-38px; }
#food-rhythm .fr-add-open .fr-add-source { opacity:1; transform:translate(var(--fr-x),var(--fr-y)) scale(1); pointer-events:auto; }
#food-rhythm .fr-add-open .fr-add-source-photo { transition-delay:.03s; }
#food-rhythm .fr-add-open .fr-add-source-barcode { transition-delay:.08s; }
#food-rhythm .fr-add-open .fr-add-source-manual { transition-delay:.13s; }
#food-rhythm .fr-add-source-icon { width:62px; height:62px; display:grid; place-items:center; border-radius:20px; background:white; color:var(--fr-green); box-shadow:0 13px 30px #0003; transition:transform .25s cubic-bezier(.16,1.3,.3,1); }
#food-rhythm .fr-add-source .fr-ui-icon { width:25px; height:25px; stroke-width:1.8; }
@media(hover:hover) { #food-rhythm .fr-add-source:hover .fr-add-source-icon { transform:translateY(-3px) scale(1.06); } }
#food-rhythm .fr-add-source:active .fr-add-source-icon { transform:scale(.9); }
#food-rhythm .fr-food-heading { margin-bottom:17px; }
#food-rhythm .fr-food-heading strong { font-size:17px; }
#food-rhythm .fr-food-heading > span { width:42px; }
#food-rhythm .fr-manual-prompt { margin:28px 0 20px; font-size:25px; }
#food-rhythm .fr-food-form { padding:18px; border:1px solid #e1e9e1; border-radius:22px; background:white; }
#food-rhythm .fr-food-form .fr-muted { margin:0; }
#food-rhythm .fr-food-form .fr-macro-inputs { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
#food-rhythm .fr-food-form .fr-macro-inputs label { min-width:0; font-size:11px; }
#food-rhythm .fr-food-form .fr-macro-inputs input { min-width:0; width:100%; }
#food-rhythm .fr-subhead { display:flex; align-items:center; gap:14px; }
#food-rhythm .fr-subhead h1 { margin:0; }
#food-rhythm .fr-family-invite,#food-rhythm .fr-tariff-card { margin-top:14px; padding:25px 18px; text-align:center; }
#food-rhythm .fr-family-invite .fr-profile-icon,#food-rhythm .fr-tariff-card .fr-profile-icon { margin:0 auto 12px; }
#food-rhythm .fr-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
#food-rhythm .fr-notice { padding:11px 13px; border-radius:12px; background:#edf1e5; color:#52624c; font-size:12px; margin:12px 0; }
#food-rhythm .fr-gap { margin-top:22px; }
@media(max-width:360px) { #food-rhythm .fr-main { padding:16px; } #food-rhythm h1 { font-size:28px; } #food-rhythm .fr-choice-head h1 { font-size:23px; } #food-rhythm .fr-diary-heading h1 { font-size:30px; } #food-rhythm .fr-calendar .fr-date { width:37px; height:37px; min-height:37px; } #food-rhythm .macro__label { font-size:11px; } #food-rhythm .macro__value { font-size:15px; } #food-rhythm .fr-diary-extra { padding:8px; } #food-rhythm .fr-extra-water strong,#food-rhythm .fr-extra-sleep strong { font-size:15px; } }
@media(max-width:360px) { #food-rhythm .fr-nav { padding:0 25px; } #food-rhythm .fr-add-source-photo { --fr-x:-79px; } #food-rhythm .fr-add-source-manual { --fr-x:79px; } }
@media(prefers-reduced-motion:reduce) { #food-rhythm .fr-nav-item,#food-rhythm .fr-nav-symbol,#food-rhythm .fr-nav-label,#food-rhythm .fr-nav-add,#food-rhythm .fr-plus-mark::before,#food-rhythm .fr-plus-mark::after,#food-rhythm .fr-add-backdrop,#food-rhythm .fr-add-source { transition:none; } }
@media(prefers-reduced-motion:reduce) { #food-rhythm .fr-week,#food-rhythm .fr-calendar-reveal { transition:none; } }
@media(max-height:760px) { #food-rhythm.fr-is-onboarding { margin:0 auto; } #food-rhythm.fr-is-onboarding .fr-phone { min-height:0; } #food-rhythm.fr-is-onboarding .fr-main { padding-bottom:20px; } #food-rhythm .fr-question,#food-rhythm .fr-question-age,#food-rhythm .fr-question-ruler { height:450px; min-height:450px; } #food-rhythm .fr-question-age .fr-age-picker { width:min(300px,86vw); margin-bottom:0; } #food-rhythm .fr-question-height .fr-ruler { height:170px; margin-top:4px; } }
#food-rhythm .fr-question.fr-question-activity { height:auto; min-height:510px; padding-bottom:8px; }
@media(prefers-reduced-motion:no-preference) { #food-rhythm .fr-primary { transition:filter .15s; } #food-rhythm .fr-primary:hover { filter:brightness(1.1); } }
