:root{--ink:#263a34;--muted:#6d786f;--forest:#244d42;--deep:#193b31;--line:#e3e5dc;--paper:#f7f7f2;--white:#fff;--lime:#e8efcd;--gold:#9c6c2e;--font:-apple-system,BlinkMacSystemFont,"PingFang TC","Noto Sans TC","Microsoft JhengHei",sans-serif;--shadow:0 16px 50px #18352b12}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:14px;line-height:1.65;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:var(--forest);text-decoration:none}a:hover{text-decoration:underline}button:disabled{cursor:default;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #769d78;outline-offset:3px}svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;vertical-align:middle}[data-icon]{display:inline-flex;align-items:center;justify-content:center}.skip-link{position:fixed;top:-100px;left:20px;z-index:30;padding:10px 20px;background:var(--forest);color:white}.skip-link:focus{top:12px}
.sidebar{width:224px;position:fixed;inset:0 auto 0 0;background:#eeefe6;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:32px 18px 20px;z-index:5}.brand{display:flex;align-items:center;gap:12px;margin:0 9px 46px;font-size:19px;font-weight:650;letter-spacing:.08em}.brand:hover{text-decoration:none}.brand small{display:block;font-size:11px;color:var(--muted);letter-spacing:.13em;font-weight:400;margin-top:1px}.brand-icon{display:grid;place-items:center;width:43px;height:48px;background:var(--forest);color:var(--lime);font-weight:400;border-radius:12px;font-size:28px;line-height:1;letter-spacing:0}.sidebar-label{font-size:10px;letter-spacing:.14em;color:#8b9489;padding:0 14px;margin-bottom:12px}.space-top{margin-top:28px}.nav-item{border:0;color:#667469;background:transparent;width:100%;border-radius:8px;display:flex;gap:11px;align-items:center;padding:12px 14px;text-align:left;font-size:13px;margin-bottom:4px;transition:background .15s}.nav-item:hover{background:#e4e8da}.nav-item.active{background:var(--forest);color:white}.nav-item svg{width:17px;height:17px}.nav-count{margin-left:auto;font-size:11px;min-width:20px;text-align:center;opacity:.8}.nav-item.active .nav-count{background:#ffffff20;border-radius:4px}.draft-dot{width:6px;height:6px;border-radius:50%;background:#bba272;margin-left:auto}.sidebar-note{margin-top:auto;border-top:1px solid #dadfce;padding:24px 12px 13px}.sidebar-note>span{color:#82966c;margin-bottom:12px;display:block}.sidebar-note strong{font-size:12px;display:block;font-weight:500}.sidebar-note p{font-size:11px;color:#8a9486;margin:7px 0;line-height:1.9}.sidebar-foot{font-size:10px;color:#85907f;display:flex;align-items:center;gap:6px;padding:14px 12px 0}.status-dot{width:5px;height:5px;background:#72916e;border-radius:50%}
.workspace{margin-left:224px}.topbar{height:70px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 42px;background:#f7f7f2e8}.breadcrumb{font-size:11px;color:#7d877a}.breadcrumb>span{margin:0 12px;color:#b4bcad}.top-actions{display:flex;align-items:center;gap:20px}.update-date{font-size:10px;color:#8d9788}.icon-button{width:32px;height:32px;border-radius:7px;border:1px solid var(--line);background:transparent;color:var(--muted);display:inline-flex;align-items:center;justify-content:center}.icon-button svg{width:15px;height:15px}.icon-button:hover{background:#e8ecdf;color:var(--forest)}main{max-width:1320px;margin:auto;padding:39px 42px 60px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.eyebrow{font-size:9px;letter-spacing:.2em;color:#7d8f73;margin-bottom:8px}h1{font-size:30px;letter-spacing:.03em;line-height:1.35;font-weight:550;margin:0}.page-description{font-size:12px;color:var(--muted);margin:10px 0 0}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:36px;border-radius:7px;border:1px solid var(--line);padding:8px 14px;background:white;color:var(--ink);font-size:11px;white-space:nowrap}.button svg{width:15px;height:15px}.button:hover{background:#edf1e6}.button.primary{background:var(--forest);border-color:var(--forest);color:white}.button.primary:hover{background:var(--deep)}.button.quiet{background:transparent;color:var(--muted);font-size:11px}.text-button{background:transparent;border:0;font-size:11px;color:var(--forest);padding:5px 0}.text-button:hover{text-decoration:underline}.overview-strip{display:flex;align-items:center;gap:30px;padding:23px 0;margin:20px 0 0;border-bottom:1px solid var(--line)}.overview-strip>div{display:flex;gap:9px;align-items:baseline}.overview-strip>div+div{border-left:1px solid var(--line);padding-left:30px}.overview-number{font-family:Georgia,serif;font-size:30px;font-weight:400;line-height:1}.overview-number.accent{color:#77924d}.overview-strip span:not(.overview-number){font-size:11px;color:var(--muted)}.overview-strip .overview-purpose{align-items:center}.overview-purpose svg{width:17px;height:17px;color:#71866c}.overview-note{margin-left:auto;font-size:10px!important;letter-spacing:.03em}
.rating-intro{display:flex;gap:14px;align-items:center;background:#edf1e2;border:1px solid #dfe6cf;border-radius:9px;padding:17px 19px;margin:26px 0 32px}.rating-intro-icon{background:#dfe7cf;border-radius:8px;width:36px;height:36px;color:#627e49;flex-shrink:0}.rating-intro-icon svg{width:18px;height:18px}.rating-intro strong{font-size:12px;font-weight:550}.rating-intro p{font-size:11px;color:#7d8a70;margin:3px 0 0}.rating-intro .text-button{margin-left:auto;white-space:nowrap}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:10px}h2{font-size:15px;font-weight:550;letter-spacing:.02em;margin:0}.section-heading h2 span{font-family:Georgia,serif;font-size:14px;color:#8b9484;font-weight:400;margin-left:7px}.view-hint{font-size:10px;color:#939b8d;display:flex;gap:6px;align-items:center}.view-hint svg{width:13px;height:13px}.toolbar{display:flex;align-items:center;gap:15px}.search-box{display:flex;align-items:center;gap:10px;max-width:460px;flex:1;height:42px;background:white;border:1px solid var(--line);border-radius:7px;padding:0 12px;color:#9ca593}.search-box:focus-within{border-color:#839b6f}.search-box svg{width:16px;height:16px}.search-box input{outline:none!important;border:0;width:100%;min-width:0;background:transparent;font-size:12px;color:var(--ink)}.search-box input::placeholder{color:#9ca593}.search-box kbd{font-family:inherit;font-size:10px;border:1px solid #e6e9e0;border-radius:3px;padding:0 5px}.sort-control{margin-left:auto;display:flex;gap:9px;align-items:center;font-size:10px;color:#8d9787}.sort-control select{padding:8px 23px 8px 7px;border:0;background:transparent;color:#5f6f5c;font-size:11px;max-width:180px}.filter-row{display:flex;flex-wrap:wrap;gap:7px;margin:17px 0 20px}.filter-chip{background:transparent;border:1px solid var(--line);color:#7c8974;padding:5px 12px;border-radius:20px;font-size:10px;line-height:1.6}.filter-chip:hover{border-color:#a7b29a;color:var(--forest)}.filter-chip.selected{background:#e2e9d5;border-color:#d6dfc6;color:#4a663d}.clear-filters{margin-left:auto}.list-column-head{display:grid;grid-template-columns:minmax(205px,1.1fr) minmax(200px,1.3fr) 124px 44px;gap:20px;padding:0 19px 10px 75px;font-size:9px;color:#98a18e;letter-spacing:.05em}.list-column-head span:last-child{text-align:center}.ingredient-card{display:grid;grid-template-columns:40px minmax(205px,1.1fr) minmax(200px,1.3fr) 124px 44px;gap:16px;align-items:center;background:white;border:1px solid var(--line);border-radius:9px;padding:21px 19px;margin-bottom:10px;transition:border-color .16s,box-shadow .16s;cursor:pointer}.ingredient-card:hover{border-color:#a3b298;box-shadow:0 4px 18px #2e4f3610}.ingredient-card.comparing{border-color:#769261;background:#fdfff8;box-shadow:0 0 0 1px #76926130}.ingredient-icon{width:40px;height:44px;border-radius:10px;background:#edf1e5;color:#6c8258;display:grid;place-items:center}.ingredient-icon svg{width:21px;height:21px}.ingredient-icon.oil{background:#f6efdf;color:#aa8a4b}.ingredient-icon.vitamin{background:#f3eee0;color:#a38a52}.ingredient-icon.protein{background:#e8eeeb;color:#5c8070}.ingredient-name{font-size:13px;font-weight:550;line-height:1.55;margin:0;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.new-badge{font-size:8px;font-weight:500;line-height:1;padding:4px 5px;background:#e8efca;color:#788b42;border-radius:4px;white-space:nowrap}.ingredient-meta{font-size:9px;color:#9aa18f;margin:5px 0 8px;line-height:1.4}.stage-badge{display:inline-block;color:#5b7850;background:#edf2e6;padding:2px 7px;border-radius:4px;font-size:9px}.stage-badge.review{color:#8b7957;background:#f5f0e5}.stage-badge.conditional{color:#8a8270;background:#f1efe9}.finding{margin:0;font-size:11px;line-height:1.85;color:#63705f}.finding small{display:block;font-size:9px;color:#a1a895;margin-top:6px}.quick-ratings{display:flex;gap:7px;align-items:center}.mini-rating{width:58px;text-align:center;border:1px solid #e7eade;border-radius:6px;padding:7px 3px 5px;background:#fbfcf8}.mini-rating strong{display:block;font-size:16px;font-family:Georgia,serif;font-weight:400;color:#4f7050;line-height:1.3}.mini-rating strong small{font-family:var(--font);font-size:8px;color:#a6af9e;margin-left:1px}.mini-rating span{font-size:8px;display:block;color:#8e9984;margin-top:2px}.mini-rating.low strong{color:#9f8b62}.card-actions{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}.compare-check{display:grid;place-items:center;position:relative;width:28px;height:28px;cursor:pointer}.compare-check input{width:16px;height:16px;accent-color:var(--forest);cursor:pointer;margin:0}.save-button{border:0;background:transparent;color:#b3bba8;padding:3px;display:flex}.save-button svg{width:15px;height:15px}.save-button.saved{color:#557345}.save-button.saved svg{fill:#e2eacb}.empty-state,.loading-state{text-align:center;border:1px dashed #d7ddcc;border-radius:10px;padding:60px 20px;color:#8b967f;font-size:12px}.empty-state strong{font-size:15px;color:#657759;display:block;margin-bottom:7px}.page-footer{margin-top:30px;display:flex;justify-content:space-between;gap:20px;align-items:flex-start;color:#9aa38d;font-size:9px}.page-footer p{margin:0;max-width:650px;display:flex;align-items:flex-start;gap:7px}.page-footer svg{width:13px;height:13px;margin-top:2px}.page-footer>span{white-space:nowrap}
.compare-tray{position:fixed;bottom:22px;left:calc(224px + (100vw - 224px)/2);transform:translateX(-50%);z-index:10;display:flex;align-items:center;justify-content:space-between;gap:25px;min-width:540px;background:#fffef9;border:1px solid #d4dec5;border-radius:12px;padding:13px 17px;box-shadow:0 10px 40px #1c3a2922}.compare-tray[hidden]{display:none}.compare-tray>div{display:flex;align-items:center;gap:14px}.compare-tray strong{font-size:11px;white-space:nowrap}.tray-icon{color:#79925e}.compare-tray .button{font-size:11px}#compare-names{display:flex;gap:5px}.tray-name{display:flex;align-items:center;gap:5px;font-size:9px;max-width:110px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:#edf2e4;border-radius:4px;padding:4px 6px;color:#6a7d5c}.tray-name button{border:0;background:transparent;color:#7d8d6c;padding:0;line-height:1.1}.tray-name>span{overflow:hidden;text-overflow:ellipsis}
dialog{border:1px solid #dfe4d6;color:var(--ink);padding:0;background:#f9faf5;border-radius:15px;box-shadow:0 35px 120px #1a302c40;max-height:90vh;width:760px;max-width:calc(100vw - 36px)}dialog::backdrop{background:#18352d65;backdrop-filter:blur(4px)}dialog[open]{animation:dialog-in .16s ease-out}.dialog-top{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:28px 30px 20px}.dialog-eyebrow{font-size:9px;color:#8b987f;letter-spacing:.06em;margin-bottom:7px}.dialog-top h2{font-size:22px;line-height:1.5;font-weight:550;margin:0}.dialog-subtitle{font-size:11px;color:#89957f;margin:7px 0 0}.close-button{display:grid;place-items:center;flex-shrink:0;width:30px;height:30px;border:1px solid var(--line);border-radius:50%;color:#839174;background:transparent}.close-button svg{width:15px;height:15px}.close-button:hover{background:#e6ecdc}.detail-tabs{display:flex;gap:24px;border-bottom:1px solid var(--line);padding:0 30px;overflow-x:auto}.detail-tab{border:0;background:transparent;white-space:nowrap;font-size:11px;color:#8c9782;padding:11px 0 12px;border-bottom:2px solid transparent}.detail-tab.active{border-bottom-color:var(--forest);color:var(--forest)}.dialog-body{padding:26px 30px 30px}.detail-highlight{padding:20px 22px;background:#edf2e3;border-radius:9px;font-size:15px;color:#46613b;line-height:1.9;margin-bottom:23px}.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 24px;margin:20px 0}.detail-field small{display:block;font-size:9px;color:#97a289;margin-bottom:5px}.detail-field p{font-size:12px;line-height:1.9;margin:0;color:#5d7053}.detail-section{margin-top:24px}.detail-section h3{font-size:12px;font-weight:550;margin:0 0 10px}.detail-section p,.detail-section li{font-size:12px;line-height:1.95;color:#77856c}.detail-section ul{padding-left:19px;margin:0}.detail-next{margin-top:24px;border-top:1px solid var(--line);padding-top:18px;font-size:12px;color:#668050}.detail-next strong{display:block;font-size:10px;color:#8b9b7e;margin-bottom:6px}.source-card{padding:17px 0;border-bottom:1px solid var(--line)}.source-card:first-child{padding-top:0}.source-card a{font-size:12px;line-height:1.8;display:inline-block}.source-meta{font-size:10px;color:#8d9884;line-height:1.8;margin-top:6px}.source-status{font-size:10px;color:#7b8d6c;line-height:1.8;margin-top:8px;background:#eff3e7;padding:8px 11px;border-radius:5px}.detail-note{font-size:10px;color:#99a38e;line-height:1.9;margin:16px 0}.data-table{width:100%;border-collapse:collapse;font-size:11px}.data-table th,.data-table td{text-align:left;vertical-align:top;padding:12px 9px;border-bottom:1px solid var(--line);line-height:1.8}.data-table th{font-weight:500;color:#91a080;width:42%}.data-table td{color:#627650}.rating-card{border:1px solid #e0e6d5;border-radius:8px;padding:16px 18px;margin:10px 0;background:#fff}.rating-card-top{display:flex;gap:16px;align-items:center;justify-content:space-between}.rating-card h3{font-size:12px;font-weight:500;margin:0}.rating-number{font-family:Georgia,serif;font-size:22px;color:#597448}.rating-number small{font-size:10px;color:#9ba58f}.rating-number.pending{font-family:var(--font);font-size:12px;color:#a29c88}.rating-meter{display:flex;gap:4px;margin:10px 0}.rating-meter i{width:22px;height:4px;border-radius:2px;background:#e8eddf}.rating-meter i.on{background:#789563}.rating-reason{font-size:11px;color:#89947d;line-height:1.9;margin:6px 0}.rating-edit{display:flex;align-items:center;gap:10px;border-top:1px solid #eff1e8;padding-top:9px;margin-top:10px}.rating-edit label{font-size:9px;color:#8b9980}.rating-edit select{font-size:10px;border:1px solid var(--line);border-radius:4px;background:#fafcf6;color:#6a7f57;padding:4px 8px;min-width:95px}.rating-group-label{font-size:10px;letter-spacing:.08em;color:#849575;margin:20px 0 10px}.rating-state{background:#ecefdc;color:#82914c;font-size:9px;border-radius:4px;padding:3px 6px}.dialog-action-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:20px}.utility-dialog{width:800px}.utility-body{padding:0 30px 28px}.guide-intro{font-size:12px;color:#7d8a70;line-height:2;margin-bottom:24px}.criteria-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.criterion-guide{border:1px solid var(--line);border-radius:8px;padding:18px;background:#fff}.criterion-guide h3{font-size:13px;font-weight:500;margin:0 0 5px}.criterion-guide .criterion-question{font-size:11px;color:#597947;margin:0 0 9px}.criterion-guide p,.criterion-guide li{font-size:10px;line-height:1.9;color:#89967c}.criterion-guide ul{list-style:none;padding:10px 0 0;margin:0;border-top:1px solid #edf0e5}.criteria-foot{font-size:11px;line-height:1.9;padding:16px;background:#edf2e5;border-radius:7px;margin-top:18px;color:#788c65}.change-item{position:relative;margin-left:5px;padding:0 0 25px 23px;border-left:1px solid #d7e0ca}.change-item:before{content:"";position:absolute;left:-4px;top:7px;width:7px;height:7px;background:#7a9863;border-radius:50%}.change-item small{font-size:9px;color:#9ba78f}.change-item h3{font-size:13px;margin:5px 0 7px;font-weight:500}.change-item p{font-size:11px;color:#8b987e;margin:0;line-height:1.9}.compare-dialog{width:1100px}.comparison-scroll{overflow:auto;padding:0 30px 30px}.comparison-table{width:100%;border-collapse:collapse;table-layout:fixed}.comparison-table th,.comparison-table td{padding:16px 14px;vertical-align:top;border-bottom:1px solid var(--line);text-align:left;font-size:11px;color:#738665;line-height:1.9}.comparison-table th:first-child{width:120px;color:#8a987d;font-weight:400}.comparison-table thead th{font-size:14px;color:#355c3e;font-weight:500;background:#f0f4e8}.comparison-table thead th:first-child{background:transparent}.comparison-table .comparison-rating{font-family:Georgia,serif;font-size:19px;color:#66834f}.compare-tag{display:block;font-family:var(--font);font-size:9px;color:#99a58d;margin-top:4px;font-weight:400}.toast{position:fixed;bottom:100px;left:calc(224px + (100vw - 224px)/2);transform:translateX(-50%);background:#244d42;color:#f3f8e9;border-radius:8px;padding:12px 20px;font-size:12px;z-index:50;box-shadow:var(--shadow);max-width:90vw;text-align:center}.toast[hidden]{display:none}.rating-panel-note{font-size:10px;color:#96a18b;line-height:1.8}.unverified-note{background:#f4f0e6;border:1px solid #e9e1cf;color:#958160;border-radius:6px;font-size:10px;line-height:1.9;padding:12px 15px;margin-top:18px}@keyframes dialog-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){main{padding-left:55px;padding-right:55px}}@media(max-width:1190px){.sidebar{width:194px;padding-left:12px;padding-right:12px}.workspace{margin-left:194px}main{padding:30px 27px 50px}.topbar{padding:0 27px}.ingredient-card{grid-template-columns:34px minmax(155px,1fr) minmax(140px,1.1fr) 105px 30px;gap:12px;padding:19px 15px}.ingredient-icon{width:34px;height:39px}.ingredient-name{font-size:12px}.mini-rating{width:49px}.list-column-head{grid-template-columns:minmax(155px,1fr) minmax(140px,1.1fr) 105px 30px;gap:12px;padding-left:61px;padding-right:15px}.overview-note{display:none}.page-footer>span{display:none}.compare-tray,.toast{left:calc(194px + (100vw - 194px)/2)}.compare-tray{min-width:500px}#compare-names{max-width:260px}.tray-name{max-width:85px}}
@media(max-width:950px){.sidebar{width:174px;padding-left:10px;padding-right:10px}.workspace{margin-left:174px}.brand{font-size:16px;margin-bottom:37px;gap:9px}.brand-icon{width:35px;height:41px;font-size:24px}.brand small{font-size:10px}.nav-item{font-size:11px;padding:11px 10px}.sidebar-label{padding-left:10px}.topbar{height:60px}main{padding:28px 22px 55px}.ingredient-card{grid-template-columns:34px minmax(150px,1fr) 110px 30px;gap:12px}.ingredient-card .finding{grid-column:2 / 3;grid-row:2;font-size:11px;margin-top:-4px}.ingredient-card .quick-ratings{grid-column:3;grid-row:1 / 3}.ingredient-card .card-actions{grid-column:4;grid-row:1 / 3}.ingredient-card .ingredient-icon{grid-row:1 / 3;align-self:start}.ingredient-card .ingredient-title{grid-column:2}.list-column-head{display:none}.overview-strip{gap:18px}.overview-strip>div+div{padding-left:18px}.rating-intro{gap:10px;padding:14px}.rating-intro .text-button{font-size:10px}.rating-intro p{font-size:10px}.rating-intro strong{font-size:11px}.overview-strip span:not(.overview-number){font-size:10px}.view-hint{font-size:9px}.compare-tray,.toast{left:calc(174px + (100vw - 174px)/2)}.compare-tray{min-width:450px}.tray-name{max-width:65px}.compare-tray>div{gap:9px}}
@media(max-width:720px){.sidebar{position:static;width:auto;inset:auto;padding:17px 18px 10px;border-right:0;border-bottom:1px solid var(--line);display:block}.brand{margin:0 0 17px;font-size:17px;gap:10px}.brand-icon{width:32px;height:36px;font-size:22px}.brand small{display:inline;margin-left:9px;font-size:10px;letter-spacing:.05em}.sidebar-label,.sidebar-note,.sidebar-foot,.sidebar>button{display:none}.sidebar nav{display:flex;gap:5px;overflow:auto}.nav-item{width:auto;flex-shrink:0;font-size:10px;gap:6px;padding:8px 10px;margin:0;white-space:nowrap}.nav-item svg{width:13px;height:13px}.nav-count{min-width:12px;font-size:9px}.workspace{margin:0}.topbar{height:46px;padding:0 20px}.breadcrumb{font-size:9px}.update-date{font-size:9px}.top-actions{gap:10px}.icon-button{width:26px;height:26px}.icon-button svg{width:12px;height:12px}main{padding:25px 18px 100px}h1{font-size:25px}.eyebrow{font-size:8px}.page-description{font-size:11px}.page-heading{gap:12px;align-items:flex-start}.page-heading .button{min-height:31px;padding:6px 9px;font-size:9px}.page-heading .button svg{width:12px;height:12px}.overview-strip{margin-top:14px;gap:16px;padding:20px 0}.overview-strip>div+div{padding-left:16px}.overview-number{font-size:27px}.overview-purpose{display:none!important}.overview-strip span:not(.overview-number){font-size:10px}.rating-intro{margin:20px 0 25px;align-items:flex-start;position:relative;padding-bottom:35px}.rating-intro-icon{width:30px;height:30px}.rating-intro .text-button{position:absolute;bottom:9px;left:54px}.rating-intro strong{font-size:11px}.rating-intro p{font-size:10px;line-height:1.8}.section-heading{margin-bottom:14px}.section-heading h2{font-size:14px}.view-hint{font-size:8px;gap:3px}.view-hint svg{width:11px;height:11px}.toolbar{gap:8px;align-items:stretch}.search-box{height:39px;gap:7px;padding:0 10px}.search-box input{font-size:11px}.search-box kbd{display:none}.sort-control{font-size:9px;gap:3px;flex-direction:column;justify-content:center;align-items:flex-end;max-width:115px}.sort-control>span{display:none}.sort-control select{font-size:10px;padding:7px 14px 7px 3px;max-width:115px}.filter-row{gap:5px;margin:14px 0 16px}.filter-chip{font-size:9px;padding:5px 9px}.clear-filters{font-size:9px}.ingredient-card{grid-template-columns:31px minmax(0,1fr) 30px;gap:12px;padding:17px 14px;position:relative}.ingredient-card .ingredient-title{grid-column:2}.ingredient-card .ingredient-icon{width:31px;height:36px;grid-column:1;grid-row:1 / 3}.ingredient-icon svg{width:18px;height:18px}.ingredient-name{font-size:12px}.ingredient-meta{font-size:8px}.stage-badge{font-size:8px}.ingredient-card .finding{grid-column:2 / 4;grid-row:2;margin-top:2px;font-size:10px;padding-right:5px}.finding small{font-size:8px}.ingredient-card .quick-ratings{grid-column:2 / 4;grid-row:3;justify-content:flex-start;gap:8px;margin-top:0}.mini-rating{display:flex;flex-direction:row-reverse;align-items:center;justify-content:space-between;gap:7px;width:auto;min-width:92px;padding:4px 8px}.mini-rating strong{font-size:14px}.mini-rating strong small{font-size:8px}.mini-rating span{font-size:8px;margin:0}.ingredient-card .card-actions{grid-column:3;grid-row:1;gap:8px;align-self:start}.save-button svg{width:14px;height:14px}.compare-check{height:20px}.new-badge{font-size:7px}.page-footer{font-size:8px;margin-top:23px}.compare-tray,.toast{left:50%;min-width:0;width:calc(100vw - 26px);bottom:13px;gap:10px;padding:12px 13px}.toast{bottom:90px;font-size:11px;width:auto;max-width:90vw}.compare-tray>div{gap:9px}.compare-tray strong{font-size:10px}.compare-tray .tray-icon{display:none}.compare-tray .button{font-size:10px;padding:7px 10px}.compare-tray .text-button{font-size:10px}.tray-name{max-width:64px;font-size:8px}.tray-name:nth-child(3){display:none}.compare-tray #compare-names{gap:4px}dialog{max-width:calc(100vw - 18px);max-height:94vh;border-radius:12px}.dialog-top{padding:22px 20px 16px}.dialog-top h2{font-size:19px}.detail-tabs{padding:0 20px;gap:21px}.detail-tab{font-size:10px}.dialog-body{padding:21px 20px 25px}.detail-highlight{font-size:13px;padding:17px}.details-grid{gap:18px;grid-template-columns:1fr}.detail-field p{font-size:11px}.detail-section p,.detail-section li{font-size:11px}.criteria-grid{grid-template-columns:1fr}.utility-body{padding:0 20px 24px}.criterion-guide{padding:15px}.comparison-scroll{padding:0 14px 22px}.comparison-table{min-width:650px}.comparison-table th:first-child{width:88px}.comparison-table th,.comparison-table td{padding:12px 9px;font-size:10px}.comparison-table thead th{font-size:12px}.detail-note,.guide-intro{font-size:10px}}
.topbar{height:54px}main{padding-top:25px}.eyebrow{margin-bottom:5px}.page-description{margin-top:6px}.overview-strip{padding:12px 0;margin-top:12px;gap:25px}.overview-number{font-size:25px}.rating-intro{padding:12px 16px;margin:17px 0 22px}.rating-intro-icon{width:31px;height:31px}.section-heading{margin-bottom:12px}.filter-row{margin:12px 0 14px}.ingredient-card{padding-top:17px;padding-bottom:17px}.ingredient-name button{border:0;background:transparent;color:inherit;padding:0;font-weight:inherit;text-align:left;line-height:inherit}.ingredient-name button:hover{text-decoration:underline;text-underline-offset:3px}.ingredient-name{font-size:14px}.finding{font-size:12px}.ingredient-meta,.stage-badge{font-size:10px}.mini-rating strong{font-size:19px}.mini-rating span{font-size:9px}.rating-intro p{font-size:12px}.rating-intro strong{font-size:13px}.criterion-guide p,.criterion-guide li{font-size:12px}.guide-intro{font-size:13px}.source-card a{font-size:13px}.source-status,.source-meta{font-size:11px}.detail-section p,.detail-section li,.detail-field p{font-size:13px}.rating-reason{font-size:12px}.rating-panel-note{font-size:11px}.data-table{font-size:12px}
@media(max-width:950px){.ingredient-name{font-size:13px}.ingredient-card .finding{font-size:12px}.rating-intro strong{font-size:12px}.rating-intro p{font-size:11px}}
@media(max-width:720px){.ingredient-name{font-size:14px}.ingredient-card .finding{font-size:12px}.ingredient-meta,.stage-badge{font-size:10px}.finding small{font-size:10px}.mini-rating strong{font-size:16px}.mini-rating span{font-size:10px}.mini-rating{min-width:105px}.criterion-guide p,.criterion-guide li{font-size:12px}.detail-section p,.detail-section li,.detail-field p{font-size:13px}.source-meta,.source-status{font-size:11px}.rating-intro{padding:14px 14px 43px;margin:17px 0 22px}.rating-intro strong{font-size:12px}.rating-intro p{font-size:11px}.rating-intro .text-button{left:55px;bottom:11px}}
.focus-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 30px}.focus-button{display:flex;align-items:center;gap:12px;min-height:78px;border:1px solid var(--line);border-radius:10px;background:#fdfdf9;color:#7c8973;text-align:left;padding:14px 17px;transition:border-color .15s,background .15s}.focus-button:hover{border-color:#8fa37d;background:#f0f4e6}.focus-button.selected{border-color:#719462;background:#eaf0df;color:#244d42;box-shadow:inset 0 0 0 1px #71946220}.focus-kicker{font-family:Georgia,serif;font-size:18px;color:#9ba88a}.focus-button strong{font-size:15px;font-weight:550;display:block}.focus-button small{display:block;font-size:10px;color:#8c987e;margin-top:3px;line-height:1.5}.focus-button em{font-family:Georgia,serif;font-size:20px;font-style:normal;font-weight:400;margin-left:auto;color:#8c9c77}.focus-button.selected .focus-kicker,.focus-button.selected em{color:#66864f}.focus-brief{display:flex;align-items:center;gap:20px;justify-content:space-between;margin:17px 0 0;padding:17px 20px;border:1px solid #e1e6d7;border-left:3px solid #95aa76;border-radius:8px;background:#fafbf6}.brief-kicker{display:block;font-size:9px;color:#91a17d;letter-spacing:.12em;margin-bottom:4px}.focus-brief h2{font-size:13px;font-weight:550;line-height:1.7}.focus-brief p{font-size:12px;line-height:1.9;color:#7f8c72;margin:5px 0 0;max-width:840px}.focus-brief .text-button{white-space:nowrap;font-size:11px}.endpoint-tag{display:block;font-size:9px;color:#6c8554;line-height:1.5;margin-bottom:5px;letter-spacing:.03em}.endpoint-tag.support{color:#a18c62}.role-filters{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:10px 0;border-bottom:1px solid var(--line)}.role-filters[hidden]{display:none}.role-filters button{border:0;border-radius:5px;background:transparent;color:#8b977e;font-size:11px;padding:5px 10px}.role-filters button[aria-pressed=true]{background:#e8eede;color:#4c6d3f}.role-filters span{font-size:10px;color:#a0a88f;margin-left:auto}.variant-scroll{overflow:auto}.variant-table{min-width:560px;width:100%;table-layout:fixed}.variant-table thead th{background:#edf2e4;font-size:11px}.variant-table th,.variant-table td{font-size:11px!important;line-height:1.9;vertical-align:top;padding:12px!important}.variant-table th{font-weight:500}.variant-table th:first-child{width:27%}.variant-table td{color:#7e8e6c}.sidebar{overflow-y:auto}
@media(max-width:1190px){.focus-button{gap:9px;padding:12px}.focus-button small{font-size:9px}.focus-kicker{font-size:15px}.focus-button em{font-size:17px}.focus-brief{padding:14px 16px}}
@media(max-width:950px){.focus-switch{gap:7px;margin-bottom:25px}.focus-button{gap:7px}.focus-kicker{display:none}.focus-button small{font-size:9px}.focus-button strong{font-size:14px}.focus-brief{gap:12px;align-items:flex-start}.focus-brief p{font-size:11px}.focus-brief .text-button{font-size:10px}}
@media(max-width:720px){.focus-switch{gap:6px;margin-bottom:22px}.focus-button{position:relative;display:block;min-height:79px;padding:11px 10px}.focus-button strong{font-size:14px}.focus-button small{font-size:9px;margin-top:6px;max-width:90px;min-height:27px}.focus-button em{position:absolute;top:11px;right:9px;font-size:14px}.focus-brief{display:block;padding:13px 15px}.focus-brief h2{font-size:13px}.focus-brief p{font-size:12px}.focus-brief .text-button{display:block;margin:7px 0 0}.role-filters{gap:4px}.role-filters button{font-size:11px;padding:5px 8px}.role-filters span{flex-basis:100%;margin:3px 0 0;font-size:10px}.endpoint-tag{font-size:10px}.variant-table{min-width:530px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.supplier-filters{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:0 0 9px;padding:11px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.supplier-filters>span{font-size:10px;color:#8b977e;margin-right:5px}.supplier-filters button{border:0;background:transparent;color:#7c8d70;border-radius:5px;padding:5px 10px;font-size:11px}.supplier-filters button[aria-pressed=true]{background:#e6edda;color:#3e6236}.supplier-filters #catalog-scope{margin-left:auto;font-size:10px}.library-note{font-size:10px;line-height:1.9;color:#8b987f;margin:10px 0 16px}.provenance{display:table;background:#edf0e8;color:#5b7651;font-size:9px;line-height:1.65;padding:2px 6px;border-radius:4px;margin:0 0 6px}.provenance.analogy{background:#f4ecdb;color:#92753e}.provenance-detail{padding:12px 15px;border:1px solid #e1e5d6;border-radius:7px;margin-bottom:16px;background:#fcfcf7}.provenance-detail .provenance{font-size:11px;margin-bottom:5px}.provenance-detail p{font-size:11px;line-height:1.8;color:#7e8c70;margin:4px 0}.catalog-group{margin-top:24px;border:1px solid #dedfd4;border-radius:10px;background:#f0f1e9;padding:0 13px 2px}.catalog-group summary{padding:18px 5px;cursor:pointer;color:#667655}.catalog-group summary strong{font-size:13px;font-weight:550}.catalog-group summary strong span{font-size:11px;margin-left:6px;border-radius:4px;background:#e0e6d5;padding:2px 6px}.catalog-group summary small{display:block;margin:5px 0 0 19px;font-size:10px;color:#8c967e;line-height:1.8}.catalog-intro{font-size:11px;color:#8b937e;padding:0 5px 15px;line-height:1.9}.catalog-group .ingredient-card{background:#fbfcf7}.catalog-group .ingredient-card .finding{font-size:11px}.catalog-group .new-badge{background:#e6e9da;color:#8a9478}
@media(max-width:720px){.supplier-filters{gap:3px}.supplier-filters button{font-size:11px;padding:5px 7px}.supplier-filters #catalog-scope{flex-basis:100%;text-align:left;margin-left:27px;font-size:10px;padding-top:3px}.library-note{font-size:11px}.provenance{font-size:10px}.catalog-group{padding:0 8px 2px}.catalog-group summary{padding:16px 5px}.catalog-group summary small{font-size:11px}.catalog-group .ingredient-card .finding{font-size:12px}.provenance-detail p{font-size:12px}}

.shortlist-intro{border:1px solid #d9e3cc;background:#eef3e5;border-radius:9px;padding:16px 19px;margin-bottom:18px;color:#617650}.shortlist-intro[hidden]{display:none}.shortlist-kicker{font-size:10px;letter-spacing:.06em;color:#72875c}.shortlist-intro p{font-size:12px;line-height:1.9;margin:7px 0}.shortlist-intro details{font-size:11px;margin-top:8px;color:#7e8e6c}.shortlist-intro summary{cursor:pointer}.shortlist-intro a{display:inline-block;font-size:11px;margin-top:9px;text-underline-offset:3px}.rank-badge{display:table;font-size:11px;font-weight:600;background:#244d42;color:#f0f5e4;border-radius:5px;padding:3px 9px;margin-bottom:10px;letter-spacing:.03em}.shortlisted .ingredient-title{align-self:start}.shortlisted .ingredient-icon{align-self:start}.shortlisted .finding{font-size:12px}.selection-why,.selection-limit,.selection-scores,.selection-kind{display:block}.selection-why{margin-top:12px;line-height:1.85;color:#4b6841}.selection-why strong,.selection-limit strong{display:block;font-size:10px;font-weight:550;letter-spacing:.03em;margin-bottom:3px}.selection-limit{margin-top:10px;color:#8a7c5c;font-size:11px;line-height:1.9}.selection-scores{border-top:1px solid #e6eadd;margin-top:11px;padding-top:9px;color:#89977a;font-size:9px;line-height:1.9}.selection-kind{font-size:10px;margin-top:7px;color:#879374}.selection-detail{padding:15px 18px;margin-bottom:18px;border-left:3px solid #8ba36f;background:#eff3e6;border-radius:5px}.selection-detail>strong{font-size:12px;color:#577344}.selection-detail p{font-size:12px;line-height:1.9;margin:7px 0 0}.sort-control select:disabled{opacity:.6;cursor:default}
@media(max-width:720px){.shortlist-intro{padding:14px 15px}.shortlist-intro p{font-size:12px}.shortlist-intro summary{font-size:11px}.shortlisted .finding{font-size:12px}.selection-why,.selection-limit{font-size:12px}.selection-why strong,.selection-limit strong,.selection-scores,.selection-kind{font-size:10px}.rank-badge{font-size:11px;margin-bottom:8px}}

.shortlist-view .overview-strip,.shortlist-view .focus-brief,.shortlist-view .rating-intro,.shortlist-view .sort-control{display:none}.shortlist-view .page-heading{margin-bottom:25px}.shortlist-links{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.shortlist-links .text-button{font-size:11px;margin-top:9px}.shortlist-links a{margin-top:9px}

.section-tools{display:flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:flex-end}.ideas-button{font-size:12px;color:var(--forest);border-color:#cbd8bf;background:#f0f4e9}.ideas-button:hover{background:#e6edda}.idea-disclaimer{padding:14px 17px;background:#eef3e5;border:1px solid #d9e3cc;border-radius:8px;font-size:13px;line-height:1.9;color:#617650;margin:0 0 18px}.idea-card{padding:20px 22px;margin:0 0 15px;border:1px solid var(--line);border-radius:10px;background:white}.idea-number{font-size:10px;letter-spacing:.04em;color:#80926c}.idea-card h3{font-size:17px;font-weight:550;margin:5px 0 7px;line-height:1.6}.idea-card p{font-size:13px;line-height:1.9;margin:13px 0 0}.idea-card p strong{display:block;font-size:11px;font-weight:550;margin-bottom:3px}.idea-card .idea-purpose{color:var(--muted);margin:0}.idea-records{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.idea-records button{font-size:11px;color:var(--forest);border:1px solid #dce4d2;background:#f4f7ee;border-radius:6px;padding:5px 9px;text-align:left}.idea-records button:hover{background:#e5edda}.idea-limit{color:#8a7c5c}.idea-next{border-top:1px solid #eceee4;padding-top:12px;color:#617650}.research-audit{font-size:12px;line-height:1.9;color:var(--muted);margin-top:20px}.research-audit summary{cursor:pointer}.research-audit p{padding:10px 0;border-bottom:1px solid var(--line)}.reference-note{margin-bottom:18px}
@media(max-width:720px){.section-heading{align-items:flex-start}.section-tools{gap:7px}.section-tools .view-hint{display:none}.ideas-button{font-size:11px;padding:6px 9px;min-height:34px}.idea-card{padding:17px}.idea-card h3{font-size:16px}.idea-card p,.idea-disclaimer{font-size:13px}.idea-records button{font-size:12px}}

.brand-status{font-weight:550;color:#3d614d}.brand-followup{display:flex;flex-wrap:wrap;align-items:center;gap:7px 14px;border-top:1px solid #dce5d0;border-bottom:1px solid #dce5d0;padding:12px 0;margin:12px 0;font-size:12px}.brand-followup>strong{color:#496d4f}.brand-followup>span{flex-basis:100%;font-size:11px}.brand-followup .text-button{font-size:11px}.scope-group{margin:20px 0}.scope-group>h3{font-size:14px;margin:0 0 5px;font-weight:550}.scope-group>h3 span,.scope-group summary span{font-size:11px;color:var(--muted);margin-left:7px}.scope-group>p{font-size:11px;color:var(--muted);margin:0 0 14px}.scope-collapsed{border:1px solid var(--line);border-radius:9px;padding:0 13px;background:#f0f1e9}.scope-collapsed>summary{cursor:pointer;padding:16px 5px;font-size:13px}.scope-collapsed>summary small{display:block;font-size:11px;margin:5px 0 0 18px;color:var(--muted);line-height:1.9}.brand-detail{padding:13px 16px;border:1px solid #dae3d1;border-radius:8px;margin:0 0 18px;background:#f0f4e9}.brand-detail>summary{font-size:12px;cursor:pointer;color:#587446}.brand-detail .detail-field{margin-top:14px}.brand-purpose{border-bottom:1px solid var(--line);margin-bottom:17px;padding-bottom:15px}.brand-purpose p{font-size:13px;line-height:1.9;margin:0 0 12px}.brand-purpose strong{display:block;font-size:11px;margin-bottom:3px;color:#6d805c}
@media(max-width:720px){.scope-group>p,.scope-collapsed>summary small,.brand-followup>span{font-size:12px}.brand-detail>summary{font-size:12px}}
