
/* Food Lens daily calorie guide. Calm, non-clinical, no warning states. */
#page-food-lens .flc-wrap{ max-width:920px; margin:0 auto 22px; padding:0 16px; }
#page-food-lens .flc-card{ background:#fff; border:1px solid #ECE7DD; border-radius:24px;
  padding:24px; font-family:Inter,system-ui,sans-serif; }
#page-food-lens .flc-card.is-off{ background:#FBFAF7; }
#page-food-lens .flc-head{ display:flex; justify-content:space-between; gap:16px;
  align-items:flex-start; margin:0 0 16px; }
#page-food-lens .flc-eb{ margin:0 0 6px; font-size:.68rem; font-weight:800; letter-spacing:.16em;
  text-transform:uppercase; color:#7d9e77 !important; -webkit-text-fill-color:#7d9e77 !important; }
#page-food-lens .flc-h{ font-size:1.25rem !important; font-weight:800 !important;
  margin:0 0 6px !important; color:#243447 !important; -webkit-text-fill-color:#243447 !important; }
#page-food-lens .flc-sub{ margin:0; font-size:.94rem; line-height:1.65; max-width:56ch;
  color:#5A6472 !important; -webkit-text-fill-color:#5A6472 !important; }
#page-food-lens .flc-figs{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px;
  margin:0 0 14px; }
#page-food-lens .flc-fig{ min-width:0; }
#page-food-lens .flc-lab{ display:block; font-size:.68rem; font-weight:800; letter-spacing:.12em;
  text-transform:uppercase; color:#9AA2AD !important; -webkit-text-fill-color:#9AA2AD !important; }
#page-food-lens .flc-val{ display:inline-block; margin-top:4px; font-size:1.7rem; font-weight:800;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important; }
#page-food-lens .flc-u{ font-size:.82rem; margin-left:4px;
  color:#9AA2AD !important; -webkit-text-fill-color:#9AA2AD !important; }
#page-food-lens .flc-note-inline{ display:block; margin-top:8px; font-size:.92rem;
  color:#5A6472 !important; -webkit-text-fill-color:#5A6472 !important; }
#page-food-lens .flc-bar{ height:10px; border-radius:99px; background:#F0EDE6; overflow:hidden; }
#page-food-lens .flc-bar span{ display:block; height:100%; border-radius:99px; background:#7d9e77; }
#page-food-lens .flc-pct{ margin:8px 0 14px; font-size:.86rem;
  color:#78766c !important; -webkit-text-fill-color:#78766c !important; }
#page-food-lens .flc-list{ list-style:none; margin:0 0 14px; padding:0;
  display:flex; flex-direction:column; gap:8px; }
#page-food-lens .flc-list li{ display:flex; align-items:center; gap:10px; padding:11px 14px;
  border-radius:12px; background:#FBFAF7; }
#page-food-lens .flc-e-m{ flex:none; font-size:.68rem; font-weight:800; letter-spacing:.1em;
  text-transform:uppercase; width:76px;
  color:#9AA2AD !important; -webkit-text-fill-color:#9AA2AD !important; }
#page-food-lens .flc-e-n{ flex:1; min-width:0; font-size:.93rem;
  color:#33312b !important; -webkit-text-fill-color:#33312b !important; }
#page-food-lens .flc-e-n em{ font-style:normal; font-size:.72rem; margin-left:6px;
  color:#9AA2AD !important; -webkit-text-fill-color:#9AA2AD !important; }
#page-food-lens .flc-e-c{ flex:none; font-size:.9rem; font-weight:800;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important; }
#page-food-lens .flc-x{ flex:none; width:36px; height:36px; border-radius:50%; cursor:pointer;
  font:inherit; font-size:.75rem; border:0; background:#F0EDE6;
  color:#78766c !important; -webkit-text-fill-color:#78766c !important; }
#page-food-lens .flc-none{ margin:0 0 14px; font-size:.9rem;
  color:#9AA2AD !important; -webkit-text-fill-color:#9AA2AD !important; }
#page-food-lens .flc-acts{ display:flex; gap:9px; flex-wrap:wrap; }
#page-food-lens .flc-b, #flcSheet .flc-b{ min-height:48px; padding:13px 20px; border-radius:999px;
  cursor:pointer; font:inherit; font-size:.88rem; font-weight:800; font-family:Inter,sans-serif;
  background:#fff !important; border:1.5px solid #ECE7DD !important;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important; }
#page-food-lens .flc-b:hover, #flcSheet .flc-b:hover{ border-color:#7d9e77 !important; }
#page-food-lens .flc-b.is-go, #flcSheet .flc-b.is-go{ background:#4A6B3F !important;
  border-color:#4A6B3F !important; color:#fff !important; -webkit-text-fill-color:#fff !important; }
#page-food-lens .flc-mini{ flex:none; min-height:44px; padding:10px 16px; border-radius:999px;
  cursor:pointer; font:inherit; font-size:.82rem; font-weight:800;
  background:#fff !important; border:1.5px solid #ECE7DD !important;
  color:#5A6472 !important; -webkit-text-fill-color:#5A6472 !important; }
#page-food-lens .flc-b:focus-visible, #page-food-lens .flc-mini:focus-visible,
#flcSheet .flc-b:focus-visible{ outline:3px solid #CF9E3F; outline-offset:3px; }
#page-food-lens .flc-guide{ margin:14px 0 0; font-size:.84rem; line-height:1.6;
  color:#78766c !important; -webkit-text-fill-color:#78766c !important; }
#flcSheet{ position:fixed; inset:0; z-index:9750; display:none; align-items:flex-end;
  justify-content:center; background:rgba(20,28,44,.5); font-family:Inter,system-ui,sans-serif; }
#flcSheet.is-open{ display:flex; }
#flcSheet .flc-box{ display:block !important; width:100%; max-width:520px;
  max-height:calc(100dvh - 40px); overflow-y:auto; background:#fff !important;
  border-radius:26px 26px 0 0; padding:24px 22px 30px; }
@media (min-width:720px){
  #flcSheet{ align-items:center; padding:16px; }
  #flcSheet .flc-box{ border-radius:26px; padding-bottom:26px; } }
#flcSheet .flc-box-h{ display:flex !important; flex-direction:row !important;
  justify-content:space-between; align-items:flex-start; gap:12px; margin:0 0 12px; }
#flcSheet .flc-box-t{ font-size:1.2rem !important; font-weight:800 !important; margin:0 !important;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important; }
#flcSheet .flc-box-x{ flex:none; width:44px; height:44px; min-height:44px; border-radius:50%;
  cursor:pointer; font:inherit; border:0 !important; background:#F1EDE8 !important;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important; }
#flcSheet .flc-box-b{ font-size:.94rem; line-height:1.7;
  color:#3E4B65 !important; -webkit-text-fill-color:#3E4B65 !important; }
#flcSheet .flc-box-b p{ margin:0 0 12px; }
#flcSheet .flc-f{ margin:0 0 14px; }
#flcSheet .flc-fl{ display:block; margin:0 0 6px; font-size:.7rem; font-weight:800;
  letter-spacing:.13em; text-transform:uppercase;
  color:#78766c !important; -webkit-text-fill-color:#78766c !important; }
#flcSheet .flc-i{ box-sizing:border-box; width:100%; min-height:50px; padding:13px 16px;
  border-radius:14px; font:inherit; font-size:.98rem; background:#fff !important;
  border:1.5px solid #ECE7DD !important;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important; }
#flcSheet .flc-i:focus{ outline:none; border-color:#7d9e77 !important;
  box-shadow:0 0 0 3px rgba(125,158,119,.24); }
#flcSheet .flc-unit{ display:inline-block; margin-top:6px; font-size:.84rem;
  color:#9AA2AD !important; -webkit-text-fill-color:#9AA2AD !important; }
#flcSheet .flc-small{ font-size:.86rem; line-height:1.65; padding:13px 15px; border-radius:12px;
  background:#F7F5F0 !important; margin:0 0 10px !important;
  color:#5b5950 !important; -webkit-text-fill-color:#5b5950 !important; }
#flcSheet .flc-k{ font-size:.68rem; font-weight:800; letter-spacing:.15em; text-transform:uppercase;
  margin:20px 0 8px; color:#9AA2AD !important; -webkit-text-fill-color:#9AA2AD !important; }
#flcSheet .flc-ideas, #flcSheet .flc-hist{ list-style:none; margin:0 0 12px; padding:0;
  display:flex; flex-direction:column; gap:9px; }
#flcSheet .flc-ideas li, #flcSheet .flc-hist li{ display:flex; justify-content:space-between;
  gap:12px; align-items:baseline; padding:12px 14px; border-radius:12px; background:#FBFAF7; }
#flcSheet .flc-ideas em, #flcSheet .flc-hist em{ font-style:normal; font-size:.78rem;
  color:#9AA2AD !important; -webkit-text-fill-color:#9AA2AD !important; }
#flcSheet .flc-ideas strong, #flcSheet .flc-hist strong{ flex:none; font-weight:800;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important; }
#flcSheet .flc-box-f{ display:flex !important; flex-direction:row !important; gap:10px;
  justify-content:flex-end; flex-wrap:wrap; margin:18px 0 0; }
#flcToast{ position:fixed; left:50%; bottom:26px; transform:translate(-50%,14px); z-index:9800;
  background:#243447 !important; color:#fff !important; -webkit-text-fill-color:#fff !important;
  padding:14px 24px; border-radius:999px; font:700 .87rem/1.35 Inter,system-ui,sans-serif;
  opacity:0; pointer-events:none; transition:opacity .2s, transform .2s;
  max-width:calc(100vw - 32px); text-align:center; }
#flcToast.on{ opacity:1; transform:translate(-50%,0); }
@media (max-width:620px){
  #page-food-lens .flc-figs{ grid-template-columns:1fr; }
  #page-food-lens .flc-acts .flc-b{ flex:1 1 auto; }
}

