/* Shopping tab. Owned by the shopping list and already-have pass session. */

/* ---------- Shopping ---------- */
.budget-strip{
  display:flex;justify-content:space-between;align-items:center;
  background:var(--surface);border:1px solid var(--line);border-radius:14px;
  padding:14px 16px;margin-bottom:14px;
}
.budget-strip .amt{font-family:'IBM Plex Mono',monospace;font-size:18px;font-weight:600}
.budget-strip .lbl{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint)}
.store-group{margin-bottom:18px}
.store-group h3{font-size:15px;margin:0 0 8px;display:flex;align-items:center;gap:8px}
.store-group h3 .count{font-size:11px;font-weight:500;color:var(--ink-faint);font-family:'IBM Plex Mono',monospace}
.item-row{
  display:flex;align-items:flex-start;gap:10px;padding:10px 4px;border-bottom:1px solid var(--line);
}
.item-row:last-child{border-bottom:none}
.check{
  width:22px;height:22px;border-radius:7px;border:1.5px solid var(--line-strong);
  flex:none;margin-top:1px;display:flex;align-items:center;justify-content:center;background:var(--surface);
}
.check.checked{background:var(--accent);border-color:var(--accent)}
.check svg{width:13px;height:13px;stroke:var(--accent-ink);stroke-width:3;display:none}
.check.checked svg{display:block}
.item-main{flex:1;min-width:0}
.item-name{font-size:14.5px;font-weight:600}
.item-name.checked{color:var(--ink-faint);text-decoration:line-through}
.item-detail{font-size:12px;color:var(--ink-muted);margin-top:2px;font-family:'IBM Plex Mono',monospace}
.item-recipes{font-size:11.5px;color:var(--ink-faint);margin-top:2px}
.store-select{
  font-size:11px;border:1px solid var(--line-strong);background:var(--surface-2);color:var(--ink-muted);
  border-radius:8px;padding:4px 6px;flex:none;
}
.add-item-row{display:flex;gap:8px;margin-top:6px}
.add-item-row input{
  flex:1;padding:11px 14px;border-radius:12px;border:1px solid var(--line-strong);
  background:var(--surface);color:var(--ink);font-size:14px;
}
