thermograph/static/favicon.svg
Emi Griffith c6b2e55ff2 Replace the brand mark with the grid-cell logo everywhere (#199)
Swaps the stepped-path mark for the "C1 v2" design: an 8x8 grid of graded
day-cells tracing the same climb (blue Low -> green Normal -> a hot loop -> a
stepped ascent to the near-record red cell). It keeps the exact geometry of the
old mark — same 512 viewBox, same 32/448/rx96 rounded badge, same band palette —
so it is a drop-in that needs no alignment changes.

Everywhere the mark appears:
- The inline header SVG in all six lockups (the five standalone frontend pages
  and backend/templates/base.html.j2), kept at width/height 28 with aria-hidden.
  Because the box and viewBox are unchanged, the .logo/.brand alignment CSS
  (the -2px cap-height nudge, the 28->22px compact size, the 10px gap) is
  untouched and the mark stays centred on the "Thermograph" wordmark.
- favicon.svg, regenerated from the new art.
- Every raster: favicon-16/32/48, apple-touch-icon (180), logo-192, logo (512),
  and the two maskable icons. The maskable pair keeps the established recipe —
  the badge scaled into the central safe zone on a full-bleed opaque square — so
  an OS shape mask never clips the art.

Bumps every icon reference to ?v=3 (previously a mix of ?v=2 and unversioned) so
browsers and installed PWAs refetch the new icons.

Claude-Session: https://claude.ai/code/session_013dRZmX9D3JEntfMKWMTWZ8
2026-07-19 23:45:12 +00:00

69 lines
4.9 KiB
XML

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" role="img" aria-label="Thermograph">
<title>Thermograph</title>
<desc>A quantized trace of graded day-cells: up through green normal, a hot loop at center, back down along green, then a stepped climb to the near-record cell at the record row</desc>
<rect x="32" y="32" width="448" height="448" rx="96" fill="#10141B" stroke="#FFFFFF" stroke-opacity="0.08" stroke-width="4"/>
<rect x="115" y="403" width="42" height="42" rx="10" fill="#111924"/>
<rect x="163" y="403" width="42" height="42" rx="10" fill="#111924"/>
<rect x="211" y="403" width="42" height="42" rx="10" fill="#111924"/>
<rect x="259" y="403" width="42" height="42" rx="10" fill="#111924"/>
<rect x="307" y="403" width="42" height="42" rx="10" fill="#111924"/>
<rect x="355" y="403" width="42" height="42" rx="10" fill="#111924"/>
<rect x="403" y="403" width="42" height="42" rx="10" fill="#111924"/>
<rect x="163" y="355" width="42" height="42" rx="10" fill="#131C25"/>
<rect x="211" y="355" width="42" height="42" rx="10" fill="#131C25"/>
<rect x="259" y="355" width="42" height="42" rx="10" fill="#131C25"/>
<rect x="307" y="355" width="42" height="42" rx="10" fill="#131C25"/>
<rect x="355" y="355" width="42" height="42" rx="10" fill="#131C25"/>
<rect x="403" y="355" width="42" height="42" rx="10" fill="#131C25"/>
<rect x="67" y="307" width="42" height="42" rx="10" fill="#181F27"/>
<rect x="163" y="307" width="42" height="42" rx="10" fill="#181F27"/>
<rect x="211" y="307" width="42" height="42" rx="10" fill="#181F27"/>
<rect x="259" y="307" width="42" height="42" rx="10" fill="#181F27"/>
<rect x="307" y="307" width="42" height="42" rx="10" fill="#181F27"/>
<rect x="355" y="307" width="42" height="42" rx="10" fill="#181F27"/>
<rect x="403" y="307" width="42" height="42" rx="10" fill="#181F27"/>
<rect x="67" y="259" width="42" height="42" rx="10" fill="#131C1F"/>
<rect x="211" y="259" width="42" height="42" rx="10" fill="#131C1F"/>
<rect x="403" y="259" width="42" height="42" rx="10" fill="#131C1F"/>
<rect x="67" y="211" width="42" height="42" rx="10" fill="#1E1E22"/>
<rect x="115" y="211" width="42" height="42" rx="10" fill="#1E1E22"/>
<rect x="211" y="211" width="42" height="42" rx="10" fill="#1E1E22"/>
<rect x="307" y="211" width="42" height="42" rx="10" fill="#1E1E22"/>
<rect x="67" y="163" width="42" height="42" rx="10" fill="#1D1C1E"/>
<rect x="115" y="163" width="42" height="42" rx="10" fill="#1D1C1E"/>
<rect x="307" y="163" width="42" height="42" rx="10" fill="#1D1C1E"/>
<rect x="355" y="163" width="42" height="42" rx="10" fill="#1D1C1E"/>
<rect x="67" y="115" width="42" height="42" rx="10" fill="#1C191E"/>
<rect x="115" y="115" width="42" height="42" rx="10" fill="#1C191E"/>
<rect x="163" y="115" width="42" height="42" rx="10" fill="#1C191E"/>
<rect x="211" y="115" width="42" height="42" rx="10" fill="#1C191E"/>
<rect x="259" y="115" width="42" height="42" rx="10" fill="#1C191E"/>
<rect x="307" y="115" width="42" height="42" rx="10" fill="#1C191E"/>
<rect x="355" y="115" width="42" height="42" rx="10" fill="#1C191E"/>
<rect x="67" y="67" width="42" height="42" rx="10" fill="#18141B"/>
<rect x="115" y="67" width="42" height="42" rx="10" fill="#18141B"/>
<rect x="163" y="67" width="42" height="42" rx="10" fill="#18141B"/>
<rect x="211" y="67" width="42" height="42" rx="10" fill="#18141B"/>
<rect x="259" y="67" width="42" height="42" rx="10" fill="#18141B"/>
<rect x="307" y="67" width="42" height="42" rx="10" fill="#18141B"/>
<rect x="355" y="67" width="42" height="42" rx="10" fill="#18141B"/>
<rect x="67" y="403" width="42" height="42" rx="10" fill="#2166ac"/>
<rect x="67" y="355" width="42" height="42" rx="10" fill="#4393c3"/>
<rect x="115" y="355" width="42" height="42" rx="10" fill="#4393c3"/>
<rect x="115" y="307" width="42" height="42" rx="10" fill="#92c5de"/>
<rect x="115" y="259" width="42" height="42" rx="10" fill="#4a9d5b"/>
<rect x="163" y="259" width="42" height="42" rx="10" fill="#4a9d5b"/>
<rect x="163" y="211" width="42" height="42" rx="10" fill="#f6c18a"/>
<rect x="163" y="163" width="42" height="42" rx="10" fill="#ef9351"/>
<rect x="211" y="163" width="42" height="42" rx="10" fill="#ef9351"/>
<rect x="259" y="163" width="42" height="42" rx="10" fill="#ef9351"/>
<rect x="259" y="211" width="42" height="42" rx="10" fill="#f6c18a"/>
<rect x="259" y="259" width="42" height="42" rx="10" fill="#4a9d5b"/>
<rect x="307" y="259" width="42" height="42" rx="10" fill="#4a9d5b"/>
<rect x="355" y="259" width="42" height="42" rx="10" fill="#4a9d5b"/>
<rect x="355" y="211" width="42" height="42" rx="10" fill="#f6c18a"/>
<rect x="403" y="211" width="42" height="42" rx="10" fill="#f6c18a"/>
<rect x="403" y="163" width="42" height="42" rx="10" fill="#ef9351"/>
<rect x="403" y="115" width="42" height="42" rx="10" fill="#dd6b52"/>
<rect x="403" y="67" width="42" height="42" rx="10" fill="#8f0e20"/>
</svg>