:root{color:#182622;background:#f5f7f4;font:16px/1.55 system-ui,sans-serif;--muted:#50615b;--accent:#176b52;--line:#d6dfd8;--column:180px;--category:145px}
*{box-sizing:border-box}
body{margin:0}
a{color:var(--accent);text-underline-offset:.23em}
.top,main,footer{width:min(1240px,calc(100% - 72px));margin:auto}
.top{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:20px 0}
.brand{display:flex;align-items:center;gap:11px;color:inherit;font-weight:750;text-decoration:none}
.mark{display:grid;place-items:center;width:36px;height:36px;background:#173c31;color:#fff;border-radius:8px;font-size:.74rem;letter-spacing:.07em}
.edition,.eyebrow,.result-head{font-size:.71rem;letter-spacing:.12em;font-weight:750}
.edition{color:var(--muted)}
.intro{background:#153b30;color:#fff;border-radius:20px;padding:clamp(24px,5vw,68px);display:grid;grid-template-columns:1.5fr 1fr;gap:36px;align-items:end}
.eyebrow{color:var(--accent);margin:0 0 12px}
.intro .eyebrow{color:#aadfc9}
h1,h2{margin:0;font-family:Georgia,serif;font-weight:500;letter-spacing:-.05em;line-height:1.02}
h1{font-size:clamp(3rem,6.5vw,6rem)}
.lede{max-width:44ch;color:#d5e8df;margin:20px 0 0}
.metrics{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px;margin:0}
.metrics div{display:flex;flex-direction:column-reverse;border-top:1px solid #608278;padding-top:10px}
.metrics dt{font-size:.84rem;color:#d5e8df}
.metrics dd{font:2.6rem/1.12 Georgia,serif;margin:0 0 5px}
.catalogue{padding:42px 0 60px}
.section-top{display:flex;justify-content:space-between;align-items:end;gap:18px}
.section-top h2{font-size:clamp(2.3rem,5vw,3.6rem)}
.section-top>p{margin:0;color:var(--muted);max-width:40ch;font-size:.92rem}
.filters{display:grid;grid-template-columns:1.7fr repeat(3,1fr);gap:12px;margin-top:22px}
label{font-weight:700;font-size:.79rem}
input,select{display:block;width:100%;min-height:44px;margin-top:5px;padding:9px 10px;color:inherit;background:#fff;border:1px solid #bbc9c0;border-radius:7px;font:inherit;font-size:.92rem}
:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
#status,.meta{color:var(--muted);font-size:.81rem}
#status{margin:16px 0 8px}
.result-head{display:grid;grid-template-columns:1fr var(--category) var(--column);padding:9px 14px;color:#354b41;background:#e5eee7;border-radius:6px 6px 0 0;text-transform:uppercase}
.product-row{position:relative;border-bottom:1px solid var(--line);background:#fff}
summary{position:relative;cursor:pointer;min-height:66px;display:grid;grid-template-columns:1fr var(--category);align-items:center;gap:0;list-style:none;padding:10px calc(var(--column) + 14px) 10px 36px;transition:background .16s}
summary::-webkit-details-marker{display:none}
summary:before{content:"+";position:absolute;left:14px;color:var(--accent);font-size:1rem}
details[open]>summary:before{content:"−"}
summary:hover,details[open]>summary{background:#edf5ef}
summary strong,summary small{display:block}
summary small,.label{color:var(--muted);font-size:.8rem}
.shortcut{position:absolute;top:0;right:14px;width:var(--column);height:66px;display:flex;align-items:center;font-size:.82rem}
.source-link{font-weight:650}
.panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:26px;padding:20px 24px 26px;border-top:1px solid var(--line);overflow-wrap:anywhere}
.references{padding-right:20px;border-right:1px solid var(--line)}
.panel h3{margin:0 0 10px;font-size:.95rem}
.panel ul{padding-left:18px;margin:0 0 16px}
.panel li{margin-bottom:10px}
.references ul{list-style:none;padding:0}
.references li{padding:7px 0;margin:0;border-top:1px solid var(--line)}
.hash{font-size:.72rem}
.evidence>p{margin:0 0 8px}
.evidence h3{margin-top:18px}
footer{border-top:1px solid var(--line);color:var(--muted);display:flex;justify-content:space-between;gap:12px;font-size:.79rem;padding:16px 0 24px}
@media(max-width:720px){:root{--column:128px;--category:105px}.top,main,footer{width:calc(100% - 28px)}.intro{grid-template-columns:1fr;gap:25px}.section-top{display:block}.section-top>p{margin-top:10px}.filters{grid-template-columns:1fr 1fr}.panel{grid-template-columns:1fr;gap:16px;padding:16px}.references{border-right:0;border-bottom:1px solid var(--line);padding-right:0}}
@media(max-width:475px){:root{--column:104px}.top .edition{display:none}.result-head{grid-template-columns:1fr var(--column);font-size:.62rem}.result-head span:nth-child(2){display:none}summary{grid-template-columns:1fr;gap:2px}.shortcut{font-size:.74rem}.label{font-size:.72rem}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
