{"_id":"@andrewxhill/graphics-press-css","_rev":"8-95cba1df2d1028a3494cc6581bb9f563","name":"@andrewxhill/graphics-press-css","dist-tags":{"latest":"4.7.2"},"versions":{"4.2.1":{"name":"@andrewxhill/graphics-press-css","version":"4.2.1","keywords":["css","typography","tufte","data-visualization","tailwind","tailwind-plugin","dataviz","sidenotes","sparklines","dark-mode"],"author":{"name":"Graphics Press CSS Contributors"},"license":"MIT","_id":"@andrewxhill/graphics-press-css@4.2.1","maintainers":[{"name":"andrewxhill","email":"andrew@textile.io"}],"homepage":"https://andrewxhill.github.io/tufte2","bugs":{"url":"https://github.com/andrewxhill/tufte2/issues"},"dist":{"shasum":"41a76050bd72c4109bab302699f2d8732c40c11d","tarball":"https://registry.npmjs.org/@andrewxhill/graphics-press-css/-/graphics-press-css-4.2.1.tgz","fileCount":6,"integrity":"sha512-+Up66JUdviGKzRLwlAzkQm8xJ66CWpkHxN/GhtkfPJeXXBaFduSLbz8LbE5rsKXfjyp8MizHYik3xRJhRs63xg==","signatures":[{"sig":"MEUCIDMkrD9SLB89ikQdFesQdpj+qGkbzeW6LIOGfpxBpX27AiEA7pYBYg5R1bCEV57F0y0oUDSEYpESN0fZlaw0C6pGhv8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":192902},"main":"./css/graphics-press.css","style":"./css/graphics-press.css","exports":{".":{"default":"./css/graphics-press.css"},"./css":"./css/graphics-press.css","./css/min":"./css/graphics-press.min.css","./tailwind":"./tailwind/index.js"},"gitHead":"1b5fc0f431d94bd691926334f7e779b81283bc22","_npmUser":{"name":"andrewxhill","email":"andrew@textile.io"},"repository":{"url":"git+https://github.com/andrewxhill/tufte2.git","type":"git"},"_npmVersion":"11.11.0","description":"A typographic and data-visualization CSS library derived from the books of Edward Tufte, the cartographic color principles of Eduard Imhof, and the typographic standards of Robert Bringhurst.","directories":{},"_nodeVersion":"25.8.1","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"peerDependencies":{"tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphics-press-css_4.2.1_1774635396026_0.07357822083122856","host":"s3://npm-registry-packages-npm-production"}},"4.3.0":{"name":"@andrewxhill/graphics-press-css","version":"4.3.0","keywords":["css","typography","tufte","data-visualization","tailwind","tailwind-plugin","dataviz","sidenotes","sparklines","dark-mode"],"author":{"name":"Graphics Press CSS Contributors"},"license":"MIT","_id":"@andrewxhill/graphics-press-css@4.3.0","maintainers":[{"name":"andrewxhill","email":"andrew@textile.io"}],"homepage":"https://andrewxhill.github.io/tufte2","bugs":{"url":"https://github.com/andrewxhill/tufte2/issues"},"dist":{"shasum":"46c43ba9277b23c85eda914ffc389d0228d50224","tarball":"https://registry.npmjs.org/@andrewxhill/graphics-press-css/-/graphics-press-css-4.3.0.tgz","fileCount":6,"integrity":"sha512-8ZnnBX4WIk08IMqxRDOJVgfJzA3ZhkA7lzbS2CUJsuN0musf7wqC+Dc1GS38nBYeWkHhgtD1gCKpyaQjKudu5w==","signatures":[{"sig":"MEUCIBUkpVS5FiYxpYULQfqvo8aARXtbd65hY/g32S39IIoGAiEAhL8tDPPv8Vd/oT9NJxs9v+/9xQppQnwOQ9WNHPKRPZM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":212712},"main":"./css/graphics-press.css","style":"./css/graphics-press.css","exports":{".":{"default":"./css/graphics-press.css"},"./css":"./css/graphics-press.css","./css/min":"./css/graphics-press.min.css","./tailwind":"./tailwind/index.js"},"gitHead":"fd40ad6b74fdf494636a4158fcc9a063326951de","_npmUser":{"name":"andrewxhill","email":"andrew@textile.io"},"repository":{"url":"git+https://github.com/andrewxhill/tufte2.git","type":"git"},"_npmVersion":"11.11.0","description":"A typographic and data-visualization CSS library derived from the books of Edward Tufte, the cartographic color principles of Eduard Imhof, and the typographic standards of Robert Bringhurst.","directories":{},"_nodeVersion":"25.8.1","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"peerDependencies":{"tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphics-press-css_4.3.0_1774638078758_0.630832515561307","host":"s3://npm-registry-packages-npm-production"}},"4.4.0":{"name":"@andrewxhill/graphics-press-css","version":"4.4.0","keywords":["css","typography","tufte","data-visualization","tailwind","tailwind-plugin","dataviz","sidenotes","sparklines","dark-mode"],"author":{"name":"Graphics Press CSS Contributors"},"license":"MIT","_id":"@andrewxhill/graphics-press-css@4.4.0","maintainers":[{"name":"andrewxhill","email":"andrew@textile.io"}],"homepage":"https://andrewxhill.github.io/tufte2","bugs":{"url":"https://github.com/andrewxhill/tufte2/issues"},"dist":{"shasum":"a4d26ad038417674dd19e6fcf88cd4f28ccc0125","tarball":"https://registry.npmjs.org/@andrewxhill/graphics-press-css/-/graphics-press-css-4.4.0.tgz","fileCount":6,"integrity":"sha512-BRXUdeq8pM5CwnL65lQDQ8Vg5WldX3UxtMQeLJiAWuxOty+HW8WdhT93IUlaaGnDqKwaYH492SRj8B0+hBTRCQ==","signatures":[{"sig":"MEUCIQCz7TC3UmCHH92hUfW911Nw0AEGETVTt+9D46++UCoVAwIgaRZdO+z/yf8zh/TL5Cukbx2J+N+oKNRK8IU4AiXwaZk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":219351},"main":"./css/graphics-press.css","style":"./css/graphics-press.css","exports":{".":{"default":"./css/graphics-press.css"},"./css":"./css/graphics-press.css","./css/min":"./css/graphics-press.min.css","./tailwind":"./tailwind/index.js"},"gitHead":"fd40ad6b74fdf494636a4158fcc9a063326951de","_npmUser":{"name":"andrewxhill","email":"andrew@textile.io"},"repository":{"url":"git+https://github.com/andrewxhill/tufte2.git","type":"git"},"_npmVersion":"11.11.0","description":"A typographic and data-visualization CSS library derived from the books of Edward Tufte, the cartographic color principles of Eduard Imhof, and the typographic standards of Robert Bringhurst.","directories":{},"_nodeVersion":"25.8.1","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"peerDependencies":{"tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphics-press-css_4.4.0_1774640593877_0.4006796666035142","host":"s3://npm-registry-packages-npm-production"}},"4.5.0":{"name":"@andrewxhill/graphics-press-css","version":"4.5.0","keywords":["css","typography","tufte","data-visualization","tailwind","tailwind-plugin","dataviz","sidenotes","sparklines","dark-mode"],"author":{"name":"Graphics Press CSS Contributors"},"license":"MIT","_id":"@andrewxhill/graphics-press-css@4.5.0","maintainers":[{"name":"andrewxhill","email":"andrew@textile.io"}],"homepage":"https://andrewxhill.github.io/tufte2","bugs":{"url":"https://github.com/andrewxhill/tufte2/issues"},"dist":{"shasum":"e71f66629c447d2f56d9c58693c1e8c1465f29c7","tarball":"https://registry.npmjs.org/@andrewxhill/graphics-press-css/-/graphics-press-css-4.5.0.tgz","fileCount":6,"integrity":"sha512-WorMuTZYBZt892feDHKvKXkraVStuUtBQJmv4QY/7EUfijvUKPUxAqvAs0WoIvsBeLMGAFDRYzbkVkf0PFdWqQ==","signatures":[{"sig":"MEUCIQC3XHD1QRjPEjSXwoyWpbTy1pr87IoA1/LEllcnSZTEnAIgGmltxQ3GoBYUX3OtgAjNesPysbEfJDT4/IRhg9ZVmz8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":223242},"main":"./css/graphics-press.css","style":"./css/graphics-press.css","exports":{".":{"default":"./css/graphics-press.css"},"./css":"./css/graphics-press.css","./css/min":"./css/graphics-press.min.css","./tailwind":"./tailwind/index.js"},"gitHead":"4547e802dd8caaf94f9963380f516ab2a0bcbce6","_npmUser":{"name":"andrewxhill","email":"andrew@textile.io"},"repository":{"url":"git+https://github.com/andrewxhill/tufte2.git","type":"git"},"_npmVersion":"11.11.0","description":"A typographic and data-visualization CSS library derived from the books of Edward Tufte, the cartographic color principles of Eduard Imhof, and the typographic standards of Robert Bringhurst.","directories":{},"_nodeVersion":"25.8.1","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"peerDependencies":{"tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphics-press-css_4.5.0_1774641969841_0.6658919130397107","host":"s3://npm-registry-packages-npm-production"}},"4.6.0":{"name":"@andrewxhill/graphics-press-css","version":"4.6.0","keywords":["css","typography","tufte","data-visualization","tailwind","tailwind-plugin","dataviz","sidenotes","sparklines","dark-mode"],"author":{"name":"Graphics Press CSS Contributors"},"license":"MIT","_id":"@andrewxhill/graphics-press-css@4.6.0","maintainers":[{"name":"andrewxhill","email":"andrew@textile.io"}],"homepage":"https://andrewxhill.github.io/tufte2","bugs":{"url":"https://github.com/andrewxhill/tufte2/issues"},"dist":{"shasum":"2d3c8c31655217fd0a1e66384b6c494a20d85d86","tarball":"https://registry.npmjs.org/@andrewxhill/graphics-press-css/-/graphics-press-css-4.6.0.tgz","fileCount":6,"integrity":"sha512-EDsoRKaaJFH+T3y0D9MS/+KolTUokfksY+XSmk4WxQi4Ym2kTXB/dIEYboAkYm4xQEwhpzP5LOaB6kov3GNLRQ==","signatures":[{"sig":"MEQCIHjabg2IOoWJoQfswBerTR2WoTk2rwYXC9iNGI6nTlBKAiAwS1vcu17yAhMk8uuDzMxsfsrc1swgb5X/Tiq2gVDxGg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":228391},"main":"./css/graphics-press.css","style":"./css/graphics-press.css","exports":{".":{"default":"./css/graphics-press.css"},"./css":"./css/graphics-press.css","./css/min":"./css/graphics-press.min.css","./tailwind":"./tailwind/index.js"},"gitHead":"64511f56ddf421bfd28e8c5fbd999aa9ac3932bc","scripts":{"changeset":"changeset","version-packages":"changeset version","publish-if-needed":"node .github/scripts/publish-if-needed.mjs"},"_npmUser":{"name":"andrewxhill","email":"andrew@textile.io"},"repository":{"url":"git+https://github.com/andrewxhill/tufte2.git","type":"git"},"_npmVersion":"11.11.0","description":"A typographic and data-visualization CSS library derived from the books of Edward Tufte, the cartographic color principles of Eduard Imhof, and the typographic standards of Robert Bringhurst.","directories":{},"_nodeVersion":"25.8.1","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"@changesets/cli":"^2.29.7"},"peerDependencies":{"tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphics-press-css_4.6.0_1774648679822_0.3695638252959319","host":"s3://npm-registry-packages-npm-production"}},"4.7.0":{"name":"@andrewxhill/graphics-press-css","version":"4.7.0","keywords":["css","typography","tufte","data-visualization","tailwind","tailwind-plugin","dataviz","sidenotes","sparklines","dark-mode"],"author":{"name":"Graphics Press CSS Contributors"},"license":"MIT","_id":"@andrewxhill/graphics-press-css@4.7.0","maintainers":[{"name":"andrewxhill","email":"andrew@textile.io"}],"homepage":"https://andrewxhill.github.io/tufte2","bugs":{"url":"https://github.com/andrewxhill/tufte2/issues"},"dist":{"shasum":"278c1e94914b1a3b4a9f900aa5b0f87125855a4a","tarball":"https://registry.npmjs.org/@andrewxhill/graphics-press-css/-/graphics-press-css-4.7.0.tgz","fileCount":6,"integrity":"sha512-mGaBXY9VkXdCECQBxYnvsG6afi7w6yGKxQ1iOUrACfEEe7DibPLH9IwqdG+hPRK8vQR2a/ZXi5YuQHyHiiinqg==","signatures":[{"sig":"MEQCIH6Fs7D9aIojotmjy02P7NtR6x1KMfFsKsrSq0iZNGzsAiBoq6WJsuZ4WDl+7im2wQlqrylR0M/Q3pd/iltAJVwAOg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":234047},"main":"./css/graphics-press.css","style":"./css/graphics-press.css","exports":{".":{"default":"./css/graphics-press.css"},"./css":"./css/graphics-press.css","./css/min":"./css/graphics-press.min.css","./tailwind":"./tailwind/index.js"},"gitHead":"6bcd02c0bd875307fb4125778c167866229ab725","scripts":{"changeset":"changeset","version-packages":"changeset version","publish-if-needed":"node .github/scripts/publish-if-needed.mjs"},"_npmUser":{"name":"andrewxhill","email":"andrew@textile.io"},"repository":{"url":"git+https://github.com/andrewxhill/tufte2.git","type":"git"},"_npmVersion":"11.11.0","description":"A typographic and data-visualization CSS library derived from the books of Edward Tufte, the cartographic color principles of Eduard Imhof, and the typographic standards of Robert Bringhurst.","directories":{},"_nodeVersion":"25.8.1","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"@changesets/cli":"^2.29.7"},"peerDependencies":{"tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphics-press-css_4.7.0_1774649252951_0.39068471107780467","host":"s3://npm-registry-packages-npm-production"}},"4.7.1":{"name":"@andrewxhill/graphics-press-css","version":"4.7.1","keywords":["css","typography","tufte","data-visualization","tailwind","tailwind-plugin","dataviz","sidenotes","sparklines","dark-mode"],"author":{"name":"Graphics Press CSS Contributors"},"license":"MIT","_id":"@andrewxhill/graphics-press-css@4.7.1","maintainers":[{"name":"andrewxhill","email":"andrew@textile.io"}],"homepage":"https://andrewxhill.github.io/tufte2","bugs":{"url":"https://github.com/andrewxhill/tufte2/issues"},"dist":{"shasum":"b245f4cdcc0f077e6e2ab727aef90551fc407c01","tarball":"https://registry.npmjs.org/@andrewxhill/graphics-press-css/-/graphics-press-css-4.7.1.tgz","fileCount":6,"integrity":"sha512-ZIfYHAGaM+9KSOuWTwOwBIKm6JJaLtsrNvI+8pT34ocCSKZfsbWhGF9BPnjWO1ZMvm4R5AHCf596U5A1TPwJdA==","signatures":[{"sig":"MEQCIAb99NpPbibGngoMmH7shfGyH5w8zxHKLT3qTajGXgOoAiAbN3gElcJdl6Sx+HiNu+0MylzzYIhR/tsCEYxcS+E/Bw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":236685},"main":"./css/graphics-press.css","style":"./css/graphics-press.css","exports":{".":{"default":"./css/graphics-press.css"},"./css":"./css/graphics-press.css","./css/min":"./css/graphics-press.min.css","./tailwind":"./tailwind/index.js"},"gitHead":"8e13ffac5376a69ef70b8f49894428cf7cd422dd","scripts":{"changeset":"changeset","version-packages":"changeset version","publish-if-needed":"node .github/scripts/publish-if-needed.mjs"},"_npmUser":{"name":"andrewxhill","email":"andrew@textile.io"},"repository":{"url":"git+https://github.com/andrewxhill/tufte2.git","type":"git"},"_npmVersion":"11.11.0","description":"A typographic and data-visualization CSS library derived from the books of Edward Tufte, the cartographic color principles of Eduard Imhof, and the typographic standards of Robert Bringhurst.","directories":{},"_nodeVersion":"25.8.1","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"@changesets/cli":"^2.29.7"},"peerDependencies":{"tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphics-press-css_4.7.1_1774649562268_0.7427037775386278","host":"s3://npm-registry-packages-npm-production"}},"4.7.2":{"name":"@andrewxhill/graphics-press-css","version":"4.7.2","description":"A typographic and data-visualization CSS library derived from the books of Edward Tufte, the cartographic color principles of Eduard Imhof, and the typographic standards of Robert Bringhurst.","keywords":["css","typography","tufte","data-visualization","tailwind","tailwind-plugin","dataviz","sidenotes","sparklines","dark-mode"],"homepage":"https://andrewxhill.github.io/tufte2","repository":{"type":"git","url":"git+https://github.com/andrewxhill/tufte2.git"},"license":"MIT","author":{"name":"Graphics Press CSS Contributors"},"scripts":{"changeset":"changeset","version-packages":"changeset version","publish-if-needed":"node .github/scripts/publish-if-needed.mjs"},"publishConfig":{"access":"public","provenance":true},"exports":{".":{"default":"./css/graphics-press.css"},"./css":"./css/graphics-press.css","./css/min":"./css/graphics-press.min.css","./tailwind":"./tailwind/index.js"},"main":"./css/graphics-press.css","style":"./css/graphics-press.css","peerDependencies":{"tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"tailwindcss":{"optional":true}},"devDependencies":{"@changesets/cli":"^2.29.7"},"gitHead":"2b51168bf48e12aee70fbfb0e143f81707d3c435","_id":"@andrewxhill/graphics-press-css@4.7.2","bugs":{"url":"https://github.com/andrewxhill/tufte2/issues"},"_nodeVersion":"25.8.1","_npmVersion":"11.11.0","dist":{"integrity":"sha512-DPLPOTJd4gz39uhuOpwINWQQXXQ29M8Lxvahu5v5z7bHaZzuPwQoFfRqmBev7S2dZxYPavROUgfbIl3ETMb9Ig==","shasum":"7b110610ad1fa70145f608fb4beb566baa8808c1","tarball":"https://registry.npmjs.org/@andrewxhill/graphics-press-css/-/graphics-press-css-4.7.2.tgz","fileCount":6,"unpackedSize":236719,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIFUf95BpBb0j8pEdi8p61Y4Xp3Eo7+sCaTBjQfHrvWnnAiA/TkfQ65bNYHOmiXRlz/njruTZBfghFso62FR2OpKgzQ=="}]},"_npmUser":{"name":"andrewxhill","email":"andrew@textile.io"},"directories":{},"maintainers":[{"name":"andrewxhill","email":"andrew@textile.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/graphics-press-css_4.7.2_1774650321166_0.5149468327231348"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-27T18:16:35.846Z","modified":"2026-03-27T22:25:21.495Z","4.2.1":"2026-03-27T18:16:36.194Z","4.3.0":"2026-03-27T19:01:18.921Z","4.4.0":"2026-03-27T19:43:14.040Z","4.5.0":"2026-03-27T20:06:09.995Z","4.6.0":"2026-03-27T21:57:59.957Z","4.7.0":"2026-03-27T22:07:33.084Z","4.7.1":"2026-03-27T22:12:42.414Z","4.7.2":"2026-03-27T22:25:21.387Z"},"bugs":{"url":"https://github.com/andrewxhill/tufte2/issues"},"author":{"name":"Graphics Press CSS Contributors"},"license":"MIT","homepage":"https://andrewxhill.github.io/tufte2","keywords":["css","typography","tufte","data-visualization","tailwind","tailwind-plugin","dataviz","sidenotes","sparklines","dark-mode"],"repository":{"type":"git","url":"git+https://github.com/andrewxhill/tufte2.git"},"description":"A typographic and data-visualization CSS library derived from the books of Edward Tufte, the cartographic color principles of Eduard Imhof, and the typographic standards of Robert Bringhurst.","maintainers":[{"name":"andrewxhill","email":"andrew@textile.io"}],"readme":"# Graphics Press CSS\n\nA typographic and data-visualization CSS library derived from the books of Edward Tufte, the cartographic color principles of Eduard Imhof, and the typographic standards of Robert Bringhurst.\n\n**[Live Demo & Documentation](https://andrewxhill.github.io/tufte2)**\n\n## Features\n\n- **ET Book typeface** -- Tufte's open-source Bembo digitisation\n- **Sidenotes & margin notes** -- CSS-only, no JavaScript required\n- **Data visualization components** -- dot charts, dumbbell charts, sparklines, bullet graphs, heat tables, slopegraphs, parallel coordinates, and more\n- **Narrative map framing** -- reusable slippy-map container, inset legend panel, and map annotation chrome for MapLibre/Leaflet examples\n- **Analytical briefing blocks** -- strategy headers, metric strips, tab rows, analytic cards, app-shell primitives, reusable research rows, and editorial spread layouts for research apps\n- **Chart interop tokens** -- semantic chart colors and axis/grid variables for D3, Recharts, ECharts, and hand-rolled SVG\n- **Editorial spread layouts** -- dual-column analysis blocks with deliberate chart/timeline breakout rows\n- **Theme-aware by default** -- follows `prefers-color-scheme`; manual override via `.dark`, `.light`, or `[data-theme]`\n- **Responsive** -- fluid typography, mobile sidenote toggles, adaptive chart layouts\n- **Print styles** -- optimized for paper output\n- **CSS layers** -- `@layer` for specificity-safe cascade; override without `!important`\n- **oklch() colors** -- perceptually uniform categorical palette per Imhof's equal-weight principle\n\n## Install\n\n### CDN\n\n```html\n<link rel=\"stylesheet\" href=\"https://unpkg.com/@andrewxhill/graphics-press-css@4.7.2/css/graphics-press.css\">\n```\n\n### npm\n\n```bash\nnpm install @andrewxhill/graphics-press-css\n```\n\n```css\n@import '@andrewxhill/graphics-press-css';\n```\n\n### Tailwind CSS\n\n```bash\nnpm install @andrewxhill/graphics-press-css tailwindcss\n```\n\n```js\n// tailwind.config.js\nmodule.exports = {\n  plugins: [\n    require('@andrewxhill/graphics-press-css/tailwind'),\n  ],\n}\n```\n\n## Quick Start\n\n```html\n<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n  <meta charset=\"UTF-8\">\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n  <link rel=\"stylesheet\" href=\"https://unpkg.com/@andrewxhill/graphics-press-css@4.7.2/css/graphics-press.css\">\n</head>\n<body>\n  <article>\n    <h1>Your Title</h1>\n    <p class=\"subtitle\">Your subtitle here</p>\n    <section>\n      <h2>Section heading</h2>\n      <p>Your content with a sidenote.<label for=\"sn-1\" class=\"sidenote-toggle sidenote-number\"></label>\n        <input type=\"checkbox\" id=\"sn-1\" class=\"sidenote-toggle\">\n        <span class=\"sidenote\">This appears in the margin on wide screens.</span>\n      </p>\n    </section>\n  </article>\n</body>\n</html>\n```\n\n## Components\n\n| Component | Class | Description |\n|-----------|-------|-------------|\n| Sidenotes | `.sidenote` | Numbered margin notes |\n| Margin notes | `.marginnote` | Unnumbered margin content |\n| Figures | `.figure-full`, `.figure-margin` | Column, full-width, or margin figures |\n| Tables | booktabs default | Three-rule tables in Gill Sans |\n| Sparklines | `.sparkline` | Word-sized inline charts |\n| Dot chart | `.dot-chart` | Tufte's bar chart replacement |\n| Dumbbell | `.dumbbell` | Before/after connected dots |\n| Strip plot | `.strip-plot` | One-way scatter |\n| Bullet graph | `.bullet-graphs` | Gauge replacement |\n| Heat table | `.heat-table` | Color-encoded cell values |\n| Ranked table | `.ranked-table` | Dotted leaders, recessive ranks |\n| Small multiples | `.small-multiples` | Grid of comparable charts |\n| Timeline | `.timeline` | Events and periods |\n| Slopegraph | `.slopegraph-wrap` | Two-point comparison |\n| Parallel coords | `.parallel-coords` | Multi-variable SVG |\n| Slippy map | `.gp-map-block`, `.gp-map-frame`, `.gp-map-panel` | Narrative map embed with overlay panel and key |\n| Strategy brief | `.brief-backlink`, `.brief-header`, `.metric-strip`, `.tab-nav--filled`, `.analytic-grid`, `.activity-timeline` | Analytical dashboard framing for research and trading apps |\n| App UI | `.gp-app-shell`, `.gp-app-main--detail`, `.gp-app-main--detail-wide`, `.gp-workspace`, `.gp-workspace__tabs`, `.gp-workspace__header`, `.gp-workspace__toolbar`, `.gp-toolbar`, `.gp-btn`, `.gp-input`, `.gp-panel`, `.gp-kpi-grid`, `.gp-data-table`, `.gp-card-grid`, `.gp-progress`, `.gp-meter`, `.gp-rank-list`, `.gp-rank-card`, `.gp-record-list`, `.gp-chart-frame`, `.gp-spread`, `.gp-treemap`, `.gp-treemap__tooltip` | Tufte-compatible operational UI layer for analytics apps, research lists, ranked bar views, chart wrappers, editorial spreads, wide workspace shells, treemaps, tooltips, and quantitative table cells |\n| Bar chart | `.bar-chart` | Minimal tick or filled bars |\n| Pull stat | `.pull-stat` | Large featured numbers |\n| Stat grid | `.stat-grid` | Multiple metrics under one rule |\n| Evidence | `.evidence` | Image + analysis layout |\n\n## Themes\n\nDefault behavior is automatic via system preference. Manual override is also supported:\n\n```js\ndocument.documentElement.dataset.theme = 'dark';  // or 'light'\n// `.dark` / `.light` classes also work\n```\n\n## License\n\nMIT\n\n## Release Flow\n\nReleases are CI-driven with Changesets.\n\nFor any PR that should publish a new package version:\n\n```bash\nnpx changeset\n```\n\nChoose the release type:\n\n- `patch` for fixes and polish\n- `minor` for new backwards-compatible components or tokens\n- `major` for breaking changes\n\nWhen changesets land on `main`:\n\n- GitHub Actions opens or updates a release PR\n- merging that PR bumps the version and creates the release commit\n- CI tags the release, publishes to npm, creates the GitHub release, and republishes `gh-pages`\n\nDo not hand-create version tags or GitHub releases for normal package publishing.\n","readmeFilename":"README.md"}