*{box-sizing:border-box}body{margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:#1d2321;background:#f7f8f5}
.top{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;padding:12px 20px;background:#fff;border-bottom:1px solid #e3e6df}
.logo{font-size:20px;color:#1d2321;text-decoration:none}.logo b{color:#2e7d4f}nav a{margin-left:14px;color:#2e7d4f;text-decoration:none}
main{max-width:1100px;margin:0 auto;padding:20px}h1{font-size:28px;margin:.3em 0}.lead{font-size:18px;color:#444}
.tool{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;margin:20px 0}@media(max-width:800px){.tool{grid-template-columns:1fr}nav a{margin:0 10px 0 0}}
.form label{display:block;margin:10px 0;font-weight:600}input,select,textarea{display:block;width:100%;padding:10px;margin-top:4px;font:inherit;border:1px solid #c9cec4;border-radius:8px;background:#fff}
fieldset{border:1px solid #e3e6df;border-radius:10px;margin:14px 0;padding:12px;background:#fff}legend{font-weight:700;padding:0 6px}
.ing{display:grid;grid-template-columns:1fr 90px;gap:6px;padding:8px 0;border-bottom:1px dashed #e3e6df}.ing .sub,.ing .ctl{grid-column:1/3}.ing .ctl{justify-content:flex-end}.ing input{margin:0}
.ctl{display:flex;gap:4px}.ctl button{padding:6px 10px}.sortm label{font-weight:400;display:inline-flex;gap:6px;margin-right:12px}.sortm input,.agree input{width:auto;display:inline}
button,.btn{display:inline-block;padding:12px 16px;margin:6px 6px 6px 0;border:0;border-radius:8px;background:#2e7d4f;color:#fff;font:inherit;font-weight:600;cursor:pointer;text-decoration:none}
.sec{background:#e8efe9;color:#1d4f33}.dis{background:#ddd;color:#666;cursor:default}
.out{position:sticky;top:10px;align-self:start}.label{background:#fff;border:2px solid #000;padding:16px;font-family:Arial,sans-serif;font-size:14px}
.label p{margin:6px 0}.pname{font-size:20px;font-weight:700}.contains,.stmt{font-weight:700}.big{font-size:16px}.small{font-size:12px}
.agree{display:block;font-size:14px;margin:12px 0}.hint{color:#666;font-size:14px}.warn{color:#a33;font-weight:600}
.t{border-collapse:collapse;width:100%;background:#fff}.t td,.t th{border:1px solid #ddd;padding:8px;text-align:left;vertical-align:top;font-size:14px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.card{background:#fff;border:1px solid #e3e6df;border-radius:12px;padding:16px}.best{border:2px solid #2e7d4f}.price{font-size:30px;font-weight:700}
.prose{max-width:760px}footer{max-width:1100px;margin:30px auto;padding:20px;color:#666;font-size:13px;border-top:1px solid #e3e6df}
.ing.nf{grid-template-columns:1fr 90px}.ing.nf .srch{grid-column:1/3;position:relative}.match{font-size:13px;color:#2e7d4f;margin-top:2px}
.results{position:absolute;z-index:5;left:0;right:0;background:#fff;border:1px solid #c9cec4;border-radius:8px;max-height:300px;overflow:auto;box-shadow:0 6px 18px rgba(0,0,0,.12)}
.res{display:block;width:100%;text-align:left;background:#fff;color:#1d2321;margin:0;border-radius:0;border-bottom:1px solid #eee;font-weight:400;padding:10px}.res small{color:#666}
.chk{display:inline-flex!important;gap:4px;align-items:center;font-weight:400!important;margin:0 auto 0 0!important;font-size:14px}.chk input{width:auto;margin:0}
.ovr{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:4px 10px}.ovr label{font-weight:400;font-size:13px;margin:4px 0}
.prev{background:#fff;border:1px solid #e3e6df;padding:8px;overflow:auto}.panelcv{max-width:100%;height:auto;display:block;margin:0 auto}
.tw{overflow-x:auto}.locked{opacity:.75}.locked::after{content:" 🔒"}.lib{list-style:none;padding:0}.lib li{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid #eee}.lib button{padding:6px 10px}.imp{cursor:pointer}
.gapwarn{background:#fff6e5;border:1px solid #e0b252;color:#7a4b00;font-size:13px;padding:6px 8px;border-radius:6px;margin-top:4px}
.cwarn{background:#fff1e0;border:2px solid #d9822b;color:#5c3200;border-radius:8px;padding:10px 12px;margin:10px 0;font-size:14px}.cwarn ul{margin:6px 0;padding-left:20px}
.trust{list-style:none;padding:0;margin:8px 0;font-size:13px;color:#1d4f33}.trust li{margin:2px 0}
.samples{margin:28px 0}.sgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;align-items:start}figure{margin:0;background:#fff;border:1px solid #e3e6df;border-radius:10px;padding:10px}figure.one{max-width:420px;margin:16px 0}
.sample{width:100%;height:auto;display:block}figcaption{font-size:13px;color:#555;margin-top:6px}
.howto h3{margin-bottom:.2em}.faq details{background:#fff;border:1px solid #e3e6df;border-radius:8px;margin:8px 0;padding:10px 12px}.faq summary{font-weight:600;cursor:pointer}
