:root{--bg:#f6f7f4;--surface:#fff;--text:#1d2420;--muted:#5d6a62;--border:#dde3dd;--brand:#2f7d4f;--brand-ink:#fff;--ok:#1f7a46;--ok-bg:#e4f4ea;--bad:#b3261e;--bad-bg:#fbe9e7;--warn:#8a5a00;--warn-bg:#fff3d6;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#121512;--surface:#1c211d;--text:#e8ede9;--muted:#9aa89f;--border:#2e362f;--brand:#4fae78;--brand-ink:#0c150f;--ok:#6fd69a;--ok-bg:#16301f;--bad:#ff8a80;--bad-bg:#3a1a17;--warn:#f2c35b;--warn-bg:#352a10}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;line-height:1.45}button{font:inherit;color:inherit;cursor:pointer}.app{max-width:560px;padding:0 16px calc(32px + env(safe-area-inset-bottom));margin:0 auto}.topbar{padding:calc(12px + env(safe-area-inset-top)) 0 12px;justify-content:space-between;align-items:center;display:flex}.brand{color:var(--brand);background:0 0;border:0;padding:0;font-size:1.25rem;font-weight:700}.link-btn{color:var(--brand);background:0 0;border:0;padding:8px 0;text-decoration:underline}main{flex-direction:column;gap:16px;display:flex}.home{flex-direction:column;gap:12px;padding-top:24px;display:flex}.lead{margin:0 0 8px;font-size:1.15rem}.btn{text-align:center;border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:14px;padding:16px;font-weight:600;display:block}.btn.primary{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.btn:focus-within,button:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.error{background:var(--bad-bg);color:var(--bad);border-radius:10px;margin:0;padding:12px}.disclaimer{color:var(--muted);margin:8px 0 0;font-size:.85rem}.analyzing{flex-direction:column;align-items:center;gap:12px;padding-top:32px;display:flex}.preview{border:1px solid var(--border);border-radius:12px;width:160px}.spinner{border:4px solid var(--border);border-top-color:var(--brand);border-radius:50%;width:36px;height:36px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:3s}}.product{align-items:center;gap:12px;display:flex}.product h1{margin:0;font-size:1.4rem}.thumb{object-fit:cover;border:1px solid var(--border);border-radius:10px;width:56px;height:56px}.result{flex-direction:column;gap:16px;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-left-width:6px;border-radius:16px;padding:16px}.card.tone-ok{border-left-color:var(--ok)}.card.tone-bad{border-left-color:var(--bad)}.card.tone-warn{border-left-color:var(--warn)}.card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.card h2{margin:0;font-size:1.05rem}.summary{margin:8px 0 12px}.badge,.pill{white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:.8rem;font-weight:600;display:inline-block}.badge-ok,.pill-ok{background:var(--ok-bg);color:var(--ok)}.badge-bad,.pill-bad{background:var(--bad-bg);color:var(--bad)}.badge-warn,.pill-warn{background:var(--warn-bg);color:var(--warn)}.items{margin:0;padding:0;list-style:none}.item{border-top:1px solid var(--border);padding:10px 0}.item-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.item-name{font-weight:600}.item-why{color:var(--muted);margin:4px 0 0;font-size:.9rem}.nutrition{border-collapse:collapse;width:100%;margin-top:8px}.nutrition th{text-align:left;font-weight:500}.nutrition td{text-align:right}.nutrition tr+tr>*{border-top:1px solid var(--border)}.nutrition th,.nutrition td{padding:6px 0}.allergens{color:var(--muted);margin:0;font-size:.85rem}.history{flex-direction:column;gap:8px;margin:0 0 8px;padding:0;list-style:none;display:flex}.history-row{align-items:stretch;gap:4px;display:flex}.history-open{text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:14px;flex:1;align-items:center;gap:12px;padding:8px 12px;display:flex}.history-text{flex-direction:column;flex:1;display:flex}.history-text small,.empty{color:var(--muted)}.icon-btn{color:var(--muted);background:0 0;border:0;padding:0 12px}
