:root{--fresh:#f3f8ef;--card:#fff;--ink:#1d2a1f;--muted:#5c6b5e;--edge:#dde8d6;--leaf:#2f8f4e;--leaf-dk:#237a3f;--berry:#b8375f;--citrus:#e7a521}
@media(prefers-color-scheme:dark){:root{--fresh:#121710;--card:#1a211744;--ink:#e9f1e6;--muted:#9fb0a0;--edge:#27311f;--leaf:#59c478;--leaf-dk:#78d694;--berry:#e36a8c;--citrus:#f1bd4e}}
@media(prefers-color-scheme:dark){:root{--card:#1a2117}}
*{box-sizing:border-box}html{background:var(--fresh)}
body{margin:0;color:var(--ink);background:var(--fresh);font:17px/1.72 "Verdana","Segoe UI",system-ui,sans-serif}
a{color:var(--leaf-dk)}a:hover{color:var(--berry)}
.cartbar{background:var(--card);border-bottom:1px solid var(--edge)}
.cartbar-in{max-width:1020px;margin:0 auto;padding:15px 22px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px}
.basketmark{font:800 22px/1 "Verdana",sans-serif;color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;gap:9px}
.basketmark em{font-style:normal;background:var(--leaf);color:#fff;border-radius:50%;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;font-size:16px}
.carttabs{margin-left:auto;display:flex;flex-wrap:wrap;gap:4px}
.carttabs a{font-size:14px;text-decoration:none;color:var(--muted);padding:7px 13px;border-radius:8px}
.carttabs a:hover{background:var(--fresh);color:var(--leaf-dk)}
.pantryhero{max-width:1020px;margin:0 auto;padding:40px 22px 14px}
.pantryhero h1{font-size:clamp(28px,5vw,46px);line-height:1.1;margin:0 0 12px;max-width:16ch;color:var(--leaf-dk)}
.pantryhero-sub{margin:0;font-size:19px;color:var(--muted);max-width:42ch}
.shelfwall{max-width:1020px;margin:0 auto;padding:24px 22px 82px;display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.grocecard{background:var(--card);border:1px solid var(--edge);border-radius:16px;padding:22px 24px;text-decoration:none;color:var(--ink);position:relative;overflow:hidden}
.grocecard::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--citrus)}
.grocecard:hover::before{background:var(--leaf)}
.grocecard-tag{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--leaf-dk)}
.grocecard-head{font-size:21px;line-height:1.3;margin:11px 0 7px}
.grocecard-sum{margin:0;font-size:15px;line-height:1.58;color:var(--muted)}
.receiptsheet{max-width:720px;margin:30px auto 88px;background:var(--card);border:1px solid var(--edge);border-radius:14px;padding:clamp(24px,5vw,46px)}
.receiptsheet-kick{display:inline-block;font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--leaf-dk);border:1px solid var(--edge);border-radius:999px;padding:4px 12px}
.receiptsheet h1{font-size:clamp(26px,4.4vw,38px);line-height:1.16;margin:13px 0 12px}
.receiptsheet-lede{font-size:19px;color:var(--muted);margin:0 0 24px;padding-bottom:18px;border-bottom:2px dashed var(--edge)}
.receiptsheet h2{font-size:22px;line-height:1.3;margin:30px 0 8px;color:var(--leaf-dk)}
.receiptsheet ul,.receiptsheet ol{padding-left:22px}.receiptsheet li{margin:7px 0}
.receiptsheet p{margin:0 0 16px}
.promo-flag{margin:26px 0;background:#fff6e4;border:1px solid var(--citrus);border-radius:12px;padding:14px 18px;font-size:14.5px}
.promo-flag b{display:block;font-size:12.5px;letter-spacing:.07em;text-transform:uppercase;color:#946806;margin-bottom:5px}
.promo-flag p{margin:0}
@media(prefers-color-scheme:dark){.promo-flag{background:#2a2412;color:#f1e7cf}}
.receiptsheet-stamp{margin-top:34px;font-size:14px;color:var(--muted)}
.cartfoot{background:var(--card);border-top:1px solid var(--edge)}
.cartfoot-in{max-width:1020px;margin:0 auto;padding:22px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 22px;font-size:14px;color:var(--muted)}
.cartfoot-in a{color:var(--leaf-dk)}
@media(max-width:680px){.shelfwall{grid-template-columns:1fr}}