*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#ffffff;--fg:#1a1a2e;--muted:#6b7280;
  --card:#ffffff;--card-border:#e5e7eb;
  --green:#16a34a;--green-bg:#dcfce7;--green-border:#bbf7d0;
  --yellow:#ca8a04;--yellow-bg:#fef9c3;--yellow-border:#fef08a;
  --red:#dc2626;--red-bg:#fee2e2;--red-border:#fecaca;
  --primary:#6d28d9;--primary-fg:#ffffff;
  --link:#4f46e5;
  --radius:0.5rem;
}
@media(prefers-color-scheme:dark){
  :root{
    --bg:#0f0f23;--fg:#e2e8f0;--muted:#94a3b8;
    --card:#1e1e3f;--card-border:#334155;
    --green-bg:#052e16;--green-border:#166534;
    --yellow-bg:#422006;--yellow-border:#854d0e;
    --red-bg:#450a0a;--red-border:#991b1b;
    --primary:#a78bfa;--primary-fg:#1e1e3f;
    --link:#818cf8;
  }
}
body{font-family:Inter,system-ui,sans-serif;background:var(--bg);color:var(--fg);line-height:1.6;padding:1rem;max-width:48rem;margin:0 auto}
h1{font-family:Literata,Georgia,serif;font-size:1.75rem;font-weight:700;margin-bottom:0.5rem}
h2{font-family:Literata,Georgia,serif;font-size:1.25rem;font-weight:600;margin:1.5rem 0 0.75rem}
a{color:var(--link);text-decoration:underline}
a:hover{opacity:0.8}

.header{display:flex;align-items:center;gap:0.75rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--card-border)}
.header img{width:40px;height:40px;border-radius:var(--radius)}
.header span{font-family:Literata,Georgia,serif;font-weight:700;font-size:1.1rem}

.status-badge{display:inline-flex;align-items:center;gap:0.5rem;padding:0.75rem 1.25rem;border-radius:var(--radius);font-weight:600;font-size:1.1rem;margin:1rem 0}
.status-red{background:var(--red-bg);border:2px solid var(--red-border);color:var(--red)}
.status-yellow{background:var(--yellow-bg);border:2px solid var(--yellow-border);color:var(--yellow)}
.status-green{background:var(--green-bg);border:2px solid var(--green-border);color:var(--green)}

.dot{width:14px;height:14px;border-radius:50%;display:inline-block}
.dot-red{background:var(--red)}.dot-yellow{background:var(--yellow)}.dot-green{background:var(--green)}

.info-grid{display:grid;gap:1rem;margin:1.5rem 0}
.info-item{padding:1rem;background:var(--card);border:1px solid var(--card-border);border-radius:var(--radius)}
.info-item dt{font-size:0.8rem;text-transform:uppercase;letter-spacing:0.05em;color:var(--muted);margin-bottom:0.25rem}
.info-item dd{font-weight:500}

.description{margin:1.5rem 0;line-height:1.7}
.alternatives{margin:1rem 0}
.alternatives ul{list-style:none;display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:0.5rem}
.alternatives li{background:var(--card);border:1px solid var(--card-border);border-radius:var(--radius);padding:0.35rem 0.75rem;font-size:0.875rem}

.category-links{margin:1.5rem 0}
.category-links ul{list-style:none;display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:0.5rem}
.category-links li a{display:inline-flex;align-items:center;gap:0.35rem;background:var(--card);border:1px solid var(--card-border);border-radius:var(--radius);padding:0.35rem 0.75rem;font-size:0.875rem;text-decoration:none;color:var(--fg)}
.category-links li a:hover{border-color:var(--primary)}

.cta{margin:2rem 0;padding:1.5rem;background:var(--card);border:2px solid var(--primary);border-radius:var(--radius);text-align:center}
.cta h2{margin-top:0;color:var(--primary)}
.cta p{color:var(--muted);margin:0.5rem 0 1rem}
.cta a{display:inline-block;background:var(--primary);color:var(--primary-fg);padding:0.75rem 1.5rem;border-radius:var(--radius);text-decoration:none;font-weight:600}
.cta a:hover{opacity:0.9}

.disclaimer{margin:2rem 0;padding:1rem;border:1px solid var(--card-border);border-radius:var(--radius);font-size:0.8rem;color:var(--muted);line-height:1.5}
.sources{font-size:0.8rem;color:var(--muted);margin:1rem 0}
.sources ol{padding-left:1.25rem}
.sources li{margin-bottom:0.25rem}

.search-input{width:100%;padding:0.75rem 1rem;border:2px solid var(--card-border);border-radius:var(--radius);font-size:1rem;background:var(--card);color:var(--fg);margin-bottom:1.5rem}
.search-input:focus{outline:none;border-color:var(--primary)}

.food-list{list-style:none}
.food-list li{margin-bottom:0.5rem}
.food-list li a{display:flex;align-items:center;gap:0.75rem;padding:0.6rem 0.75rem;border-radius:var(--radius);text-decoration:none;color:var(--fg);border:1px solid var(--card-border);background:var(--card)}
.food-list li a:hover{border-color:var(--primary)}
.food-list .food-name{flex:1}
.food-list .food-portion{font-size:0.8rem;color:var(--muted);display:none}
@media(min-width:640px){.food-list .food-portion{display:block}}

.footer{margin-top:3rem;padding-top:1rem;border-top:1px solid var(--card-border);text-align:center;font-size:0.8rem;color:var(--muted)}
