:root{--bg: #FAFAF9;--surface: #FFFFFF;--border: #E7E5E4;--text: #1C1917;--muted: #78716C;--accent: #0D9488;--accent2: #F97316;--accent-hover: #0F766E;--accent2-hover: #EA580C;--success: #16A34A;--error: #DC2626;--shadow-sm: 0 1px 2px rgba(0,0,0,.05);--shadow: 0 4px 6px -1px rgba(0,0,0,.1), 0 2px 4px -2px rgba(0,0,0,.1);--shadow-lg: 0 10px 15px -3px rgba(0,0,0,.1), 0 4px 6px -4px rgba(0,0,0,.1);--radius: 8px;--radius-lg: 12px;--transition: .15s ease;--font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace}@media(prefers-color-scheme:dark){:root{--bg: #1C1917;--surface: #292524;--border: #44403C;--text: #FAFAF9;--muted: #A8A29E;--shadow-sm: 0 1px 2px rgba(0,0,0,.3);--shadow: 0 4px 6px -1px rgba(0,0,0,.4), 0 2px 4px -2px rgba(0,0,0,.3);--shadow-lg: 0 10px 15px -3px rgba(0,0,0,.4), 0 4px 6px -4px rgba(0,0,0,.3)}}.svelte-1uha8ag,.svelte-1uha8ag:before,.svelte-1uha8ag:after{box-sizing:border-box}.page.svelte-1uha8ag{min-height:100vh;display:flex;flex-direction:column}.container.svelte-1uha8ag{width:100%;max-width:1200px;margin:0 auto;padding:0 1rem}button.svelte-1uha8ag{font-family:inherit;font-size:inherit;cursor:pointer;border:none;background:none;color:inherit}input.svelte-1uha8ag{font-family:inherit;font-size:inherit}table.svelte-1uha8ag{border-collapse:collapse;width:100%}th.svelte-1uha8ag,td.svelte-1uha8ag{text-align:left;padding:.75rem 1rem}th.svelte-1uha8ag{font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:var(--surface);border-bottom:2px solid var(--border)}svg.svelte-1uha8ag{display:block;width:1.25rem;height:1.25rem;flex-shrink:0}.visually-hidden.svelte-1uha8ag{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes svelte-1uha8ag-fadeUp{0%{opacity:1;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes svelte-1uha8ag-slideDown{0%{opacity:1;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes svelte-1uha8ag-toastIn{0%{opacity:1;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes svelte-1uha8ag-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes svelte-1uha8ag-countUp{0%{opacity:1}to{opacity:1}}.nav.svelte-1uha8ag{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--border);background:var(--surface);position:sticky;top:0;z-index:100}.nav-brand.svelte-1uha8ag{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:1.125rem;color:var(--text)}.nav-brand.svelte-1uha8ag .logo:where(.svelte-1uha8ag){width:1.5rem;height:1.5rem;color:var(--accent)}.nav-lang.svelte-1uha8ag{display:flex;gap:.375rem}.nav-lang.svelte-1uha8ag button:where(.svelte-1uha8ag){padding:.375rem .75rem;border-radius:var(--radius);font-size:.75rem;font-weight:600;color:var(--muted);background:transparent;border:1px solid transparent;transition:all var(--transition)}.nav-lang.svelte-1uha8ag button:where(.svelte-1uha8ag):hover{color:var(--text);background:var(--border)}.nav-lang.svelte-1uha8ag button.active:where(.svelte-1uha8ag){color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.update-banner.svelte-1uha8ag{display:flex;align-items:center;justify-content:center;gap:1rem;padding:.75rem 1rem;background:color-mix(in srgb,var(--accent2) 15%,transparent);border-bottom:1px solid var(--border);color:var(--text);font-size:.875rem;animation:svelte-1uha8ag-slideDown .3s ease}.btn-refresh.svelte-1uha8ag{padding:.375rem 1rem;background:var(--accent2);color:#fff;border-radius:var(--radius);font-weight:600;font-size:.75rem;transition:background var(--transition)}.btn-refresh.svelte-1uha8ag:hover{background:var(--accent2-hover)}.main.svelte-1uha8ag{flex:1}.section.svelte-1uha8ag{padding:clamp(3rem,6vw,5rem) 0}.section-header.svelte-1uha8ag{text-align:center;max-width:700px;margin:0 auto 2rem}.section-header.svelte-1uha8ag h1:where(.svelte-1uha8ag){font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800;line-height:1.2;margin:0 0 .75rem;color:var(--text);animation:svelte-1uha8ag-fadeUp .6s ease both}.section-header.svelte-1uha8ag h2:where(.svelte-1uha8ag){font-size:clamp(1.5rem,3vw,2rem);font-weight:700;line-height:1.3;margin:0 0 .5rem;color:var(--text)}.section-subtitle.svelte-1uha8ag{color:var(--muted);font-size:1.125rem;margin:0;animation:svelte-1uha8ag-fadeUp .6s ease .1s both;opacity:1}.toolbar.svelte-1uha8ag{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin-bottom:1rem}.search-wrapper.svelte-1uha8ag{flex:1;min-width:200px;position:relative}.search-icon.svelte-1uha8ag{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);width:1.125rem;height:1.125rem;color:var(--muted);pointer-events:none}.search-input.svelte-1uha8ag{width:100%;padding:.625rem .75rem .625rem 2.5rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);transition:border-color var(--transition),box-shadow var(--transition)}.search-input.svelte-1uha8ag:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.search-input.svelte-1uha8ag::placeholder{color:var(--muted)}.filter-chips.svelte-1uha8ag{display:flex;flex-wrap:wrap;gap:.5rem}.filter-chip.svelte-1uha8ag{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border-radius:9999px;font-size:.8125rem;font-weight:500;color:var(--text);background:var(--surface);border:1px solid var(--border);transition:all var(--transition)}.filter-chip.svelte-1uha8ag:hover{border-color:var(--accent);color:var(--accent)}.filter-chip.active.svelte-1uha8ag{background:var(--accent);color:#fff;border-color:var(--accent)}.filter-chip.active.svelte-1uha8ag .chip-count:where(.svelte-1uha8ag){background:#fff3;color:#fff}.filter-chip--primary.active.svelte-1uha8ag{background:var(--accent2);border-color:var(--accent2)}.chip-count.svelte-1uha8ag{font-size:.75rem;padding:.125rem .5rem;border-radius:9999px;background:var(--border);color:var(--muted)}.offline-bar.svelte-1uha8ag{margin-bottom:.75rem}.btn-save-offline.svelte-1uha8ag{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;border-radius:var(--radius);font-weight:600;font-size:.875rem;background:var(--accent);color:#fff;border:none;transition:background var(--transition),transform var(--transition),box-shadow var(--transition)}.btn-save-offline.svelte-1uha8ag:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px);box-shadow:var(--shadow)}.btn-save-offline.svelte-1uha8ag:active:not(:disabled){transform:translateY(0)}.btn-save-offline.svelte-1uha8ag:disabled{background:var(--success);cursor:default}.btn-save-offline.svelte-1uha8ag:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 40%,transparent)}.btn-save-offline.svelte-1uha8ag svg:where(.svelte-1uha8ag){width:1.125rem;height:1.125rem}.results-count.svelte-1uha8ag{font-size:.875rem;color:var(--muted);margin:0 0 1rem}.table-wrapper.svelte-1uha8ag{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.cereal-table.svelte-1uha8ag{width:100%;font-size:.875rem}.cereal-table.svelte-1uha8ag thead:where(.svelte-1uha8ag) th:where(.svelte-1uha8ag){position:sticky;top:0;z-index:10}.cereal-table.svelte-1uha8ag tbody:where(.svelte-1uha8ag) tr:where(.svelte-1uha8ag){border-bottom:1px solid var(--border);transition:background var(--transition);animation:svelte-1uha8ag-fadeUp .4s ease both}.cereal-table.svelte-1uha8ag tbody:where(.svelte-1uha8ag) tr:where(.svelte-1uha8ag):last-child{border-bottom:none}.cereal-table.svelte-1uha8ag tbody:where(.svelte-1uha8ag) tr:where(.svelte-1uha8ag):hover{background:color-mix(in srgb,var(--accent) 3%,transparent)}.cereal-table.svelte-1uha8ag tbody:where(.svelte-1uha8ag) tr.expanded:where(.svelte-1uha8ag){background:color-mix(in srgb,var(--accent) 5%,transparent)}.cereal-table.svelte-1uha8ag td:where(.svelte-1uha8ag){vertical-align:middle}.col-brand.svelte-1uha8ag{font-weight:600;color:var(--text);white-space:nowrap}.col-name.svelte-1uha8ag{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-width:180px}.cereal-name.svelte-1uha8ag{font-weight:500}.expand-icon.svelte-1uha8ag{width:1rem;height:1rem;color:var(--muted);transition:transform var(--transition);flex-shrink:0}.expand-icon.open.svelte-1uha8ag{transform:rotate(180deg)}.dye-cell.svelte-1uha8ag{display:flex;align-items:center;justify-content:center;min-width:72px}.dye-indicator.svelte-1uha8ag{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border-radius:50%;font-size:.75rem;font-weight:600}.dye-free.svelte-1uha8ag .dye-indicator:where(.svelte-1uha8ag){background:color-mix(in srgb,var(--success) 15%,transparent);color:var(--success)}.dye-contains.svelte-1uha8ag .dye-indicator:where(.svelte-1uha8ag){background:color-mix(in srgb,var(--error) 15%,transparent);color:var(--error)}.dye-unverified.svelte-1uha8ag .dye-indicator:where(.svelte-1uha8ag){background:var(--border);color:var(--muted);font-size:.6875rem}.col-verified.svelte-1uha8ag{font-family:var(--font-mono);font-size:.8125rem;color:var(--muted);white-space:nowrap}.expanded-row.svelte-1uha8ag{animation:svelte-1uha8ag-slideDown .25s ease}.expanded-content.svelte-1uha8ag{padding:1rem 1.5rem;background:var(--bg);border-top:1px solid var(--border)}.expanded-content.svelte-1uha8ag h4:where(.svelte-1uha8ag){margin:0 0 .5rem;font-size:.875rem;font-weight:600;color:var(--text)}.ingredients.svelte-1uha8ag{margin:0 0 .75rem;font-size:.8125rem;line-height:1.7;color:var(--text)}.source-info.svelte-1uha8ag{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--muted);margin-bottom:.75rem}.source-info.svelte-1uha8ag strong:where(.svelte-1uha8ag){color:var(--text)}.divider.svelte-1uha8ag{color:var(--border)}.btn-collapse.svelte-1uha8ag{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:var(--radius);font-size:.8125rem;font-weight:500;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);transition:background var(--transition),color var(--transition)}.btn-collapse.svelte-1uha8ag:hover{background:color-mix(in srgb,var(--accent) 20%,transparent)}.empty-state.svelte-1uha8ag{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:var(--muted);gap:1rem}.empty-state.svelte-1uha8ag svg:where(.svelte-1uha8ag){width:3rem;height:3rem;opacity:1.5}.ad-slot.svelte-1uha8ag{display:block;width:100%;min-height:90px;background:transparent;margin:2.5rem auto;max-width:970px;padding:0 1rem}.features-grid.svelte-1uha8ag{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:3rem}.feature-card.svelte-1uha8ag{padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:transform var(--transition),box-shadow var(--transition);animation:svelte-1uha8ag-fadeUp .6s ease both}.feature-card.svelte-1uha8ag:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.feature-icon.svelte-1uha8ag{display:inline-flex;width:2.5rem;height:2.5rem;align-items:center;justify-content:center;border-radius:var(--radius);background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);margin-bottom:1rem}.feature-card.svelte-1uha8ag h3:where(.svelte-1uha8ag){margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:var(--text)}.feature-card.svelte-1uha8ag p:where(.svelte-1uha8ag){margin:0;color:var(--muted);font-size:.9375rem;line-height:1.6}.update-log.svelte-1uha8ag{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem}.update-log.svelte-1uha8ag h3:where(.svelte-1uha8ag){margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--text)}.update-list.svelte-1uha8ag{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.update-list.svelte-1uha8ag li:where(.svelte-1uha8ag){display:flex;gap:1rem;padding:.5rem 0;border-bottom:1px solid var(--border);font-size:.875rem;line-height:1.5}.update-list.svelte-1uha8ag li:where(.svelte-1uha8ag):last-child{border-bottom:none}.update-list.svelte-1uha8ag time:where(.svelte-1uha8ag){flex-shrink:0;font-family:var(--font-mono);font-size:.8125rem;color:var(--muted);min-width:80px}.steps-list.svelte-1uha8ag{list-style:none;padding:0;display:flex;flex-direction:column;gap:1.5rem;max-width:800px;margin:0 auto}.step.svelte-1uha8ag{display:flex;gap:1rem;padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);animation:svelte-1uha8ag-fadeUp .6s ease both}.step-number.svelte-1uha8ag{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--accent);color:#fff;font-weight:700;font-size:1.125rem}.step-content.svelte-1uha8ag h3:where(.svelte-1uha8ag){margin:0 0 .375rem;font-size:1.125rem;font-weight:600;color:var(--text)}.step-content.svelte-1uha8ag p:where(.svelte-1uha8ag){margin:0;color:var(--muted);font-size:.9375rem;line-height:1.6}.stats-grid.svelte-1uha8ag{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}.stat-card.svelte-1uha8ag{padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-align:center;animation:svelte-1uha8ag-fadeUp .6s ease both}.stat-value.svelte-1uha8ag{font-size:clamp(2.5rem,5vw,3.5rem);font-weight:800;line-height:1;color:var(--accent);font-family:var(--font-mono);margin-bottom:.5rem}.stat-label.svelte-1uha8ag{font-size:1rem;font-weight:500;color:var(--text);margin-bottom:.25rem}.stat-source.svelte-1uha8ag{font-size:.75rem;color:var(--muted);font-family:var(--font-mono)}.footer.svelte-1uha8ag{padding:2rem 1rem;border-top:1px solid var(--border);background:var(--surface);margin-top:auto}.footer.svelte-1uha8ag p:where(.svelte-1uha8ag){margin:0 0 .5rem;text-align:center;color:var(--muted);font-size:.875rem}.footer-version.svelte-1uha8ag{text-align:center;font-size:.75rem;color:var(--muted);font-family:var(--font-mono)}.scroll-top.svelte-1uha8ag{position:fixed;bottom:1.5rem;right:1.5rem;z-index:50;display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:50%;background:var(--accent);color:#fff;box-shadow:var(--shadow-lg);opacity:1;visibility:visible;transform:translateY(10px);transition:all var(--transition)}.scroll-top.svelte-1uha8ag:hover{background:var(--accent-hover);transform:translateY(-2px)}.scroll-top.svelte-1uha8ag:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 40%,transparent),var(--shadow-lg)}.scroll-top.visible.svelte-1uha8ag{opacity:1;visibility:visible;transform:translateY(0)}.scroll-top.svelte-1uha8ag svg:where(.svelte-1uha8ag){width:1.25rem;height:1.25rem}.toast.svelte-1uha8ag{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);z-index:1000;padding:.875rem 1.5rem;border-radius:var(--radius);background:var(--text);color:var(--bg);font-weight:500;font-size:.875rem;box-shadow:var(--shadow-lg);animation:svelte-1uha8ag-toastIn .3s ease}@media(max-width:640px){.nav-brand.svelte-1uha8ag span:where(.svelte-1uha8ag){display:none}.nav-brand.svelte-1uha8ag .logo:where(.svelte-1uha8ag){width:1.75rem;height:1.75rem}.filter-chips.svelte-1uha8ag{justify-content:flex-start}.filter-chip.svelte-1uha8ag{padding:.5rem .75rem;font-size:.75rem}.chip-count.svelte-1uha8ag{display:none}.cereal-table.svelte-1uha8ag{font-size:.8125rem}.cereal-table.svelte-1uha8ag th:where(.svelte-1uha8ag),.cereal-table.svelte-1uha8ag td:where(.svelte-1uha8ag){padding:.625rem .5rem}.dye-indicator.svelte-1uha8ag{width:1.5rem;height:1.5rem;font-size:.6875rem}.expanded-content.svelte-1uha8ag{padding:.75rem 1rem}.step.svelte-1uha8ag{flex-direction:column;text-align:center}.step-number.svelte-1uha8ag{margin:0 auto .75rem}}@media(min-width:768px){.nav-brand.svelte-1uha8ag span:where(.svelte-1uha8ag){display:inline}.filter-chip.svelte-1uha8ag .chip-count:where(.svelte-1uha8ag){display:inline-flex}}@media(prefers-reduced-motion:reduce){.svelte-1uha8ag,.svelte-1uha8ag:before,.svelte-1uha8ag:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
