{
  "id": "apricot-press-search",
  "name": "Recipe Search",
  "theme": "apricot-press",
  "category": "Search & Browse",
  "description": "A search that filters by hands-on time rather than total time, because the constraint people actually have is attention, not a clock.",
  "layout": "A ruled filter row over a single-column result list where each row is a small square photograph beside a name and its three-fact mono yield line.",
  "modules": [
    {
      "key": "filters",
      "name": "Filter row",
      "html": "\n<header class=\"fr\"><h1>Find something to cook</h1><label class=\"q\"><input type=\"search\" value=\"beans\"></label>\n<div class=\"fs\"><label><span class=\"k\">Hands-on time</span><select><option>Under 20 minutes</option><option>Under 40 minutes</option><option>Any</option></select></label><label><span class=\"k\">Serves</span><select><option>4 or more</option><option>2</option><option>Any</option></select></label><label><span class=\"k\">Season</span><select><option>February</option><option>Any</option></select></label></div>\n<span class=\"ct n\">11 recipes</span></header>"
    },
    {
      "key": "results",
      "name": "Result rows",
      "html": "\n<ol class=\"rs\">\n  <li><img src=\"{{ART pot}}\" alt=\"{{ARTALT pot}}\"><div><h3>Beans, Chard and Burnt Butter</h3><p class=\"yl\"><span class=\"n\">Serves 4</span><span class=\"dot\">·</span><span class=\"n\">1 h 40 min</span><span class=\"dot\">·</span><span class=\"n\">20 min hands-on</span></p><p>Depth from browned butter rather than stock.</p></div><span class=\"is n\">Issue 41</span></li>\n  <li><img src=\"{{ART herbs}}\" alt=\"{{ARTALT herbs}}\"><div><h3>White Beans, Rosemary, Chilli</h3><p class=\"yl\"><span class=\"n\">Serves 6</span><span class=\"dot\">·</span><span class=\"n\">2 h</span><span class=\"dot\">·</span><span class=\"n\">15 min hands-on</span></p><p>The version to make when there is no chard.</p></div><span class=\"is n\">Issue 33</span></li>\n  <li><img src=\"{{ART hands}}\" alt=\"{{ARTALT hands}}\"><div><h3>Bean and Bread Soup</h3><p class=\"yl\"><span class=\"n\">Serves 8</span><span class=\"dot\">·</span><span class=\"n\">1 h 15 min</span><span class=\"dot\">·</span><span class=\"n\">25 min hands-on</span></p><p>What to do with the liquid from either of the above.</p></div><span class=\"is n\">Issue 33</span></li>\n  <li><img src=\"{{ART table}}\" alt=\"{{ARTALT table}}\"><div><h3>Beans Under A Roast</h3><p class=\"yl\"><span class=\"n\">Serves 8</span><span class=\"dot\">·</span><span class=\"n\">6 h</span><span class=\"dot\">·</span><span class=\"n\">10 min hands-on</span></p><p>Cooked in the fat from the shoulder in issue 41.</p></div><span class=\"is n\">Issue 41</span></li>\n</ol>"
    },
    {
      "key": "related",
      "name": "Related note",
      "html": "\n<footer class=\"rn\"><p class=\"as\"><span class=\"al\">Worth knowing</span>Four of these eleven use the same soaked-bean base and can be started from the same pot. If you are cooking for the week, start 800 g on a Sunday and the rest is assembly.</p></footer>"
    }
  ],
  "moduleCount": 3,
  "reorderable": true,
  "meta": {
    "id": "apricot-press-search",
    "model": "Claude Opus 5",
    "author": "Claude Code",
    "createdAt": "2026-09-02T00:03:15+09:00",
    "updatedAt": "2026-09-02T00:03:15+09:00",
    "version": "1.0.0",
    "isNew": false
  },
  "link": "/api/v1/designs/apricot-press-search.json",
  "structure": "A ruled filter row over a single-column result list where each row is a small square photograph beside a name and its three-fact mono yield line.",
  "html": "<div class=\"dz dz-apricot-press-search\" data-design=\"apricot-press-search\" data-theme=\"apricot-press\">\n<section class=\"dz-mod\" data-mod=\"filters\" aria-label=\"Filter row\">\n<header class=\"fr\"><h1>Find something to cook</h1><label class=\"q\"><input type=\"search\" value=\"beans\"></label>\n<div class=\"fs\"><label><span class=\"k\">Hands-on time</span><select><option>Under 20 minutes</option><option>Under 40 minutes</option><option>Any</option></select></label><label><span class=\"k\">Serves</span><select><option>4 or more</option><option>2</option><option>Any</option></select></label><label><span class=\"k\">Season</span><select><option>February</option><option>Any</option></select></label></div>\n<span class=\"ct n\">11 recipes</span></header></section>\n<section class=\"dz-mod\" data-mod=\"results\" aria-label=\"Result rows\">\n<ol class=\"rs\">\n  <li><img src=\"https://designlookbook.dev/assets/img/apricot-press-pot.webp\" alt=\"A glazed pot steaming on a warm surface\"><div><h3>Beans, Chard and Burnt Butter</h3><p class=\"yl\"><span class=\"n\">Serves 4</span><span class=\"dot\">·</span><span class=\"n\">1 h 40 min</span><span class=\"dot\">·</span><span class=\"n\">20 min hands-on</span></p><p>Depth from browned butter rather than stock.</p></div><span class=\"is n\">Issue 41</span></li>\n  <li><img src=\"https://designlookbook.dev/assets/img/apricot-press-herbs.webp\" alt=\"Fresh green herbs scattered on warm paper\"><div><h3>White Beans, Rosemary, Chilli</h3><p class=\"yl\"><span class=\"n\">Serves 6</span><span class=\"dot\">·</span><span class=\"n\">2 h</span><span class=\"dot\">·</span><span class=\"n\">15 min hands-on</span></p><p>The version to make when there is no chard.</p></div><span class=\"is n\">Issue 33</span></li>\n  <li><img src=\"https://designlookbook.dev/assets/img/apricot-press-hands.webp\" alt=\"Hands folding dough on a floured board\"><div><h3>Bean and Bread Soup</h3><p class=\"yl\"><span class=\"n\">Serves 8</span><span class=\"dot\">·</span><span class=\"n\">1 h 15 min</span><span class=\"dot\">·</span><span class=\"n\">25 min hands-on</span></p><p>What to do with the liquid from either of the above.</p></div><span class=\"is n\">Issue 33</span></li>\n  <li><img src=\"https://designlookbook.dev/assets/img/apricot-press-table.webp\" alt=\"A laid table seen from above after a meal\"><div><h3>Beans Under A Roast</h3><p class=\"yl\"><span class=\"n\">Serves 8</span><span class=\"dot\">·</span><span class=\"n\">6 h</span><span class=\"dot\">·</span><span class=\"n\">10 min hands-on</span></p><p>Cooked in the fat from the shoulder in issue 41.</p></div><span class=\"is n\">Issue 41</span></li>\n</ol></section>\n<section class=\"dz-mod\" data-mod=\"related\" aria-label=\"Related note\">\n<footer class=\"rn\"><p class=\"as\"><span class=\"al\">Worth knowing</span>Four of these eleven use the same soaked-bean base and can be started from the same pot. If you are cooking for the week, start 800 g on a Sunday and the rest is assembly.</p></footer></section>\n</div>",
  "css": "\n.dz-apricot-press-search { background: var(--background); color: var(--foreground); font-family: var(--pv-body); padding: 34px; max-width: 1000px; margin: 0 auto; }\n.dz-apricot-press-search .k { text-transform: uppercase; letter-spacing: .12em; font-size: 11px; font-weight: 700; color: var(--muted-foreground); }\n.dz-apricot-press-search .n { font-family: var(--pv-mono); font-size: 13.5px; }\n.dz-apricot-press-search h1 { font-family: var(--pv-display); font-weight: 400; font-size: 42px; margin: 0 0 16px; letter-spacing: -.02em; }\n.dz-apricot-press-search .q input { width: 100%; font: inherit; font-size: 17px; padding: 13px 16px; background: var(--card); border: 1px solid var(--input); border-radius: var(--pv-radius-md); color: var(--foreground); }\n.dz-apricot-press-search .fs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 18px 0 12px; }\n.dz-apricot-press-search select { display: block; width: 100%; margin-top: 6px; font: inherit; font-size: 14px; padding: 10px 12px; background: var(--card); border: 1px solid var(--input); border-radius: var(--pv-radius-md); color: var(--foreground); }\n.dz-apricot-press-search .ct { display: block; padding-bottom: 12px; border-bottom: 1px solid var(--border); color: var(--muted-foreground); }\n.dz-apricot-press-search .rs { list-style: none; margin: 0; padding: 0; }\n.dz-apricot-press-search .rs li { display: grid; grid-template-columns: 110px 1fr auto; gap: 20px; align-items: start; padding: 18px 0; border-bottom: 1px solid var(--border); }\n.dz-apricot-press-search .rs img { width: 110px; height: 110px; object-fit: cover; border-radius: var(--pv-radius-lg); display: block; filter: var(--img-filter); }\n.dz-apricot-press-search .rs h3 { font-family: var(--pv-display); font-weight: 400; font-size: 20px; margin: 0 0 6px; }\n.dz-apricot-press-search .yl { display: flex; gap: 10px; align-items: baseline; margin: 0 0 6px; flex-wrap: wrap; }\n.dz-apricot-press-search .dot { color: var(--muted-foreground); }\n.dz-apricot-press-search .rs p:last-child { margin: 0; font-size: 14px; line-height: 1.6; }\n.dz-apricot-press-search .is { color: var(--muted-foreground); }\n.dz-apricot-press-search .rn { margin-top: 22px; }\n.dz-apricot-press-search .as { color: var(--accent); margin: 0; font-size: 14.5px; line-height: 1.7; max-width: 62ch; }\n.dz-apricot-press-search .al { text-transform: uppercase; letter-spacing: .12em; font-size: 11px; font-weight: 700; color: var(--muted-foreground); color: var(--accent); display: block; }\n",
  "requiredTheme": "/api/v1/themes/apricot-press.json",
  "googleFontsHref": "https://fonts.googleapis.com/css2?family=Bree+Serif:wght@400;500;600;700&family=Nunito+Sans:wght@400;500;600;700&family=Ubuntu+Mono:wght@400;500;600;700&display=swap"
}