:root{--bg:#fbfbfa;--surface:#fff;--border:#e3e2df;--text:#1c1c1a;--text-dim:#6b6a65;--accent:#2f6f4e;--accent-soft:#e8f2ec;--radius:8px;--font:system-ui, -apple-system, "Hiragino Sans", "Noto Sans JP", sans-serif;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#17181a;--surface:#1f2023;--border:#34363a;--text:#e8e8e6;--text-dim:#9b9b96;--accent:#7dc6a0;--accent-soft:#223029;color-scheme:dark}}.f-powder{--form-color:#4a63b8}.f-bar{--form-color:#a8563c}.f-drink{--form-color:#2b7f92}.f-jelly{--form-color:#9a7317}.f-yogurt{--form-color:#7a56a6}.f-deli{--form-color:#ab4257}.f-frozen{--form-color:#3f7aa6}.f-snack{--form-color:#a34e7c}.f-other{--form-color:#6b6a65}@media (prefers-color-scheme:dark){.f-powder{--form-color:#93a6ee}.f-bar{--form-color:#e0977a}.f-drink{--form-color:#6cc0d2}.f-jelly{--form-color:#d7b155}.f-yogurt{--form-color:#b697e0}.f-deli{--form-color:#e88397}.f-frozen{--form-color:#86b8e0}.f-snack{--form-color:#e08fb8}.f-other{--form-color:#9b9b96}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-text-size-adjust:100%;margin:0;line-height:1.7}a{color:var(--accent)}.wrap{max-width:68rem;margin:0 auto;padding-inline:1rem}.site-header{border-bottom:1px solid var(--border);background:var(--surface)}.site-header .wrap{flex-wrap:wrap;align-items:baseline;gap:1.5rem;padding-block:.9rem;display:flex}.site-title{color:var(--text);font-size:1.05rem;font-weight:700;text-decoration:none}.site-nav{gap:1.1rem;font-size:.9rem;display:flex}.site-nav a{text-decoration:none}.site-nav a:hover{text-decoration:underline}.site-footer{border-top:1px solid var(--border);color:var(--text-dim);margin-top:1.5rem;padding-block:2rem;font-size:.85rem}main{padding-block:2.5rem}h1{letter-spacing:-.01em;margin:0 0 .6rem;font-size:1.9rem;line-height:1.35}@media (width<=30rem){h1{font-size:1.5rem}}h2{margin:2.5rem 0 .75rem;font-size:1.2rem}.lede{color:var(--text-dim);margin-top:0}.metric{background:var(--accent-soft);color:var(--accent);border-radius:var(--radius);font-variant-numeric:tabular-nums;align-items:baseline;gap:.3rem;padding:.15rem .5rem;font-weight:700;display:inline-flex}.metric small{font-size:.75em;font-weight:400}.table-scroll{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:.6rem .75rem}th{color:var(--text-dim);font-size:.8rem;font-weight:600}tbody tr:last-child td{border-bottom:none}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}td .name-cell{white-space:normal;min-width:14rem;text-decoration:none;display:block}a.name-cell:hover{text-decoration:underline}.brand{color:var(--text-dim);font-size:.8rem}.name-cell .brand{line-height:1.4;display:block}.filters{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:1rem;margin-bottom:1rem;padding:1rem;display:grid}.field label{color:var(--text-dim);margin-bottom:.3rem;font-size:.8rem;display:block}.field input[type=range]{width:100%}.field select,.field input[type=number]{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);font:inherit;border-radius:6px;padding:.4rem;font-size:.9rem}.field .value{font-variant-numeric:tabular-nums;font-weight:600}.filter-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.count{font-variant-numeric:tabular-nums}button.reset{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;border-radius:6px;padding:.35rem .8rem;font-size:.85rem}button.reset:hover{border-color:var(--accent);color:var(--accent)}.empty{text-align:center;color:var(--text-dim);padding:2rem 1rem}.more-row{text-align:center;margin-top:1rem}#results tr.beyond-initial{display:none}.product-image{background:var(--bg);object-fit:contain;border-radius:6px;flex-shrink:0;display:block}.product-image.thumb{width:40px;height:40px}.product-image.hero{border-radius:var(--radius);width:132px;height:132px}.product-image.placeholder{border:1px solid color-mix(in srgb, var(--form-color) 30%, var(--border));background:color-mix(in srgb, var(--form-color) 7%, var(--surface));place-items:center;display:grid}.product-image.placeholder svg{fill:none;width:78%;height:78%;stroke:var(--form-color,var(--text-dim));stroke-width:2.4px;stroke-linejoin:round;stroke-linecap:round}.product-image.hero.placeholder svg{stroke-width:2px}.name-with-image{align-items:center;gap:.7rem;display:flex}.product-head{border-bottom:1px solid var(--border);align-items:center;gap:1.25rem;margin-bottom:1.5rem;padding-bottom:1.25rem;display:flex}.product-head .brand{margin-top:0}@media (width<=30rem){.product-head{flex-direction:column;align-items:flex-start;gap:.9rem}.product-image.hero{width:96px;height:96px}}.metrics-row{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.75rem;margin:1.25rem 0;display:grid}.stat{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:.75rem .9rem}.stat .k{color:var(--text-dim);font-size:.78rem;display:block}.stat .v{font-variant-numeric:tabular-nums;font-size:1.35rem;font-weight:700}.stat.primary{border-color:var(--accent);background:var(--accent-soft)}.stat.primary .v{color:var(--accent)}.dist{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin:1.25rem 0;padding:.9rem 1rem .7rem}.dist figcaption{color:var(--text-dim);margin-bottom:.5rem;font-size:.78rem}.dist-callout{height:1.3rem;margin-inline:6px;position:relative}.dist-callout-label{white-space:nowrap;color:var(--form-color,var(--accent));font-size:.78rem;position:absolute;bottom:0}.dist-callout-label strong{font-variant-numeric:tabular-nums;font-size:.95rem}.dist-callout-label.is-center{transform:translate(-50%)}.dist-callout-label.is-end{transform:translate(-100%)}.hero-stats{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.75rem;margin:1.5rem 0 1.25rem;display:grid}.hero-stats .v{font-size:1.5rem}.cta-row{margin:0 0 .5rem}.product-taxonomy{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.product-taxonomy>*+:before{content:"/";color:var(--border);margin-right:.55rem}.form-chip{white-space:nowrap;color:var(--text);align-items:center;gap:.4rem;font-size:.82rem;text-decoration:none;display:inline-flex}a.form-chip:hover{color:var(--form-color)}.form-chip-dot{background:var(--form-color);border-radius:2px;flex-shrink:0;width:9px;height:9px}.formdist{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin:1.25rem 0;padding:1rem}.formdist figcaption{color:var(--text-dim);margin-bottom:1rem;font-size:.8rem;line-height:1.6}.formdist-row{color:inherit;border-radius:6px;grid-template-columns:13.5rem 1fr 5rem;align-items:center;gap:.75rem;padding:.35rem .4rem;text-decoration:none;display:grid}.formdist-row:hover{background:var(--accent-soft)}.formdist-name{white-space:nowrap;align-items:center;gap:.45rem;font-size:.88rem;font-weight:600;display:flex}.formdist-count{color:var(--text-dim);margin-left:.4rem;font-size:.78rem;font-weight:400}.formdist-track{background:linear-gradient(to bottom, transparent calc(50% - 1px), var(--border) calc(50% - 1px), var(--border) calc(50% + 1px), transparent calc(50% + 1px));height:20px;margin-inline:4px;display:block;position:relative}.formdist-top{color:var(--text-dim);text-align:right;font-variant-numeric:tabular-nums;font-size:.78rem}.formdist-axis{color:var(--text-dim);font-variant-numeric:tabular-nums;justify-content:space-between;margin:.2rem 5.75rem 0 14.65rem;font-size:.75rem;display:flex}@media (width<=34rem){.formdist-row{grid-template-columns:1fr auto;gap:.2rem .75rem;padding-block:.5rem}.formdist-track{grid-column:1/-1}.formdist-axis{margin-inline:4px}}.dist-legend{color:var(--text-dim);margin:.7rem 0 0;font-size:.75rem;line-height:1.5}.dist-track{background:linear-gradient(to bottom, transparent calc(50% - 2px), var(--border) calc(50% - 2px), var(--border) calc(50% + 2px), transparent calc(50% + 2px));border-radius:3px;height:26px;margin-inline:6px;position:relative}.dist-tick{background:var(--form-color,var(--text-dim));opacity:.45;border-radius:1px;width:2px;height:12px;margin-left:-1px;position:absolute;top:7px}.dist-median{background:var(--text-dim);opacity:.5;width:1px;height:22px;margin-left:-.5px;position:absolute;top:2px}.dist-here{background:var(--form-color,var(--accent));width:12px;height:20px;box-shadow:0 0 0 3px var(--surface);border-radius:3px;margin-left:-6px;position:absolute;top:3px}.dist-scale{color:var(--text-dim);font-variant-numeric:tabular-nums;justify-content:space-between;margin-top:.4rem;font-size:.75rem;display:flex;position:relative}.dist-mid{white-space:nowrap;position:absolute;transform:translate(-50%)}@media (width<=26rem){.dist-mid{display:none}}.source{color:var(--text-dim);font-size:.85rem}.source-hint{margin-top:.15rem;display:block}.source-hint:before{content:"↳ ";opacity:.6}.note{border-left:3px solid var(--border);color:var(--text-dim);margin:1.25rem 0;padding:.5rem 0 .5rem .9rem;font-size:.88rem}.buy{background:var(--accent);color:var(--bg);border-radius:var(--radius);margin:.5rem 0;padding:.6rem 1.2rem;font-weight:600;text-decoration:none;display:inline-block}.buy:hover{filter:brightness(1.08)}.buy-row{flex-wrap:wrap;gap:.6rem;display:flex}.buy.secondary{color:var(--accent);border:1px solid var(--accent);background:0 0}.prose{max-width:42rem}.prose h2{border-bottom:1px solid var(--border);padding-bottom:.3rem}.prose table{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);max-width:100%;margin:1.25rem 0;display:block;overflow-x:auto}.prose th,.prose td{white-space:normal}.prose td:not(:first-child),.prose th:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}.prose pre{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.9rem 1rem;font-size:.85rem;line-height:1.6;overflow-x:auto}.card-list{gap:.75rem;padding:0;list-style:none;display:grid}.card-list a{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);padding:.9rem 1rem;text-decoration:none;display:block}.card-list a:hover{border-color:var(--accent)}.card-list .desc{color:var(--text-dim);margin-top:.3rem;font-size:.88rem;line-height:1.6;display:block}.article-data{border-top:1px solid var(--border);margin-top:3rem;padding-top:2rem}.article-data h2{margin-top:0}.article-cta{margin-top:1.5rem}
