@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,700;1,700&display=swap');
:root{--ink:#1b2927;--muted:#71817b;--cream:#f7f5ef;--paper:#fff;--line:#dce4df;--green:#1c5b4c;--mint:#d9eee4;--orange:#e97045;--yellow:#f3e2a3}
*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:14px 'DM Sans',sans-serif}.topbar{height:72px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 5vw;background:rgba(255,255,255,.6);gap:22px}.brand{color:var(--green);font-size:22px;font-weight:700;text-decoration:none;letter-spacing:-.7px}.mark{font-size:29px;vertical-align:-2px}.tagline{color:var(--muted);font-size:12px;border-left:1px solid var(--line);padding-left:22px;flex:1}.plain-btn{background:none;border:0;color:var(--green);font:500 12px 'DM Mono';cursor:pointer}.count{background:var(--mint);padding:4px 6px;border-radius:20px;margin-left:5px}
.hero{max-width:1180px;margin:0 auto;padding:68px 30px 45px;display:flex;justify-content:space-between;align-items:end}.eyebrow{color:var(--orange);font:500 11px 'DM Mono';letter-spacing:1.2px;margin:0 0 14px}.hero h1{font-size:57px;line-height:1.02;letter-spacing:-2.8px;margin:0;font-weight:700}.hero h1 em{font-family:'Playfair Display';color:var(--green);font-weight:700}.lede{color:var(--muted);max-width:440px;font-size:16px;line-height:1.55;margin:21px 0 0}.rule-card{background:var(--green);color:#fff;padding:22px 24px;width:245px;border-radius:4px;box-shadow:8px 8px 0 var(--yellow)}.rule-title{font:500 12px 'DM Mono';display:flex;align-items:center;gap:8px}.pulse{width:8px;height:8px;background:#9ee6bc;border-radius:50%;display:inline-block}.rule-card p{font-size:13px;color:#c9ddd4;line-height:1.4;margin:17px 0}.rule-flow{display:flex;justify-content:space-between;align-items:center;font:10px 'DM Mono';color:#fff}
.search-panel{max-width:1120px;margin:0 auto 44px;background:var(--paper);padding:11px;border:1px solid var(--line);box-shadow:0 4px 16px #1b29270c}.search-row{height:51px;display:flex;align-items:center;border:1px solid var(--line);background:#fbfcfa}.search-icon{font-size:28px;color:var(--muted);padding:0 15px}.search-row input{border:0;background:none;outline:0;font:16px 'DM Sans';color:var(--ink);flex:1}.search-options{display:flex;align-items:center;gap:8px;padding:10px 7px 0;color:var(--muted);font:11px 'DM Mono'}.search-options input{width:68px;height:30px;border:1px solid var(--line);padding:0 7px;color:var(--ink);font:12px 'DM Sans'}.search-btn{height:43px;width:100%;margin-top:10px;padding:0 28px;border:0;background:var(--orange);color:white;font-weight:700;cursor:pointer}
.workspace{max-width:1120px;margin:auto;padding:0 0 70px;display:grid;grid-template-columns:235px 1fr;gap:42px}.filter-head,.results-head{display:flex;justify-content:space-between;align-items:start}.filters h2,.results h2{font-size:18px;margin:0;letter-spacing:-.4px}.link-btn,.explain-btn{border:0;background:none;color:var(--green);font:11px 'DM Mono';cursor:pointer;padding:2px 0}.muted{color:var(--muted);font-size:12px;line-height:1.4}.filters>.muted{margin:8px 0 27px}.field-label{display:block;font:10px 'DM Mono';color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin:18px 0 7px}.input-prefix{display:flex;border:1px solid var(--line);background:white;height:37px;align-items:center}.input-prefix span{padding-left:11px;color:var(--muted)}input[type=number]{border:0;outline:0;padding:0 7px;width:100%;font:13px 'DM Sans';color:var(--ink)}select{border:1px solid var(--line);background:white;height:37px;padding:0 10px;width:100%;color:var(--ink);font:13px 'DM Sans'}.check{display:flex;align-items:center;gap:7px;margin:16px 0;cursor:pointer}.check input{accent-color:var(--green);width:15px;height:15px}.divider{border-top:1px solid var(--line);margin:25px 0}
.results-head{align-items:center;margin-bottom:15px}.results-head .muted{margin:5px 0 0}.integrity-banner{background:#eef7f1;color:var(--green);padding:10px 13px;margin-bottom:18px;font:11px 'DM Mono';border-left:3px solid #6bb18b}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.product{background:white;border:1px solid var(--line);padding:16px;min-height:260px;display:flex;flex-direction:column;position:relative}.product-img{height:105px;border-radius:2px;background:#f2f3ef;display:flex;align-items:center;justify-content:center;font-size:52px;margin-bottom:14px}.product:nth-child(2n) .product-img{background:#f3eee6}.product:nth-child(3n) .product-img{background:#e9f0ef}.product h3{font-size:14px;line-height:1.3;margin:0 0 8px}.stars{color:#e58a35;font-size:12px}.reviews{color:var(--muted);font-size:11px;margin-left:5px}.price{font-size:20px;font-weight:700;margin-top:10px}.shipping{color:var(--green);font-size:11px;margin-top:3px}.why{border-top:1px solid var(--line);margin-top:auto;padding-top:10px;color:var(--muted);font:10px 'DM Mono'}.sponsored{position:absolute;top:10px;right:10px;color:#9b6f31;background:#faf1d0;padding:4px;font:9px 'DM Mono'}.empty{text-align:center;background:#fff;border:1px solid var(--line);padding:52px 22px}.empty-icon{font-size:34px;color:var(--green)}.empty h3{margin:10px 0 5px}.empty p{color:var(--muted)}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%) translateY(20px);opacity:0;background:var(--ink);color:#fff;padding:12px 17px;font:11px 'DM Mono';transition:.2s}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
@media(max-width:800px){.hero{padding:45px 22px 30px;display:block}.hero h1{font-size:44px}.rule-card{margin-top:30px}.search-panel{margin:0 18px 32px}.workspace{display:block;padding:0 22px}.filters{margin-bottom:42px}.product-grid{grid-template-columns:1fr}.tagline{display:none}}
.product-image-link{display:flex;width:100%;height:100%;align-items:center;justify-content:center}.product-art{display:block;width:100%;height:100%;max-width:320px;object-fit:contain}
.product{min-height:300px}
.product-img{height:145px;overflow:hidden;font-size:0}

/* Unified search surface: query, backend coverage, and user rules read as one decision. */
.search-panel{padding:28px 30px 30px;border-radius:6px;box-shadow:0 8px 24px #1b292712}
.search-intro{display:flex;justify-content:space-between;align-items:end;margin-bottom:16px;gap:20px}.search-intro h2{font-size:22px;letter-spacing:-.7px;margin:3px 0 0}.section-kicker{color:var(--orange);font:500 10px 'DM Mono';letter-spacing:1px;text-transform:uppercase;margin:0}.rule-note{color:var(--muted);font:10px/1.45 'DM Mono';text-align:right}
.search-row{height:58px;background:#fff;border-color:#becfc8;border-radius:3px;box-shadow:0 0 0 3px #edf5f0}.search-row input{font-size:17px}.search-row input::placeholder{color:#99a9a2}.search-controls{display:grid;grid-template-columns:235px 1fr;gap:28px;padding:22px 0 20px}.coverage-control{padding-right:28px;border-right:1px solid var(--line)}.control-heading{display:flex;justify-content:space-between;align-items:end;gap:12px}.control-heading label,.control-heading h3{color:var(--ink);font-size:13px;font-weight:700;margin:0}.control-value{color:var(--green);font:10px 'DM Mono';white-space:nowrap}.coverage-row{display:flex;align-items:center;gap:12px;margin-top:16px}.coverage-row input{width:100%;accent-color:var(--green)}.coverage-max{color:var(--muted);font:10px 'DM Mono'}.control-help{color:var(--muted);font-size:11px;line-height:1.45;margin:12px 0 0}.rules-control{min-width:0}.rules-control .control-heading{align-items:start}.rules-control h3{font-size:16px;letter-spacing:-.3px;margin-top:3px}.rule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:13px}.field-label{margin:0 0 7px}.check-grid{display:flex;gap:22px;flex-wrap:wrap;margin-top:15px}.check{margin:0}.search-btn{height:48px;margin-top:0;border-radius:3px;font-size:14px}.workspace{display:block;max-width:1120px}.result-actions{display:flex;align-items:center;gap:10px}.result-actions>label{color:var(--muted);font:10px 'DM Mono';text-transform:uppercase}.result-actions select{width:auto;height:34px}.results-head{align-items:center}.divider,.filters{display:none}
@media(max-width:800px){.search-panel{margin:0 18px 32px;padding:22px 18px}.search-intro{align-items:start;display:block}.rule-note{display:block;text-align:left;margin-top:10px}.search-controls{display:block;padding:18px 0}.coverage-control{padding:0 0 20px;border-right:0;border-bottom:1px solid var(--line)}.rules-control{padding-top:20px}.rule-grid{grid-template-columns:1fr 1fr}.check-grid{gap:14px 18px}.result-actions{margin-top:16px;flex-wrap:wrap}.results-head{display:block}}
.ac-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #becfc8;border-radius:3px;margin-top:6px;z-index:50;box-shadow:0 8px 24px rgba(27,41,39,.14);overflow:hidden;padding:4px 0}
.search-row{position:relative}
.ac-item{padding:9px 14px;cursor:pointer;color:var(--ink);font:13px 'DM Sans';white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ac-item:hover,.ac-item.active{background:#eef7f1;color:var(--green)}
.clear-btn{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:#99a9a2;font-size:24px;font-weight:300;width:34px;height:34px;border-radius:3px;cursor:pointer;line-height:1;display:flex;align-items:center;justify-content:center}
.clear-btn:hover{color:var(--ink);background:#f2f3ef}

body.idle .workspace{display:none}
.quick-look{width:min(760px,calc(100% - 28px));max-height:88vh;border:1px solid var(--line);padding:26px;background:var(--paper);color:var(--ink);box-shadow:0 18px 60px #1b292744}.quick-look::backdrop{background:#1b292799}.quick-look-close{position:absolute;right:12px;top:10px;border:0;background:none;color:var(--muted);font-size:21px;cursor:pointer}.quick-look-content{display:grid;grid-template-columns:250px 1fr;gap:26px}.quick-look-gallery{display:flex;flex-direction:column;gap:10px}.quick-look-main{height:250px;width:100%;object-fit:contain;background:#f2f3ef}.quick-look-thumbs{display:flex;gap:6px;overflow:auto}.quick-look-thumb{width:48px;height:48px;padding:2px;border:1px solid var(--line);cursor:pointer;background:#fff}.quick-look-thumb img{display:block;width:100%;height:100%;object-fit:contain}.quick-look-title{font-size:21px;line-height:1.2;margin:0 28px 10px 0}.quick-look-meta{color:var(--muted);font-size:12px}.quick-look-price{font-size:24px;font-weight:700;margin:16px 0}.quick-look-features{padding-left:18px;color:var(--muted);font-size:12px;line-height:1.5}.quick-look-link{display:inline-flex;margin-top:12px;padding:10px 14px;background:var(--orange);color:#fff;text-decoration:none;font-weight:700}@media(max-width:600px){.quick-look-content{display:block}.quick-look-gallery{margin-bottom:20px}.quick-look-main{height:210px}}
