:root{
  --brand:#f0f3de;
  --brand-dark:#d6dbb8;
  --brand-darker:#a8b07a;
  --brand-text:#3d4a1e;
  --brand-text2:#5c6e2e;
  --bg:#ffffff;
  --bg2:#f5f5f3;
  --border:rgba(0,0,0,0.10);
  --border2:rgba(0,0,0,0.20);
  --text:#1a1a1a;
  --text2:#5f6368;
  --radius-md:8px;
  --radius-lg:12px;
}
.wrap{max-width:920px;margin:0 auto}
.top-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;flex-wrap:wrap;gap:12px}
.title-row{display:flex;align-items:center;gap:10px}
.title-icon{width:38px;height:38px;border-radius:var(--radius-md);background:var(--brand);display:flex;align-items:center;justify-content:center;color:var(--brand-text2);font-size:20px;border:1px solid var(--brand-dark)}
.title-text{font-size:18px;font-weight:500;color:var(--text)}
.badge{font-size:12px;padding:3px 10px;border-radius:20px;background:var(--brand);color:var(--brand-text);border:1px solid var(--brand-dark);font-weight:500}
.actions{display:flex;align-items:center;gap:8px}
.sort-select{font-size:13px;padding:6px 10px;border-radius:var(--radius-md);border:1px solid var(--border2);background:var(--bg);color:var(--text2);cursor:pointer;outline:none}
.sort-select:hover{border-color:var(--brand-dark)}
.clear-btn{font-size:13px;color:var(--text2);background:none;border:none;cursor:pointer;display:flex;align-items:center;gap:5px;padding:6px 10px;border-radius:var(--radius-md);transition:background .13s}
.clear-btn:hover{background:var(--brand);color:var(--brand-text)}
.chips{display:flex;gap:6px;margin-bottom:1.25rem;flex-wrap:wrap}
.chip{font-size:12px;padding:5px 14px;border-radius:20px;border:1px solid var(--border2);background:var(--bg);color:var(--text2);cursor:pointer;transition:all .13s;display:flex;align-items:center;gap:6px}
.chip svg{width:14px;height:14px;flex-shrink:0}
.chip:hover{border-color:var(--brand-dark);color:var(--brand-text2)}
.chip.on{background:var(--brand);color:var(--brand-text);border-color:var(--brand-dark);font-weight:500}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
.card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px;display:flex;flex-direction:column;gap:12px;transition:border-color .15s,box-shadow .15s}
.card:hover{border-color:var(--brand-dark);box-shadow:0 2px 12px rgba(90,110,46,0.08)}
.card-top{display:flex;align-items:flex-start;gap:12px}
.prod-icon{width:46px;height:46px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--brand);color:var(--brand-text2);border:1px solid var(--brand-dark)}
.prod-icon svg{width:22px;height:22px}
.prod-info{flex:1;min-width:0}
.prod-name{font-size:14px;font-weight:500;color:var(--text);margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.prod-meta{font-size:12px;color:var(--text2)}
.heart-btn{background:none;border:none;cursor:pointer;padding:3px;color:#E24B4A;flex-shrink:0;transition:transform .15s;display:flex}
.heart-btn svg{width:20px;height:20px}
.heart-btn:hover{transform:scale(1.2)}
.tag-row{display:flex;align-items:center;gap:6px}
.tag{font-size:11px;padding:3px 9px;border-radius:10px;font-weight:500}
.tag-fert{background:var(--brand);color:var(--brand-text)}
.tag-tool{background:#E6F1FB;color:#185FA5}
.tag-pest{background:#FAEEDA;color:#854F0B}
.tag-stock{font-size:11px;color:#3B6D11;display:flex;align-items:center;gap:3px;margin-right:auto}
.tag-stock svg{width:13px;height:13px}
.tag-stock.out{color:#A32D2D}
.divider{height:1px;background:var(--border)}
.card-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px}
.price-label{font-size:11px;color:var(--text2);margin-bottom:1px}
.price-val{font-size:16px;font-weight:500;color:var(--text);direction:ltr;display:inline-block}
.unit{font-size:11px;color:var(--text2)}
.cart-btn{font-size:13px;padding:8px 16px;border-radius:var(--radius-md);border:1px solid var(--brand-dark);background:var(--brand);color:var(--brand-text);cursor:pointer;font-weight:500;display:flex;align-items:center;gap:6px;transition:background .13s;white-space:nowrap}
.cart-btn svg{width:15px;height:15px}
.cart-btn:hover{background:var(--brand-dark)}
.empty{text-align:center;padding:3.5rem 1rem;color:var(--text2);grid-column:1/-1}
.empty svg{width:40px;height:40px;display:block;margin:0 auto 12px;color:var(--brand-darker)}
.empty p{font-size:14px}
.summary-bar{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:var(--brand);border-radius:var(--radius-lg);border:1px solid var(--brand-dark);margin-top:1.25rem}
.summary-text{font-size:13px;color:var(--brand-text2)}
.summary-text strong{color:var(--brand-text);font-weight:500}
.checkout-btn{font-size:13px;padding:8px 18px;border-radius:var(--radius-md);background:var(--brand-text);color:var(--brand);border:none;cursor:pointer;font-weight:500;display:flex;align-items:center;gap:6px;transition:background .13s}
.checkout-btn svg{width:15px;height:15px}
.checkout-btn:hover{background:var(--brand-text2)}