:root{--button-text:#102218;--bg:#101814;--card:#19241e;--hero:#203c2a;--soft:#233329;--input:#121d16;--text:#edf3ed;--muted:#9dae9f;--accent:#b9e68b;--line:#304236;--danger:#ffaaa3;--warning:#f0d48c;--nav:#111b16ed;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--button-text:#fff;--bg:#f4f6ef;--card:#fff;--hero:#e2efcf;--soft:#edf2e7;--input:#f8faf5;--text:#1d2c22;--muted:#657366;--accent:#507832;--line:#dbe3d5;--danger:#a72d2a;--warning:#8f6a13;--nav:#f8faf4ed;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=light] input,:root[data-theme=light] select,:root[data-theme=light] textarea{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:light){:root[data-theme=system]{--button-text:#fff;--bg:#f4f6ef;--card:#fff;--hero:#e2efcf;--soft:#edf2e7;--input:#f8faf5;--text:#1d2c22;--muted:#657366;--accent:#507832;--line:#dbe3d5;--danger:#a72d2a;--warning:#8f6a13;--nav:#f8faf4ed;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}:root{--accent-secondary:var(--accent);--control-line:var(--line)}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent;margin:0;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}button,input,select,textarea{font:inherit}button{background:var(--accent);color:var(--button-text);cursor:pointer;border:0;border-radius:14px;min-height:44px;padding:12px 17px;font-weight:650;transition:transform .15s,opacity .15s}button:active{transform:scale(.98)}button:disabled{opacity:.45;cursor:wait}button.secondary{background:var(--soft);color:var(--text)}button.text{color:var(--accent);background:0 0;padding:8px}button.danger{background:var(--soft);color:var(--danger);padding:8px 10px;font-size:.82rem}input,select,textarea{background:var(--input);border:1px solid var(--control-line);width:100%;min-height:48px;color:var(--text);max-width:100%;color-scheme:inherit;border-radius:12px;padding:11px 13px;font-size:16px;display:block}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:2px}textarea{resize:vertical;min-height:95px}a{color:var(--accent)}.shell{max-width:920px;padding:calc(24px + env(safe-area-inset-top)) 22px calc(110px + env(safe-area-inset-bottom));margin:auto}header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}h1{letter-spacing:-.045em;margin:5px 0;font-size:1.35rem}h2{letter-spacing:-.04em;margin:8px 0 26px;font-size:clamp(1.7rem,5vw,2.3rem);font-weight:600;line-height:1.2}h3{letter-spacing:-.025em;margin:4px 0 16px;font-size:1.15rem}h4{margin-bottom:12px}p{margin:10px 0 18px}.eyebrow{letter-spacing:.15em;color:var(--muted);font-size:.65rem;font-weight:650}.dot{color:var(--accent);vertical-align:middle;margin-left:8px;font-size:.65rem}.badge{color:var(--accent);border:1px solid var(--line);white-space:nowrap;border-radius:30px;padding:5px 10px;font-size:.7rem}.badge.offline{color:var(--warning)}.status{border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:12px;font-size:.8rem;display:flex}.status button{font-size:.75rem}.field{flex-direction:column;gap:6px;min-width:0;margin-bottom:14px;display:flex}.field>label{color:var(--muted);font-size:.78rem}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.grid.nutrients{grid-template-columns:repeat(4,minmax(0,1fr))}section{background:var(--card);border:1px solid var(--line);border-radius:22px;margin:0 0 18px;padding:22px}.grid>section{margin:0}.grid{margin-bottom:16px}.muted{color:var(--muted);font-size:.85rem}.section-heading{justify-content:space-between;align-items:center;gap:10px;margin-top:24px;display:flex}.section-heading:first-child{margin-top:0}.section-heading h3{margin:0 0 10px}.datebar{align-items:center;gap:12px;margin-bottom:20px;display:flex}.datebar .field{flex:1;margin:0}.datebar button{background:var(--soft);color:var(--text);font-size:1.4rem}.hero{background:linear-gradient(140deg, var(--card), var(--hero));align-items:center;gap:40px;padding:30px;display:flex}.ring{background:conic-gradient(var(--accent) var(--progress), var(--soft) 0);border-radius:50%;flex-shrink:0;width:200px;height:200px;padding:9px}.ring>div{background:var(--card);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;height:100%;display:flex}.ring strong{letter-spacing:-.06em;font-size:2.8rem;font-weight:600}.ring span{color:var(--muted);font-size:.7rem}.hero h3{font-size:1.35rem;line-height:1.45}.hero p{color:var(--muted);font-size:.85rem}.macros{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:18px 0;display:grid}.macros>div{background:var(--soft);border-radius:14px;min-width:0;padding:16px 10px}.macros strong{overflow-wrap:anywhere;font-size:.95rem;display:block}.macros span{color:var(--muted);margin-top:5px;font-size:.67rem;display:block}.macrobar{margin:16px 0}.macrobar>div{justify-content:space-between;margin-bottom:7px;font-size:.8rem;display:flex}.macrobar span:last-child{color:var(--muted)}progress{appearance:none;background:var(--soft);border:0;border-radius:9px;width:100%;height:7px}progress::-webkit-progress-bar{background:var(--soft);border-radius:9px}progress::-webkit-progress-value{background:var(--accent-secondary);border-radius:9px}progress::-moz-progress-bar{background:var(--accent-secondary);border-radius:9px}.alert{background:var(--soft);border:1px solid var(--line);overflow-wrap:anywhere;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;padding:14px;font-size:.85rem;display:flex}.alert button{flex-shrink:0;padding:6px 10px}.error{border-color:var(--danger);color:var(--danger)}.entry{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding:15px 0;display:flex}.entry:last-child{border:0}.entry p{color:var(--muted);margin:3px 0;font-size:.78rem}.actions{flex-wrap:wrap;gap:8px;display:flex}.entry .actions button{min-height:40px;padding:8px 10px;font-size:.73rem}.result{text-align:left;background:var(--soft);width:100%;color:var(--text);overflow-wrap:anywhere;margin:10px 0;display:block}.result span{color:var(--muted);margin-top:4px;font-size:.75rem;font-weight:400;display:block}.divider{background:var(--line);height:1px;margin:22px 0}.preview{border-top:1px solid var(--line);margin:20px 0;padding-top:18px}.preview .macros>div{padding:12px 7px}form>button{margin-bottom:10px}.chart{justify-content:space-around;align-items:flex-end;gap:8px;min-height:180px;padding-top:20px;display:flex}.chart>div{text-align:center;color:var(--muted);flex:1;font-size:.65rem}.column{background:var(--accent-secondary);border-radius:6px 6px 2px 2px;max-width:32px;margin:8px auto}.weight-chart{width:100%;height:160px;margin-bottom:20px}.photo-preview{object-fit:contain;background:var(--soft);border-radius:14px;width:100%;max-height:250px;margin-bottom:12px}.conflict{border:1px solid var(--warning);border-radius:14px;margin-top:18px;padding:16px}.conflict pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:220px;font-size:.7rem;overflow:auto}details{margin-top:20px}summary{cursor:pointer;min-height:44px;color:var(--muted)}nav{background:var(--nav);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top:1px solid var(--line);padding:8px 6px calc(8px + env(safe-area-inset-bottom));z-index:4;justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}nav button{color:var(--muted);background:0 0;border-radius:12px;flex-direction:column;align-items:center;gap:2px;width:min(18.5%,150px);min-width:0;padding:5px 4px;font-size:.59rem;display:flex}nav button>span{font-size:1.35rem;line-height:1.3}nav button[aria-current]{color:var(--accent);background:var(--soft)}.scanner{background:var(--bg);z-index:10;padding:calc(25px + env(safe-area-inset-top)) 20px;text-align:center;position:fixed;inset:0;overflow:auto}.scanner video{object-fit:cover;background:#000;border-radius:20px;width:100%;max-width:600px;max-height:65dvh}.loading{padding:40px}.hero-copy{flex:1}.nav-icon{flex-shrink:0;width:24px;height:25px}button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.accent-options{border:0;min-width:0;margin:22px 0;padding:0}.accent-options legend{margin-bottom:12px;font-weight:600}.accent-presets{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.accent-choice{background:var(--input);color:var(--text);border:2px solid var(--line);align-items:center;gap:7px;min-height:48px;padding:10px 8px;font-size:.8rem;display:flex}.accent-choice[aria-pressed=true]{border-color:var(--accent)}.selection-mark{color:var(--accent);margin-left:auto}.color-swatch{border:1px solid;border-radius:50%;flex-shrink:0;width:16px;height:16px}.default-swatch{background:linear-gradient(135deg,#b9e68b 50%,#507832 50%)}.custom-accent{grid-template-columns:1fr 1fr;align-items:center;gap:8px 14px;display:grid}.custom-accent>label{color:var(--muted);grid-column:1;font-size:.78rem}.custom-accent>input[type=color]{cursor:pointer;grid-area:2/1;padding:5px}.custom-accent .field{grid-area:1/2/3;align-self:end;margin:0}.design-save-state{color:var(--muted);min-height:24px;font-size:.78rem}.color-error{color:var(--danger)}.theme-choices{border:0;min-width:0;margin:24px 0;padding:0}.theme-choices legend{margin-bottom:14px;font-weight:600}.theme-presets{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.theme-choice{background:var(--input);min-width:0;color:var(--text);border:2px solid var(--line);text-align:left;padding:8px}.theme-choice[aria-pressed=true]{border-color:var(--accent)}.theme-choice-label{overflow-wrap:anywhere;padding:10px 2px 4px;font-size:.8rem;display:block}.theme-preview{border:1px solid var(--line);background:var(--bg);color:var(--text);text-align:left;border-radius:14px;flex-direction:column;gap:14px;padding:18px;font-size:.85rem;display:flex}.preview-title{font-weight:650}.preview-card{background:var(--card);border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:10px;padding:14px;display:flex}.preview-field{background:var(--input);color:var(--text);border:1px solid var(--control-line);border-radius:6px;padding:8px}.preview-button{background:var(--accent);color:var(--button-text);border-radius:8px;align-self:start;padding:7px 12px}.preview-bars{align-items:end;gap:6px;height:22px;display:flex}.preview-bars i{background:var(--accent-secondary);border-radius:3px 3px 0 0;width:22%;height:75%}.preview-bars i:nth-child(2){height:100%}.preview-bars i:nth-child(3){height:50%}.preview-nav{background:var(--nav);color:var(--text);border-top:1px solid var(--line);align-items:center;gap:12px;padding-top:8px;font-size:.72rem;display:flex}.preview-nav b{color:var(--accent)}.miniature{pointer-events:none;gap:5px;height:108px;padding:8px;font-size:.55rem}.miniature .preview-card{gap:4px;padding:5px}.miniature .preview-field,.miniature .preview-bars{display:none}.miniature .preview-button{padding:2px 5px}.miniature .preview-nav{gap:4px;padding-top:3px;font-size:.43rem}.theme-editor{border-top:1px solid var(--line);margin-top:20px;padding-top:6px}.theme-editor>.muted{font-size:.8rem}.palette-modes,.theme-roles{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:14px 0;display:grid}.palette-modes button,.theme-roles button{border:2px solid #0000;min-height:48px;padding:10px;font-size:.8rem}.theme-roles button{align-items:center;gap:8px;display:flex}.palette-modes button[aria-pressed=true],.theme-roles button[aria-pressed=true]{border-color:var(--accent);text-underline-offset:4px;text-decoration:underline}.theme-editor .accent-presets{margin:16px 0}.theme-reset{width:100%;margin-top:22px}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}select option{background:var(--input);color:var(--text)}.usda-source{overflow-wrap:anywhere;color:var(--muted);margin-top:8px;font-size:.75rem;font-weight:400;line-height:1.6;display:block}.usda-detail{border-left:3px solid var(--accent);background:var(--soft);border-radius:8px;margin:12px 0;padding:12px;font-size:.78rem}#food-search,#food-editor{scroll-margin-top:14px}.gemini-panel h3,.add-screen .status{margin-bottom:8px}.add-screen h2{margin-bottom:12px}.add-screen{padding-top:calc(16px + env(safe-area-inset-top))}.add-screen header{margin-bottom:10px}.gemini-panel>.muted{margin-bottom:14px;font-size:.78rem}.ai-methods{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.ai-method{flex-direction:column;min-width:0;display:flex}.ai-method .field{flex:1;margin-bottom:10px}.ai-method .field>label{min-height:38px}.ai-method input[type=file]{min-height:80px;padding:9px 6px;font-size:.75rem}.ai-method input::file-selector-button{font:inherit;color:var(--text);background:var(--soft);border:1px solid var(--line);border-radius:6px;max-width:100%;margin:0 0 7px;padding:5px;display:block}.ai-method textarea{height:80px;min-height:80px}.ai-method button{padding:10px 6px;font-size:.83rem}.ai-shortcuts{flex-wrap:wrap;gap:4px 14px;margin-top:8px;display:flex}.ai-shortcuts button{text-align:left;font-size:.78rem}@media (width<=600px){.shell{padding-left:17px;padding-right:17px}.hero{text-align:center;flex-direction:column;gap:22px;padding:25px 18px}.hero-copy h3{display:none}.hero-copy p{margin:0 0 16px}.ring{width:185px;height:185px}.grid.nutrients{grid-template-columns:repeat(2,minmax(0,1fr))}.entry{flex-wrap:wrap}section{padding:18px}.macros strong{font-size:.8rem}.macros>div{padding:13px 7px}.macros span{overflow-wrap:anywhere;font-size:.66rem}.alert{flex-wrap:wrap;align-items:flex-start}header h1{font-size:1.18rem}.eyebrow{font-size:.57rem}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
