{
  "id": "sprint-board-results",
  "name": "Results Search",
  "theme": "sprint-board",
  "category": "Search & Browse",
  "description": "A results search where the found runner’s time is rendered at board scale, because someone searching their own name wants to see it large.",
  "layout": "A single search field over a highlighted result at 96px numeral scale, followed by 76px rows for everyone finishing near them.",
  "modules": [
    {
      "key": "search",
      "name": "Search field",
      "html": "\n<header class=\"sf\"><h1>Find a result</h1><label><input type=\"search\" value=\"Duarte\"><button type=\"button\">Search</button></label><span class=\"k\">Kilcarn 10K 2026 · 1,500 finishers</span></header>"
    },
    {
      "key": "found",
      "name": "Found result",
      "html": "\n<section class=\"fd\"><span class=\"k\">1 exact match</span>\n<div class=\"big\"><div><b class=\"nm\">Marisol Duarte</b><span class=\"cl\">A-104 · Kilcarn Harriers · F 25–29</span></div><b class=\"tm n\">31:04</b></div>\n<dl><div><dt>Overall</dt><dd class=\"n\">1 of 1,500</dd></div><div><dt>Gender</dt><dd class=\"n\">1 of 612</dd></div><div><dt>Category</dt><dd class=\"n\">1 of 88</dd></div><div><dt>Average pace</dt><dd class=\"n\">3:06</dd></div></dl></section>"
    },
    {
      "key": "around",
      "name": "Nearby finishers",
      "html": "\n<section class=\"ar\"><h2>Around this time</h2>\n<ol>\n  <li><span class=\"rk n\">1</span><div><b>Marisol Duarte</b><span class=\"cl\">Kilcarn Harriers</span></div><span class=\"tm n\">31:04</span></li>\n  <li><span class=\"rk n\">2</span><div><b>Femi Adeyemi</b><span class=\"cl\">Beckton AC</span></div><span class=\"tm n\">31:22</span></li>\n  <li><span class=\"rk n\">3</span><div><b>Hana Ostrowski</b><span class=\"cl\">Unattached</span></div><span class=\"tm n\">31:40</span></li>\n  <li><span class=\"rk n\">4</span><div><b>Tomás Feld</b><span class=\"cl\">Mill Bridge Runners</span></div><span class=\"tm n\">32:11</span></li>\n</ol>\n<p class=\"cap\">Times are chip times. Gun times are in the downloadable results file, along with every split that was successfully read.</p></section>"
    }
  ],
  "moduleCount": 3,
  "reorderable": true,
  "meta": {
    "id": "sprint-board-results",
    "model": "Claude Opus 5",
    "author": "Claude Code",
    "createdAt": "2026-09-02T00:00:34+09:00",
    "updatedAt": "2026-09-02T00:00:34+09:00",
    "version": "1.0.0",
    "isNew": false
  },
  "link": "/api/v1/designs/sprint-board-results.json",
  "structure": "A single search field over a highlighted result at 96px numeral scale, followed by 76px rows for everyone finishing near them.",
  "html": "<div class=\"dz dz-sprint-board-results\" data-design=\"sprint-board-results\" data-theme=\"sprint-board\">\n<section class=\"dz-mod\" data-mod=\"search\" aria-label=\"Search field\">\n<header class=\"sf\"><h1>Find a result</h1><label><input type=\"search\" value=\"Duarte\"><button type=\"button\">Search</button></label><span class=\"k\">Kilcarn 10K 2026 · 1,500 finishers</span></header></section>\n<section class=\"dz-mod\" data-mod=\"found\" aria-label=\"Found result\">\n<section class=\"fd\"><span class=\"k\">1 exact match</span>\n<div class=\"big\"><div><b class=\"nm\">Marisol Duarte</b><span class=\"cl\">A-104 · Kilcarn Harriers · F 25–29</span></div><b class=\"tm n\">31:04</b></div>\n<dl><div><dt>Overall</dt><dd class=\"n\">1 of 1,500</dd></div><div><dt>Gender</dt><dd class=\"n\">1 of 612</dd></div><div><dt>Category</dt><dd class=\"n\">1 of 88</dd></div><div><dt>Average pace</dt><dd class=\"n\">3:06</dd></div></dl></section></section>\n<section class=\"dz-mod\" data-mod=\"around\" aria-label=\"Nearby finishers\">\n<section class=\"ar\"><h2>Around this time</h2>\n<ol>\n  <li><span class=\"rk n\">1</span><div><b>Marisol Duarte</b><span class=\"cl\">Kilcarn Harriers</span></div><span class=\"tm n\">31:04</span></li>\n  <li><span class=\"rk n\">2</span><div><b>Femi Adeyemi</b><span class=\"cl\">Beckton AC</span></div><span class=\"tm n\">31:22</span></li>\n  <li><span class=\"rk n\">3</span><div><b>Hana Ostrowski</b><span class=\"cl\">Unattached</span></div><span class=\"tm n\">31:40</span></li>\n  <li><span class=\"rk n\">4</span><div><b>Tomás Feld</b><span class=\"cl\">Mill Bridge Runners</span></div><span class=\"tm n\">32:11</span></li>\n</ol>\n<p class=\"cap\">Times are chip times. Gun times are in the downloadable results file, along with every split that was successfully read.</p></section></section>\n</div>",
  "css": "\n.dz-sprint-board-results { background: var(--background); color: var(--foreground); font-family: var(--pv-body); padding: 26px; max-width: 900px; margin: 0 auto; }\n.dz-sprint-board-results .k { text-transform: uppercase; letter-spacing: .16em; font-size: 10.5px; font-weight: 700; color: var(--muted-foreground); display: block; }\n.dz-sprint-board-results .n { font-family: var(--pv-mono); font-variant-numeric: tabular-nums; letter-spacing: -.04em; }\n.dz-sprint-board-results .sf { margin-bottom: 24px; }\n.dz-sprint-board-results h1 { font-family: var(--pv-display); text-transform: uppercase; font-weight: 800; letter-spacing: -.02em; font-size: 38px; margin: 0 0 14px; }\n.dz-sprint-board-results .sf label { display: flex; margin-bottom: 8px; }\n.dz-sprint-board-results input { flex: 1; font: inherit; font-size: 16px; padding: 13px 16px; background: var(--card); border: 0; border-radius: var(--pv-radius-md) 0 0 var(--pv-radius-md); color: var(--foreground); }\n.dz-sprint-board-results .sf button { font-family: var(--pv-display); text-transform: uppercase; font-weight: 800; letter-spacing: -.02em; font-size: 14px; background: var(--primary); color: var(--primary-foreground); border: 0; padding: 13px 26px; border-radius: 0 var(--pv-radius-md) var(--pv-radius-md) 0; cursor: pointer; }\n.dz-sprint-board-results .fd { background: var(--primary); color: var(--primary-foreground); border-radius: var(--pv-radius-md); padding: 22px; margin-bottom: 26px; }\n.dz-sprint-board-results .fd .k { color: var(--primary-foreground); opacity: .8; }\n.dz-sprint-board-results .big { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin: 10px 0 18px; }\n.dz-sprint-board-results .nm { font-family: var(--pv-display); text-transform: uppercase; font-weight: 800; letter-spacing: -.02em; font-size: 34px; display: block; }\n.dz-sprint-board-results .cl { font-size: 13px; opacity: .8; }\n.dz-sprint-board-results .big .tm { font-size: 96px; font-weight: 700; line-height: .9; }\n.dz-sprint-board-results dl { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; margin: 0; padding-top: 16px; border-top: 2px solid color-mix(in oklab, var(--primary-foreground) 30%, transparent); }\n.dz-sprint-board-results dt { text-transform: uppercase; letter-spacing: .16em; font-size: 10.5px; font-weight: 700; color: var(--muted-foreground); color: var(--primary-foreground); opacity: .8; margin: 0; }\n.dz-sprint-board-results dd { margin: 5px 0 0; font-size: 22px; font-weight: 700; }\n.dz-sprint-board-results h2 { font-family: var(--pv-display); text-transform: uppercase; font-weight: 800; letter-spacing: -.02em; font-size: 22px; margin: 0 0 12px; }\n.dz-sprint-board-results .ar ol { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }\n.dz-sprint-board-results .ar li { display: grid; grid-template-columns: 96px 1fr 150px; align-items: center; height: 76px; background: var(--card); border-radius: var(--pv-radius-md); padding: 0 20px; }\n.dz-sprint-board-results .rk { font-size: 40px; font-weight: 700; }\n.dz-sprint-board-results .ar b { display: block; font-family: var(--pv-display); text-transform: uppercase; font-weight: 800; letter-spacing: -.02em; font-size: 20px; }\n.dz-sprint-board-results .ar .tm { font-size: 34px; font-weight: 700; text-align: right; }\n.dz-sprint-board-results .cap { margin: 16px 0 0; font-size: 13px; color: var(--muted-foreground); line-height: 1.5; }\n",
  "requiredTheme": "/api/v1/themes/sprint-board.json",
  "googleFontsHref": "https://fonts.googleapis.com/css2?family=League+Spartan:wght@400;500;600;700&family=Epilogue:wght@400;500;600;700&family=Chivo+Mono:wght@400;500;600;700&display=swap"
}