{
  "api_version": "0.6.0",
  "artifacts_sha256": {
    "catalog.css": "bd9073c4382792deb37e57eeb7537f7d33806dec65f66cedaa34ed96acb2bc61",
    "catalog.js": "f9c35a23bb6f234e5483e581077f8f6047009c4549a759f1661025cbbd0c6db8",
    "chart-sections.js": "e9a0b2fdc4ab3f3919af1d74538df16611f24c8360a1f99473f54fe1139b9e2f",
    "cn/accordion/index.html": "b09891f4b15df6881f5202af25102ea0160d79f2bacb30759551bdd2907fba7d",
    "cn/alert/index.html": "2c3396e9841695897db156878dd812128547cc0d4a3e6f16b9ccb6f06502be55",
    "cn/aspect-ratio/index.html": "9b4905420ae30384e71b20c54bfe6324e5e45db5d0f852566274f93fb86659db",
    "cn/avatar/index.html": "1dc6a1363d4c56b2e2f093d5b48776e8c036a52274c5122ccc7736a661f924ea",
    "cn/badge/index.html": "a8ac684343e838a3dd153f48ce43d70c545bb48f95ce4cfc611c99e95336b3d3",
    "cn/breadcrumb/index.html": "e9955f8ca718b7a20bfa81b6f59a1783cbbddd3c21f323536a4c05def06347b6",
    "cn/button/index.html": "c2400a6781d0a7f9db309d88946a18b7fd759418db6516b2dfcbd4ff799ddd23",
    "cn/calendar/index.html": "fe413feba148d3f922a0cb123bbd5305b958db318af7597724b51e07707ebb4c",
    "cn/card/index.html": "f77c1ad206e901388d350e03db0ff4fbe6a51bf5a6c8dad61a4b32be594c0aa4",
    "cn/charts/examples/area-chart/index.html": "b42c9fe0daded1c8f1a0dab8119170ee7f10da80f4a0efe3a72da06a1366b135",
    "cn/charts/examples/bar-chart/index.html": "41d854367fa92f4b13343eaf6bfc8a450ebb682c1c6d802570f63250202fd95e",
    "cn/charts/examples/comparison-chart/index.html": "16cca87eb582fc95ec2887cfdb3dce8c1aa54a9ed87d1429c005cbae1e6eb9e9",
    "cn/charts/examples/donut-chart/index.html": "0717aa5fc37371151be035bb92c1ad2a2713a08f919ffd44bbac6066b5b84ff0",
    "cn/charts/examples/histogram/index.html": "2494c0ff4062dd513965df537c0ae17d85bfc4393fb2889321e0bce93e5167e7",
    "cn/charts/examples/horizontal-bar-chart/index.html": "f80eac86711313aa9c6c055ef27d6c71fed3a8480f1d4ade5c2ce5924a0238cd",
    "cn/charts/examples/pie-chart/index.html": "5ebe37e56999200b7a3e88ab43a41f73dfe5a320c0ee4e0aa382cba8e9032f78",
    "cn/charts/examples/sparkline/index.html": "60e311b26f6a0faa5785f20fc8ab73def22fcf86b89a4314d502949d5cf96bfb",
    "cn/charts/examples/stacked-area-chart/index.html": "2742077f8ea6820ca5ea8f60e8c4657935e9cd1f07749122519c39014561d201",
    "cn/charts/examples/stacked-bar-chart/index.html": "9be4c5f6814f87dafd4573656a7a85fb86109f898bf0fa8614bd5cb092315c3c",
    "cn/charts/examples/threshold-chart/index.html": "409371cb5100405d249662c366f3ae33012ac8e6757a9f3f8dbe7c00f5f60d90",
    "cn/charts/index.html": "7e003fa9f8c257529155ec263dbc328a78db8a93987dddbb22f5c80c98338bd3",
    "cn/checkbox/index.html": "bfa48e46fb56331da4a71902d085e4491e8a0d029072d208c7b2a03b3ad060b5",
    "cn/collapsible/index.html": "bfa045b03f0bd609cbb3d3b7b9e6bafcc838162d4fddb0b44021039a8b51dc92",
    "cn/color-picker/index.html": "266ab5dc90dac362a5e631e2aa15b3de17529c1127510a385cde48da4033dbdd",
    "cn/combobox/index.html": "833bd4d10199df34fb30bf57d2585c207c603371d88c94cd99a674c906119632",
    "cn/context-menu/index.html": "09906de0aa5547367e43f5e0bb00f1c0fca034270f2b4ec476a3a00254161b6f",
    "cn/date-picker/index.html": "517c557d84b397d1afe7e456f1ce4cd3f3d70c76249e84da5a20bb6fa6bb1bc4",
    "cn/dialog/index.html": "fc10bb0218c16054512bf2e83f84755c8a13356f7ffa7cd417b745a4255271f8",
    "cn/drawer/index.html": "1730380e685d363a0e8eb8daaa1891651168e833d9a6c318abe704d1bbd4f4f8",
    "cn/dropdown-menu/index.html": "0c8cfccc5c58605e064be1f876b94e9edec05411f73b5d39464b3eb25ee05c5c",
    "cn/hover-card/index.html": "ef413cafd9c1dc9896f3744f6e624419df1d069e7b6655fd532c49057d465150",
    "cn/icons/index.html": "ad54d8110e4a112dc0e66c3ecdec4caeffefdfd00b3deecaa5da1b94fafd0e43",
    "cn/input-otp/index.html": "61240063030b3b998d851f9a10aca3767bfc8715116c75e83210fed7020eda8d",
    "cn/input/index.html": "8180dd8f60acbff7e506da5969efad830abd3840f46c1048ef236cef07e0e5dc",
    "cn/kbd/index.html": "cc542acc28ccd351bfdc9b0d5dbb4e810c47427111743275107a85adedc08f75",
    "cn/label/index.html": "64320dac003f2011c5dfa8f66458b7e8947f915c5b024a660e84b78889efc8ab",
    "cn/line-chart/index.html": "b2619274e4db6473a10f3d0eadc0d199f50ca0a330bfca333ac71e50b4882b7d",
    "cn/menubar/index.html": "abe5bd8e2203e57f0bac53d4414772c983a02342086308a7fe96acb353013467",
    "cn/navigation-menu/index.html": "f20f8cd44e035bd8c7f9380d26c53c04c8bd996ec4ac8508eacaacf53f0c1516",
    "cn/number-gauge/index.html": "feeb8a02b24c4cc93ca9533fcc1efec41b5d6c336bb966c4257c443260f213e4",
    "cn/number-input/index.html": "a007273d9fe7a99379fd4fb01a3fe9844523f82179a87047c03709ff74eedbda",
    "cn/number-range-gauge/index.html": "faea8e3b0da6b29aade6dac4ea0403be0ef1dbd410fb57351989addeaebfb771",
    "cn/pagination/index.html": "964cd3240dc45470121e6f921326473c270322b3e1df604ed99911af4a05dc4d",
    "cn/popover/index.html": "13238d69ae575deb2121a9b92ce609b210f47c647d174d6f77bff8107b16a6d3",
    "cn/progress/index.html": "4df4d63eeb45a1107f6a615befffddc6c6f21242b6683c9ca4fac7ba6617640d",
    "cn/radio-group/index.html": "9d7dec6f82ccce6bbe3425cf343bc10aa5f1a844e25d7fd89c4dc4b652beaf80",
    "cn/resizable/index.html": "cd0957d25b39e9060ba55ebbb961830b2b317f6f339ca16ebbc0ed3e5853aadf",
    "cn/scroll-area/index.html": "757bb5ee4c609dd75d5a757ea2a069fd06243be56e67c73d580ecf862b9483f0",
    "cn/select/index.html": "e199f588d176c8c064c4f6549fb5c9b63bc0685b567f1b87afadeece6b571aee",
    "cn/separator/index.html": "acc9064ee6a9b492abb60026871acb9bde56cdcccb7cd5103c4d0eec389277b5",
    "cn/sheet/index.html": "8363225fdcda07d17fae2a6dababce94e900b5527843af88336bfec7c85cdf3c",
    "cn/sidebar/index.html": "34f09fadbab87854abeb55912c2663627062cdfc0c9ca0a1533ba07b47e6c859",
    "cn/skeleton/index.html": "318cf2c0b6a8b7bcb394ae8a3af8a02d8c23df3e03ad9b5c53002b981df22b5e",
    "cn/slider/index.html": "545aab5806b583d1c473a3a9ffef4c6dc4b9aa585a3449b0b0ea61999cf0c853",
    "cn/spinner/index.html": "3f54bf6d7e48bb1b781142cd38c1cfca663fc218bd798f18cfb4625cc638e38a",
    "cn/switch/index.html": "d456ca0169f7b0513bba933f2807f3e59707b074682647b50e2195af7fa432d3",
    "cn/table/index.html": "533ce0813ee3da0020524c222fe4552fc0ca288e04ce2e937998b8a6aa437d19",
    "cn/tabs/index.html": "04d643f9653cee6618c038c8af99032373e18e3602e938924afa52a86c787e14",
    "cn/textarea/index.html": "d13bbe98fa15e17f893e083c04392da698b48674aaa135379bb7dcb371258730",
    "cn/time-picker/index.html": "51092d8a53008de03851ae8ba75d49a22b8840b79f6bee67ab78b319a82844ee",
    "cn/toast/index.html": "3fac19752f45b4c6cf9c8da6a1d77b4738752340c36fda1d0af0bc013704556c",
    "cn/toggle-group/index.html": "2adfeefcfb1ac605f578275f0fb6f9d006a15e10713b686df41efdea50b3af32",
    "cn/toggle/index.html": "6842d8b269302e5709de0f642ba84c20656d7e4191cf8717d982f9e533e80735",
    "cn/tooltip/index.html": "b4a658a07ea8eee7de085280d24c468a0b8fbcbf548b531feca3f6b529622ab3",
    "cn/tree/index.html": "b5d15809a7a4b21e069f2bc6b2b361327388e7351749a911714865683345758b",
    "cn/typography/index.html": "02424a8583a26cd7f4bdf67886a552831772125df75b123d180b79122e5e3f84",
    "code.js": "fd593015568299510eb0b26e8b2fef4a4f7dbf40bf1ab24c97fa58e8556162e2",
    "content-nudge.js": "76ece6d1cb5d141dff35d9a77b841a552e363f8a03fa1e31520d4527a00c252c",
    "detail.js": "91cadd18f8d37221aed885cf4352032a8596a6112df8481bb5e3970782ab5991",
    "index.html": "4d3f0413a87b22c1cd7617cc35c4cb08431d288b0706a057b0e05f2eccc91c69",
    "installation/index.html": "9cc55a4f2d7ec7f535e934570e09ac886772115a918bbdead3406d9a0108f5d9",
    "layout/audio-player/index.html": "435dae3aa43042a4a9d55bfe3af68da4308de88425a0ecc717fdfa981c57407b",
    "layout/blockquote/index.html": "b9070a570703cc11dff496525589df7b7a8cd91094a747edc903c0b00d2cec70",
    "layout/canvas/index.html": "ca1c11cb121adb39a152933688feefe5cf42517d8a94d5211283b762bbb42957",
    "layout/code-block/index.html": "a08afd01f3f45e4947fbd7bf7dece66418d3beb0c753eed0a9c9aa05a4462566",
    "layout/code-editor/index.html": "7e0ea7608a545ecf4fc35dcb22b0ec3bdcc8f31d43e26947ff46a9949e6c8fe6",
    "layout/gestures/index.html": "ee5026a2886e5c2d4f93e0826cd8c053e77fdc5bb205880f85a12e838955bbfe",
    "layout/image/index.html": "42f21b221ff1d3d4cbe94d52439f50e9c21f2ec69984f855253f61f80ad78f71",
    "layout/link/index.html": "350992c1d431a4e15b7b2dd838906a36d91813a8850237ccac4933e1c99b6a51",
    "layout/lists/index.html": "551e01e81e06f4b25529ddf35dec4822a6fe0396b1db4e9fb4fb82934f70e08e",
    "layout/markdown/index.html": "dfdff3ffbfc4a10c4aa17c9bb60067361bd990821d995e299f7f2dfd8ea32e6f",
    "layout/motion/index.html": "b64a0f6b4227ee9cb6fda0f84ed3ca09035f30eceb33425ea5208e2645706980",
    "layout/notch/index.html": "7017fcf7245b23f782eaf00d822f30efe892178c148d04136cedb058759c2df9",
    "layout/rich-text-editor/index.html": "c349dd37cc037b64b938913c4fea2ebe39a7057fb8dfc30beaae1f5c2d5154f1",
    "layout/svg/index.html": "5a8e1542848d4734d0f327bd2f0eeb966f2b46e378472ff22fee10bb2e800472",
    "layout/video-player/index.html": "4bebb5d6baee006bdf724324f1255c23c9d184e09f25e153af2e85534b9e026a",
    "layout/virtual-list/index.html": "635768031bebb1769a70cb48a4fea166c719e6574fb5c4c7f1f97bf5c547a65f",
    "layout/waveform/index.html": "96d9d11def76ec9ad32da97e5c4b644e20eece99a22c7a382332f925d32b5016",
    "package.json": "609158e6c5fbc237939fa3ddf7faab80ab690bdc0c8d584414a885130103c4e8",
    "previews/accordion/poster.png": "c3fa765ad31c4bf00542d7cf69d5b1309f11af8b035dcf0f99ff973741ae7393",
    "previews/accordion/preview.gif": "189d6ebda5634b6aeb4acce573196e6e8e6f8453c98778d542f0ad63a23a4bbe",
    "previews/accordion/recording.json": "056073408ce1e397cb5d23c11a15484dc06229fff27eccb60b5548870bc980b5",
    "previews/alert/poster.png": "16a2ad0799b6dfb64b998306774d13c60f4cb30e3716915a8fb48092d75d9a0c",
    "previews/alert/recording.json": "b4a111956ae56753b9cd6ce24181395a1100ff919b59accec84701618290bc39",
    "previews/area-chart/poster.png": "f9af0c9e110ac6c3b4c860fd41eeb07aac87fea23c731999d12006b5d6530793",
    "previews/area-chart/preview.gif": "128da16b72782baef061b76688464ddda9da912c834b6dffa4c3015d19a1c626",
    "previews/area-chart/recording.json": "03864e0f7eb99473160d9d4b9dfffb134582e31cba7587dd80f36a6a685f4834",
    "previews/aspect-ratio/poster.png": "e503cd7e0b88e2d4216eb7d24aab46e283b7ead5f2688cb5bf62712e946d2624",
    "previews/aspect-ratio/recording.json": "c97e85ff185a3a5b69f58e78ce38f999c922461426780937b8b21e65cf7da54f",
    "previews/audio-player/poster.png": "93c7b98d9d3e431a8e001cd3bf2b9ae4e06eb9c8777ae1830b9993ff72610d4d",
    "previews/audio-player/preview.gif": "2ca0ccd0bb29704fa0c72c1102fb83662f6813771e425e8cf85bce198fb3bf7b",
    "previews/audio-player/recording.json": "085b5b7c7ac3b1353ffe3811524522cb977242bd9889e88e69b22d13fa873b47",
    "previews/avatar/poster.png": "5f3e5376fe90eac0aab9183a5a350cc2138e74e6446d8d7420179e6899f53f83",
    "previews/avatar/recording.json": "2be04491c8ce2ce77016864bdf06bc872f22fe1abbd872f6a5821e69673d9a88",
    "previews/badge/poster.png": "2a2e0845f999178d9f149d093aee91e0ff066301298bc9b740a0d9aa3c74c220",
    "previews/badge/recording.json": "73988d7e9c85199387c6b85bc2259241a035730710278e8da4816fa10ad750db",
    "previews/bar-chart/poster.png": "1750ef97e9155d472c57f96a0764ad71ab489b147b7475c114dd257a961a8d3a",
    "previews/bar-chart/preview.gif": "51087689e4920e901b1c445ad976a9ade1aa8802029f302320d06895956040a6",
    "previews/bar-chart/recording.json": "fec92ee6922412e4406b4e0db752191b26e632ab6edf9acfb971d3dddd98c161",
    "previews/blockquote/poster.png": "00c1cff889b1f4330003973c91adcd30e1fcbad5600f9317d4b28a9705e099eb",
    "previews/blockquote/recording.json": "f2fd01b97c9c9ce35b0100d52fb31ef13551830f62b2e4c696346a7b4b391910",
    "previews/breadcrumb/poster.png": "5cbc57feedad5c6e06b160da0de9f5b6f8637449922c6d3b6619c77040aa4f45",
    "previews/breadcrumb/preview.gif": "3ef6d360ab3e29276ee016f6bc0758d1cfffc7f58000b45752225e6b45ec8628",
    "previews/breadcrumb/recording.json": "5c7fcdd4d939ca527b0eec1ae9a85e12bee5a084c6c9cf297b064db9d87f2ef2",
    "previews/button/poster.png": "e8a8cf1ce039ce82bc66e4314940b3b8cb3bc315f73ba772b6a8ee8fc842061b",
    "previews/button/preview.gif": "104c6a4e3551c8a9297cfa76837bbc64a6240ddeabef7540f54e5046e5cf8446",
    "previews/button/recording.json": "6a9a082c17420b2e50fd6f0c19cdf2e80bfaa6d227b998c7812f1e3cf1e697df",
    "previews/calendar/poster.png": "e64ce97774005bfe5e9963b74eb27f914fff7687983fd145302119fe89c7094b",
    "previews/calendar/preview.gif": "1c6e8c558c088aaaed34f2eabff4995572a0c2ae1361b71ea9fe93982736264c",
    "previews/calendar/recording.json": "3f73ff94f606e4136948923e621fc9640b5aaf86590df8943a215f544dd8e7f9",
    "previews/canvas/poster.png": "64b3a0a9a234a4d84a772b24146e77efbbf856090ad9fb353bd0c9bf2915f9ae",
    "previews/canvas/recording.json": "8f99d5eb9de7f66bdc36f8460bb9639c61b5a47e071a2c31eccff894be611d99",
    "previews/card/poster.png": "36d3e56e0d6d23d992c43e374ea2e9da387451362a30e5a1fca2ef59527cd173",
    "previews/card/recording.json": "3c5996dbe92b01320f1d3209cbd597081ed260cfb94fcfdd6679faa3faa469fc",
    "previews/charts/poster.png": "cb67f9b96eba2be76560ae9450292c89b79808c6120c88383df6c9eeb4c6ba52",
    "previews/charts/preview.gif": "5494a4c6503933d17e90cee5d0c68a7a98419923490170f0042f540758a275ed",
    "previews/charts/recording.json": "95182a9a263e1eb4a8a34d157bc3634fe9fdf129854814cefe828ac89cd3dc57",
    "previews/checkbox/poster.png": "8786a411f6800e394d70345e620696bc3a5dc9e2ef14521893f30fb1f7ec1af0",
    "previews/checkbox/preview.gif": "0d9d68979662e1a028350f67c51c1d1f66146b76e1abd853e79e868571fa1409",
    "previews/checkbox/recording.json": "3b0194f512e1dee56c36803e2db9d0dbb5a0560e6ee1e8e1ef6008fb13418b0f",
    "previews/code-block/poster.png": "1f6afeae8a5655cf41002f9f0da15593ebf7ec57d7d650a2346cbb2fdbb46e6c",
    "previews/code-block/recording.json": "3892ba7e3622254f822abf82e81d6314124beb672ef48ebbae32cf390974c26f",
    "previews/code-editor/poster.png": "f540ab6c53bd4378a894737c68ba3402038b0a990d3f6ea58fcb9cc1fb074cc8",
    "previews/code-editor/preview.gif": "94ccdf26d4884e9d1ee1d761fe59212dc1995ea8340cfe31bfe8a4b414e776be",
    "previews/code-editor/recording.json": "77f55c5ab276fe1ebd1351ba555872a478efb3f175ae0cc40aea09dad1fb2259",
    "previews/collapsible/poster.png": "3a6af483308a134253d267ee89ff7b7b7cec86552da1f90ba4d6bb1ff1c600de",
    "previews/collapsible/preview.gif": "1065c2bf50f7e62922c76d6a34102619de1852147e99cced8dd20312498481b5",
    "previews/collapsible/recording.json": "7228b201d9c2761ba0f24b6701c4f0ce0f4dadafc1229fc6897e18ca56f91619",
    "previews/color-picker/poster.png": "bc823f82c7b2747f27b73eefefa238ecb892f8430fa5b6ac207a4872c5f5b7e6",
    "previews/color-picker/preview.gif": "2740f750e69e0587371f3e0e3bd7d597d7133ffa9ea08206f3eeea01c6cf1765",
    "previews/color-picker/recording.json": "b3d472a97670948e1f05b16063fa6634929cf37941306bd75e19e5a31485eced",
    "previews/combobox/poster.png": "d4cbcc76b64ccb8164da76a68779e12708d0328060ae4a4501e7ce6343a8cf4e",
    "previews/combobox/preview.gif": "52186b2657828006ce6393b6527c5e90bab723fe7eee162463f5a045dbfbed63",
    "previews/combobox/recording.json": "9e7941b93843d13d60f50a9e46e7e8049f858eb6e3c462ea8e25db298a54d12f",
    "previews/comparison-chart/poster.png": "a3454ddcc79c90230622c9d141956f60e57e9d511bbd87249aff42cdcaeeb166",
    "previews/comparison-chart/preview.gif": "1e324846969b6c561722058b19e9781ba8bc622a8e34f24e93ae2e127ef2affb",
    "previews/comparison-chart/recording.json": "0f5e687ecf8050f5e2ae909bd36671fba0627ca9dd0b8ddf1a1e87795602b0f7",
    "previews/context-menu/poster.png": "82390cd1e6d613e206a3b9cd73b5f80ebc7b170aaebda2d2fce5d4c7a2abbb65",
    "previews/context-menu/preview.gif": "db2a765c6486fc5a0fe3b8d15ca4354b0d5c6d83df53ff19c83c6e67964513ee",
    "previews/context-menu/recording.json": "6b0e79c1a38029d478a8dbaf0732a309d9ae6986d36855c3edccf1dfe0413c61",
    "previews/date-picker/poster.png": "f5a631f4daf32eb72a7f567aba21c748adf5f9b7acb0b6b74563bffe4579ba78",
    "previews/date-picker/preview.gif": "461a185f936e743f6bd5231c4753e8c263e136beba63a70aa17efd350db1645a",
    "previews/date-picker/recording.json": "75737c0f3e4b5b0602e0aeedf6e71a8f4f97265b1e6693c43f5b400a874c3065",
    "previews/dialog/poster.png": "f707cc533c9c5633fc5cbb3a298138a403b3a1be1c2f6f5b55769b073edce612",
    "previews/dialog/preview.gif": "b9f67664190c3e14b4bce59b5ab9f772f9065869343b837b0143152742b2d220",
    "previews/dialog/recording.json": "1f88ee14efde3960e0160b35ce9b55e42b122747e21e83618f882d2b8d4e91d0",
    "previews/donut-chart/poster.png": "9aac90dd198f2c9604f4a10fcd1e0198c562d9c439aeaeead3211b34129afc45",
    "previews/donut-chart/preview.gif": "fb139bad62ad1888e3b7051dc2bdc528db15abcd881c0b809bfe0939af4cb69f",
    "previews/donut-chart/recording.json": "224062a7bccf49bfdf74d0ac5b49f2ba18b857b75442eaee71281ffda873fef1",
    "previews/drawer/poster.png": "e3d14c290633637accb963189cf95102a8b1802c1247a581106cf27d11f26d56",
    "previews/drawer/preview.gif": "02cccaf4623f3bf030d65f8c52296277cdc7cea6db16b33ab8568f015ced6022",
    "previews/drawer/recording.json": "44d7e5c9117392db1bcb9e0ff078d4349e94475f43bef69e586789cf8dcf9179",
    "previews/dropdown-menu/poster.png": "f654e30d5c3bf3ca559628208f1350614aac5574aff1c4e2bd9cf8980a632026",
    "previews/dropdown-menu/preview.gif": "203fbc8d110d79a7c80532ee846c74eae136442c91ada52c1480d6518b3b4fa3",
    "previews/dropdown-menu/recording.json": "6f6eb11382808a2854fd0a0a211d878fc1e214818ec0ac7ce9266fd0cac03dbf",
    "previews/gestures/poster.png": "27759b6acd8017eb56ade1a302ef93a88a10bf5792643c68c4166b567eaa05b3",
    "previews/gestures/preview.gif": "a7106b42a2ddde618866290a36ea621ebf7bd138cab6d54b8deadd0ccf4f40dc",
    "previews/gestures/recording.json": "57598926c3dcda6c1531258ff945d52cb81a8abdbd02936c5192b4feb1f20798",
    "previews/histogram/poster.png": "804907e6a0b6343bcf404c3286ccd649b69c3a3bf6c5a5d58d3834a1e0cc1451",
    "previews/histogram/preview.gif": "365aa7da3827b85586e4186a6308d81ab7611ae2c24b0908d7742a83611a396a",
    "previews/histogram/recording.json": "0cd8c411f629d5ea69e6828612a73deee58017c43fe2b0932f6eadcf6a8aba93",
    "previews/horizontal-bar-chart/poster.png": "2092ee2256a7e18e849e36e1571982b640f9b7db8259c470fd32dac5c59a7293",
    "previews/horizontal-bar-chart/preview.gif": "6988114758e79bc3b35ac4b94a887984a8b4022941f794b5b9cc96e62f0e7a97",
    "previews/horizontal-bar-chart/recording.json": "ddd417dae27e019e3c0ba705e3348965da27a2701e34ac078b1897a0c2132782",
    "previews/hover-card/poster.png": "1c0fa59bc77787a6ec7a0518ff1f471333970794ae8cf408afd5f347bc132be2",
    "previews/hover-card/preview.gif": "d26966e56e39a65ec6a877c4c6003e9d0a62028ef6cf0325b0ff8622a446de63",
    "previews/hover-card/recording.json": "66530d9e4a97449ade0be8a2264fe67b9c8e837dcf393a572aafe71ae7226456",
    "previews/icons/poster.png": "c98c42bcd15dddf322260e3472afb9719faa361a50a7282db66540ee5ce658f6",
    "previews/icons/recording.json": "e96637dc32e5cf3cc70abe17217cd4764586badb3d60354423033cdd20ba87f5",
    "previews/image/poster.png": "46aee7811f7b26647856645ed4b43ba31626bebe8b6fb7448817f0d6990cc106",
    "previews/image/recording.json": "9a7aeaa987aaf89c12789118ce08c5e17cbac9469d80e21b08cb7513001ead64",
    "previews/input-otp/poster.png": "e436bcc71898670b253e80dbeea05c77f575a257aed49215800f0be82252cf02",
    "previews/input-otp/preview.gif": "a2ce13c04b4c3f2b3435f02a9003087286a07d96436efa22c06188202c695a77",
    "previews/input-otp/recording.json": "70c5955ba4ec039a3af35c53452af7376624c128a1a02048d1a733c80fc8c805",
    "previews/input/poster.png": "08677ac4a380a44a7bca20ba6fd60aab06c0c118bcc89417d7efeaee41c6605e",
    "previews/input/preview.gif": "c92de3d89ab81e0a65dbf0084d10c5d75af810da65a9f0fa2c80810bc79cb910",
    "previews/input/recording.json": "7e3cf626c5c38ad87929549b6a2f54f4e2db179d7893c1acb237061063cce91d",
    "previews/kbd/poster.png": "03b3d04be0aec28ef71e3e873cb49b01ce98386943a4328484731f37740cb367",
    "previews/kbd/recording.json": "b7f222583e8532489859806b4b568ebef50ada99f95115f0e855844df13d8afd",
    "previews/label/poster.png": "98e4f3fe1d95d39e722073c53a7bff8a98a5cf51ac5e84dc09ca0ba43e2447a9",
    "previews/label/recording.json": "e237368012367dacf254ed490a6bd43f714adb86d55d7dfdac9e6023ca5ddd26",
    "previews/link/poster.png": "a6b3509e773002cd5e27121342fecc8be4464ce36d554815ce5692577aea9c02",
    "previews/link/preview.gif": "717985c048603c41b7b577a8ba4580988fcc37027bd4b34eca72a1a7a755f379",
    "previews/link/recording.json": "01e1bdbdab84119fa8733aef7f5b2e79d8fcacb8795f5cf8271e25bc10558fc0",
    "previews/lists/poster.png": "2bdfcc8d15be1b29ffeef395fc97e87c72fbcfa0256a18a77658c442a69fe540",
    "previews/lists/recording.json": "f87cda2735660e680d66b722ffffc6e18b04bbc3708697bd41844c383839c78e",
    "previews/markdown/poster.png": "7908b481db0cbc62d2364211d25e5dc17da1004df0f84c16199bcc463628efe7",
    "previews/markdown/recording.json": "bff9a19c54115af479ae1f99de6dac618f366a0c9de4e004ec4eef3376f070ef",
    "previews/menubar/poster.png": "df50554b8e58dc6f6d9c7b08b33ec3900fa45e3bc313653bfffd8c237c0f883a",
    "previews/menubar/preview.gif": "9d60b4fa57367349813e0e61e16524d1be5d8bf97dccdca4818ab13cbeef160c",
    "previews/menubar/recording.json": "1c072f81e44c25eabefd6fde5b667fc3712c155d98faaf06493f433f019197e9",
    "previews/motion/poster.png": "8e23ec870a707a9fb2c8cf20fbfaa2aba1afa4a625326f4305f6ee3ba2038333",
    "previews/motion/preview.gif": "70092f0632cd013bc177325efda4c059cf4a6b2dcd6e6212e0b047f1c65e88ba",
    "previews/motion/recording.json": "95f0b3b2f09829fc847e9629c90995175beb0ec22edd9f6299d47cf8ec5c536c",
    "previews/navigation-menu/poster.png": "4869dc369d06bcfab6ae3312a3f35d7707f88f1f9296441f8effc456f0a366a6",
    "previews/navigation-menu/preview.gif": "9f066b43d9d30001f833e3195f4bbe715244d260351d2f53269a5714b7d5e7c8",
    "previews/navigation-menu/recording.json": "93f9fade14c0903757529583a07ec2a9bcd573c36da933ad4d53a7ccdc33e6f3",
    "previews/notch/poster.png": "c0e2e8342df74cb11b16355d207277634d68a5d2555310d1650463536f32d7a8",
    "previews/notch/preview.gif": "3e4329a65ae826b3ebccba7a3c0b917d2a088dfd8340b35634c97735101bc597",
    "previews/notch/recording.json": "21845871d8a8cb9d0e5e8033ef827426a95215dea9b4a7234e5328da1cb6f884",
    "previews/number-gauge/poster.png": "d95f1a4d8282eed1e47181d31ff70dc0ea7ce181ba335f3e4e78342cb1dfee84",
    "previews/number-gauge/preview.gif": "a902a19829cc8a913ef95df7affba4a4d083640bb07043b354d6f45d7936af2a",
    "previews/number-gauge/recording.json": "394353daed11080a6e633ae99cb2a88af9c7b9b10baba0c0fd52b2e5c763d3f4",
    "previews/number-input/poster.png": "fb993045434c0f8ec388881074f5fe343213f7cd91d2f722fdaebbbc48554857",
    "previews/number-input/preview.gif": "6db9113b3b7b6f32f4cf1d0600e37e30e52b1528573f55a53aa6b381fd3cb074",
    "previews/number-input/recording.json": "f7eefdb6270a4beb66edbf35dde3fd23527032b2ea992bba656dbb8f39cc899f",
    "previews/number-range-gauge/poster.png": "fa4b6948712e5ee366117ea35827f23bc67afe8eb78f20e917aede4897df64e5",
    "previews/number-range-gauge/preview.gif": "e4627fc65b589fe2a2e48d786dd2aa18c3d6d257efd262482f090e83369283c6",
    "previews/number-range-gauge/recording.json": "c648a2edffc20abc6d794bd55bbb744e11bc0587a211f2e1310d114eeba79c8b",
    "previews/pagination/poster.png": "9d2db89e73bbb9ab12210a0792541e47fe34cda27ebbfee09d80329a87b80bc3",
    "previews/pagination/preview.gif": "3865364a3b6e49df98c13f74668952bf6e841846523529fdda6dddc5e7e52e58",
    "previews/pagination/recording.json": "450adce8a66b6639606c1c5faa155786cb591fe82626963a7ca21548a85ecce1",
    "previews/pie-chart/poster.png": "6dca2fce69556c953f410ac8b1fdc93461a3d7dbecc6f2f4ec1bfdae2d9707ae",
    "previews/pie-chart/preview.gif": "9e89a2f3e33984c26533a6c58922842c82bc0f0b6f4f97b0228003e3420de375",
    "previews/pie-chart/recording.json": "0230551594931312d48e41a48aaccf50a6202fe86d8b533d2626601706d41a8d",
    "previews/popover/poster.png": "8916c5a18caef0b6820614285f35d885237bfbfacaa225b76f5e0c2321c84e57",
    "previews/popover/preview.gif": "e3f0eb30c28cc7fdc820c6941d2005b450f113a2c5064880911a9039f9fc4c85",
    "previews/popover/recording.json": "1dbaa91736bebfe65c400321ffce3bdcc8490f5cfa0abee5d36611e4c66f7d60",
    "previews/progress/poster.png": "0e3bef30ce18ce23768790770ccc21138717cb255e929fe487f78df8797908ed",
    "previews/progress/preview.gif": "60eaf4e381faa14df21d09ef7e09932dd9634fe8f39deac72eb9349801605c1e",
    "previews/progress/recording.json": "fd4eafc9d096defc39ba67053333e83771eb186be74fdc00ab7ba77eb417f43e",
    "previews/radio-group/poster.png": "3435677c75ed556b18133e3bf24ec28a9a68f0253191751f4574ef6b1d43868f",
    "previews/radio-group/preview.gif": "706ce45fcaeb633da2922f9a9ec9b1520704eeb1f9f39033a82b68de3a685c05",
    "previews/radio-group/recording.json": "c3b1cba030c823dae72ebd373fa28728ea70b01a5c12c16aa3d9b289d53ba5b6",
    "previews/resizable/poster.png": "956e95dedb086901b33095821926c6bd310b5a741d57ea5041a5d4e36020071d",
    "previews/resizable/preview.gif": "83f945c9deeaa00fd158d293e10ad688d14a69c2f367d26d0e4fb4ed5a71c62b",
    "previews/resizable/recording.json": "77b4bcef8aa39d1ec02ac2400d7b109779e85e5458df727d4be37d5abd53f52b",
    "previews/rich-text-editor/poster.png": "79461b2b533d7645fd2ec7d99b1d0567a517f8b09f773b0cd9148e0c59b5d54d",
    "previews/rich-text-editor/preview.gif": "469ff1f508251f3bbda7cf963a6edd66ccba75cc0c9b0afb739f3f9e6f1fc6ef",
    "previews/rich-text-editor/recording.json": "a9a612f2467199ee0accd3d4a69e4e545942f6407376ef2aa68fd2c6620dcdae",
    "previews/scroll-area/poster.png": "43b5d83f7bc00ca0dd89d47312a439831fd952ae5710f8854cae346d45b63c3a",
    "previews/scroll-area/preview.gif": "44384bf2addd9a79e765745b7249f6fd8219a2a0d9803432f7b324b34b27bed1",
    "previews/scroll-area/recording.json": "73474cf757c3700eed8229f8584410630bb3f7e90dfe65cda87658f5ad8abd0f",
    "previews/select/poster.png": "3d20607aacebe15bcf27aef7efb9e7561192164d7bd0a0d36e083aec4e320378",
    "previews/select/preview.gif": "41f8c019bd94cf080df763ea517deac17ffbf81606c70b62874e5357a01f3f27",
    "previews/select/recording.json": "dc672a70e0786ef783feb021bd07ac46c3884723fb4ef3d622324b947a6d75d7",
    "previews/separator/poster.png": "cb3f076feb44013cd3b7b7254cab608a251cac3b4454e86e9ae5176ab37b3e7a",
    "previews/separator/recording.json": "5cbde9a2735e5a73d4f809040d59dfbeac46137a92c760b202b5b29cdc10a680",
    "previews/sheet/poster.png": "a7ded85344c9936fe0370b1ff05adbe3a704a4cbc9dd76825233c2334d724c4f",
    "previews/sheet/preview.gif": "4310d00fa22b7098fb33df3b305a3b83b8e258dabab4c85c58315887258886ea",
    "previews/sheet/recording.json": "d4c18adad65510a20acd4c3014d7dfec2988fd55f16421afe486c65d4521c5d4",
    "previews/sidebar/poster.png": "8edc531c5a99c6ff11e1e1a8dbe709e43e0db10a99bee8cec103c3e2e56b1579",
    "previews/sidebar/preview.gif": "5d0cd64129dd12e19903c1313829e1fcb793f930a4195c29aa26a95d96d81038",
    "previews/sidebar/recording.json": "e5979de35d4e88e8f6bcd4bc2058215445796b158a9d0c7e6fb788db241ba9ae",
    "previews/skeleton/poster.png": "98892fe29e9164bc07086842981965b88517242d1bb9a9eea5af9deb74654134",
    "previews/skeleton/preview.gif": "cd41873cd1ee9ac3f54c91e8eb7718c2ddd29241d7295480de2606c305fdf931",
    "previews/skeleton/recording.json": "f40c0c6193f8e9c5c1ad1e0db399d7bf0042db792a5438955770423467774c62",
    "previews/slider/poster.png": "c1783a5a8da4aba41c83b84c123ff3b62b7a73f67aa59cf3b1915e103bde4656",
    "previews/slider/preview.gif": "4cf0e71aafb36bb356bf98c65f8fd19d2e2458da3b727e365bd08dc6207deca8",
    "previews/slider/recording.json": "ff94a91171b90a346f320eaa8ef23e6c39d77985c495b830d5c0daae782dfd82",
    "previews/sparkline/poster.png": "02a2894b33ab1f916ef8351eee92db5fcdee9bf9ed77d202dd0fe966a2e2bf48",
    "previews/sparkline/recording.json": "9ef05ab77ad022fc8ade90c1a41bd3f720711d280e201b51915ff1e96516d926",
    "previews/spinner/poster.png": "3792b17b764b6c23094fc2c0c8c9ab778473317704d9973269962304b29cc282",
    "previews/spinner/preview.gif": "fa2b47e306087afd84d9e53b2ceb7b60f81862e8f6a8902c967a3ebf39a3308b",
    "previews/spinner/recording.json": "7f3e3f8cdd34a2732cf9a3fc22042fdc32c71c0f0ced734329c582f25d6fe5fb",
    "previews/stacked-area-chart/poster.png": "7405a49f47141ee2d063d79a6575aaf469940beda4d424847ef99050456fb9c4",
    "previews/stacked-area-chart/preview.gif": "b5ba32ada8e8b366450199d68bdf95355f1bcdb371ec6a33b07da14f8b42f02c",
    "previews/stacked-area-chart/recording.json": "45e8c0fedab3036bf3ccb14cef8152c65d158ac01aa6121426fcd71e3bed035e",
    "previews/stacked-bar-chart/poster.png": "a1c2dd9559c746152ecbb700e5619e6dcb5effb748361113df4327adf3659363",
    "previews/stacked-bar-chart/preview.gif": "b43b24d4209d7b14afe4c5efd08d100e4a923ad6132ce77d2bb86cbb5674cc76",
    "previews/stacked-bar-chart/recording.json": "62e3fb8e8d724595ea78bbe2f3586e49d5f746d18612a6dc54cf6825232ea7be",
    "previews/svg/poster.png": "3c36b847fb5f0a23cc67651c0aaf8ab012dc1aeb5d94c41ae813d62d23803761",
    "previews/svg/recording.json": "038609cab18ac2496131d4e94007b5e984b1e7bcde821e63b8c303b82aae8e8d",
    "previews/switch/poster.png": "c8f30eab9936b1799b2b00e1ca37d277b8e1962e73b2274e080ea89df03ebda3",
    "previews/switch/preview.gif": "75aeae3c1e0f54756324af8800b9012712abe3b56603ea6822073b2faafa1b94",
    "previews/switch/recording.json": "c4e67e2e1cad9bff38cd3c50314b725760194e3f33eed2f27395101b35d4b9cb",
    "previews/table/poster.png": "c510e8ae94eb7627a496fe10d695521357d73d88bf8ed2b489051f21937c3e73",
    "previews/table/recording.json": "2ea9af4e69e37d4694e3d7932610fb777c84fa62390fb75424341a5a379c96b6",
    "previews/tabs/poster.png": "286af4fa76ab5e47b939dfdb945005d9ca267f15da56336867102f1a114c3588",
    "previews/tabs/preview.gif": "752517956b98ddcba1969769ced879f30cfcc80d891ba3f6f1631b770e502214",
    "previews/tabs/recording.json": "c8d587741aaff3696319569255aca97c7a177efc3ffbb72a10a385fcc327c50b",
    "previews/textarea/poster.png": "633a5619c31e0a5661e689347b9bb5a80ea1d28dec01f871a843a095645e087b",
    "previews/textarea/preview.gif": "d39a9b3a194ed560bedc4c8f8861fa12020cdba3919b76dd1489396efd0213bf",
    "previews/textarea/recording.json": "5f53a87d75970bff0578645b60a5a0d48309637c571eb930baefe4a749ff1c3b",
    "previews/threshold-chart/poster.png": "0b820651afbfc7e9a13ce26bee6216c01cf793946cf81a655149927ddc0f29d1",
    "previews/threshold-chart/preview.gif": "6f2c49bde1ecf6ee68c755f4fb5f972c54c5ef23b9d0f007423e1d8d07389af7",
    "previews/threshold-chart/recording.json": "bc4489d97b14874eee40d7cac92a4ca2a9933dc3c04785df30f9bdc82d7ef30a",
    "previews/time-picker/poster.png": "b76376a86bd1a5ac8406aa587e22a7bc6ed126b1c10d0a3b2730268d6b916591",
    "previews/time-picker/preview.gif": "92f4ed41f83c2dd2da5bee4b90cff9a3362ddcf585f1d36b4394ad8080e281f3",
    "previews/time-picker/recording.json": "929ab5a1b79cd9aaa3adb692336cb6b04bc93774dd8d0c951cf67c6b0cfb5da1",
    "previews/toast/poster.png": "23d4729bf60741664eeffee2361addb35ae2b7eee485a536150e6c12bd902d74",
    "previews/toast/preview.gif": "655ecfbee2b01e6c91678050349e34d709b819d51c81ea31ea86e0afa8ee6d95",
    "previews/toast/recording.json": "ea75ea3e5022fa377d79d89af970c5b5a3380125d810d651a88a0934c5b2a795",
    "previews/toggle-group/poster.png": "9419f0aa94089dfeb2957c31861ca21b773b9d415b485924a91def49e2fed012",
    "previews/toggle-group/preview.gif": "b5386197475fb11d4fff5cfe0c27436182d5c9da40b6aaf8076332ccce6d16cd",
    "previews/toggle-group/recording.json": "786797e7e8a1d471d075d4461009448750175dbd1fb3e6603a26a803fc1cee4a",
    "previews/toggle/poster.png": "09cae611b10eb830522f0ae878867820d9dd54cd3704fddeb11b32afe6ff5789",
    "previews/toggle/preview.gif": "b21c85695c2eed853bf826ee03ad951dbf73697f825251b930ef728cbb37f55b",
    "previews/toggle/recording.json": "062a2501199c69af360992f681586fc97bccfa13b166179c54d2843128de6e4d",
    "previews/tooltip/poster.png": "ab2342b09415a5be74bb6bd6e2a30f7d199a8c9780fa33671e122a75ba194c7e",
    "previews/tooltip/preview.gif": "21e34cef0673542e2e0b857e41338c8f6046a2230f01fd1084c09a491810a3bd",
    "previews/tooltip/recording.json": "ca96ef725087f2e8c43db6356896dc836ece0b50175ba526a8d23daada12d04f",
    "previews/tree/poster.png": "4e6585940069fc2016c2b15140c04a0cce8b857add7cda1e7b42311e40a9c5fe",
    "previews/tree/preview.gif": "ebfa52c0e2c7f3e198b82033ad7e2276c85555c1fda11042161e906a3d883471",
    "previews/tree/recording.json": "3c9402db74332296726081082847f2e5b6568db81625069515c57d30d2c5d431",
    "previews/typography/poster.png": "bb66835f42c3999521057e2f3e1b7a378c6aa4acae58e58775edf53232d212eb",
    "previews/typography/recording.json": "34e81395fdacb293a6d031f12428fc2fe43c0f25d177b0c082b06ea430c83be2",
    "previews/video-player/poster.png": "55356802884e82c66e0688b4eaab8c92fbae244446f767be825ccf0528e03312",
    "previews/video-player/preview.gif": "dc59b908e8a9354a6806df607d64590355e7e87b66c6c1611d4e955b90dd0da0",
    "previews/video-player/recording.json": "40eac63594d17d4cd52c3d8539e4d2dbf64e33fa453e3ff1588c622992507555",
    "previews/virtual-list/poster.png": "f8d9cf9565e8beb4280b36c1621060b962ea8731f74157f2bff25f6dda34f9b2",
    "previews/virtual-list/preview.gif": "3cc3094bd1a09fe8d324caaf547fb204cf74ee32a7104c9adea79a5d12827b14",
    "previews/virtual-list/recording.json": "45b762ebc0c4abf6ce964d53ca99ee397d934447e3cd3445726a2c485c52848c",
    "previews/waveform/poster.png": "e1c0227abfb8b9c3669d3f328a15572559324f6497cc3e9f4a1858dc6d4dfc2b",
    "previews/waveform/recording.json": "e8791225c083bfdac4f57d796594d2352d265d097465b82d01ea454eab750f66",
    "recipes/accordion.css": "ec65949d9bb49b310aa6233f0a9182db67d5064ba61d473d4daeb8939870949b",
    "recipes/alert.css": "1f016b3803ceae72a1041c92d8d9582066fa2e321f0ffba10d64dddfd2710370",
    "recipes/aspect-ratio.css": "137fc677569a5d38b7eeddb558fdf13e1f90331916d567cd79b59b37b560e8e4",
    "recipes/audio-player.css": "959ce85fbf830828d1e99306b150d76063555140a1beb28bab9f0d958fe29893",
    "recipes/avatar.css": "7547ba6e690b31c8d2f991943ffbffa48733bffa6952a08feef84c364aab55bd",
    "recipes/badge.css": "d05e1eb4cfeeaaee5981927fd74dcc8b76e30e9448021c62e567628ce9d90d55",
    "recipes/blockquote.css": "ff866eb3fd9388dce032b1a5effee4db6fdebf100417d6b85d5cc6a35c26d514",
    "recipes/breadcrumb.css": "0b0daed8b4031baaad659551fa9ac8120651b589120a9863e65f722e4b8680a9",
    "recipes/button.css": "3b9488c4a57d2101694967992f4e0c4e01e13aeaca9d7bcdc6ceb7c090e8ff80",
    "recipes/calendar.css": "becd8b341d16b9f09d589f5b1030ebb7d59e23375ebd960585a81c5b3c6c9ce8",
    "recipes/canvas.css": "7a995ad3c1ef7e2ca204e39c3c17755774ad0a408d850a2cd49b8eca5c445d6a",
    "recipes/card.css": "21957482338b33f216b744ed01df549b06889307fa9293947127acf6f24a0fdc",
    "recipes/charts.css": "6a977864649f416aa7cfb334ea46ab3be28cf4081a692fa375bd7cc9207db337",
    "recipes/checkbox.css": "ed7fd500b7bf72c67651aa0f0afcb594a09ab6ff33a484752e719568fcc5d6ab",
    "recipes/code-block.css": "a7ff73be6c6bcf80ac4666b370848368e466e29716515e0e93ab2185406e2e4a",
    "recipes/code-editor.css": "70b42c92d3e4ea3eaaa016ed3eb679bb51471a327c09d027f63b98c1d1ee800e",
    "recipes/collapsible.css": "388ea151ee5a47df2282fbd0d995579c69b589fd07cc5e73fe2bf3cf00add73d",
    "recipes/color-picker.css": "cc4f9a43b5d2b804c14522f58e6f61eaf663127592f307b11e6d0dda41a5c9d2",
    "recipes/combobox.css": "dbd447164e8df989ec9ccc48e5166f11a7f5e547101f1c3b492230d46578c05f",
    "recipes/context-menu.css": "0f66ef59f2a257e24d4f1651e613a3a9afd53ec90214899b95c92f3f5cabe8bb",
    "recipes/date-picker.css": "e92aee339f28b48de0e9742f38148e165b18e54116499adb3981ddf1be2ceb96",
    "recipes/dialog.css": "a6f493c412869b8f2fc3156eb00210fcfc573c2bb404a482778de3f081a07315",
    "recipes/drawer.css": "41baad0569f7491f205101ab7c0a8620e75c29b59f2daa0aeab346a2580db562",
    "recipes/dropdown-menu.css": "9cf9acc4ebe6eae5cc7e9d2469cbf5e68dc25a54b6970a15d2c791167751a05b",
    "recipes/gestures.css": "36ec4f15edf1f6d5a9cc4d6846a6db1d431b7eef672ab4986a40606e4075824b",
    "recipes/hover-card.css": "176793c79295b03e7cc01de6e1d8f6c9048e21e470384cca98bfabe466b0328a",
    "recipes/icons.css": "0244bfa48955813d281deef208adf5b2f955c9f3ddc61c9dc97cbba402a78e0f",
    "recipes/image.css": "bf3e8d26a406ba316e39bc892b5c5b26a0458d264c3cf496719e7eb20376b3f6",
    "recipes/input-otp.css": "089034898a1e4a35e35e074edf8da836c0f3c254e3eef5e88ab071bd28432b4e",
    "recipes/input.css": "b7f7857bdadad286dfd00f5d62bcc2a94b4b36883cc56d89353624faa83947cb",
    "recipes/kbd.css": "d500381e8b83dea25340e2c1e1d073fb60400888217e45186af96d5577b241a2",
    "recipes/label.css": "3003ae2703f671a232a1d1cbc1300853f7762801ad75155cf5fd94b767b884a5",
    "recipes/link.css": "1bb8bce0bfa84c6ba10b702d2c2c7136f8dc5e2a9efd27dba7159f5815cd5728",
    "recipes/lists.css": "3a5444f1110b433f6519b5a9b307dbb8ed1ea612873ad07dd2ebe5427cd2d117",
    "recipes/markdown.css": "d2e76a3f747c678955c46a58fd29cb4d6562664c5772a6cc784535feaef339a5",
    "recipes/menubar.css": "a2a86aa1293d272db2a465ab184ddb13cb1ccc2faa03298151cb20e1232c83a8",
    "recipes/motion.css": "63b17e6dabfe3e5eee1b0db61a20cdaa2f22f593a8bb0ac937ebf83c2454a997",
    "recipes/navigation-menu.css": "ad650523171f69f9d889bacd3595a124e26e1a5c70e94c5af6cc29345e2fcc6b",
    "recipes/notch.css": "c0ce36ce527bdf7751aa3215e1b8b65508341bdfc000ad51215bbf34bcdd49ca",
    "recipes/number-gauge.css": "eca3abfd9749e29eac0769cb47b583dd19ebaa99338d3a724d46910c6b9ca70d",
    "recipes/number-input.css": "328d75740cdf9221dd1d129184332cda041c941452f063dc156f2f3e67f465bd",
    "recipes/number-range-gauge.css": "3a9fcbf8f0d2dea130ec004207b34a905c95f6ef3b06dd4332b364d36d7527e2",
    "recipes/pagination.css": "03cfb47c9282b7091e8dcd93d0e524739c63d2ecd4326bbb2dba21f74e0d882a",
    "recipes/popover.css": "16ae4bd15e057e0eb008bf6e9c39683d2b9a83687d73f7a5ac52075ea5021983",
    "recipes/progress.css": "fe482a64923a64cbe46d126ca01df86d9f5ffbc5c9bbc303e27ad736f9b61d7b",
    "recipes/radio-group.css": "ae8a109f73151f8d35319306e9cab200117ef493bf7240b1725afd73f9adf6e6",
    "recipes/resizable.css": "7b4d647ddcad087077ed9da842efb11b1a45956e1a3d26797b27f9d2decde6b4",
    "recipes/rich-text-editor.css": "1903e8a32fe7857cc35fa66aecf07b23903d104dd77611d331750d15bafacfc3",
    "recipes/scroll-area.css": "e13c3d4d8a6720bb66347ac17f8472cac0660355b5cef235ffe7fda70e6e3655",
    "recipes/select.css": "251c37ceb4df3af55c50fa9cb43dc1d2264f5ad29a032719a9c9cbc8a82efa22",
    "recipes/separator.css": "3d491a08185c05a73bbc77d61d693401e45c7c768a0f539012e51f1fb3b44048",
    "recipes/sheet.css": "ab82b51bb0809d01a3a5f169ea66ad26684e4775a63387812b5d30c6fd53ce85",
    "recipes/sidebar.css": "3da898fc473afce73eee03c496542fd0d05580b073c79fe0595f1b8b7cefd18d",
    "recipes/skeleton.css": "2a425a97eefefc30483f7a2a23e5b805429fe20cf963cecbdd51f6cf2f396664",
    "recipes/slider.css": "bc05956cff4301f09e9da2a1424dd0ca55d3f00f5cecce7a61117bfd6611e06a",
    "recipes/spinner.css": "14732cd8ac0ef136620a6947544bda63522746f5fad94a58bfd5b05474995114",
    "recipes/svg.css": "d68eb2cfb89a27b41f1a0eec8a995a153ae6513b368cb4007d653cd011dd2223",
    "recipes/switch.css": "9a01e653ce841e9e016e3096805cb5799605fe03127f73a5e50905d6880f4004",
    "recipes/table.css": "cb1846b193a1ac031d81a51665859747bc7f40b70e8397b05fd488717bb73561",
    "recipes/tabs.css": "5513eadfdd3af6a470b22f471daee2aef7964d14d630f45363beda2941f5f72f",
    "recipes/textarea.css": "8e6cb0c56cfe65748d461c2931f4648b3053eb64bcafd85c7fc4ea609a62cf15",
    "recipes/time-picker.css": "bf76fe3de80a7fac4b5c4caaf4ba3e7285427fc0411e81c91a166ea98516d199",
    "recipes/toast.css": "7f661bd3b09f20253b4bcc0af4e11cb54a9a4fe197e7982686e9c7a6b17ac557",
    "recipes/toggle-group.css": "a2f639e7b4e02cf3cfcc369b1ec68266a3336bda1ef901ff128777f003dc0efe",
    "recipes/toggle.css": "ca6b863492b86a1ffdaba102aa43a7c9fdd30875d2748737472217f50526b393",
    "recipes/tooltip.css": "b1778e4c59ba1a7865ff0060aadc6a9bdba86082716586467173c00dc0b6e657",
    "recipes/tree.css": "19e0e2fbd722f1d12082c0fafd991e33a284847fffe12aa4b531affc965adf47",
    "recipes/typography.css": "2015ef9014d345c7d0f19b05203b683cd81e604a7aabdf4526f9770a38e02507",
    "recipes/video-player.css": "7680ffdb97de0a241e0bbabc2645c5301787c2840be57aa3f3af40444218880f",
    "recipes/virtual-list.css": "f2c4efdec32ff9acf3195ee4ba5023127cbdafcde8d1844afc2cd08ca161e693",
    "recipes/waveform.css": "0ec4343e3fedaf32df9264324824698360bd2f279398b084f40ebc3d8bb3e9a8",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/catalog.css": "bd9073c4382792deb37e57eeb7537f7d33806dec65f66cedaa34ed96acb2bc61",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/catalog.js": "f9c35a23bb6f234e5483e581077f8f6047009c4549a759f1661025cbbd0c6db8",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/chart-sections.js": "e9a0b2fdc4ab3f3919af1d74538df16611f24c8360a1f99473f54fe1139b9e2f",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/code.js": "fd593015568299510eb0b26e8b2fef4a4f7dbf40bf1ab24c97fa58e8556162e2",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/content-nudge.js": "76ece6d1cb5d141dff35d9a77b841a552e363f8a03fa1e31520d4527a00c252c",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/detail.js": "91cadd18f8d37221aed885cf4352032a8596a6112df8481bb5e3970782ab5991",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/package.json": "609158e6c5fbc237939fa3ddf7faab80ab690bdc0c8d584414a885130103c4e8",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/accordion.css": "ec65949d9bb49b310aa6233f0a9182db67d5064ba61d473d4daeb8939870949b",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/alert.css": "1f016b3803ceae72a1041c92d8d9582066fa2e321f0ffba10d64dddfd2710370",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/aspect-ratio.css": "137fc677569a5d38b7eeddb558fdf13e1f90331916d567cd79b59b37b560e8e4",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/audio-player.css": "959ce85fbf830828d1e99306b150d76063555140a1beb28bab9f0d958fe29893",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/avatar.css": "7547ba6e690b31c8d2f991943ffbffa48733bffa6952a08feef84c364aab55bd",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/badge.css": "d05e1eb4cfeeaaee5981927fd74dcc8b76e30e9448021c62e567628ce9d90d55",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/blockquote.css": "ff866eb3fd9388dce032b1a5effee4db6fdebf100417d6b85d5cc6a35c26d514",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/breadcrumb.css": "0b0daed8b4031baaad659551fa9ac8120651b589120a9863e65f722e4b8680a9",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/button.css": "3b9488c4a57d2101694967992f4e0c4e01e13aeaca9d7bcdc6ceb7c090e8ff80",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/calendar.css": "becd8b341d16b9f09d589f5b1030ebb7d59e23375ebd960585a81c5b3c6c9ce8",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/canvas.css": "7a995ad3c1ef7e2ca204e39c3c17755774ad0a408d850a2cd49b8eca5c445d6a",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/card.css": "21957482338b33f216b744ed01df549b06889307fa9293947127acf6f24a0fdc",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/charts.css": "6a977864649f416aa7cfb334ea46ab3be28cf4081a692fa375bd7cc9207db337",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/checkbox.css": "ed7fd500b7bf72c67651aa0f0afcb594a09ab6ff33a484752e719568fcc5d6ab",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/code-block.css": "a7ff73be6c6bcf80ac4666b370848368e466e29716515e0e93ab2185406e2e4a",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/code-editor.css": "70b42c92d3e4ea3eaaa016ed3eb679bb51471a327c09d027f63b98c1d1ee800e",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/collapsible.css": "388ea151ee5a47df2282fbd0d995579c69b589fd07cc5e73fe2bf3cf00add73d",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/color-picker.css": "cc4f9a43b5d2b804c14522f58e6f61eaf663127592f307b11e6d0dda41a5c9d2",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/combobox.css": "dbd447164e8df989ec9ccc48e5166f11a7f5e547101f1c3b492230d46578c05f",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/context-menu.css": "0f66ef59f2a257e24d4f1651e613a3a9afd53ec90214899b95c92f3f5cabe8bb",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/date-picker.css": "e92aee339f28b48de0e9742f38148e165b18e54116499adb3981ddf1be2ceb96",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/dialog.css": "a6f493c412869b8f2fc3156eb00210fcfc573c2bb404a482778de3f081a07315",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/drawer.css": "41baad0569f7491f205101ab7c0a8620e75c29b59f2daa0aeab346a2580db562",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/dropdown-menu.css": "9cf9acc4ebe6eae5cc7e9d2469cbf5e68dc25a54b6970a15d2c791167751a05b",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/gestures.css": "36ec4f15edf1f6d5a9cc4d6846a6db1d431b7eef672ab4986a40606e4075824b",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/hover-card.css": "176793c79295b03e7cc01de6e1d8f6c9048e21e470384cca98bfabe466b0328a",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/icons.css": "0244bfa48955813d281deef208adf5b2f955c9f3ddc61c9dc97cbba402a78e0f",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/image.css": "bf3e8d26a406ba316e39bc892b5c5b26a0458d264c3cf496719e7eb20376b3f6",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/input-otp.css": "089034898a1e4a35e35e074edf8da836c0f3c254e3eef5e88ab071bd28432b4e",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/input.css": "b7f7857bdadad286dfd00f5d62bcc2a94b4b36883cc56d89353624faa83947cb",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/kbd.css": "d500381e8b83dea25340e2c1e1d073fb60400888217e45186af96d5577b241a2",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/label.css": "3003ae2703f671a232a1d1cbc1300853f7762801ad75155cf5fd94b767b884a5",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/link.css": "1bb8bce0bfa84c6ba10b702d2c2c7136f8dc5e2a9efd27dba7159f5815cd5728",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/lists.css": "3a5444f1110b433f6519b5a9b307dbb8ed1ea612873ad07dd2ebe5427cd2d117",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/markdown.css": "d2e76a3f747c678955c46a58fd29cb4d6562664c5772a6cc784535feaef339a5",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/menubar.css": "a2a86aa1293d272db2a465ab184ddb13cb1ccc2faa03298151cb20e1232c83a8",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/motion.css": "63b17e6dabfe3e5eee1b0db61a20cdaa2f22f593a8bb0ac937ebf83c2454a997",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/navigation-menu.css": "ad650523171f69f9d889bacd3595a124e26e1a5c70e94c5af6cc29345e2fcc6b",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/notch.css": "c0ce36ce527bdf7751aa3215e1b8b65508341bdfc000ad51215bbf34bcdd49ca",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/number-gauge.css": "eca3abfd9749e29eac0769cb47b583dd19ebaa99338d3a724d46910c6b9ca70d",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/number-input.css": "328d75740cdf9221dd1d129184332cda041c941452f063dc156f2f3e67f465bd",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/number-range-gauge.css": "3a9fcbf8f0d2dea130ec004207b34a905c95f6ef3b06dd4332b364d36d7527e2",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/pagination.css": "03cfb47c9282b7091e8dcd93d0e524739c63d2ecd4326bbb2dba21f74e0d882a",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/popover.css": "16ae4bd15e057e0eb008bf6e9c39683d2b9a83687d73f7a5ac52075ea5021983",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/progress.css": "fe482a64923a64cbe46d126ca01df86d9f5ffbc5c9bbc303e27ad736f9b61d7b",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/radio-group.css": "ae8a109f73151f8d35319306e9cab200117ef493bf7240b1725afd73f9adf6e6",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/resizable.css": "7b4d647ddcad087077ed9da842efb11b1a45956e1a3d26797b27f9d2decde6b4",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/rich-text-editor.css": "1903e8a32fe7857cc35fa66aecf07b23903d104dd77611d331750d15bafacfc3",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/scroll-area.css": "e13c3d4d8a6720bb66347ac17f8472cac0660355b5cef235ffe7fda70e6e3655",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/select.css": "251c37ceb4df3af55c50fa9cb43dc1d2264f5ad29a032719a9c9cbc8a82efa22",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/separator.css": "3d491a08185c05a73bbc77d61d693401e45c7c768a0f539012e51f1fb3b44048",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/sheet.css": "ab82b51bb0809d01a3a5f169ea66ad26684e4775a63387812b5d30c6fd53ce85",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/sidebar.css": "3da898fc473afce73eee03c496542fd0d05580b073c79fe0595f1b8b7cefd18d",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/skeleton.css": "2a425a97eefefc30483f7a2a23e5b805429fe20cf963cecbdd51f6cf2f396664",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/slider.css": "bc05956cff4301f09e9da2a1424dd0ca55d3f00f5cecce7a61117bfd6611e06a",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/spinner.css": "14732cd8ac0ef136620a6947544bda63522746f5fad94a58bfd5b05474995114",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/svg.css": "d68eb2cfb89a27b41f1a0eec8a995a153ae6513b368cb4007d653cd011dd2223",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/switch.css": "9a01e653ce841e9e016e3096805cb5799605fe03127f73a5e50905d6880f4004",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/table.css": "cb1846b193a1ac031d81a51665859747bc7f40b70e8397b05fd488717bb73561",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/tabs.css": "5513eadfdd3af6a470b22f471daee2aef7964d14d630f45363beda2941f5f72f",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/textarea.css": "8e6cb0c56cfe65748d461c2931f4648b3053eb64bcafd85c7fc4ea609a62cf15",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/time-picker.css": "bf76fe3de80a7fac4b5c4caaf4ba3e7285427fc0411e81c91a166ea98516d199",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/toast.css": "7f661bd3b09f20253b4bcc0af4e11cb54a9a4fe197e7982686e9c7a6b17ac557",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/toggle-group.css": "a2f639e7b4e02cf3cfcc369b1ec68266a3336bda1ef901ff128777f003dc0efe",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/toggle.css": "ca6b863492b86a1ffdaba102aa43a7c9fdd30875d2748737472217f50526b393",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/tooltip.css": "b1778e4c59ba1a7865ff0060aadc6a9bdba86082716586467173c00dc0b6e657",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/tree.css": "19e0e2fbd722f1d12082c0fafd991e33a284847fffe12aa4b531affc965adf47",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/typography.css": "2015ef9014d345c7d0f19b05203b683cd81e604a7aabdf4526f9770a38e02507",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/video-player.css": "7680ffdb97de0a241e0bbabc2645c5301787c2840be57aa3f3af40444218880f",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/virtual-list.css": "f2c4efdec32ff9acf3195ee4ba5023127cbdafcde8d1844afc2cd08ca161e693",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/recipes/waveform.css": "0ec4343e3fedaf32df9264324824698360bd2f279398b084f40ebc3d8bb3e9a8",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/runtime/host.js": "12cfbcdc9012f99f8b5dcea3a4c6c7151d5da6ec187d794bdc55e1847acfa74c",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/runtime/media-host.js": "1cb148179c8e794d6ccdf06021de2c0a7442b51e24d73ce1dbb3b370c65571ea",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/runtime/pkg/blinc_component_demos.d.ts": "a993b853e5b14b0981dcab3ee5d888dd77b3226aa93d8b19b24aae3d65a634a8",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/runtime/pkg/blinc_component_demos.js": "a4fc880d8e3bf0012384ba2bc7000b89d7ee5d25a1e38d84563cf1ee952ec953",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/runtime/pkg/blinc_component_demos_bg.wasm": "ead6f62a8f99d9f94db52b81e3e136595ff932efcce819d2de9fd11b09eac4d0",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/runtime/pkg/blinc_component_demos_bg.wasm.d.ts": "bd2ee80fac2f1253150ed2c62ff0c76bf870f7bf46e436735272497f49a2f1f9",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/runtime/protocol.js": "e4ae67b6431f2c4570ced8e53beb47f5d050a62d232a2557fa578ce98bd4d603",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/runtime/worker.js": "e9bacb8927a8ae62b42956e8b6a0d407a5662a768deb956c7f75730247ca1838",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/scheme.js": "9806d004419d58bcd7ae6bd71527af6e3635dd8a19371691fab6f008c0423142",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/serve.py": "bf7e59474a8684910ed618d6a428529ea6422b2c5aa8148e085986fd59bfbffb",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/syntax/LICENSE": "6c081431591d9df696c82dc598fe1423765b8a299b200ed00b281afd0f64c490",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/syntax/format.js": "3f6c1dd453ba7519bd35a5be6fa1ea6a3601aecf9e805d4889a86d57c63c5e2c",
    "releases/46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7/syntax/highlight.js": "f9ba3da2810d7482b0de8eadf2735739ce1d56918dcd517fe13b2fa7a3b336c0",
    "runtime/host.js": "12cfbcdc9012f99f8b5dcea3a4c6c7151d5da6ec187d794bdc55e1847acfa74c",
    "runtime/media-host.js": "1cb148179c8e794d6ccdf06021de2c0a7442b51e24d73ce1dbb3b370c65571ea",
    "runtime/protocol.js": "e4ae67b6431f2c4570ced8e53beb47f5d050a62d232a2557fa578ce98bd4d603",
    "runtime/worker.js": "e9bacb8927a8ae62b42956e8b6a0d407a5662a768deb956c7f75730247ca1838",
    "scheme.js": "9806d004419d58bcd7ae6bd71527af6e3635dd8a19371691fab6f008c0423142",
    "serve.py": "bf7e59474a8684910ed618d6a428529ea6422b2c5aa8148e085986fd59bfbffb",
    "sitemap.xml": "9e42a4556c81cab38f984f6a8c92fac01528fa3810a943320cf7687c2fe1141c",
    "source/JetBrainsMono-OFL.txt": "90ff978b091eba717340df1c898a98b0229635de87b77cdb861a0769e49a54e0",
    "source/NotoSans-OFL.txt": "0dab92d0544f7b233403f14b84a663bdbfa746982eda629e7f4f9ffe1b036feb",
    "source/assets/JetBrainsMono-OFL.txt": "90ff978b091eba717340df1c898a98b0229635de87b77cdb861a0769e49a54e0",
    "source/assets/JetBrainsMono-Regular.ttf": "e6fd0d7e91550b3ed2b735d4312474362c4716edc4fc0577a0f61ed782d5aed1",
    "source/assets/NotoSans-Bold.ttf": "c976e4b1b99edc88775377fcc21692ca4bfa46b6d6ca6522bfda505b28ff9d6a",
    "source/assets/NotoSans-OFL.txt": "0dab92d0544f7b233403f14b84a663bdbfa746982eda629e7f4f9ffe1b036feb",
    "source/assets/NotoSans-Regular.ttf": "b85c38ecea8a7cfb39c24e395a4007474fa5a4fc864f6ee33309eb4948d232d5",
    "source/assets/README.md": "16a29103dbaf7b1f4b537b36f0dd9c2fa33c55a690208d3e886cbc8eeb3b2d87",
    "source/assets/ashui-LICENSE.txt": "240293b6ab2025628d0ecf9a81f56160e2114a8fff104ce4f90fbe6ce992e5a3",
    "source/assets/avatar.data-uri": "b1a0777ca5d9426498f43992958eaf4ee2577973b552d65d8683afe8db3543bc",
    "source/assets/cursor.svg": "b00c741f7421427ad4b4fb1b750ecf186a57a24c341b5038c77a7410a70841c9",
    "source/assets/fennec-fox.svg": "d641194dc635e79407f2c6a071327ee394550428f94d58accfb5f2a027e17f29",
    "source/assets/handpan.mp4": "01337aa2b2acf2f636c153b8eb030bff2e9ea8c350cf0db5d4e29d6e40e03786",
    "source/assets/landscape.data-uri": "fbe60ca429bf7ed280ebd87888bfb11809d1d3486d2ed145f61ae3fbc5b1bf35",
    "source/assets/night-drive-waveform.json": "1dd80edb59ce507f0cde5f81a376a5e6f1f919227165d744913db23d017f8b56",
    "source/assets/night-drive.flac": "f026c0261e0645a451ec1514697e17eb91e9a28fcc07ad40de65982a14cfc57c",
    "source/cn.css": "4449d2d4ee06d566ab3cae11061a30deceff3d90f0975ff4602a5be13bbdd62d",
    "source/demo.css": "db8a400902d9506b1bc909bc8871132ebdcec0c771e0a294113d903bde3016b1",
    "source/demos.rs": "0e8d712d2b84ad0dd47cd8c75a3b232fef307137ae548667894193009afa11d0",
    "syntax/LICENSE": "6c081431591d9df696c82dc598fe1423765b8a299b200ed00b281afd0f64c490",
    "syntax/format.js": "3f6c1dd453ba7519bd35a5be6fa1ea6a3601aecf9e805d4889a86d57c63c5e2c",
    "syntax/highlight.js": "f9ba3da2810d7482b0de8eadf2735739ce1d56918dcd517fe13b2fa7a3b336c0"
  },
  "cargo_lock_sha256": "4185c02931f5c5653739f5bec51231c37beee646034754b8fb29c8ca61282eef",
  "components": [
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Actions",
      "classes": [
        ".cn-button",
        ".cn-button--primary",
        ".cn-button--secondary",
        ".cn-button--outline",
        ".cn-button--ghost",
        ".cn-button--link",
        ".cn-button--destructive",
        ".cn-button--sm",
        ".cn-button--md",
        ".cn-button--lg",
        ".cn-button--icon"
      ],
      "controls": [
        "disabled"
      ],
      "custom_css": null,
      "description": "A clear call to action, with bound labels, variants and keyboard focus.",
      "doc": "docs/book/src/cn/button.md",
      "doc_section": null,
      "entry": "button_demo",
      "implementation": [
        "crates/blinc_cn/src/components/button.rs"
      ],
      "keyboard": ":hover, :active, :disabled and :focus-visible. Tab reaches the button; Enter or Space activates it.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::button",
      "notes": "The label can be a value, Signal or Computed. A disabled button ignores activation. Choose variants and sizes when building the component.",
      "props": [
        {
          "example": "Click me",
          "kind": "Bound",
          "name": "label",
          "type": "String"
        },
        {
          "example": "false",
          "kind": "Bound",
          "name": "disabled",
          "type": "bool"
        },
        {
          "example": "Primary",
          "kind": "Structural",
          "name": "variant",
          "type": "ButtonVariant"
        },
        {
          "example": "Medium",
          "kind": "Structural",
          "name": "size",
          "type": "ButtonSize"
        },
        {
          "example": "Increment the click count",
          "kind": "Callback",
          "name": "on_click",
          "type": "Fn(&EventContext)"
        }
      ],
      "recipe": null,
      "recording": null,
      "since": null,
      "slug": "button",
      "source": "examples/blinc_component_demos/src/demos.rs",
      "tags": [
        "actions",
        "css",
        "reactive"
      ],
      "title": "Button",
      "tokens": "--primary, --primary-hover, --primary-active, --text-inverse, --focus-ring, --radius-default",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Content",
      "classes": [
        ".blinc-link"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Connect content with an accessible, theme-aware inline link.",
      "doc": "docs/book/src/widgets/text.md",
      "doc_section": null,
      "entry": "link_demo",
      "implementation": [
        "crates/blinc_layout/src/widgets/link.rs",
        "examples/blinc_component_demos/src/gallery/builtin.rs"
      ],
      "keyboard": "Tab reaches a link; Enter or Space follows it. :focus-visible marks keyboard focus.",
      "library": "layout",
      "maturity": "stable",
      "module": "layout::widgets::link",
      "notes": "Connect content with an accessible, theme-aware inline link. This built-in widget is provided by blinc_layout; the polished action controls in the example use blinc_cn.",
      "props": [
        {
          "example": "Read the guide / installation",
          "kind": "Construction",
          "name": "label / url",
          "type": "strings"
        },
        {
          "example": "Updates the in-app feedback label",
          "kind": "Callback",
          "name": "on_click",
          "type": "Fn(&str, &EventContext)"
        }
      ],
      "recipe": "link.css",
      "recording": {
        "kind": "click",
        "target": "#demo-action"
      },
      "since": null,
      "slug": "link",
      "source": "examples/blinc_component_demos/src/gallery/builtin.rs",
      "tags": [
        "content",
        "css",
        "built-in"
      ],
      "title": "Link",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas"
      ],
      "category": "Forms",
      "classes": [
        ".cn-label",
        ".cn-label-text",
        ".cn-label-required"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Give a form control a clear label and required marker.",
      "doc": "docs/book/src/cn/form.md",
      "doc_section": "Label",
      "entry": "label_demo",
      "implementation": [
        "crates/blinc_cn/src/components/label.rs",
        "examples/blinc_component_demos/src/gallery/forms.rs"
      ],
      "keyboard": "Informational content; no activation or Tab stop is required.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::label",
      "notes": "Give a form control a clear label and required marker. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "Email address",
          "kind": "Construction",
          "name": "content",
          "type": "string"
        },
        {
          "example": "enabled",
          "kind": "Construction",
          "name": "required",
          "type": "builder flag"
        }
      ],
      "recipe": "label.css",
      "recording": null,
      "since": null,
      "slug": "label",
      "source": "examples/blinc_component_demos/src/gallery/forms.rs",
      "tags": [
        "forms",
        "css",
        "themed"
      ],
      "title": "Label",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Forms",
      "classes": [
        ".cn-input-group",
        ".cn-input",
        ".cn-input--sm",
        ".cn-input--md",
        ".cn-input--lg",
        ".cn-label",
        ".cn-label-text",
        ".blinc-ime-composition"
      ],
      "controls": [
        "disabled"
      ],
      "custom_css": null,
      "description": "A text field with a label, placeholder, validation and reactive feedback.",
      "doc": "docs/book/src/cn/form.md",
      "doc_section": "Input",
      "entry": "input_demo",
      "implementation": [
        "crates/blinc_cn/src/components/input.rs"
      ],
      "keyboard": ":hover, :focus, :disabled, :focus-visible and [data-invalid]. Tab focuses the editor; ordinary editing keys, selection and clipboard shortcuts apply.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::input",
      "notes": "Keep SharedTextInputData across rebuilds. The browser host forwards committed text, composition and clipboard events into the Blinc editor. Its hidden textarea is an input bridge; the visible field is rendered by Blinc.",
      "props": [
        {
          "example": "Empty text",
          "kind": "Persistent editor state",
          "name": "data",
          "type": "SharedTextInputData"
        },
        {
          "example": "Your name / Ada Lovelace",
          "kind": "Bound",
          "name": "label / placeholder",
          "type": "String"
        },
        {
          "example": "false",
          "kind": "Bound",
          "name": "disabled",
          "type": "bool"
        },
        {
          "example": "Medium",
          "kind": "Structural",
          "name": "size",
          "type": "InputSize"
        },
        {
          "example": "Update the greeting Signal",
          "kind": "Callback",
          "name": "on_change",
          "type": "Fn(&str)"
        }
      ],
      "recipe": null,
      "recording": null,
      "since": null,
      "slug": "input",
      "source": "examples/blinc_component_demos/src/demos.rs",
      "tags": [
        "forms",
        "css",
        "reactive"
      ],
      "title": "Input",
      "tokens": "--input-bg, --input-bg-hover, --input-bg-focus, --input-bg-disabled, --border, --focus-ring, --text-primary",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Forms",
      "classes": [
        ".cn-textarea",
        ".blinc-ime-composition"
      ],
      "controls": [
        "disabled"
      ],
      "custom_css": null,
      "description": "Write a message with a themed multiline field.",
      "doc": "docs/book/src/cn/form.md",
      "doc_section": "Textarea",
      "entry": "textarea_demo",
      "implementation": [
        "crates/blinc_cn/src/components/textarea.rs",
        "examples/blinc_component_demos/src/gallery/forms.rs"
      ],
      "keyboard": "Tab focuses the field and the next Tab leaves it. Typing, arrow keys, selection and clipboard shortcuts apply; Enter inserts a new line. :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::textarea",
      "notes": "Write a message with a themed multiline field. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "values.multiline",
          "kind": "Shared document",
          "name": "document",
          "type": "SharedTextAreaState"
        },
        {
          "example": "4 / Tell us what you are building…",
          "kind": "Construction",
          "name": "rows / placeholder",
          "type": "usize / string"
        },
        {
          "example": "Updates the character count",
          "kind": "Callback",
          "name": "on_change",
          "type": "Fn(&str)"
        },
        {
          "example": "values.disabled",
          "kind": "Bound",
          "name": "disabled",
          "type": "bool or IntoReactive<bool>"
        }
      ],
      "recipe": "textarea.css",
      "recording": {
        "frames": 96,
        "kind": "type",
        "target": ".cn-textarea",
        "text": "A clearer way to build UI."
      },
      "since": null,
      "slug": "textarea",
      "source": "examples/blinc_component_demos/src/gallery/forms.rs",
      "tags": [
        "forms",
        "css",
        "themed"
      ],
      "title": "Textarea",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Forms",
      "classes": [
        ".cn-input-otp",
        ".cn-input-otp-slot",
        ".cn-input-otp-separator"
      ],
      "controls": [
        "disabled"
      ],
      "custom_css": null,
      "description": "Enter a verification code with automatic advance and paste support.",
      "doc": "docs/book/src/cn/form.md",
      "doc_section": "OTP Input",
      "entry": "input_otp_demo",
      "implementation": [
        "crates/blinc_cn/src/components/input_otp.rs",
        "examples/blinc_component_demos/src/gallery/forms.rs"
      ],
      "keyboard": "Use the control’s documented keyboard commands; Tab reaches enabled controls and :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::input_otp",
      "notes": "Enter a verification code with automatic advance and paste support. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "values.name",
          "kind": "Bound",
          "name": "value",
          "type": "Signal<String>"
        },
        {
          "example": "6 / 3",
          "kind": "Construction",
          "name": "length / group_every",
          "type": "usize"
        },
        {
          "example": "true",
          "kind": "Construction",
          "name": "numeric_only",
          "type": "bool"
        },
        {
          "example": "values.disabled",
          "kind": "Bound",
          "name": "disabled",
          "type": "bool or IntoReactive<bool>"
        }
      ],
      "recipe": "input-otp.css",
      "recording": {
        "kind": "type",
        "target": ".cn-input-otp-slot",
        "text": "123456"
      },
      "since": null,
      "slug": "input-otp",
      "source": "examples/blinc_component_demos/src/gallery/forms.rs",
      "tags": [
        "forms",
        "css",
        "themed"
      ],
      "title": "OTP Input",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Forms",
      "classes": [
        ".cn-select-trigger",
        ".cn-select-content",
        ".cn-select-item",
        ".cn-select-item--selected",
        ".cn-chevron"
      ],
      "controls": [
        "disabled"
      ],
      "custom_css": null,
      "description": "Choose one option from a keyboard-accessible popover.",
      "doc": "docs/book/src/cn/form.md",
      "doc_section": "Select",
      "entry": "select_demo",
      "implementation": [
        "crates/blinc_cn/src/components/select.rs"
      ],
      "keyboard": "[data-state=\"open\"], [data-placeholder], :hover, :disabled and :focus-visible. Enter/Space opens; arrows move; Enter selects; Escape dismisses.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::select",
      "notes": "The value Signal owns the selection. Popover content lives in the overlay root, outside .catalog-demo; target .cn-select-content and .cn-select-item directly when restyling.",
      "props": [
        {
          "example": "rust",
          "kind": "Read/write binding",
          "name": "value",
          "type": "Signal<String>"
        },
        {
          "example": "Language",
          "kind": "Bound",
          "name": "label",
          "type": "String"
        },
        {
          "example": "false",
          "kind": "Bound",
          "name": "disabled",
          "type": "bool"
        },
        {
          "example": "Rust, TypeScript, Python",
          "kind": "Structural",
          "name": "options",
          "type": "SelectOption"
        },
        {
          "example": "Optional user selection feedback",
          "kind": "Callback",
          "name": "on_change",
          "type": "Fn(&str)"
        }
      ],
      "recipe": null,
      "recording": null,
      "since": null,
      "slug": "select",
      "source": "examples/blinc_component_demos/src/demos.rs",
      "tags": [
        "forms",
        "css",
        "reactive"
      ],
      "title": "Select",
      "tokens": "--surface-elevated, --surface-overlay, --border, --primary, --focus-ring, --text-primary, --text-secondary",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Forms",
      "classes": [
        ".cn-combobox",
        ".cn-combobox-trigger",
        ".cn-chevron",
        ".cn-combobox-box",
        ".cn-combobox-content",
        ".cn-combobox-search",
        ".cn-combobox-search-row",
        ".cn-combobox-empty",
        ".cn-combobox-item",
        ".cn-combobox-item--selected"
      ],
      "controls": [
        "disabled"
      ],
      "custom_css": null,
      "description": "Search a list and select an option.",
      "doc": "docs/book/src/cn/form.md",
      "doc_section": "Combobox",
      "entry": "combobox_demo",
      "implementation": [
        "crates/blinc_cn/src/components/combobox.rs",
        "examples/blinc_component_demos/src/gallery/forms.rs"
      ],
      "keyboard": "Use the control’s documented keyboard commands; Tab reaches enabled controls and :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::combobox",
      "notes": "Search a list and select an option. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "rust",
          "kind": "Bound",
          "name": "value",
          "type": "Signal<String>"
        },
        {
          "example": "Rust / TypeScript / Python",
          "kind": "Construction",
          "name": "option(value, label)",
          "type": "strings"
        },
        {
          "example": "values.disabled",
          "kind": "Bound",
          "name": "disabled",
          "type": "bool or IntoReactive<bool>"
        }
      ],
      "recipe": "combobox.css",
      "recording": {
        "kind": "menu",
        "secondary": ".cn-combobox-item",
        "target": ".cn-combobox-trigger"
      },
      "since": null,
      "slug": "combobox",
      "source": "examples/blinc_component_demos/src/gallery/forms.rs",
      "tags": [
        "forms",
        "css",
        "themed"
      ],
      "title": "Combobox",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 420,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Navigation",
      "classes": [
        ".cn-dropdown-trigger",
        ".cn-chevron",
        ".cn-dropdown-menu",
        ".cn-menu-item",
        ".cn-dropdown-item",
        ".cn-dropdown-item--has-submenu"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Group actions in a compact menu.",
      "doc": "docs/book/src/cn/navigation.md",
      "doc_section": "Dropdown Menu",
      "entry": "dropdown_menu_demo",
      "implementation": [
        "crates/blinc_cn/src/components/dropdown_menu.rs",
        "examples/blinc_component_demos/src/gallery/navigation.rs"
      ],
      "keyboard": "Tab reaches the trigger; Down or Up opens it at the first or last row. In the open menu Up and Down wrap through enabled rows, Home and End jump to the ends, Enter or Space activates, Right opens a submenu and Left returns. Escape closes and restores focus; Tab closes and moves on.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::dropdown_menu",
      "notes": "Group actions in a compact menu. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "Project actions",
          "kind": "Construction",
          "name": "label",
          "type": "string"
        },
        {
          "example": "Rename / Save / Archive",
          "kind": "Callback",
          "name": "item / item_with_shortcut",
          "type": "Menu items"
        }
      ],
      "recipe": "dropdown-menu.css",
      "recording": {
        "kind": "menu",
        "secondary": ".cn-menu-item",
        "target": ".cn-dropdown-trigger"
      },
      "since": null,
      "slug": "dropdown-menu",
      "source": "examples/blinc_component_demos/src/gallery/navigation.rs",
      "tags": [
        "navigation",
        "css",
        "themed"
      ],
      "title": "Dropdown Menu",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Navigation",
      "classes": [
        ".cn-context-menu",
        ".cn-menu-item",
        ".cn-context-menu-item",
        ".cn-context-menu-item--has-submenu"
      ],
      "controls": [
        "disabled"
      ],
      "custom_css": null,
      "description": "Show actions at the pointer or keyboard-focused target.",
      "doc": "docs/book/src/cn/navigation.md",
      "doc_section": "Context Menu",
      "entry": "context_menu_demo",
      "implementation": [
        "crates/blinc_cn/src/components/context_menu.rs",
        "examples/blinc_component_demos/src/gallery/navigation.rs"
      ],
      "keyboard": "While the menu is open Up and Down wrap through enabled rows, Home and End jump to the ends, Enter or Space activates, Right opens a submenu and Left returns. Escape closes and restores focus; Tab closes and moves on.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::context_menu",
      "notes": "Right-click the Website redesign project for icon-labelled actions. Add or remove it from favorites; the project details and next menu update in place.",
      "props": [
        {
          "example": "Project actions",
          "kind": "Construction",
          "name": "items",
          "type": "Vec<ContextMenuItem>"
        },
        {
          "example": "Opens at the pointer position",
          "kind": "Callback",
          "name": "on_context_menu",
          "type": "EventContext"
        },
        {
          "example": "values.disabled",
          "kind": "Bound",
          "name": "disabled",
          "type": "bool or IntoReactive<bool>"
        }
      ],
      "recipe": "context-menu.css",
      "recording": {
        "kind": "context",
        "secondary": ".cn-menu-item",
        "target": "#demo-action"
      },
      "since": null,
      "slug": "context-menu",
      "source": "examples/blinc_component_demos/src/gallery/navigation.rs",
      "tags": [
        "navigation",
        "css",
        "themed"
      ],
      "title": "Context Menu",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Navigation",
      "classes": [
        ".cn-menubar",
        ".cn-menubar-trigger",
        ".cn-menubar-content",
        ".cn-menu-item",
        ".cn-menubar-item",
        ".cn-menubar-item--has-submenu"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Organise application commands in adjacent menus.",
      "doc": "docs/book/src/cn/navigation.md",
      "doc_section": "Menubar",
      "entry": "menubar_demo",
      "implementation": [
        "crates/blinc_cn/src/components/menubar.rs",
        "examples/blinc_component_demos/src/gallery/navigation.rs"
      ],
      "keyboard": "The menubar is one Tab stop. Left and Right, Home and End move between triggers; Down or Up opens the selected menu. Inside an open menu Left and Right switch to the adjacent menu, and submenus use Right to enter and Left to return.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::menubar",
      "notes": "Organise application commands in adjacent menus. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "File / Edit",
          "kind": "Construction",
          "name": "menu",
          "type": "menu builder"
        }
      ],
      "recipe": "menubar.css",
      "recording": {
        "kind": "menu",
        "secondary": ".cn-menu-item",
        "target": ".cn-menubar-trigger"
      },
      "since": null,
      "slug": "menubar",
      "source": "examples/blinc_component_demos/src/gallery/navigation.rs",
      "tags": [
        "navigation",
        "css",
        "themed"
      ],
      "title": "Menubar",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Navigation",
      "classes": [
        ".cn-nav-menu",
        ".cn-nav-link",
        ".cn-nav-menu-content",
        ".cn-nav-link-description",
        ".cn-nav-link--active"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Mix direct navigation and grouped resource links.",
      "doc": "docs/book/src/cn/navigation.md",
      "doc_section": "Navigation Menu",
      "entry": "navigation_menu_demo",
      "implementation": [
        "crates/blinc_cn/src/components/navigation_menu.rs",
        "examples/blinc_component_demos/src/gallery/navigation.rs"
      ],
      "keyboard": "Use the control’s documented keyboard commands; Tab reaches enabled controls and :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::navigation_menu",
      "notes": "Mix direct navigation and grouped resource links. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "Overview and resource links",
          "kind": "Construction",
          "name": "item / trigger",
          "type": "navigation builders"
        }
      ],
      "recipe": "navigation-menu.css",
      "recording": {
        "kind": "menu",
        "secondary": ".cn-nav-link",
        "secondary_index": 2,
        "target": ".cn-nav-link",
        "target_index": 1
      },
      "since": null,
      "slug": "navigation-menu",
      "source": "examples/blinc_component_demos/src/gallery/navigation.rs",
      "tags": [
        "navigation",
        "css",
        "themed"
      ],
      "title": "Navigation Menu",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Forms",
      "classes": [
        ".cn-checkbox"
      ],
      "controls": [
        "disabled"
      ],
      "custom_css": null,
      "description": "Make a choice that can be checked, cleared and bound to application data.",
      "doc": "docs/book/src/cn/form.md",
      "doc_section": "Checkbox",
      "entry": "checkbox_demo",
      "implementation": [
        "crates/blinc_cn/src/components/checkbox.rs",
        "examples/blinc_component_demos/src/gallery/forms.rs"
      ],
      "keyboard": "Tab reaches the checkbox; Space or Enter toggles it. :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::checkbox",
      "notes": "Make a choice that can be checked, cleared and bound to application data. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "values.confirmed",
          "kind": "Bound",
          "name": "checked",
          "type": "Signal<bool>"
        },
        {
          "example": "Keep me signed in",
          "kind": "Construction",
          "name": "label",
          "type": "string"
        },
        {
          "example": "values.disabled",
          "kind": "Bound",
          "name": "disabled",
          "type": "bool or IntoReactive<bool>"
        }
      ],
      "recipe": "checkbox.css",
      "recording": {
        "kind": "click",
        "target": ".cn-checkbox"
      },
      "since": null,
      "slug": "checkbox",
      "source": "examples/blinc_component_demos/src/gallery/forms.rs",
      "tags": [
        "forms",
        "css",
        "themed"
      ],
      "title": "Checkbox",
      "tokens": "--cn-checkbox-checked-bg, --cn-checkbox-checked-border, --cn-checkbox-checked-color, --primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Forms",
      "classes": [
        ".cn-radio",
        ".cn-radio-dot"
      ],
      "controls": [
        "disabled"
      ],
      "custom_css": null,
      "description": "Choose one option from a labelled group.",
      "doc": "docs/book/src/cn/form.md",
      "doc_section": "Radio Group",
      "entry": "radio_demo",
      "implementation": [
        "crates/blinc_cn/src/components/radio.rs",
        "examples/blinc_component_demos/src/gallery/forms.rs"
      ],
      "keyboard": "Tab reaches each radio; Enter or Space selects it. :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::radio",
      "notes": "Choose one option from a labelled group. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "values.choice",
          "kind": "Bound",
          "name": "value",
          "type": "Signal<String>"
        },
        {
          "example": "TypeScript / Rust / Python",
          "kind": "Construction",
          "name": "option(value, label)",
          "type": "strings"
        },
        {
          "example": "values.disabled",
          "kind": "Bound",
          "name": "disabled",
          "type": "bool or IntoReactive<bool>"
        }
      ],
      "recipe": "radio-group.css",
      "recording": {
        "kind": "click",
        "target": ".cn-radio"
      },
      "since": null,
      "slug": "radio-group",
      "source": "examples/blinc_component_demos/src/gallery/forms.rs",
      "tags": [
        "forms",
        "css",
        "themed"
      ],
      "title": "Radio Group",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Forms",
      "classes": [
        ".cn-switch",
        ".cn-switch-thumb",
        ".cn-switch-row",
        ".cn-switch-label"
      ],
      "controls": [
        "disabled"
      ],
      "custom_css": null,
      "description": "Turn a setting on or off with clear, theme-aware feedback.",
      "doc": "docs/book/src/cn/form.md",
      "doc_section": "Switch",
      "entry": "switch_demo",
      "implementation": [
        "crates/blinc_cn/src/components/switch.rs",
        "examples/blinc_component_demos/src/gallery/forms.rs"
      ],
      "keyboard": "Tab reaches the control; Enter or Space activates it. :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::switch",
      "notes": "Turn a setting on or off with clear, theme-aware feedback. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "values.confirmed",
          "kind": "Bound",
          "name": "checked",
          "type": "Signal<bool>"
        },
        {
          "example": "Email notifications",
          "kind": "Construction",
          "name": "label",
          "type": "string"
        },
        {
          "example": "values.disabled",
          "kind": "Bound",
          "name": "disabled",
          "type": "bool or IntoReactive<bool>"
        }
      ],
      "recipe": "switch.css",
      "recording": {
        "kind": "click",
        "target": ".cn-switch"
      },
      "since": null,
      "slug": "switch",
      "source": "examples/blinc_component_demos/src/gallery/forms.rs",
      "tags": [
        "forms",
        "css",
        "themed"
      ],
      "title": "Switch",
      "tokens": "--cn-switch-checked-thumb, --primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Forms",
      "classes": [
        ".cn-toggle"
      ],
      "controls": [
        "disabled"
      ],
      "custom_css": null,
      "description": "Keep an independent action selected or unselected.",
      "doc": "docs/book/src/cn/form.md",
      "doc_section": "Toggle",
      "entry": "toggle_demo",
      "implementation": [
        "crates/blinc_cn/src/components/toggle.rs",
        "examples/blinc_component_demos/src/gallery/forms.rs"
      ],
      "keyboard": "Tab reaches the control; Enter or Space activates it. :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::toggle",
      "notes": "Keep an independent action selected or unselected. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "values.confirmed",
          "kind": "Bound",
          "name": "value",
          "type": "Signal<bool>"
        },
        {
          "example": "values.disabled",
          "kind": "Bound",
          "name": "disabled",
          "type": "bool or IntoReactive<bool>"
        }
      ],
      "recipe": "toggle.css",
      "recording": {
        "kind": "click",
        "target": ".cn-toggle"
      },
      "since": null,
      "slug": "toggle",
      "source": "examples/blinc_component_demos/src/gallery/forms.rs",
      "tags": [
        "forms",
        "css",
        "themed"
      ],
      "title": "Toggle",
      "tokens": "--cn-toggle-selected-bg, --cn-toggle-selected-hover-bg, --cn-toggle-selected-color, --primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Forms",
      "classes": [
        ".cn-toggle-group",
        ".cn-toggle"
      ],
      "controls": [
        "disabled"
      ],
      "custom_css": null,
      "description": "Switch text alignment with accessible icon buttons and see the content respond.",
      "doc": "docs/book/src/cn/form.md",
      "doc_section": "Toggle Group",
      "entry": "toggle_group_demo",
      "implementation": [
        "crates/blinc_cn/src/components/toggle_group.rs",
        "examples/blinc_component_demos/src/gallery/forms.rs"
      ],
      "keyboard": "Tab reaches each toggle; Enter or Space selects it. :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::toggle_group",
      "notes": "Choose one item in a compact group of toggle buttons. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "values.choice",
          "kind": "Bound",
          "name": "value",
          "type": "Signal<String>"
        },
        {
          "example": "TS / Rust / Py",
          "kind": "Construction",
          "name": "item",
          "type": "ToggleItem"
        },
        {
          "example": "values.disabled",
          "kind": "Bound",
          "name": "disabled",
          "type": "bool or IntoReactive<bool>"
        }
      ],
      "recipe": "toggle-group.css",
      "recording": {
        "kind": "click",
        "target": ".cn-toggle",
        "target_index": 0
      },
      "since": null,
      "slug": "toggle-group",
      "source": "examples/blinc_component_demos/src/gallery/forms.rs",
      "tags": [
        "forms",
        "css",
        "themed"
      ],
      "title": "Toggle Group",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Forms",
      "classes": [
        ".cn-number-input-group",
        ".cn-number-input-field",
        ".cn-number-input-step"
      ],
      "controls": [
        "disabled"
      ],
      "custom_css": null,
      "description": "Edit a bounded number with typing, step controls or the mouse wheel.",
      "doc": "docs/book/src/cn/form.md",
      "doc_section": "Number Input",
      "entry": "number_input_demo",
      "implementation": [
        "crates/blinc_cn/src/components/number_input.rs",
        "examples/blinc_component_demos/src/gallery/forms.rs"
      ],
      "keyboard": "Tab focuses the field. Typing, the up and down arrows, the stepper buttons and the mouse wheel all clamp to the minimum and maximum. :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::number_input",
      "notes": "Edit a bounded number with typing, step controls or the mouse wheel. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "42",
          "kind": "Bound",
          "name": "value",
          "type": "Signal<f64>"
        },
        {
          "example": "0 / 99 / 1",
          "kind": "Construction",
          "name": "min / max / step",
          "type": "f64"
        },
        {
          "example": "values.disabled",
          "kind": "Bound",
          "name": "disabled",
          "type": "bool or IntoReactive<bool>"
        }
      ],
      "recipe": "number-input.css",
      "recording": {
        "kind": "click",
        "target": ".cn-number-input-step--inc"
      },
      "since": null,
      "slug": "number-input",
      "source": "examples/blinc_component_demos/src/gallery/forms.rs",
      "tags": [
        "forms",
        "css",
        "themed"
      ],
      "title": "Number Input",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Forms",
      "classes": [
        ".cn-slider",
        ".cn-slider-header",
        ".cn-slider-field",
        ".cn-slider-fill",
        ".cn-slider-rest",
        ".cn-slider-thumb"
      ],
      "controls": [
        "disabled"
      ],
      "custom_css": null,
      "description": "Adjust a value along a track, with a bound label and readout.",
      "doc": "docs/book/src/cn/form.md",
      "doc_section": "Slider",
      "entry": "slider_demo",
      "implementation": [
        "crates/blinc_cn/src/components/slider.rs",
        "examples/blinc_component_demos/src/gallery/forms.rs"
      ],
      "keyboard": "Tab focuses the slider. Arrow keys, Page Up and Page Down, Home and End move it; values snap to the step. :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::slider",
      "notes": "Adjust a value along a track, with a bound label and readout. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "42",
          "kind": "Bound",
          "name": "value",
          "type": "Signal<f32>"
        },
        {
          "example": "0 / 100 / 1",
          "kind": "Construction",
          "name": "min / max / step",
          "type": "numbers"
        },
        {
          "example": "enabled",
          "kind": "Construction",
          "name": "show_value",
          "type": "builder flag"
        },
        {
          "example": "values.disabled",
          "kind": "Bound",
          "name": "disabled",
          "type": "bool or IntoReactive<bool>"
        }
      ],
      "recipe": "slider.css",
      "recording": {
        "kind": "drag",
        "target": ".cn-slider"
      },
      "since": null,
      "slug": "slider",
      "source": "examples/blinc_component_demos/src/gallery/forms.rs",
      "tags": [
        "forms",
        "css",
        "themed"
      ],
      "title": "Slider",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer"
      ],
      "category": "Forms",
      "classes": [
        ".cn-number-gauge",
        ".cn-number-gauge-fill",
        ".cn-number-gauge-thumb",
        ".cn-number-gauge-grip",
        ".cn-number-gauge-rest",
        ".cn-number-gauge-value"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Scrub a number directly with a compact, draggable gauge.",
      "doc": "docs/book/src/cn/form.md",
      "doc_section": "Number Gauge",
      "entry": "number_gauge_demo",
      "implementation": [
        "crates/blinc_cn/src/components/number_gauge.rs",
        "examples/blinc_component_demos/src/gallery/forms.rs"
      ],
      "keyboard": "Tab focuses the gauge. Arrow keys, Page Up and Page Down, Home and End move it; values snap to the step. The wheel also steps it. :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::number_gauge",
      "notes": "Scrub a number directly with a compact, draggable gauge. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "42",
          "kind": "Bound",
          "name": "value",
          "type": "Signal<f64>"
        },
        {
          "example": "0..=100 / 1",
          "kind": "Construction",
          "name": "range / step",
          "type": "RangeInclusive<f64> / f64"
        }
      ],
      "recipe": "number-gauge.css",
      "recording": {
        "kind": "scroll",
        "target": ".cn-number-gauge"
      },
      "since": null,
      "slug": "number-gauge",
      "source": "examples/blinc_component_demos/src/gallery/forms.rs",
      "tags": [
        "forms",
        "css",
        "themed"
      ],
      "title": "Number Gauge",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer"
      ],
      "category": "Forms",
      "classes": [
        ".cn-number-range-gauge",
        ".cn-number-gauge-layer",
        ".cn-number-gauge-fill",
        ".cn-number-gauge-thumb",
        ".cn-number-gauge-value"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Choose a lower and upper bound together.",
      "doc": "docs/book/src/cn/form.md",
      "doc_section": "Number Gauge",
      "entry": "number_range_gauge_demo",
      "implementation": [
        "crates/blinc_cn/src/components/number_range_gauge.rs",
        "examples/blinc_component_demos/src/gallery/forms.rs",
        "crates/blinc_cn/src/components/number_gauge.rs"
      ],
      "keyboard": "Tab focuses the gauge. Arrow keys, Page Up and Page Down, Home and End move it; the ends never cross. :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::number_range_gauge",
      "notes": "Choose a lower and upper bound together. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "20..=80",
          "kind": "Bound",
          "name": "value",
          "type": "Signal<RangeInclusive<f64>>"
        },
        {
          "example": "0..=100 / 1",
          "kind": "Construction",
          "name": "range / step",
          "type": "RangeInclusive<f64> / f64"
        }
      ],
      "recipe": "number-range-gauge.css",
      "recording": {
        "kind": "scroll",
        "target": ".cn-number-range-gauge"
      },
      "since": null,
      "slug": "number-range-gauge",
      "source": "examples/blinc_component_demos/src/gallery/forms.rs",
      "tags": [
        "forms",
        "css",
        "themed"
      ],
      "title": "Number Range Gauge",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Forms",
      "classes": [
        ".cn-calendar",
        ".cn-calendar-weekdays",
        ".cn-calendar-weekday",
        ".cn-calendar-months",
        ".cn-calendar-body",
        ".cn-calendar-year-picker",
        ".cn-calendar-header",
        ".cn-calendar-caption",
        ".cn-calendar-month-picker",
        ".cn-calendar-nav",
        ".cn-calendar-grid",
        ".cn-calendar-page",
        ".cn-calendar-day",
        ".cn-calendar-events",
        ".cn-calendar-event",
        ".cn-calendar-event--icon"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Browse months, select a date and mark events in an inline calendar.",
      "doc": "docs/book/src/cn/form.md",
      "doc_section": "Calendar",
      "entry": "calendar_demo",
      "implementation": [
        "crates/blinc_cn/src/components/calendar.rs",
        "examples/blinc_component_demos/src/gallery/forms.rs"
      ],
      "keyboard": "Tab to the day grid, or click a day. Arrows move by a day or a week, Page Up and Page Down by a month, Home and End to the ends of the week; Enter or Space chooses. :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::calendar",
      "notes": "Browse months, select a date and mark events in an inline calendar. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "2026-11-04",
          "kind": "Bound",
          "name": "selected",
          "type": "Signal<Option<CalendarDay>>"
        },
        {
          "example": "2026-11-04 / Monday",
          "kind": "Construction",
          "name": "today / week_start",
          "type": "CalendarDay / u32"
        },
        {
          "example": "Design review",
          "kind": "Construction",
          "name": "events",
          "type": "Vec<CalendarEvent>"
        }
      ],
      "recipe": "calendar.css",
      "recording": {
        "kind": "click",
        "target": ".cn-calendar-nav",
        "target_index": 1
      },
      "since": null,
      "slug": "calendar",
      "source": "examples/blinc_component_demos/src/gallery/forms.rs",
      "tags": [
        "forms",
        "css",
        "themed"
      ],
      "title": "Calendar",
      "tokens": "--cn-calendar-selected-bg, --cn-calendar-selected-color, --primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 420,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Forms",
      "classes": [
        ".cn-date-picker-trigger",
        ".cn-date-picker-icon",
        ".cn-date-picker-value",
        ".cn-date-picker-content",
        ".cn-date-picker-footer",
        ".cn-date-picker-clear"
      ],
      "controls": [
        "disabled"
      ],
      "custom_css": null,
      "description": "Choose a calendar date in a compact popover.",
      "doc": "docs/book/src/cn/pickers.md",
      "doc_section": "Date Picker",
      "entry": "date_picker_demo",
      "implementation": [
        "crates/blinc_cn/src/components/date_picker.rs",
        "examples/blinc_component_demos/src/gallery/forms.rs"
      ],
      "keyboard": "Tab reaches the trigger; Enter or Space opens the calendar, which has its own keyboard navigation. Escape or an outside click closes it. :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::date_picker",
      "notes": "Choose a calendar date in a compact popover. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "2026-11-04",
          "kind": "Bound",
          "name": "selected",
          "type": "Signal<Option<CalendarDay>>"
        },
        {
          "example": "2026-11-04",
          "kind": "Construction",
          "name": "today",
          "type": "CalendarDay"
        },
        {
          "example": "values.disabled",
          "kind": "Bound",
          "name": "disabled",
          "type": "bool or IntoReactive<bool>"
        }
      ],
      "recipe": "date-picker.css",
      "recording": {
        "kind": "menu",
        "secondary": ".cn-calendar-day",
        "secondary_index": 10,
        "target": ".cn-date-picker-trigger"
      },
      "since": null,
      "slug": "date-picker",
      "source": "examples/blinc_component_demos/src/gallery/forms.rs",
      "tags": [
        "forms",
        "css",
        "themed"
      ],
      "title": "Date Picker",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 480,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Forms",
      "classes": [
        ".cn-time-picker",
        ".cn-time-picker-separator",
        ".cn-time-picker-period",
        ".cn-time-picker-clock",
        ".cn-time-picker-segment",
        ".cn-time-picker-part"
      ],
      "controls": [
        "disabled"
      ],
      "custom_css": null,
      "description": "Time Picker built with Blinc.",
      "doc": "docs/book/src/cn/pickers.md",
      "doc_section": "Time Picker",
      "entry": "time_picker_demo",
      "implementation": [
        "crates/blinc_cn/src/components/time_picker.rs",
        "examples/blinc_component_demos/src/gallery/forms.rs"
      ],
      "keyboard": "Tab moves between the fields and the AM/PM period; Enter or Space toggles the period. In the popup Tab reaches each column and the footer; Up and Down step a column, Page Up and Page Down step five times, Home and End jump to the first and last value. Escape cancels the draft. :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::time_picker",
      "notes": "Time Picker built with Blinc. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "14:30:00",
          "kind": "Bound",
          "name": "value",
          "type": "Signal<TimeOfDay>"
        },
        {
          "example": "TwelveHour",
          "kind": "Construction",
          "name": "format",
          "type": "TimeFormat"
        },
        {
          "example": "5",
          "kind": "Construction",
          "name": "minute_step",
          "type": "u8"
        },
        {
          "example": "values.disabled",
          "kind": "Bound",
          "name": "disabled",
          "type": "bool or IntoReactive<bool>"
        }
      ],
      "recipe": "time-picker.css",
      "recording": {
        "kind": "menu",
        "secondary": ".cn-time-picker-wheel-save",
        "target": ".cn-time-picker-clock"
      },
      "since": null,
      "slug": "time-picker",
      "source": "examples/blinc_component_demos/src/gallery/forms.rs",
      "tags": [
        "forms",
        "css",
        "themed"
      ],
      "title": "Time Picker",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Forms",
      "classes": [
        ".cn-color-picker-trigger",
        ".cn-color-picker-swatch",
        ".cn-color-picker",
        ".cn-color-picker-value",
        ".cn-color-picker-panel",
        ".cn-color-picker-label",
        ".cn-color-picker-swatches",
        ".cn-color-picker-preset",
        ".cn-color-picker-entry",
        ".cn-color-picker-hex",
        ".cn-color-picker-hex-wrap"
      ],
      "controls": [
        "disabled"
      ],
      "custom_css": null,
      "description": "Choose a colour with a saturation field, hue, opacity and saved swatches.",
      "doc": "docs/book/src/cn/pickers.md",
      "doc_section": "Colour Picker",
      "entry": "color_picker_demo",
      "implementation": [
        "crates/blinc_cn/src/components/color_picker.rs",
        "examples/blinc_component_demos/src/gallery/forms.rs"
      ],
      "keyboard": "Tab moves between the coordinate fields, the hex editor and the presets. Arrow keys adjust saturation, brightness, hue or opacity by 1 (Shift: 10); Home and End jump to the ends. Hex entry is a draft until Enter. Enter or Space opens the trigger or selects a preset. :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::color_picker",
      "notes": "Choose a colour with a saturation field, hue, opacity and saved swatches. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "theme-blue sample",
          "kind": "Bound",
          "name": "value",
          "type": "Signal<Color>"
        },
        {
          "example": "Blue / teal / amber",
          "kind": "Bound",
          "name": "swatches",
          "type": "Vec<Color> or reactive source"
        },
        {
          "example": "true",
          "kind": "Construction",
          "name": "alpha",
          "type": "bool"
        },
        {
          "example": "values.disabled",
          "kind": "Bound",
          "name": "disabled",
          "type": "bool or IntoReactive<bool>"
        }
      ],
      "recipe": "color-picker.css",
      "recording": {
        "kind": "menu",
        "secondary": ".cn-color-picker-preset",
        "secondary_index": 1,
        "target": ".cn-color-picker-trigger"
      },
      "since": null,
      "slug": "color-picker",
      "source": "examples/blinc_component_demos/src/gallery/forms.rs",
      "tags": [
        "forms",
        "css",
        "themed"
      ],
      "title": "Color Picker",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 480,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Navigation",
      "classes": [
        ".cn-tabs",
        ".cn-tabs-list",
        ".cn-tabs-trigger",
        ".cn-tabs-indicator",
        ".cn-tabs-trigger--disabled",
        ".cn-tabs-panel",
        ".cn-tabs-trigger--active"
      ],
      "controls": [
        "disabled"
      ],
      "custom_css": null,
      "description": "Switch between related views in the same space.",
      "doc": "docs/book/src/cn/navigation.md",
      "doc_section": "Tabs",
      "entry": "tabs_demo",
      "implementation": [
        "crates/blinc_cn/src/components/tabs.rs",
        "examples/blinc_component_demos/src/gallery/navigation.rs"
      ],
      "keyboard": "Tab reaches each tab trigger; Enter or Space selects it. :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::tabs",
      "notes": "Switch between related views in the same space. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "rust",
          "kind": "Bound",
          "name": "value",
          "type": "Signal<String>"
        },
        {
          "example": "Overview / Activity",
          "kind": "Construction",
          "name": "tab(value, label, content)",
          "type": "strings and child builder"
        },
        {
          "example": "Fade",
          "kind": "Construction",
          "name": "transition",
          "type": "TabsTransition"
        },
        {
          "example": "values.disabled",
          "kind": "Bound",
          "name": "disabled",
          "type": "bool or IntoReactive<bool>"
        }
      ],
      "recipe": "tabs.css",
      "recording": {
        "kind": "click",
        "target": ".cn-tabs-trigger",
        "target_index": 1
      },
      "since": null,
      "slug": "tabs",
      "source": "examples/blinc_component_demos/src/gallery/navigation.rs",
      "tags": [
        "navigation",
        "css",
        "themed"
      ],
      "title": "Tabs",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Layout",
      "classes": [
        ".cn-accordion",
        ".cn-accordion-trigger",
        ".cn-chevron",
        ".cn-accordion-content",
        ".demo-accordion-copy",
        ".cn-accordion-separator"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Organise related questions into expandable sections.",
      "doc": "docs/book/src/cn/layout.md",
      "doc_section": "Accordion",
      "entry": "accordion_demo",
      "implementation": [
        "crates/blinc_cn/src/components/accordion.rs",
        "examples/blinc_component_demos/src/gallery/display.rs"
      ],
      "keyboard": "Tab reaches each trigger; Enter or Space opens or closes its section. :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::accordion",
      "notes": "Organise related questions into expandable sections. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "Project details",
          "kind": "Construction",
          "name": "item(key, label, content)",
          "type": "strings and child builder"
        },
        {
          "example": "See the compiled example",
          "kind": "Construction",
          "name": "mode",
          "type": "AccordionMode"
        }
      ],
      "recipe": "accordion.css",
      "recording": {
        "kind": "click",
        "target": ".cn-accordion-trigger"
      },
      "since": null,
      "slug": "accordion",
      "source": "examples/blinc_component_demos/src/gallery/display.rs",
      "tags": [
        "layout",
        "css",
        "themed"
      ],
      "title": "Accordion",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Layout",
      "classes": [
        ".cn-collapsible",
        ".cn-collapsible-content",
        ".cn-collapsible-trigger",
        ".cn-chevron",
        ".cn-collapsible-section",
        ".demo-collapsible-copy"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Reveal supporting details without leaving the page.",
      "doc": "docs/book/src/cn/layout.md",
      "doc_section": "Collapsible",
      "entry": "collapsible_demo",
      "implementation": [
        "crates/blinc_cn/src/components/collapsible.rs",
        "examples/blinc_component_demos/src/gallery/display.rs"
      ],
      "keyboard": "Tab reaches the trigger; Enter or Space opens or closes the content. :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::collapsible",
      "notes": "Reveal supporting details without leaving the page. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "values.confirmed",
          "kind": "Bound",
          "name": "open",
          "type": "Signal<bool>"
        },
        {
          "example": "Show details",
          "kind": "Construction",
          "name": "trigger / content",
          "type": "builders"
        }
      ],
      "recipe": "collapsible.css",
      "recording": {
        "kind": "click",
        "target": ".cn-collapsible-trigger"
      },
      "since": null,
      "slug": "collapsible",
      "source": "examples/blinc_component_demos/src/gallery/display.rs",
      "tags": [
        "layout",
        "css",
        "themed"
      ],
      "title": "Collapsible",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Navigation",
      "classes": [
        ".cn-breadcrumb",
        ".cn-breadcrumb-item",
        ".cn-breadcrumb-separator"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Keep the current location visible in a navigation trail.",
      "doc": "docs/book/src/cn/navigation.md",
      "doc_section": "Breadcrumb",
      "entry": "breadcrumb_demo",
      "implementation": [
        "crates/blinc_cn/src/components/breadcrumb.rs",
        "examples/blinc_component_demos/src/gallery/navigation.rs"
      ],
      "keyboard": "Tab reaches each linked item; Enter or Space follows it. The current page is not a stop. :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::breadcrumb",
      "notes": "Keep the current location visible in a navigation trail. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "Workspace / Projects",
          "kind": "Construction",
          "name": "item(label, callback)",
          "type": "navigation item"
        },
        {
          "example": "Website",
          "kind": "Construction",
          "name": "current",
          "type": "string"
        }
      ],
      "recipe": "breadcrumb.css",
      "recording": {
        "kind": "click",
        "target": ".cn-breadcrumb-item"
      },
      "since": null,
      "slug": "breadcrumb",
      "source": "examples/blinc_component_demos/src/gallery/navigation.rs",
      "tags": [
        "navigation",
        "css",
        "themed"
      ],
      "title": "Breadcrumb",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Navigation",
      "classes": [
        ".cn-pagination",
        ".cn-pagination-ellipsis",
        ".cn-pagination-btn"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Browse a larger collection a page at a time.",
      "doc": "docs/book/src/cn/navigation.md",
      "doc_section": "Pagination",
      "entry": "pagination_demo",
      "implementation": [
        "crates/blinc_cn/src/components/pagination.rs",
        "examples/blinc_component_demos/src/gallery/navigation.rs"
      ],
      "keyboard": "Tab reaches each page button and the previous and next buttons; Enter or Space selects. Unavailable buttons are skipped. :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::pagination",
      "notes": "Browse a larger collection a page at a time. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "1",
          "kind": "Bound",
          "name": "page",
          "type": "Signal<usize>"
        },
        {
          "example": "10 / 5",
          "kind": "Construction",
          "name": "total / visible_pages",
          "type": "usize"
        }
      ],
      "recipe": "pagination.css",
      "recording": {
        "kind": "click",
        "target": ".cn-pagination-btn",
        "target_index": 3
      },
      "since": null,
      "slug": "pagination",
      "source": "examples/blinc_component_demos/src/gallery/navigation.rs",
      "tags": [
        "navigation",
        "css",
        "themed"
      ],
      "title": "Pagination",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Navigation",
      "classes": [
        ".cn-sidebar",
        ".cn-sidebar-toggle",
        ".cn-sidebar-chevron",
        ".cn-sidebar-group",
        ".cn-sidebar-group-label",
        ".cn-sidebar-layout",
        ".cn-sidebar-inset",
        ".cn-sidebar-item",
        ".cn-sidebar-icon",
        ".cn-sidebar-label"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Keep the main sections of a workspace in a collapsible rail.",
      "doc": "docs/book/src/cn/navigation.md",
      "doc_section": "Sidebar",
      "entry": "sidebar_demo",
      "implementation": [
        "crates/blinc_cn/src/components/sidebar.rs",
        "examples/blinc_component_demos/src/gallery/navigation.rs"
      ],
      "keyboard": "Tab reaches each item; Enter or Space activates it. :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::sidebar",
      "notes": "Keep the main sections of a workspace in a collapsible rail. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "values.confirmed",
          "kind": "Bound",
          "name": "collapsed",
          "type": "Signal<bool>"
        },
        {
          "example": "Workspace navigation and content",
          "kind": "Construction",
          "name": "item / section / content",
          "type": "builders"
        }
      ],
      "recipe": "sidebar.css",
      "recording": {
        "kind": "click",
        "target": ".cn-sidebar-toggle"
      },
      "since": null,
      "slug": "sidebar",
      "source": "examples/blinc_component_demos/src/gallery/navigation.rs",
      "tags": [
        "navigation",
        "css",
        "themed"
      ],
      "title": "Sidebar",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer"
      ],
      "category": "Data display",
      "classes": [
        ".cn-tooltip"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Explain a control with a short hint on hover.",
      "doc": "docs/book/src/cn/data-display.md",
      "doc_section": "Tooltip",
      "entry": "tooltip_demo",
      "implementation": [
        "crates/blinc_cn/src/components/tooltip.rs",
        "examples/blinc_component_demos/src/gallery/overlays.rs"
      ],
      "keyboard": "Use the pointer to explore the control.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::tooltip",
      "notes": "Explain a control with a short hint on hover. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "Your work is saved automatically.",
          "kind": "Construction",
          "name": "text",
          "type": "string"
        },
        {
          "example": "200",
          "kind": "Construction",
          "name": "open_delay_ms",
          "type": "u64"
        }
      ],
      "recipe": "tooltip.css",
      "recording": {
        "kind": "hover",
        "target": ".cn-button"
      },
      "since": null,
      "slug": "tooltip",
      "source": "examples/blinc_component_demos/src/gallery/overlays.rs",
      "tags": [
        "data display",
        "css",
        "themed"
      ],
      "title": "Tooltip",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer"
      ],
      "category": "Data display",
      "classes": [
        ".cn-hover-card-content"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Reveal supporting information alongside its trigger.",
      "doc": "docs/book/src/cn/data-display.md",
      "doc_section": "Hover Card",
      "entry": "hover_card_demo",
      "implementation": [
        "crates/blinc_cn/src/components/hover_card.rs",
        "examples/blinc_component_demos/src/gallery/overlays.rs"
      ],
      "keyboard": "Use the pointer to explore the control.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::hover_card",
      "notes": "Reveal supporting information alongside its trigger. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "Blinc profile",
          "kind": "Construction",
          "name": "content",
          "type": "child builder"
        },
        {
          "example": "200",
          "kind": "Construction",
          "name": "open_delay_ms",
          "type": "u64"
        }
      ],
      "recipe": "hover-card.css",
      "recording": {
        "kind": "hover",
        "target": ".cn-button"
      },
      "since": null,
      "slug": "hover-card",
      "source": "examples/blinc_component_demos/src/gallery/overlays.rs",
      "tags": [
        "data display",
        "css",
        "themed"
      ],
      "title": "Hover Card",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Data display",
      "classes": [
        ".cn-popover-content"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Keep a small set of preferences close to the control.",
      "doc": "docs/book/src/cn/data-display.md",
      "doc_section": "Popover",
      "entry": "popover_demo",
      "implementation": [
        "crates/blinc_cn/src/components/popover.rs",
        "examples/blinc_component_demos/src/gallery/overlays.rs"
      ],
      "keyboard": "Tab stays inside the open popover and Escape or an outside click closes it. Focus returns to the trigger.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::popover",
      "notes": "Keep a small set of preferences close to the control. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "Preferences and notifications",
          "kind": "Construction",
          "name": "trigger / content",
          "type": "child builders"
        }
      ],
      "recipe": "popover.css",
      "recording": {
        "kind": "menu",
        "secondary": ".cn-switch",
        "target": ".cn-button"
      },
      "since": null,
      "slug": "popover",
      "source": "examples/blinc_component_demos/src/gallery/overlays.rs",
      "tags": [
        "data display",
        "css",
        "themed"
      ],
      "title": "Popover",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Overlays",
      "classes": [
        ".cn-dialog",
        ".cn-dialog-title",
        ".cn-dialog-description",
        ".cn-dialog-motion"
      ],
      "controls": [
        "disabled"
      ],
      "custom_css": null,
      "description": "A focused confirmation step, with dismissal and trigger focus restoration.",
      "doc": "docs/book/src/cn/dialog.md",
      "doc_section": null,
      "entry": "dialog_demo",
      "implementation": [
        "crates/blinc_cn/src/components/dialog.rs"
      ],
      "keyboard": "Tab stays within the active dialog. Escape and backdrop click dismiss it. Closing restores focus to the trigger. Confirmation and cancellation callbacks take no arguments.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::dialog",
      "notes": "Build and show the dialog from the trigger handler. The returned OverlayHandle supports explicit close. Dialog parts live in the overlay root, so selectors beneath .catalog-demo do not reach them.",
      "props": [
        {
          "example": "Publish this draft?",
          "kind": "Bound",
          "name": "title / description",
          "type": "String"
        },
        {
          "example": "Publish / Keep editing",
          "kind": "Bound",
          "name": "confirm_text / cancel_text",
          "type": "String"
        },
        {
          "example": "Set the published Signal",
          "kind": "Callback",
          "name": "on_confirm",
          "type": "Fn()"
        },
        {
          "example": "Optional dismissal feedback",
          "kind": "Callback",
          "name": "on_cancel / on_close",
          "type": "Fn()"
        },
        {
          "example": "Called from the trigger",
          "kind": "Lifecycle",
          "name": "show()",
          "type": "OverlayHandle"
        }
      ],
      "recipe": null,
      "recording": null,
      "since": null,
      "slug": "dialog",
      "source": "examples/blinc_component_demos/src/demos.rs",
      "tags": [
        "overlays",
        "css",
        "reactive"
      ],
      "title": "Dialog",
      "tokens": "--surface-elevated, --text-primary, --text-secondary, --border, --radius-lg, --focus-ring",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Data display",
      "classes": [
        ".cn-sheet",
        ".cn-sheet-title",
        ".cn-sheet-description",
        ".cn-sheet-close",
        ".cn-sheet-separator",
        ".demo-share-content",
        ".demo-share-member",
        ".demo-share-permission",
        ".cn-sheet-header",
        ".cn-sheet-content",
        ".cn-sheet-footer",
        ".demo-share-done",
        ".demo-share-permission-copy"
      ],
      "controls": [],
      "custom_css": null,
      "description": "A bottom sharing panel with project members, guest permissions and a clear completion action.",
      "doc": "docs/book/src/cn/dialog.md",
      "doc_section": "Sheet",
      "entry": "sheet_demo",
      "implementation": [
        "crates/blinc_cn/src/components/sheet.rs",
        "examples/blinc_component_demos/src/gallery/overlays.rs"
      ],
      "keyboard": "Tab stays inside the open sheet and Escape closes it. Focus returns to the trigger.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::sheet",
      "notes": "Open supporting content in a panel at the edge of the view. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "sheet_right()",
          "kind": "Construction",
          "name": "side",
          "type": "sheet helper"
        },
        {
          "example": "Workspace settings",
          "kind": "Construction",
          "name": "title / description / content",
          "type": "strings and child builder"
        }
      ],
      "recipe": "sheet.css",
      "recording": {
        "kind": "click",
        "target": "#demo-action"
      },
      "since": null,
      "slug": "sheet",
      "source": "examples/blinc_component_demos/src/gallery/overlays.rs",
      "tags": [
        "data display",
        "css",
        "themed"
      ],
      "title": "Sheet",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 480,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Data display",
      "classes": [
        ".cn-drawer",
        ".cn-drawer-header",
        ".cn-drawer-title",
        ".cn-drawer-close",
        ".cn-drawer-separator",
        ".cn-drawer-footer",
        ".demo-project-summary",
        ".demo-project-tree",
        ".cn-tree-row",
        ".cn-tree-icon",
        ".cn-tree-group"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Inspect a project’s files in a side drawer with selectable rows, file details and sync status.",
      "doc": "docs/book/src/cn/dialog.md",
      "doc_section": "Drawer",
      "entry": "drawer_demo",
      "implementation": [
        "crates/blinc_cn/src/components/drawer.rs",
        "examples/blinc_component_demos/src/gallery/overlays.rs",
        "crates/blinc_cn/src/components/tree.rs"
      ],
      "keyboard": "Tab stays inside the open drawer and Escape closes it. Focus returns to the trigger.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::drawer",
      "notes": "The project browser reuses Tree View for expandable folders, keyboard navigation and file selection; a bound details panel follows the selected node.",
      "props": [
        {
          "example": "Project files",
          "kind": "Construction",
          "name": "title / child",
          "type": "string and child builder"
        }
      ],
      "recipe": "drawer.css",
      "recording": {
        "kind": "click",
        "target": "#demo-action"
      },
      "since": null,
      "slug": "drawer",
      "source": "examples/blinc_component_demos/src/gallery/overlays.rs",
      "tags": [
        "data display",
        "css",
        "themed"
      ],
      "title": "Drawer",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 480,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Feedback",
      "classes": [
        ".cn-toast",
        ".cn-toast-icon",
        ".cn-toast-title",
        ".cn-toast-description",
        ".cn-toast-close"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Confirm a completed action without interrupting the workflow.",
      "doc": "docs/book/src/cn/feedback.md",
      "doc_section": "Toast",
      "entry": "toast_demo",
      "implementation": [
        "crates/blinc_cn/src/components/toast.rs",
        "examples/blinc_component_demos/src/gallery/overlays.rs"
      ],
      "keyboard": "Use the control’s documented keyboard commands; Tab reaches enabled controls and :focus-visible marks keyboard focus.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::toast",
      "notes": "Confirm a completed action without interrupting the workflow. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "Saved notification",
          "kind": "Construction",
          "name": "title / description",
          "type": "strings"
        },
        {
          "example": "toast_success",
          "kind": "Construction",
          "name": "variant",
          "type": "toast helper"
        }
      ],
      "recipe": "toast.css",
      "recording": {
        "kind": "click",
        "target": "#demo-action"
      },
      "since": null,
      "slug": "toast",
      "source": "examples/blinc_component_demos/src/gallery/overlays.rs",
      "tags": [
        "feedback",
        "css",
        "themed"
      ],
      "title": "Toast",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas"
      ],
      "category": "Feedback",
      "classes": [
        ".cn-alert",
        ".cn-alert-box"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Keep important feedback visible within the page.",
      "doc": "docs/book/src/cn/feedback.md",
      "doc_section": "Alert",
      "entry": "alert_demo",
      "implementation": [
        "crates/blinc_cn/src/components/alert.rs",
        "examples/blinc_component_demos/src/gallery/display.rs"
      ],
      "keyboard": "Informational content; no activation or Tab stop is required.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::alert",
      "notes": "Keep important feedback visible within the page. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "Informational and warning messages",
          "kind": "Construction",
          "name": "title / description",
          "type": "strings"
        },
        {
          "example": "See the compiled example",
          "kind": "Construction",
          "name": "variant",
          "type": "AlertVariant"
        }
      ],
      "recipe": "alert.css",
      "recording": null,
      "since": null,
      "slug": "alert",
      "source": "examples/blinc_component_demos/src/gallery/display.rs",
      "tags": [
        "feedback",
        "css",
        "themed"
      ],
      "title": "Alert",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas"
      ],
      "category": "Feedback",
      "classes": [
        ".cn-badge",
        ".cn-badge--soft-success",
        ".cn-badge--outline-warning"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Compare all five semantic variants in soft, solid and outline styles, with an optional status icon.",
      "doc": "docs/book/src/cn/feedback.md",
      "doc_section": "Badge",
      "entry": "badge_demo",
      "implementation": [
        "crates/blinc_cn/src/components/badge.rs",
        "examples/blinc_component_demos/src/gallery/display.rs"
      ],
      "keyboard": "Informational content; no activation or Tab stop is required.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::badge",
      "notes": "Present a compact status, category or count. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "Status labels",
          "kind": "Construction",
          "name": "label",
          "type": "string"
        },
        {
          "example": "Default, Secondary, Outline and Destructive",
          "kind": "Construction",
          "name": "variant",
          "type": "BadgeVariant"
        }
      ],
      "recipe": "badge.css",
      "recording": null,
      "since": null,
      "slug": "badge",
      "source": "examples/blinc_component_demos/src/gallery/display.rs",
      "tags": [
        "feedback",
        "css",
        "themed"
      ],
      "title": "Badge",
      "tokens": "--variant",
      "viewport": {
        "height": 360,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas"
      ],
      "category": "Data display",
      "classes": [
        ".cn-avatar",
        ".cn-avatar-placeholder",
        ".cn-avatar--square",
        ".cn-avatar-status",
        ".cn-avatar-group",
        ".cn-avatar-group__more"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Represent people with initials, status and grouped avatars.",
      "doc": "docs/book/src/cn/layout.md",
      "doc_section": "Avatar",
      "entry": "avatar_demo",
      "implementation": [
        "crates/blinc_cn/src/components/avatar.rs",
        "examples/blinc_component_demos/src/gallery/display.rs"
      ],
      "keyboard": "Informational content; no activation or Tab stop is required.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::avatar",
      "notes": "Represent people with initials, status and grouped avatars. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "Initials",
          "kind": "Construction",
          "name": "fallback",
          "type": "string"
        },
        {
          "example": "See the compiled example",
          "kind": "Construction",
          "name": "size",
          "type": "AvatarSize"
        }
      ],
      "recipe": "avatar.css",
      "recording": null,
      "since": null,
      "slug": "avatar",
      "source": "examples/blinc_component_demos/src/gallery/display.rs",
      "tags": [
        "data display",
        "css",
        "themed"
      ],
      "title": "Avatar",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Feedback",
      "classes": [
        ".cn-progress",
        ".cn-progress-bar",
        ".demo-caption"
      ],
      "controls": [
        "disabled",
        "progress"
      ],
      "custom_css": null,
      "description": "Show a changing value with an eased, CSS-styled progress bar.",
      "doc": "docs/book/src/cn/feedback.md",
      "doc_section": "Progress",
      "entry": "progress_demo",
      "implementation": [
        "crates/blinc_cn/src/components/progress.rs"
      ],
      "keyboard": "[data-indeterminate] on the track enables the indeterminate animation. A progress bar is informational and is not a keyboard stop; the example button advances it.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::progress",
      "notes": "Bind a value, Signal or Computed. Progress does not own a task or timer; application state supplies the percentage. Use progress_indeterminate() when no percentage is available.",
      "props": [
        {
          "example": "42 (0–100)",
          "kind": "Bound",
          "name": "value",
          "type": "f32"
        },
        {
          "example": "Medium",
          "kind": "Structural",
          "name": "size",
          "type": "ProgressSize"
        },
        {
          "example": "Container width, up to 256 logical pixels",
          "kind": "Structural",
          "name": "w",
          "type": "f32"
        },
        {
          "example": "Not used in this example",
          "kind": "Structural alternative",
          "name": "progress_indeterminate()",
          "type": "Builder"
        }
      ],
      "recipe": null,
      "recording": null,
      "since": null,
      "slug": "progress",
      "source": "examples/blinc_component_demos/src/demos.rs",
      "tags": [
        "feedback",
        "css",
        "reactive"
      ],
      "title": "Progress",
      "tokens": "--cn-progress-track, --cn-progress-bar, --border, --primary, --radius-full, --duration-slow, --ease-nav",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "animation"
      ],
      "category": "Feedback",
      "classes": [
        ".cn-spinner",
        ".cn-spinner__track",
        ".cn-spinner__arc"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Indicate work in progress with theme-timed motion.",
      "doc": "docs/book/src/cn/feedback.md",
      "doc_section": "Spinner",
      "entry": "spinner_demo",
      "implementation": [
        "crates/blinc_cn/src/components/spinner.rs",
        "examples/blinc_component_demos/src/gallery/display.rs"
      ],
      "keyboard": "Informational content; no activation or Tab stop is required.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::spinner",
      "notes": "The Preview records the spinner turning, without a cursor. Live uses the native animation.",
      "props": [
        {
          "example": "Large",
          "kind": "Construction",
          "name": "size",
          "type": "SpinnerSize"
        }
      ],
      "recipe": "spinner.css",
      "recording": null,
      "since": null,
      "slug": "spinner",
      "source": "examples/blinc_component_demos/src/gallery/display.rs",
      "tags": [
        "feedback",
        "css",
        "themed"
      ],
      "title": "Spinner",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "animation"
      ],
      "category": "Feedback",
      "classes": [
        ".cn-skeleton",
        ".cn-skeleton--circle"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Reserve a calm placeholder while content loads.",
      "doc": "docs/book/src/cn/feedback.md",
      "doc_section": "Skeleton",
      "entry": "skeleton_demo",
      "implementation": [
        "crates/blinc_cn/src/components/skeleton.rs",
        "examples/blinc_component_demos/src/gallery/display.rs"
      ],
      "keyboard": "Informational content; no activation or Tab stop is required.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::skeleton",
      "notes": "Reserve a calm placeholder while content loads. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "Placeholder dimensions",
          "kind": "Construction",
          "name": "width / height",
          "type": "f32"
        },
        {
          "example": "Circle and text-like bars",
          "kind": "Construction",
          "name": "shape",
          "type": "skeleton helper"
        }
      ],
      "recipe": "skeleton.css",
      "recording": null,
      "since": null,
      "slug": "skeleton",
      "source": "examples/blinc_component_demos/src/gallery/display.rs",
      "tags": [
        "feedback",
        "css",
        "themed"
      ],
      "title": "Skeleton",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas"
      ],
      "category": "Layout",
      "classes": [
        ".cn-card",
        ".cn-card-header",
        ".cn-card-title",
        ".cn-card-description",
        ".cn-card-footer"
      ],
      "controls": [],
      "custom_css": null,
      "description": "A project summary with a clear heading, a short brief, reviewer avatars and its current review status.",
      "doc": "docs/book/src/cn/card.md",
      "doc_section": null,
      "entry": "card_demo",
      "implementation": [
        "crates/blinc_cn/src/components/card.rs",
        "examples/blinc_component_demos/src/gallery/display.rs"
      ],
      "keyboard": "Informational content; no activation or Tab stop is required.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::card",
      "notes": "Compose a surface with a header, content and footer. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "Project summary",
          "kind": "Construction",
          "name": "title / description",
          "type": "strings"
        },
        {
          "example": "Project details",
          "kind": "Construction",
          "name": "content",
          "type": "child content"
        }
      ],
      "recipe": "card.css",
      "recording": null,
      "since": null,
      "slug": "card",
      "source": "examples/blinc_component_demos/src/gallery/display.rs",
      "tags": [
        "layout",
        "css",
        "themed"
      ],
      "title": "Card",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas"
      ],
      "category": "Layout",
      "classes": [
        ".cn-aspect-ratio",
        ".demo-ratio"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Compare eight common ratios, then change the native aspect-ratio layout constraint directly with CSS.",
      "doc": "docs/book/src/cn/layout.md",
      "doc_section": "Aspect Ratio",
      "entry": "aspect_ratio_demo",
      "implementation": [
        "crates/blinc_cn/src/components/aspect_ratio.rs",
        "examples/blinc_component_demos/src/gallery/display.rs"
      ],
      "keyboard": "Informational content; no activation or Tab stop is required.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::aspect_ratio",
      "notes": "Keep content in a consistent ratio as its container changes. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "16.0 / 9.0",
          "kind": "Construction",
          "name": "ratio",
          "type": "f32"
        },
        {
          "example": "A themed illustration surface",
          "kind": "Construction",
          "name": "child",
          "type": "ElementBuilder"
        }
      ],
      "recipe": "aspect-ratio.css",
      "recording": null,
      "since": null,
      "slug": "aspect-ratio",
      "source": "examples/blinc_component_demos/src/gallery/display.rs",
      "tags": [
        "layout",
        "css",
        "themed"
      ],
      "title": "Aspect Ratio",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 400,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas"
      ],
      "category": "Layout",
      "classes": [
        ".cn-separator"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Separate related groups of content with a themed divider.",
      "doc": "docs/book/src/cn/layout.md",
      "doc_section": "Separator",
      "entry": "separator_demo",
      "implementation": [
        "crates/blinc_cn/src/components/separator.rs",
        "examples/blinc_component_demos/src/gallery/display.rs"
      ],
      "keyboard": "Informational content; no activation or Tab stop is required.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::separator",
      "notes": "Separate related groups of content with a themed divider. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "Horizontal and vertical",
          "kind": "Construction",
          "name": "orientation",
          "type": "SeparatorOrientation"
        }
      ],
      "recipe": "separator.css",
      "recording": null,
      "since": null,
      "slug": "separator",
      "source": "examples/blinc_component_demos/src/gallery/display.rs",
      "tags": [
        "layout",
        "css",
        "themed"
      ],
      "title": "Separator",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer"
      ],
      "category": "Layout",
      "classes": [
        ".cn-resizable",
        ".cn-resizable-handle",
        ".cn-resizable-line"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Let people divide space between neighbouring panels.",
      "doc": "docs/book/src/cn/layout.md",
      "doc_section": "Resizable",
      "entry": "resizable_demo",
      "implementation": [
        "crates/blinc_cn/src/components/resizable.rs",
        "examples/blinc_component_demos/src/gallery/display.rs"
      ],
      "keyboard": "Drag the divider to resize the panels; this example demonstrates pointer resizing.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::resizable",
      "notes": "Let people divide space between neighbouring panels. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "Files and preview",
          "kind": "Construction",
          "name": "panel",
          "type": "ResizablePanel"
        },
        {
          "example": "150 / 80",
          "kind": "Construction",
          "name": "default_size / min_size",
          "type": "f32"
        }
      ],
      "recipe": "resizable.css",
      "recording": {
        "kind": "drag",
        "target": ".cn-resizable-handle"
      },
      "since": null,
      "slug": "resizable",
      "source": "examples/blinc_component_demos/src/gallery/display.rs",
      "tags": [
        "layout",
        "css",
        "themed"
      ],
      "title": "Resizable",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer"
      ],
      "category": "Layout",
      "classes": [
        ".cn-scroll-area",
        ".demo-list-row"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Browse overflowing content in a themed scroll container.",
      "doc": "docs/book/src/cn/layout.md",
      "doc_section": "Scroll Area",
      "entry": "scroll_area_demo",
      "implementation": [
        "crates/blinc_cn/src/components/scroll_area.rs",
        "examples/blinc_component_demos/src/gallery/display.rs"
      ],
      "keyboard": "Scroll with the wheel or trackpad. The example keeps scrolling within its own viewport.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::scroll_area",
      "notes": "Browse overflowing content in a themed scroll container. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "208",
          "kind": "Construction",
          "name": "height",
          "type": "f32"
        },
        {
          "example": "16 chapters",
          "kind": "Construction",
          "name": "child",
          "type": "ElementBuilder"
        }
      ],
      "recipe": "scroll-area.css",
      "recording": {
        "kind": "scroll",
        "target": ".cn-scroll-area"
      },
      "since": null,
      "slug": "scroll-area",
      "source": "examples/blinc_component_demos/src/gallery/display.rs",
      "tags": [
        "layout",
        "css",
        "themed"
      ],
      "title": "Scroll Area",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer"
      ],
      "category": "Content",
      "classes": [
        ".demo-virtual-list",
        ".demo-virtual-row"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Browse thousands of rows while mounting only the visible window.",
      "doc": "docs/book/src/widgets/virtual-list.md",
      "doc_section": null,
      "entry": "virtual_list_demo",
      "implementation": [
        "crates/blinc_layout/src/widgets/virtual_list.rs",
        "examples/blinc_component_demos/src/gallery/builtin.rs"
      ],
      "keyboard": "Scroll with the wheel or trackpad. The example keeps scrolling within its own viewport.",
      "library": "layout",
      "maturity": "stable",
      "module": "layout::widgets::virtual_list",
      "notes": "Browse thousands of rows while mounting only the visible window. This built-in widget is provided by blinc_layout; the polished action controls in the example use blinc_cn.",
      "props": [
        {
          "example": "10,000",
          "kind": "Construction",
          "name": "item_count",
          "type": "usize"
        },
        {
          "example": "Message 00001…",
          "kind": "Construction",
          "name": "item builder",
          "type": "Fn(usize) -> Div"
        },
        {
          "example": "40 / 24",
          "kind": "Construction",
          "name": "estimated_item_height / window_size",
          "type": "f32 / usize"
        }
      ],
      "recipe": "virtual-list.css",
      "recording": {
        "kind": "scroll",
        "target": ".demo-virtual-list"
      },
      "since": null,
      "slug": "virtual-list",
      "source": "examples/blinc_component_demos/src/gallery/builtin.rs",
      "tags": [
        "content",
        "css",
        "built-in"
      ],
      "title": "Virtual List",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas"
      ],
      "category": "Data display",
      "classes": [
        ".cn-table",
        ".cn-table-header",
        ".cn-table-body",
        ".cn-table-footer",
        ".cn-table-row",
        ".cn-table-head",
        ".cn-table-cell",
        ".cn-table-caption"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Present related values with themed headings, rows and cells.",
      "doc": "docs/book/src/cn/data-display.md",
      "doc_section": "Table",
      "entry": "table_demo",
      "implementation": [
        "crates/blinc_cn/src/components/table.rs",
        "examples/blinc_component_demos/src/gallery/display.rs"
      ],
      "keyboard": "Informational content; no activation or Tab stop is required.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::table",
      "notes": "Present related values with themed headings, rows and cells. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "Project / Status with three rows",
          "kind": "Construction",
          "name": "header / body / row / cell",
          "type": "table builders"
        }
      ],
      "recipe": "table.css",
      "recording": null,
      "since": null,
      "slug": "table",
      "source": "examples/blinc_component_demos/src/gallery/display.rs",
      "tags": [
        "data display",
        "css",
        "themed"
      ],
      "title": "Table",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Data display",
      "classes": [
        ".cn-tree",
        ".cn-tree-row",
        ".cn-tree-chevron",
        ".cn-tree-chevron-space",
        ".cn-tree-icon",
        ".cn-tree-label",
        ".cn-tree-item",
        ".cn-tree-group",
        ".cn-tree-guide"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Browse hierarchical content with expansion and selection.",
      "doc": "docs/book/src/cn/data-display.md",
      "doc_section": "Tree",
      "entry": "tree_demo",
      "implementation": [
        "crates/blinc_cn/src/components/tree.rs",
        "examples/blinc_component_demos/src/gallery/display.rs"
      ],
      "keyboard": "Click a row, then Up and Down walk the shown rows, Right opens a row or enters its children, Left closes it or goes to its parent, Home and End jump to the ends, and Enter or Space selects.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::tree",
      "notes": "Browse hierarchical content with expansion and selection. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "src, main.rs, ui.rs and assets",
          "kind": "Construction",
          "name": "node / child",
          "type": "tree builders"
        },
        {
          "example": "Updates values.choice",
          "kind": "Callback",
          "name": "on_select",
          "type": "Fn(&str)"
        }
      ],
      "recipe": "tree.css",
      "recording": {
        "kind": "click",
        "target": ".cn-tree-row"
      },
      "since": null,
      "slug": "tree",
      "source": "examples/blinc_component_demos/src/gallery/display.rs",
      "tags": [
        "data display",
        "css",
        "themed"
      ],
      "title": "Tree",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer"
      ],
      "category": "Data display",
      "classes": [
        ".cn-chart",
        ".cn-chart-axis",
        ".cn-chart-legend",
        ".cn-chart-legend-item",
        ".cn-chart-swatch",
        ".cn-chart-tooltip",
        ".cn-chart-tooltip-title",
        ".cn-chart-tooltip-row",
        ".cn-chart-tooltip-name",
        ".cn-chart-tooltip-value",
        ".cn-chart-plot",
        ".cn-chart-band-label",
        ".cn-chart-note",
        ".cn-chart-pie-total",
        ".cn-chart-pie-caption"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Line, area, bar, pie, donut and specialised charts, each with its own interactive example.",
      "doc": "docs/book/src/cn/data-display.md",
      "doc_section": "Chart",
      "entry": "chart_demo",
      "examples": [
        {
          "description": "Fill the area beneath each series to show volume over time.",
          "entry": "area_demo",
          "slug": "area-chart",
          "title": "Area"
        },
        {
          "description": "Compare each series and its contribution to the total.",
          "entry": "stacked_area_demo",
          "slug": "stacked-area-chart",
          "title": "Stacked area"
        },
        {
          "description": "Compare categories with a separate bar for each series.",
          "entry": "bar_demo",
          "slug": "bar-chart",
          "title": "Grouped bars"
        },
        {
          "description": "Show the total and the series that make it up.",
          "entry": "stacked_bar_demo",
          "slug": "stacked-bar-chart",
          "title": "Stacked bars"
        },
        {
          "description": "Compare categories along a horizontal value axis.",
          "entry": "horizontal_bar_demo",
          "slug": "horizontal-bar-chart",
          "title": "Horizontal bars"
        },
        {
          "description": "Compare proportions with interactive slices and a legend.",
          "entry": "pie_demo",
          "slug": "pie-chart",
          "title": "Pie"
        },
        {
          "description": "Show proportions around a total and its caption.",
          "entry": "donut_demo",
          "slug": "donut-chart",
          "title": "Donut"
        },
        {
          "capabilities": [
            "worker-canvas"
          ],
          "description": "A compact trend without axes, grid or a legend.",
          "entry": "sparkline_demo",
          "slug": "sparkline",
          "title": "Sparkline"
        },
        {
          "description": "Compare measurements against labelled performance budgets.",
          "entry": "threshold_demo",
          "slug": "threshold-chart",
          "title": "Thresholds"
        },
        {
          "description": "Group measurements into bins and mark a reference value.",
          "entry": "histogram_demo",
          "slug": "histogram",
          "title": "Histogram"
        },
        {
          "description": "Compare current measurements with a baseline and show the change.",
          "entry": "comparison_demo",
          "slug": "comparison-chart",
          "title": "Comparison"
        }
      ],
      "implementation": [
        "crates/blinc_cn/src/components/chart/view.rs"
      ],
      "keyboard": "Line, area and bar plots reveal nearby values on hover; pie and donut slices show their share. Sparklines are informational. Charts are not keyboard-selectable; provide a table or text equivalent when values are essential.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::chart",
      "notes": "Each section demonstrates one chart type. Plots follow their available container; the legend, axes, tooltips and notes are ordinary elements styled by the theme. Data accepts values, Signal or Computed sources.",
      "props": [
        {
          "example": "Visitors and Returning",
          "kind": "Structural data",
          "name": "series",
          "type": "name + &[f64]"
        },
        {
          "example": "Signal or Computed data for the selected chart type",
          "kind": "Bound alternative",
          "name": "data",
          "type": "Vec<ChartSeries> / Vec<PieSlice> / Vec<ComparisonItem>"
        },
        {
          "example": "Mon–Sat",
          "kind": "Bound",
          "name": "labels",
          "type": "Vec<String>"
        },
        {
          "example": "Container size, up to 420 × 200 logical pixels",
          "kind": "Structural",
          "name": "width / height",
          "type": "f32"
        },
        {
          "example": "Used by the line example",
          "kind": "Structural",
          "name": "dots()",
          "type": "Builder option"
        },
        {
          "example": "Slice values, hole radius and total caption",
          "kind": "Structural",
          "name": "slice / donut / total",
          "type": "PieBuilder options"
        },
        {
          "example": "Sparkline, threshold and histogram measurements",
          "kind": "Bound",
          "name": "values",
          "type": "Vec<f64>"
        },
        {
          "example": "Performance budgets and reference values",
          "kind": "Structural",
          "name": "band / marker / baseline",
          "type": "ChartBand / ChartMarker / f64"
        },
        {
          "example": "Bar and area arrangements",
          "kind": "Structural",
          "name": "horizontal / stacked",
          "type": "ChartBuilder options"
        }
      ],
      "recipe": null,
      "recording": null,
      "since": null,
      "slug": "charts",
      "source": "examples/blinc_component_demos/src/demos.rs",
      "tags": [
        "data display",
        "css",
        "reactive"
      ],
      "title": "Charts",
      "tokens": "--chart-1 through --chart-5, --cn-chart-grid, --cn-chart-cursor, --cn-chart-surface, --text-primary, --text-secondary",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas"
      ],
      "category": "Data display",
      "classes": [
        ".cn-h1",
        ".cn-h2",
        ".cn-h3",
        ".cn-h4",
        ".cn-h5",
        ".cn-h6",
        ".cn-p",
        ".cn-muted",
        ".cn-caption"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Build a readable hierarchy with a shared type scale.",
      "doc": "docs/book/src/cn/typography.md",
      "doc_section": null,
      "entry": "typography_demo",
      "implementation": [
        "crates/blinc_cn/src/components/typography.rs",
        "examples/blinc_component_demos/src/gallery/display.rs"
      ],
      "keyboard": "Informational content; no activation or Tab stop is required.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::typography",
      "notes": "Use h1–h6 for the heading hierarchy, p for wrapping copy, and muted, caption or small for supporting text. Inline helpers and chained_text compose short fragments; the guide below documents every helper and its styling hooks.",
      "props": [
        {
          "example": "Heading, paragraph and muted text",
          "kind": "Construction",
          "name": "content",
          "type": "impl Into<String>"
        },
        {
          "example": "heading(2, title_signal)",
          "kind": "Bound content; construction-time level",
          "name": "heading(level, content)",
          "type": "u8, impl IntoReactive<String>"
        }
      ],
      "recipe": "typography.css",
      "recording": null,
      "since": null,
      "slug": "typography",
      "source": "examples/blinc_component_demos/src/gallery/display.rs",
      "tags": [
        "data display",
        "css",
        "themed"
      ],
      "title": "Typography",
      "tokens": "--text-primary, --text-secondary, --text-tertiary, --text-base, --text-sm, --space-2",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas"
      ],
      "category": "Content",
      "classes": [
        ".demo--lists",
        ".blinc-list-marker",
        ".blinc-task-box"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Structure short sequences with bullets and numbers.",
      "doc": "docs/book/src/widgets/markdown.md",
      "doc_section": "Lists",
      "entry": "lists_demo",
      "implementation": [
        "crates/blinc_layout/src/widgets/list.rs",
        "examples/blinc_component_demos/src/gallery/builtin.rs"
      ],
      "keyboard": "Informational content; no activation or Tab stop is required.",
      "library": "layout",
      "maturity": "stable",
      "module": "layout::widgets::list",
      "notes": "Structure short sequences with bullets and numbers. This built-in widget is provided by blinc_layout; the polished action controls in the example use blinc_cn.",
      "props": [
        {
          "example": "Unordered and ordered lists",
          "kind": "Construction",
          "name": "ul / ol",
          "type": "list builders"
        },
        {
          "example": "li().child(text(...))",
          "kind": "Construction",
          "name": "child",
          "type": "ListItem"
        }
      ],
      "recipe": "lists.css",
      "recording": null,
      "since": null,
      "slug": "lists",
      "source": "examples/blinc_component_demos/src/gallery/builtin.rs",
      "tags": [
        "content",
        "css",
        "built-in"
      ],
      "title": "Lists",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas"
      ],
      "category": "Content",
      "classes": [
        ".blinc-blockquote"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Give quoted content a clear place in the reading flow.",
      "doc": "docs/book/src/widgets/markdown.md",
      "doc_section": "Blockquotes",
      "entry": "blockquote_demo",
      "implementation": [
        "crates/blinc_layout/src/widgets/blockquote.rs",
        "examples/blinc_component_demos/src/gallery/builtin.rs"
      ],
      "keyboard": "Informational content; no activation or Tab stop is required.",
      "library": "layout",
      "maturity": "stable",
      "module": "layout::widgets::blockquote",
      "notes": "Give quoted content a clear place in the reading flow. This built-in widget is provided by blinc_layout; the polished action controls in the example use blinc_cn.",
      "props": [
        {
          "example": "Quotation and attribution",
          "kind": "Construction",
          "name": "child",
          "type": "ElementBuilder"
        }
      ],
      "recipe": "blockquote.css",
      "recording": null,
      "since": null,
      "slug": "blockquote",
      "source": "examples/blinc_component_demos/src/gallery/builtin.rs",
      "tags": [
        "content",
        "css",
        "built-in"
      ],
      "title": "Blockquote",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas"
      ],
      "category": "Content",
      "classes": [
        ".demo--markdown",
        ".blinc-list-marker",
        ".blinc-blockquote"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Render formatted content directly in the native layout.",
      "doc": "docs/book/src/widgets/markdown.md",
      "doc_section": null,
      "entry": "markdown_demo",
      "implementation": [
        "crates/blinc_layout/src/markdown/renderer.rs",
        "examples/blinc_component_demos/src/gallery/builtin.rs"
      ],
      "keyboard": "Informational content; no activation or Tab stop is required.",
      "library": "layout",
      "maturity": "stable",
      "module": "layout::markdown::renderer",
      "notes": "Render formatted content directly in the native layout. This built-in widget is provided by blinc_layout; the polished action controls in the example use blinc_cn.",
      "props": [
        {
          "example": "Headings, emphasis, inline code and a list",
          "kind": "Construction",
          "name": "source",
          "type": "string"
        }
      ],
      "recipe": "markdown.css",
      "recording": null,
      "since": null,
      "slug": "markdown",
      "source": "examples/blinc_component_demos/src/gallery/builtin.rs",
      "tags": [
        "content",
        "css",
        "built-in"
      ],
      "title": "Markdown",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas"
      ],
      "category": "Content",
      "classes": [
        ".blinc-code",
        ".blinc-code-line-number",
        ".blinc-code-fold",
        ".blinc-code-gutter",
        ".blinc-code-minimap",
        ".blinc-code-minimap-slider",
        ".blinc-code-minimap-line",
        ".blinc-code-guide",
        ".blinc-code-active-line",
        ".blinc-code-selection",
        ".blinc-code-bracket",
        ".blinc-code-find-match",
        ".blinc-code-fold-hint"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Present highlighted source without an editable field.",
      "doc": "docs/book/src/widgets/code-editor.md",
      "doc_section": "Read-Only Code Block",
      "entry": "code_block_demo",
      "implementation": [
        "crates/blinc_layout/src/widgets/code/mod.rs",
        "examples/blinc_component_demos/src/gallery/builtin.rs"
      ],
      "keyboard": "Informational content; no activation or Tab stop is required.",
      "library": "layout",
      "maturity": "stable",
      "module": "layout::widgets::code",
      "notes": "Present highlighted source without an editable field. This built-in widget is provided by blinc_layout; the polished action controls in the example use blinc_cn.",
      "props": [
        {
          "example": "fn main() { … }",
          "kind": "Construction",
          "name": "content",
          "type": "string"
        },
        {
          "example": "RustHighlighter",
          "kind": "Construction",
          "name": "syntax",
          "type": "SyntaxConfig"
        },
        {
          "example": "true",
          "kind": "Construction",
          "name": "line_numbers",
          "type": "bool"
        }
      ],
      "recipe": "code-block.css",
      "recording": null,
      "since": null,
      "slug": "code-block",
      "source": "examples/blinc_component_demos/src/gallery/builtin.rs",
      "tags": [
        "content",
        "css",
        "built-in"
      ],
      "title": "Code Block",
      "tokens": "--blinc-code-caret, --accent",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Editors",
      "classes": [
        ".blinc-code",
        ".blinc-code-line-number",
        ".blinc-code-fold",
        ".blinc-code-gutter",
        ".blinc-code-minimap",
        ".blinc-code-minimap-slider",
        ".blinc-code-minimap-line",
        ".blinc-code-guide",
        ".blinc-code-active-line",
        ".blinc-code-selection",
        ".blinc-code-bracket",
        ".blinc-code-find-match",
        ".blinc-code-fold-hint"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Edit source with syntax highlighting, line numbers, search and selection.",
      "doc": "docs/book/src/widgets/code-editor.md",
      "doc_section": "Editable Code Editor",
      "entry": "code_editor_demo",
      "implementation": [
        "crates/blinc_layout/src/widgets/code/mod.rs",
        "examples/blinc_component_demos/src/gallery/builtin.rs"
      ],
      "keyboard": "Click to focus. Type and select text; arrow keys navigate, Enter inserts a line, Tab indents, and Cmd/Ctrl+F opens search. Standard selection, clipboard and undo shortcuts apply.",
      "library": "layout",
      "maturity": "stable",
      "module": "layout::widgets::code",
      "notes": "Edit source with syntax highlighting, line numbers, search and selection. This built-in widget is provided by blinc_layout; the polished action controls in the example use blinc_cn.",
      "props": [
        {
          "example": "values.code",
          "kind": "Shared document",
          "name": "document",
          "type": "SharedCodeEditorState"
        },
        {
          "example": "RustHighlighter",
          "kind": "Construction",
          "name": "syntax",
          "type": "SyntaxConfig"
        },
        {
          "example": "true",
          "kind": "Construction",
          "name": "line_numbers / search_enabled",
          "type": "bool"
        }
      ],
      "recipe": "code-editor.css",
      "recording": {
        "frames": 64,
        "kind": "type",
        "target": ".blinc-code",
        "text": "dark"
      },
      "since": null,
      "slug": "code-editor",
      "source": "examples/blinc_component_demos/src/gallery/builtin.rs",
      "tags": [
        "editors",
        "css",
        "built-in"
      ],
      "title": "Code Editor",
      "tokens": "--blinc-code-caret, --accent",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Editors",
      "classes": [
        ".blinc-rich-text"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Write formatted prose with headings, emphasis and a selection toolbar.",
      "doc": "docs/book/src/widgets/rich-text-editor.md",
      "doc_section": null,
      "entry": "rich_text_editor_demo",
      "implementation": [
        "crates/blinc_layout/src/widgets/rich_text_editor/editor.rs",
        "examples/blinc_component_demos/src/gallery/builtin.rs"
      ],
      "keyboard": "Click to focus, type and select text. Use arrows, Enter, Backspace and the editor’s formatting shortcuts; see the guide below.",
      "library": "layout",
      "maturity": "stable",
      "module": "layout::widgets::rich_text_editor::editor",
      "notes": "Write formatted prose with headings, emphasis and a selection toolbar. This built-in widget is provided by blinc_layout; the polished action controls in the example use blinc_cn.",
      "props": [
        {
          "example": "values.document",
          "kind": "Shared document",
          "name": "document",
          "type": "RichTextState"
        },
        {
          "example": "default / container width",
          "kind": "Construction",
          "name": "theme / width",
          "type": "RichTextTheme / f32"
        }
      ],
      "recipe": "rich-text-editor.css",
      "recording": {
        "frames": 96,
        "kind": "type",
        "target": ".blinc-rich-text",
        "text": "Keep the details clear."
      },
      "since": null,
      "slug": "rich-text-editor",
      "source": "examples/blinc_component_demos/src/gallery/builtin.rs",
      "tags": [
        "editors",
        "css",
        "built-in"
      ],
      "title": "Rich Text Editor",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas"
      ],
      "category": "Data display",
      "classes": [
        ".cn-kbd",
        ".demo-shortcut-row"
      ],
      "controls": [],
      "custom_css": null,
      "description": "A compact keyboard shortcut reference with grouped keycaps for command search, documents, saving and preferences.",
      "doc": "docs/book/src/cn/data-display.md",
      "doc_section": "Kbd",
      "entry": "kbd_demo",
      "implementation": [
        "crates/blinc_cn/src/components/kbd.rs",
        "examples/blinc_component_demos/src/gallery/display.rs"
      ],
      "keyboard": "Informational content; no activation or Tab stop is required.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::kbd",
      "notes": "Show the keys behind an application shortcut. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "Shortcut key legends",
          "kind": "Construction",
          "name": "label",
          "type": "string"
        }
      ],
      "recipe": "kbd.css",
      "recording": null,
      "since": null,
      "slug": "kbd",
      "source": "examples/blinc_component_demos/src/gallery/display.rs",
      "tags": [
        "data display",
        "css",
        "themed"
      ],
      "title": "Keyboard Shortcut",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas"
      ],
      "category": "Data display",
      "classes": [
        ".cn-icon",
        ".demo-icons"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Use crisp vector icons that inherit the surrounding theme.",
      "doc": "docs/book/src/cn/icons.md",
      "doc_section": null,
      "entry": "icon_demo",
      "implementation": [
        "crates/blinc_cn/src/components/icon.rs",
        "examples/blinc_component_demos/src/gallery/display.rs"
      ],
      "keyboard": "Informational content; no activation or Tab stop is required.",
      "library": "cn",
      "maturity": "stable",
      "module": "cn::icon",
      "notes": "Use crisp vector icons that inherit the surrounding theme. Apply CSS after the component layer to restyle the documented parts.",
      "props": [
        {
          "example": "Lucide icons from blinc_icons",
          "kind": "Construction",
          "name": "path",
          "type": "icon path"
        },
        {
          "example": "Large",
          "kind": "Construction",
          "name": "size",
          "type": "IconSize"
        }
      ],
      "recipe": "icons.css",
      "recording": null,
      "since": null,
      "slug": "icons",
      "source": "examples/blinc_component_demos/src/gallery/display.rs",
      "tags": [
        "data display",
        "css",
        "themed"
      ],
      "title": "Icons",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas"
      ],
      "category": "Graphics",
      "classes": [
        ".demo-canvas-examples",
        ".demo-canvas-sample",
        ".demo-canvas-artwork"
      ],
      "controls": [],
      "custom_css": false,
      "description": "Draw gradient fills, layered shapes, a colour palette and a progress bar with canvas-rendered text.",
      "doc": "docs/book/src/widgets/canvas.md",
      "doc_section": null,
      "entry": "canvas_demo",
      "implementation": [
        "examples/blinc_component_demos/src/gallery/canvas.rs",
        "crates/blinc_layout/src/canvas.rs"
      ],
      "keyboard": "Informational content; no activation or Tab stop is required.",
      "library": "layout",
      "maturity": "stable",
      "module": "layout::canvas",
      "notes": "These four samples adapt the original canvas_demo application. On narrow screens the drawing gallery scrolls. Drawing is configured through DrawContext, so this page has no custom CSS editor.",
      "props": [
        {
          "example": "Theme-coloured circles and strokes",
          "kind": "Construction",
          "name": "draw",
          "type": "Fn(&mut dyn DrawContext, CanvasBounds)"
        },
        {
          "example": "container width / 200",
          "kind": "Construction",
          "name": "width / height",
          "type": "f32"
        }
      ],
      "recipe": "canvas.css",
      "recording": null,
      "since": null,
      "slug": "canvas",
      "source": "examples/blinc_component_demos/src/gallery/canvas.rs",
      "tags": [
        "graphics",
        "css",
        "built-in"
      ],
      "title": "Canvas",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 480,
        "scale": 2,
        "width": 680
      }
    },
    {
      "capabilities": [
        "worker-canvas"
      ],
      "category": "Graphics",
      "classes": [
        ".demo-svg-samples",
        ".demo-svg-small",
        ".demo-svg-medium",
        ".demo-svg-large",
        ".demo-svg-artwork"
      ],
      "controls": [],
      "custom_css": null,
      "description": "The detailed Fennec fox from the original SVG gallery, rendered at three sizes with theme-aware tints.",
      "doc": "docs/book/src/widgets/media.md",
      "doc_section": "SVG",
      "entry": "svg_demo",
      "implementation": [
        "crates/blinc_layout/src/svg.rs",
        "examples/blinc_component_demos/src/gallery/builtin.rs"
      ],
      "keyboard": "Informational content; no activation or Tab stop is required.",
      "library": "layout",
      "maturity": "stable",
      "module": "layout::svg",
      "notes": "Render scalable vector artwork with inherited colours. This built-in widget is provided by blinc_layout; the polished action controls in the example use blinc_cn.",
      "props": [
        {
          "example": "Inline vector illustration",
          "kind": "Construction",
          "name": "source",
          "type": "SVG string"
        },
        {
          "example": "240 × 192",
          "kind": "Construction",
          "name": "size",
          "type": "(f32, f32)"
        }
      ],
      "recipe": "svg.css",
      "recording": null,
      "since": null,
      "slug": "svg",
      "source": "examples/blinc_component_demos/src/gallery/builtin.rs",
      "tags": [
        "graphics",
        "css",
        "built-in"
      ],
      "title": "SVG",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 480,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer"
      ],
      "category": "Graphics",
      "classes": [
        ".demo-notch-icon",
        ".demo-notch-status",
        ".demo-notch-dock",
        ".demo-notch-stage",
        ".demo-notch-label",
        ".demo-notch-glyph"
      ],
      "controls": [],
      "custom_css": true,
      "description": "Explore the interactive notched menu bar, bulge navigation, angle cuts and scooped dock from the Notch example.",
      "doc": "docs/book/src/widgets/notch.md",
      "doc_section": null,
      "entry": "notch_demo",
      "implementation": [
        "crates/blinc_layout/src/notch.rs",
        "examples/blinc_component_demos/src/gallery/notch.rs"
      ],
      "keyboard": "Informational content; no activation or Tab stop is required.",
      "library": "layout",
      "maturity": "stable",
      "module": "layout::notch",
      "notes": "The original Notch example combines concave corners, bulges, cuts, peaks and a scooped dock. Hover the menu icons to reveal their status; the middle examples scroll in shorter viewports.",
      "props": [
        {
          "example": "32 / 16",
          "kind": "Construction",
          "name": "concave_top / rounded_bottom",
          "type": "f32"
        },
        {
          "example": "80, 42, 8",
          "kind": "Construction",
          "name": "center_scoop_top_rounded",
          "type": "width, depth, radius"
        }
      ],
      "recipe": "notch.css",
      "recording": {
        "kind": "hover",
        "secondary": ".demo-notch-icon",
        "secondary_index": 3,
        "target": ".demo-notch-icon"
      },
      "since": null,
      "slug": "notch",
      "source": "examples/blinc_component_demos/src/gallery/notch.rs",
      "tags": [
        "graphics",
        "css",
        "built-in"
      ],
      "title": "Notch",
      "tokens": "--gallery-notch-radius (8–40px), --gallery-notch-bar and --gallery-notch-active. Shape tokens are read when the UI refreshes, keeping the existing spring and hover behaviour.",
      "viewport": {
        "height": 560,
        "scale": 2,
        "width": 680
      }
    },
    {
      "capabilities": [
        "worker-canvas"
      ],
      "category": "Media",
      "classes": [
        ".demo-image"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Display raster images with fitting, cropping and theme-aware surfaces.",
      "doc": "docs/book/src/widgets/media.md",
      "doc_section": "Images",
      "entry": "image_demo",
      "implementation": [
        "examples/blinc_component_demos/src/gallery/media.rs",
        "crates/blinc_layout/src/widgets/media/mod.rs",
        "crates/blinc_layout/src/widgets/media/controls.rs"
      ],
      "keyboard": "This preview displays content without a keyboard action.",
      "library": "layout",
      "maturity": "stable",
      "module": "layout::image",
      "notes": "The image is embedded, so native and live previews use the same asset.",
      "props": [
        {
          "example": "Embedded landscape image",
          "kind": "Construction",
          "name": "source",
          "type": "data URI"
        },
        {
          "example": "Crop to fill the container",
          "kind": "Construction",
          "name": "cover",
          "type": "ObjectFit"
        }
      ],
      "recipe": "image.css",
      "recording": null,
      "since": null,
      "slug": "image",
      "source": "examples/blinc_component_demos/src/gallery/media.rs",
      "tags": [
        "media",
        "image"
      ],
      "title": "Image",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas"
      ],
      "category": "Media",
      "classes": [
        ".blinc-waveform"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Display audio amplitude and played progress with theme-aware colours.",
      "doc": "docs/book/src/widgets/audio-video.md",
      "doc_section": "Waveform",
      "entry": "waveform_demo",
      "implementation": [
        "examples/blinc_component_demos/src/gallery/media.rs",
        "crates/blinc_layout/src/widgets/media/mod.rs",
        "crates/blinc_layout/src/widgets/media/controls.rs",
        "crates/blinc_layout/src/widgets/media/waveform.rs"
      ],
      "keyboard": "This preview displays content without a keyboard action.",
      "library": "layout",
      "maturity": "stable",
      "module": "layout::widgets::media",
      "notes": "Enable the blinc_layout media feature for audio, video and waveform widgets.",
      "props": [
        {
          "example": "120 peak amplitudes from Night Drive",
          "kind": "Construction",
          "name": "buckets",
          "type": "Arc<Vec<f32>>"
        },
        {
          "example": "0.42",
          "kind": "Construction",
          "name": "progress",
          "type": "f32"
        }
      ],
      "recipe": "waveform.css",
      "recording": null,
      "since": null,
      "slug": "waveform",
      "source": "examples/blinc_component_demos/src/gallery/media.rs",
      "tags": [
        "media",
        "waveform"
      ],
      "title": "Waveform",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer"
      ],
      "category": "Media",
      "classes": [
        ".blinc-audio-player",
        ".blinc-media-controls"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Audio transport, volume controls and an optional waveform.",
      "doc": "docs/book/src/widgets/audio-video.md",
      "doc_section": "Audio Widget",
      "entry": "audio_player_demo",
      "implementation": [
        "examples/blinc_component_demos/src/gallery/media.rs",
        "crates/blinc_layout/src/widgets/media/mod.rs",
        "crates/blinc_layout/src/widgets/media/controls.rs",
        "crates/blinc_layout/src/widgets/media/waveform.rs",
        "crates/blinc_media/src/audio.rs"
      ],
      "keyboard": "Press Play to start playback. Seek, pause and resume using the transport controls; the waveform follows the playback position.",
      "library": "layout",
      "maturity": "stable",
      "module": "layout::widgets::media",
      "notes": "Live playback uses browser media decoding with the same Blinc controls as the native preview. Playback starts when you press Play.",
      "props": [
        {
          "example": "Night Drive, paused and muted",
          "kind": "Shared player",
          "name": "player",
          "type": "Rc<AudioPlayer>"
        },
        {
          "example": "Peaks from the same recording",
          "kind": "Construction",
          "name": "waveform_data",
          "type": "AudioSamples"
        }
      ],
      "recipe": "audio-player.css",
      "recording": {
        "kind": "click",
        "target": ".blinc-media-play-btn"
      },
      "since": null,
      "slug": "audio-player",
      "source": "examples/blinc_component_demos/src/gallery/media.rs",
      "tags": [
        "media",
        "audio-player"
      ],
      "title": "Audio Player",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer"
      ],
      "category": "Media",
      "classes": [
        ".blinc-video-player",
        ".blinc-media-controls"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Native video surfaces with shared transport, seeking and volume controls.",
      "doc": "docs/book/src/widgets/audio-video.md",
      "doc_section": "Video Widget",
      "entry": "video_player_demo",
      "implementation": [
        "examples/blinc_component_demos/src/gallery/media.rs",
        "crates/blinc_layout/src/widgets/media/mod.rs",
        "crates/blinc_layout/src/widgets/media/controls.rs"
      ],
      "keyboard": "Native transport controls support pointer interaction. Playback is not available in the worker gallery.",
      "library": "layout",
      "maturity": "stable",
      "module": "layout::widgets::media",
      "notes": "Live playback uses browser media decoding with the same Blinc controls as the native preview. Playback starts when you press Play.",
      "props": [
        {
          "example": "ashui handpan session",
          "kind": "Shared player",
          "name": "player",
          "type": "Rc<VideoPlayer>"
        },
        {
          "example": "container width / 240",
          "kind": "Construction",
          "name": "width / height",
          "type": "layout size"
        }
      ],
      "recipe": "video-player.css",
      "recording": {
        "kind": "click",
        "target": ".blinc-media-play-btn"
      },
      "since": null,
      "slug": "video-player",
      "source": "examples/blinc_component_demos/src/gallery/media.rs",
      "tags": [
        "media",
        "video-player"
      ],
      "title": "Video Player",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer"
      ],
      "category": "Interaction",
      "classes": [
        ".demo-gesture"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Recognise taps, long presses and directional swipes.",
      "doc": "docs/book/src/widgets/gestures.md",
      "doc_section": null,
      "entry": "gestures_demo",
      "implementation": [
        "crates/blinc_layout/src/widgets/gesture.rs",
        "examples/blinc_component_demos/src/gallery/builtin.rs"
      ],
      "keyboard": "Tap, hold or swipe the surface. These gestures use pointer input; provide a labelled keyboard action when an essential operation depends on a gesture.",
      "library": "layout",
      "maturity": "stable",
      "module": "layout::widgets::gesture",
      "notes": "Recognise taps, long presses and directional swipes. This built-in widget is provided by blinc_layout; the polished action controls in the example use blinc_cn.",
      "props": [
        {
          "example": "Update a Signal<String> message",
          "kind": "Callback",
          "name": "on_tap / on_long_press / on_swipe",
          "type": "Gesture handlers"
        }
      ],
      "recipe": "gestures.css",
      "recording": {
        "kind": "click",
        "target": "#demo-action"
      },
      "since": null,
      "slug": "gestures",
      "source": "examples/blinc_component_demos/src/gallery/builtin.rs",
      "tags": [
        "interaction",
        "css",
        "built-in"
      ],
      "title": "Gestures",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 320,
        "scale": 2,
        "width": 560
      }
    },
    {
      "capabilities": [
        "worker-canvas",
        "pointer",
        "keyboard"
      ],
      "category": "Interaction",
      "classes": [
        ".demo-activity",
        ".demo-activity-heading",
        ".demo-activity-item",
        ".demo-activity-time"
      ],
      "controls": [],
      "custom_css": null,
      "description": "Reveal a workspace activity feed with staggered entrance and fade-out motion.",
      "doc": "docs/book/src/animation/motion.md",
      "doc_section": null,
      "entry": "motion_demo",
      "implementation": [
        "crates/blinc_layout/src/motion.rs",
        "examples/blinc_component_demos/src/gallery/builtin.rs"
      ],
      "keyboard": "Use the control’s documented keyboard commands; Tab reaches enabled controls and :focus-visible marks keyboard focus.",
      "library": "layout",
      "maturity": "stable",
      "module": "layout::motion",
      "notes": "Replay declarative motion through CSS and bound attributes. This built-in widget is provided by blinc_layout; the polished action controls in the example use blinc_cn.",
      "props": [
        {
          "example": "Alternates between two CSS animation names",
          "kind": "Bound",
          "name": "data-replay",
          "type": "Signal<bool> and Computed<bool>"
        },
        {
          "example": "gallery-motion",
          "kind": "Construction",
          "name": "id",
          "type": "string"
        }
      ],
      "recipe": "motion.css",
      "recording": {
        "kind": "click",
        "target": "#demo-action"
      },
      "since": null,
      "slug": "motion",
      "source": "examples/blinc_component_demos/src/gallery/builtin.rs",
      "tags": [
        "interaction",
        "css",
        "built-in"
      ],
      "title": "Motion",
      "tokens": "--primary, --text-primary, --text-secondary, --surface, --border, --radius-default, --duration-fast, --ease-state",
      "viewport": {
        "height": 400,
        "scale": 2,
        "width": 560
      }
    }
  ],
  "features": [
    "blinc_app/web"
  ],
  "previews": {
    "accordion": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "c3fa765ad31c4bf00542d7cf69d5b1309f11af8b035dcf0f99ff973741ae7393",
        "preview.gif": "189d6ebda5634b6aeb4acce573196e6e8e6f8453c98778d542f0ad63a23a4bbe"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "efec982c27c6e6fe252ef6e521171df564f2fcd39fc97b5523c94e8cd223c1a2",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "alert": {
      "animated": false,
      "artifacts_sha256": {
        "poster.png": "16a2ad0799b6dfb64b998306774d13c60f4cb30e3716915a8fb48092d75d9a0c"
      },
      "cursor": "none",
      "delay_ms": 0,
      "fixture_sha256": "227de73f88b9d5f02f137e891a5dfaf4b2c49158de868e01e41651ce831c6222",
      "frames": 1,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "area-chart": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "f9af0c9e110ac6c3b4c860fd41eeb07aac87fea23c731999d12006b5d6530793",
        "preview.gif": "128da16b72782baef061b76688464ddda9da912c834b6dffa4c3015d19a1c626"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "b6035e282ba10393a16030e7cc69a56d149ea6792ef7c6bb2565d9b8fa745f88",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "aspect-ratio": {
      "animated": false,
      "artifacts_sha256": {
        "poster.png": "e503cd7e0b88e2d4216eb7d24aab46e283b7ead5f2688cb5bf62712e946d2624"
      },
      "cursor": "none",
      "delay_ms": 0,
      "fixture_sha256": "0dd46a9b4ca84748af5777c6385651b7dfca30c00554e73483f3e0625fe23362",
      "frames": 1,
      "logical_height": 400,
      "logical_width": 560,
      "pixel_height": 800,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "audio-player": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "93c7b98d9d3e431a8e001cd3bf2b9ae4e06eb9c8777ae1830b9993ff72610d4d",
        "preview.gif": "2ca0ccd0bb29704fa0c72c1102fb83662f6813771e425e8cf85bce198fb3bf7b"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "b45a29b4ed5ed9c7dd23b385c5bc5336daa17ab2f0ae1be10da0da82a3dad308",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "avatar": {
      "animated": false,
      "artifacts_sha256": {
        "poster.png": "5f3e5376fe90eac0aab9183a5a350cc2138e74e6446d8d7420179e6899f53f83"
      },
      "cursor": "none",
      "delay_ms": 0,
      "fixture_sha256": "1c14d2cd1802b52cc6aa1faea1bbcde448f7d93f03d7f86248b76b86eafa48ca",
      "frames": 1,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "badge": {
      "animated": false,
      "artifacts_sha256": {
        "poster.png": "2a2e0845f999178d9f149d093aee91e0ff066301298bc9b740a0d9aa3c74c220"
      },
      "cursor": "none",
      "delay_ms": 0,
      "fixture_sha256": "8f11fdc8b31728ac84bbd7a1eb6a0251dc79872f8bf9f41fd13dfd0eceb007d9",
      "frames": 1,
      "logical_height": 360,
      "logical_width": 560,
      "pixel_height": 720,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "bar-chart": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "1750ef97e9155d472c57f96a0764ad71ab489b147b7475c114dd257a961a8d3a",
        "preview.gif": "51087689e4920e901b1c445ad976a9ade1aa8802029f302320d06895956040a6"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "818916a9c684d3bdc1f9e651f1c34ede751c60f25116773c3e65472b1d4175c3",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "blockquote": {
      "animated": false,
      "artifacts_sha256": {
        "poster.png": "00c1cff889b1f4330003973c91adcd30e1fcbad5600f9317d4b28a9705e099eb"
      },
      "cursor": "none",
      "delay_ms": 0,
      "fixture_sha256": "6fd884550d4486a7aa8ed8276f70e0d646b3b6b1baec432a2cb4fce8692297e9",
      "frames": 1,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "breadcrumb": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "5cbc57feedad5c6e06b160da0de9f5b6f8637449922c6d3b6619c77040aa4f45",
        "preview.gif": "3ef6d360ab3e29276ee016f6bc0758d1cfffc7f58000b45752225e6b45ec8628"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "24d7fc79e17c4e7f154a506c09c71d5403a17a0941333defe561b15dd8a952df",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "button": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "e8a8cf1ce039ce82bc66e4314940b3b8cb3bc315f73ba772b6a8ee8fc842061b",
        "preview.gif": "104c6a4e3551c8a9297cfa76837bbc64a6240ddeabef7540f54e5046e5cf8446"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "d8aeb37d4e24bae6c0fc9046da5b96f2911aaa5b6653c7dbecaeed85bd624b28",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "calendar": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "e64ce97774005bfe5e9963b74eb27f914fff7687983fd145302119fe89c7094b",
        "preview.gif": "1c6e8c558c088aaaed34f2eabff4995572a0c2ae1361b71ea9fe93982736264c"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "6235b9be58d0fc4558de5e4c198766d9c669e4469f7f1d1b5ee2d5f5748272a5",
      "frames": 48,
      "logical_height": 420,
      "logical_width": 560,
      "pixel_height": 840,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "canvas": {
      "animated": false,
      "artifacts_sha256": {
        "poster.png": "64b3a0a9a234a4d84a772b24146e77efbbf856090ad9fb353bd0c9bf2915f9ae"
      },
      "cursor": "none",
      "delay_ms": 0,
      "fixture_sha256": "ee8d902cd190a0c85d4d1704f7e32745c91af16eaffc0dc1084fa11834e37b5e",
      "frames": 1,
      "logical_height": 480,
      "logical_width": 680,
      "pixel_height": 960,
      "pixel_width": 1360,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "card": {
      "animated": false,
      "artifacts_sha256": {
        "poster.png": "36d3e56e0d6d23d992c43e374ea2e9da387451362a30e5a1fca2ef59527cd173"
      },
      "cursor": "none",
      "delay_ms": 0,
      "fixture_sha256": "0dc31daded069f16f9a1311e30434ac3a6b6081cef122907633465d64df9b908",
      "frames": 1,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "charts": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "cb67f9b96eba2be76560ae9450292c89b79808c6120c88383df6c9eeb4c6ba52",
        "preview.gif": "5494a4c6503933d17e90cee5d0c68a7a98419923490170f0042f540758a275ed"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "650f9be81df45f4b56cc438d237bfb8ace88f1422523dca23df1f3ecb18b0321",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "checkbox": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "8786a411f6800e394d70345e620696bc3a5dc9e2ef14521893f30fb1f7ec1af0",
        "preview.gif": "0d9d68979662e1a028350f67c51c1d1f66146b76e1abd853e79e868571fa1409"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "9016920eff7a14ce2624394322dbb1aa8fdaf49beb4d9381fd0e3a8f723b99a9",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "code-block": {
      "animated": false,
      "artifacts_sha256": {
        "poster.png": "1f6afeae8a5655cf41002f9f0da15593ebf7ec57d7d650a2346cbb2fdbb46e6c"
      },
      "cursor": "none",
      "delay_ms": 0,
      "fixture_sha256": "3d1d8a84f4b0f9aa1fde0ddc49e2bdf19b0fb47d7a82fee7e3fb39ee789a23b3",
      "frames": 1,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "code-editor": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "f540ab6c53bd4378a894737c68ba3402038b0a990d3f6ea58fcb9cc1fb074cc8",
        "preview.gif": "94ccdf26d4884e9d1ee1d761fe59212dc1995ea8340cfe31bfe8a4b414e776be"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "fcec3e946f4e6ebefee8bd0b00cf7c839af10da966aa932730d38f72cd981b87",
      "frames": 64,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "collapsible": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "3a6af483308a134253d267ee89ff7b7b7cec86552da1f90ba4d6bb1ff1c600de",
        "preview.gif": "1065c2bf50f7e62922c76d6a34102619de1852147e99cced8dd20312498481b5"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "f0cc4fe9e65bad97f41dc52d01c53e1ef383111252efad060e50b67760b42971",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "color-picker": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "bc823f82c7b2747f27b73eefefa238ecb892f8430fa5b6ac207a4872c5f5b7e6",
        "preview.gif": "2740f750e69e0587371f3e0e3bd7d597d7133ffa9ea08206f3eeea01c6cf1765"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "4e5170fa15699d2574551c4747565a2a7648239f4877be56704d1d413366ce55",
      "frames": 48,
      "logical_height": 480,
      "logical_width": 560,
      "pixel_height": 960,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "combobox": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "d4cbcc76b64ccb8164da76a68779e12708d0328060ae4a4501e7ce6343a8cf4e",
        "preview.gif": "52186b2657828006ce6393b6527c5e90bab723fe7eee162463f5a045dbfbed63"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "23036a92b290dff3eedd30a139fbaf2743166a6943547d8fe238fd37a8d31c72",
      "frames": 48,
      "logical_height": 420,
      "logical_width": 560,
      "pixel_height": 840,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "comparison-chart": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "a3454ddcc79c90230622c9d141956f60e57e9d511bbd87249aff42cdcaeeb166",
        "preview.gif": "1e324846969b6c561722058b19e9781ba8bc622a8e34f24e93ae2e127ef2affb"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "fc34b0777ab0ba0e0a63a4e5a57645602871ba875acdb1f57b20354ed091f404",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "context-menu": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "82390cd1e6d613e206a3b9cd73b5f80ebc7b170aaebda2d2fce5d4c7a2abbb65",
        "preview.gif": "db2a765c6486fc5a0fe3b8d15ca4354b0d5c6d83df53ff19c83c6e67964513ee"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "6521b7516cd7a2070b1cbdf05ffc3c28aa51d1645c205bb94babe8bd9a090a6c",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "date-picker": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "f5a631f4daf32eb72a7f567aba21c748adf5f9b7acb0b6b74563bffe4579ba78",
        "preview.gif": "461a185f936e743f6bd5231c4753e8c263e136beba63a70aa17efd350db1645a"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "f5b85a7b75002275e187feafff335ed249698c6cf680d758702ec700be35ec0d",
      "frames": 48,
      "logical_height": 480,
      "logical_width": 560,
      "pixel_height": 960,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "dialog": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "f707cc533c9c5633fc5cbb3a298138a403b3a1be1c2f6f5b55769b073edce612",
        "preview.gif": "b9f67664190c3e14b4bce59b5ab9f772f9065869343b837b0143152742b2d220"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "27101fab1c696708a8e80aaf08f83a703d937a174116a7375e8099f97e86b296",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "donut-chart": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "9aac90dd198f2c9604f4a10fcd1e0198c562d9c439aeaeead3211b34129afc45",
        "preview.gif": "fb139bad62ad1888e3b7051dc2bdc528db15abcd881c0b809bfe0939af4cb69f"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "cd350496c7368e3b0232f9666eb7c45ea6d8db07e37b1b0debd3aef0efc8b3ff",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "drawer": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "e3d14c290633637accb963189cf95102a8b1802c1247a581106cf27d11f26d56",
        "preview.gif": "02cccaf4623f3bf030d65f8c52296277cdc7cea6db16b33ab8568f015ced6022"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "d08a9879e6695ab5e657bfa98c054008374a101b0fb2dd74946fd8cb3cc3d187",
      "frames": 48,
      "logical_height": 480,
      "logical_width": 560,
      "pixel_height": 960,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "dropdown-menu": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "f654e30d5c3bf3ca559628208f1350614aac5574aff1c4e2bd9cf8980a632026",
        "preview.gif": "203fbc8d110d79a7c80532ee846c74eae136442c91ada52c1480d6518b3b4fa3"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "398ea7d0b00986152fd8866e54a6e8dbaec458eae88b656cc13ce67cd5bcf7f2",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "gestures": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "27759b6acd8017eb56ade1a302ef93a88a10bf5792643c68c4166b567eaa05b3",
        "preview.gif": "a7106b42a2ddde618866290a36ea621ebf7bd138cab6d54b8deadd0ccf4f40dc"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "b4bdecca3c5d19d715d324968f569eeee9e8a3c474d1183c650e47d0735d5863",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "histogram": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "804907e6a0b6343bcf404c3286ccd649b69c3a3bf6c5a5d58d3834a1e0cc1451",
        "preview.gif": "365aa7da3827b85586e4186a6308d81ab7611ae2c24b0908d7742a83611a396a"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "2747013744936c00ffaa7ff58f604a9bcb12a65e1e33ab4ada426b84c103cb52",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "horizontal-bar-chart": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "2092ee2256a7e18e849e36e1571982b640f9b7db8259c470fd32dac5c59a7293",
        "preview.gif": "6988114758e79bc3b35ac4b94a887984a8b4022941f794b5b9cc96e62f0e7a97"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "d27889bc2e5c11ebbe105f95f17695b5587bd1611923355ca39499500dd7c66e",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "hover-card": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "1c0fa59bc77787a6ec7a0518ff1f471333970794ae8cf408afd5f347bc132be2",
        "preview.gif": "d26966e56e39a65ec6a877c4c6003e9d0a62028ef6cf0325b0ff8622a446de63"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "14c3b1cc62792071bc5df3ed3bc7f6ced2ca055a23bd2d31d9375a0113d769d0",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "icons": {
      "animated": false,
      "artifacts_sha256": {
        "poster.png": "c98c42bcd15dddf322260e3472afb9719faa361a50a7282db66540ee5ce658f6"
      },
      "cursor": "none",
      "delay_ms": 0,
      "fixture_sha256": "bccaceb985c8c06d9d02890d08aecf976b3bc861c0474eca54ecc34cdf8d11e3",
      "frames": 1,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "image": {
      "animated": false,
      "artifacts_sha256": {
        "poster.png": "46aee7811f7b26647856645ed4b43ba31626bebe8b6fb7448817f0d6990cc106"
      },
      "cursor": "none",
      "delay_ms": 0,
      "fixture_sha256": "5ca005408701e31fc3656a51c63f2794c71564798c60aa301a7a5dfb0eed9f22",
      "frames": 1,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "input": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "08677ac4a380a44a7bca20ba6fd60aab06c0c118bcc89417d7efeaee41c6605e",
        "preview.gif": "c92de3d89ab81e0a65dbf0084d10c5d75af810da65a9f0fa2c80810bc79cb910"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "aded48badf3aac456738c710d8619e5a429de269a08d2e8ad131ce10e27cca85",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "input-otp": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "e436bcc71898670b253e80dbeea05c77f575a257aed49215800f0be82252cf02",
        "preview.gif": "a2ce13c04b4c3f2b3435f02a9003087286a07d96436efa22c06188202c695a77"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "762690dcc919507c8cf3f9a87f0d54fdda81ddf5939acbe83d13ef439cc86638",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "kbd": {
      "animated": false,
      "artifacts_sha256": {
        "poster.png": "03b3d04be0aec28ef71e3e873cb49b01ce98386943a4328484731f37740cb367"
      },
      "cursor": "none",
      "delay_ms": 0,
      "fixture_sha256": "cbd9a54b4cc7c1d4c35a76aa256a0f75aff093ab32ef59de8f038f5c7b5df2c4",
      "frames": 1,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "label": {
      "animated": false,
      "artifacts_sha256": {
        "poster.png": "98e4f3fe1d95d39e722073c53a7bff8a98a5cf51ac5e84dc09ca0ba43e2447a9"
      },
      "cursor": "none",
      "delay_ms": 0,
      "fixture_sha256": "361f9fefd9e98e330224ad7cf2d94acd182f89c9202621b2dde4732d52a283af",
      "frames": 1,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "link": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "a6b3509e773002cd5e27121342fecc8be4464ce36d554815ce5692577aea9c02",
        "preview.gif": "717985c048603c41b7b577a8ba4580988fcc37027bd4b34eca72a1a7a755f379"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "b92361b1c10c80d7d4107b37fa77a968b932b0502298b234496cf9ddbb34f135",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "lists": {
      "animated": false,
      "artifacts_sha256": {
        "poster.png": "2bdfcc8d15be1b29ffeef395fc97e87c72fbcfa0256a18a77658c442a69fe540"
      },
      "cursor": "none",
      "delay_ms": 0,
      "fixture_sha256": "03662bf289c338a493d1078fdeeedd844eb3f6974405542bfdcf79229c690069",
      "frames": 1,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "markdown": {
      "animated": false,
      "artifacts_sha256": {
        "poster.png": "7908b481db0cbc62d2364211d25e5dc17da1004df0f84c16199bcc463628efe7"
      },
      "cursor": "none",
      "delay_ms": 0,
      "fixture_sha256": "6c2ecfe0fc717c0088a224ef8043e09e114bc8d62056f3015b1cdf8f09df3014",
      "frames": 1,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "menubar": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "df50554b8e58dc6f6d9c7b08b33ec3900fa45e3bc313653bfffd8c237c0f883a",
        "preview.gif": "9d60b4fa57367349813e0e61e16524d1be5d8bf97dccdca4818ab13cbeef160c"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "f13c61874ba17c15b767ad3129dac6ff2dafc5133e922dd9c7036a0930833e1a",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "motion": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "8e23ec870a707a9fb2c8cf20fbfaa2aba1afa4a625326f4305f6ee3ba2038333",
        "preview.gif": "70092f0632cd013bc177325efda4c059cf4a6b2dcd6e6212e0b047f1c65e88ba"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "32db88f3a2a13b86756c6b77c9f7ced8eeb7a237100c7346418a5fded0d1e523",
      "frames": 48,
      "logical_height": 400,
      "logical_width": 560,
      "pixel_height": 800,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "navigation-menu": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "4869dc369d06bcfab6ae3312a3f35d7707f88f1f9296441f8effc456f0a366a6",
        "preview.gif": "9f066b43d9d30001f833e3195f4bbe715244d260351d2f53269a5714b7d5e7c8"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "b14bf109146da09c741082a65a511068706b1352e7639f709d527f0e5a48d206",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "notch": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "c0e2e8342df74cb11b16355d207277634d68a5d2555310d1650463536f32d7a8",
        "preview.gif": "3e4329a65ae826b3ebccba7a3c0b917d2a088dfd8340b35634c97735101bc597"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "fd5eef748273ae4424d8cfaef2c28942b8b154c59ecfea332a59c155d7736345",
      "frames": 48,
      "logical_height": 560,
      "logical_width": 680,
      "pixel_height": 1120,
      "pixel_width": 1360,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "number-gauge": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "d95f1a4d8282eed1e47181d31ff70dc0ea7ce181ba335f3e4e78342cb1dfee84",
        "preview.gif": "a902a19829cc8a913ef95df7affba4a4d083640bb07043b354d6f45d7936af2a"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "3406cbae9805f9d1725e72e39a7c4d2d2f127dbbf7f1632302fc7b7b9d50bfae",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "number-input": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "fb993045434c0f8ec388881074f5fe343213f7cd91d2f722fdaebbbc48554857",
        "preview.gif": "6db9113b3b7b6f32f4cf1d0600e37e30e52b1528573f55a53aa6b381fd3cb074"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "d9bc1082124202983ef10a0325f9a0855e2440bcd6ec73b5f8098aded1d9f27b",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "number-range-gauge": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "fa4b6948712e5ee366117ea35827f23bc67afe8eb78f20e917aede4897df64e5",
        "preview.gif": "e4627fc65b589fe2a2e48d786dd2aa18c3d6d257efd262482f090e83369283c6"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "1d0ec2efb899080aa7e5cc5585589540a31e32dcc2b2f183a10e53aeee8cd0f6",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "pagination": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "9d2db89e73bbb9ab12210a0792541e47fe34cda27ebbfee09d80329a87b80bc3",
        "preview.gif": "3865364a3b6e49df98c13f74668952bf6e841846523529fdda6dddc5e7e52e58"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "49ba4443391a4630a9da4cbae73bf2bf02c472dcbd4f7cc76c3e0491a66041f4",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "pie-chart": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "6dca2fce69556c953f410ac8b1fdc93461a3d7dbecc6f2f4ec1bfdae2d9707ae",
        "preview.gif": "9e89a2f3e33984c26533a6c58922842c82bc0f0b6f4f97b0228003e3420de375"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "56b614a36cfda083f0027af2957236afbb3e4434e4d5adf4c0110a836569e9a0",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "popover": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "8916c5a18caef0b6820614285f35d885237bfbfacaa225b76f5e0c2321c84e57",
        "preview.gif": "e3f0eb30c28cc7fdc820c6941d2005b450f113a2c5064880911a9039f9fc4c85"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "37c2662e2009c5675931b2835847fe9bc084eff8266e1fe58ebe7598e070c7d6",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "progress": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "0e3bef30ce18ce23768790770ccc21138717cb255e929fe487f78df8797908ed",
        "preview.gif": "60eaf4e381faa14df21d09ef7e09932dd9634fe8f39deac72eb9349801605c1e"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "f45893152a5e38c2e9e62d998a765f5b9cf24e62355ba4a2b0736689248d35a6",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "radio-group": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "3435677c75ed556b18133e3bf24ec28a9a68f0253191751f4574ef6b1d43868f",
        "preview.gif": "706ce45fcaeb633da2922f9a9ec9b1520704eeb1f9f39033a82b68de3a685c05"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "13b89a1ab9c5c5f156080f03dbb1513a7cdccf884f97a4eee8de92b1c1cb1037",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "resizable": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "956e95dedb086901b33095821926c6bd310b5a741d57ea5041a5d4e36020071d",
        "preview.gif": "83f945c9deeaa00fd158d293e10ad688d14a69c2f367d26d0e4fb4ed5a71c62b"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "93218b0d38168a5ea246217f203d1426be7f5f903fd604fc2ff26ee7bd9f69c2",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "rich-text-editor": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "79461b2b533d7645fd2ec7d99b1d0567a517f8b09f773b0cd9148e0c59b5d54d",
        "preview.gif": "469ff1f508251f3bbda7cf963a6edd66ccba75cc0c9b0afb739f3f9e6f1fc6ef"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "620c15e7f90eff0796a5551cf9ef3c42bcfe69be9bdc7dacd50425ae341285aa",
      "frames": 96,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "scroll-area": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "43b5d83f7bc00ca0dd89d47312a439831fd952ae5710f8854cae346d45b63c3a",
        "preview.gif": "44384bf2addd9a79e765745b7249f6fd8219a2a0d9803432f7b324b34b27bed1"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "d8fb4f35e4f0476dfe8f1ec7c56409ab24a990f66e8c50849d0228feceecdd8b",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "select": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "3d20607aacebe15bcf27aef7efb9e7561192164d7bd0a0d36e083aec4e320378",
        "preview.gif": "41f8c019bd94cf080df763ea517deac17ffbf81606c70b62874e5357a01f3f27"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "9bef4c43368f664656cf363b314eb1a89961317b523fb7d5d6c4d0311259d7ca",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "separator": {
      "animated": false,
      "artifacts_sha256": {
        "poster.png": "cb3f076feb44013cd3b7b7254cab608a251cac3b4454e86e9ae5176ab37b3e7a"
      },
      "cursor": "none",
      "delay_ms": 0,
      "fixture_sha256": "556a71b78011370312b8a0f01d96a3783833b732c1b774dd755568734c7d23ef",
      "frames": 1,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "sheet": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "a7ded85344c9936fe0370b1ff05adbe3a704a4cbc9dd76825233c2334d724c4f",
        "preview.gif": "4310d00fa22b7098fb33df3b305a3b83b8e258dabab4c85c58315887258886ea"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "f8346661f5989309de25f504ff3c0ddcab87a2a754302f68876eef43f7fb560c",
      "frames": 48,
      "logical_height": 480,
      "logical_width": 560,
      "pixel_height": 960,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "sidebar": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "8edc531c5a99c6ff11e1e1a8dbe709e43e0db10a99bee8cec103c3e2e56b1579",
        "preview.gif": "5d0cd64129dd12e19903c1313829e1fcb793f930a4195c29aa26a95d96d81038"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "f4260008d970488bda3d5a3a4dde6af7647ea38cd98eda0332493f8fad54efa1",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "skeleton": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "98892fe29e9164bc07086842981965b88517242d1bb9a9eea5af9deb74654134",
        "preview.gif": "cd41873cd1ee9ac3f54c91e8eb7718c2ddd29241d7295480de2606c305fdf931"
      },
      "cursor": "none",
      "delay_ms": 60,
      "fixture_sha256": "1965f351676fb561aa9ed02deb0a401bc72f09e8fda07ee258680a7ff0ab6534",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "slider": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "c1783a5a8da4aba41c83b84c123ff3b62b7a73f67aa59cf3b1915e103bde4656",
        "preview.gif": "4cf0e71aafb36bb356bf98c65f8fd19d2e2458da3b727e365bd08dc6207deca8"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "bf86a002505fc9530fb06d32cbde23b22a3da3902abf4cc5feca36d06a4c168d",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "sparkline": {
      "animated": false,
      "artifacts_sha256": {
        "poster.png": "02a2894b33ab1f916ef8351eee92db5fcdee9bf9ed77d202dd0fe966a2e2bf48"
      },
      "cursor": "none",
      "delay_ms": 0,
      "fixture_sha256": "bb442c99790b692a724fed1ec4a6ece2304e73103d5570e2298c9dc2d561e977",
      "frames": 1,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "spinner": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "3792b17b764b6c23094fc2c0c8c9ab778473317704d9973269962304b29cc282",
        "preview.gif": "fa2b47e306087afd84d9e53b2ceb7b60f81862e8f6a8902c967a3ebf39a3308b"
      },
      "cursor": "none",
      "delay_ms": 60,
      "fixture_sha256": "e9142dc28ba276ec7883fccec237486b7abcd67bcd838bfcadf73c4ac52dc970",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "stacked-area-chart": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "7405a49f47141ee2d063d79a6575aaf469940beda4d424847ef99050456fb9c4",
        "preview.gif": "b5ba32ada8e8b366450199d68bdf95355f1bcdb371ec6a33b07da14f8b42f02c"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "e0fc8263e198d0fc68ce712fc6effdaaef29d23ee2866e074146af16839c53e8",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "stacked-bar-chart": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "a1c2dd9559c746152ecbb700e5619e6dcb5effb748361113df4327adf3659363",
        "preview.gif": "b43b24d4209d7b14afe4c5efd08d100e4a923ad6132ce77d2bb86cbb5674cc76"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "a61e869a8c732ccc299aad58800c2f3f191f12211ceb26d5331af33882eff047",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "svg": {
      "animated": false,
      "artifacts_sha256": {
        "poster.png": "3c36b847fb5f0a23cc67651c0aaf8ab012dc1aeb5d94c41ae813d62d23803761"
      },
      "cursor": "none",
      "delay_ms": 0,
      "fixture_sha256": "8ab12b12fbe1d1106db467783e97dbb1d9458ed073dc6c2d2ef53472d17f1782",
      "frames": 1,
      "logical_height": 480,
      "logical_width": 560,
      "pixel_height": 960,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "switch": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "c8f30eab9936b1799b2b00e1ca37d277b8e1962e73b2274e080ea89df03ebda3",
        "preview.gif": "75aeae3c1e0f54756324af8800b9012712abe3b56603ea6822073b2faafa1b94"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "b046f600e3b526ee505e3aa03989438b1f10babdd23bb592d21ea777e5dad1f6",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "table": {
      "animated": false,
      "artifacts_sha256": {
        "poster.png": "c510e8ae94eb7627a496fe10d695521357d73d88bf8ed2b489051f21937c3e73"
      },
      "cursor": "none",
      "delay_ms": 0,
      "fixture_sha256": "ad3bbd35768d4f630af436469f291278e9ec94439f7f888d323ea8e5b6331e4e",
      "frames": 1,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "tabs": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "286af4fa76ab5e47b939dfdb945005d9ca267f15da56336867102f1a114c3588",
        "preview.gif": "752517956b98ddcba1969769ced879f30cfcc80d891ba3f6f1631b770e502214"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "ab332fbc7f76bc820a1a19cdcbafcb9aed586b4546e73810ce67bd6e1eef236a",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "textarea": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "633a5619c31e0a5661e689347b9bb5a80ea1d28dec01f871a843a095645e087b",
        "preview.gif": "d39a9b3a194ed560bedc4c8f8861fa12020cdba3919b76dd1489396efd0213bf"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "53f0dfb891ae0c796adbe3101c8d689a98ff8d30ba4035a9542057e4fa446fef",
      "frames": 96,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "threshold-chart": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "0b820651afbfc7e9a13ce26bee6216c01cf793946cf81a655149927ddc0f29d1",
        "preview.gif": "6f2c49bde1ecf6ee68c755f4fb5f972c54c5ef23b9d0f007423e1d8d07389af7"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "2671a409382b9315f9fa843a26cb96a704277baf7bc7b53a43e67c10ebd05dec",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "time-picker": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "b76376a86bd1a5ac8406aa587e22a7bc6ed126b1c10d0a3b2730268d6b916591",
        "preview.gif": "92f4ed41f83c2dd2da5bee4b90cff9a3362ddcf585f1d36b4394ad8080e281f3"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "55f8f7c684f60a208d845b490a1c24480dba8c45021b83c181e548cd32976360",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "toast": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "23d4729bf60741664eeffee2361addb35ae2b7eee485a536150e6c12bd902d74",
        "preview.gif": "655ecfbee2b01e6c91678050349e34d709b819d51c81ea31ea86e0afa8ee6d95"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "540ccf18f949dcd503e0b531fea6df6f7912999f0e0de9f9d69657f195948304",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "toggle": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "09cae611b10eb830522f0ae878867820d9dd54cd3704fddeb11b32afe6ff5789",
        "preview.gif": "b21c85695c2eed853bf826ee03ad951dbf73697f825251b930ef728cbb37f55b"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "161dae70f837226047fcddde8314c79644d321d8bd443322088ed04e35f092ad",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "toggle-group": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "9419f0aa94089dfeb2957c31861ca21b773b9d415b485924a91def49e2fed012",
        "preview.gif": "b5386197475fb11d4fff5cfe0c27436182d5c9da40b6aaf8076332ccce6d16cd"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "cc5f467f721d6460ac3b8ec4fe70d05481418a488f139d4dbef6aeabcf55736b",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "tooltip": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "ab2342b09415a5be74bb6bd6e2a30f7d199a8c9780fa33671e122a75ba194c7e",
        "preview.gif": "21e34cef0673542e2e0b857e41338c8f6046a2230f01fd1084c09a491810a3bd"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "48b97a3078086978dd7456ebc1a0e92a3ef9974bfbc3a6483584eb309a375329",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "tree": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "4e6585940069fc2016c2b15140c04a0cce8b857add7cda1e7b42311e40a9c5fe",
        "preview.gif": "ebfa52c0e2c7f3e198b82033ad7e2276c85555c1fda11042161e906a3d883471"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "2e22deceba62d5c1e40af8b848e2800861c5153284cf1e3929039ee5dac261b6",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "typography": {
      "animated": false,
      "artifacts_sha256": {
        "poster.png": "bb66835f42c3999521057e2f3e1b7a378c6aa4acae58e58775edf53232d212eb"
      },
      "cursor": "none",
      "delay_ms": 0,
      "fixture_sha256": "9109938ed65ab9196ec0546924ee6cf0b83e393ed9c7416e4951740fc445a10e",
      "frames": 1,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "video-player": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "55356802884e82c66e0688b4eaab8c92fbae244446f767be825ccf0528e03312",
        "preview.gif": "dc59b908e8a9354a6806df607d64590355e7e87b66c6c1611d4e955b90dd0da0"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "fcb50a80b7345c95205f61673342ff3bd12a75856cccbb82b45f1a2709eb00bc",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "virtual-list": {
      "animated": true,
      "artifacts_sha256": {
        "poster.png": "f8d9cf9565e8beb4280b36c1621060b962ea8731f74157f2bff25f6dda34f9b2",
        "preview.gif": "3cc3094bd1a09fe8d324caaf547fb204cf74ee32a7104c9adea79a5d12827b14"
      },
      "cursor": "interaction-specific pointer movement and deliberate actions",
      "delay_ms": 60,
      "fixture_sha256": "f08da467a19cd7bbe5f7dfb0622967af5fb7c4c68f6a11420750e172d34bc1a6",
      "frames": 48,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    },
    "waveform": {
      "animated": false,
      "artifacts_sha256": {
        "poster.png": "e1c0227abfb8b9c3669d3f328a15572559324f6497cc3e9f4a1858dc6d4dfc2b"
      },
      "cursor": "none",
      "delay_ms": 0,
      "fixture_sha256": "4ac19940b06792a55e460d67bdb775353573df4523613e11c9d2deea619f6c3a",
      "frames": 1,
      "logical_height": 320,
      "logical_width": 560,
      "pixel_height": 640,
      "pixel_width": 1120,
      "scheme": "dark",
      "theme": "hybrid"
    }
  },
  "routes": [
    "/components/installation/",
    "/components/cn/button/",
    "/components/layout/link/",
    "/components/cn/label/",
    "/components/cn/input/",
    "/components/cn/textarea/",
    "/components/cn/input-otp/",
    "/components/cn/select/",
    "/components/cn/combobox/",
    "/components/cn/dropdown-menu/",
    "/components/cn/context-menu/",
    "/components/cn/menubar/",
    "/components/cn/navigation-menu/",
    "/components/cn/checkbox/",
    "/components/cn/radio-group/",
    "/components/cn/switch/",
    "/components/cn/toggle/",
    "/components/cn/toggle-group/",
    "/components/cn/number-input/",
    "/components/cn/slider/",
    "/components/cn/number-gauge/",
    "/components/cn/number-range-gauge/",
    "/components/cn/calendar/",
    "/components/cn/date-picker/",
    "/components/cn/time-picker/",
    "/components/cn/color-picker/",
    "/components/cn/tabs/",
    "/components/cn/accordion/",
    "/components/cn/collapsible/",
    "/components/cn/breadcrumb/",
    "/components/cn/pagination/",
    "/components/cn/sidebar/",
    "/components/cn/tooltip/",
    "/components/cn/hover-card/",
    "/components/cn/popover/",
    "/components/cn/dialog/",
    "/components/cn/sheet/",
    "/components/cn/drawer/",
    "/components/cn/toast/",
    "/components/cn/alert/",
    "/components/cn/badge/",
    "/components/cn/avatar/",
    "/components/cn/progress/",
    "/components/cn/spinner/",
    "/components/cn/skeleton/",
    "/components/cn/card/",
    "/components/cn/aspect-ratio/",
    "/components/cn/separator/",
    "/components/cn/resizable/",
    "/components/cn/scroll-area/",
    "/components/layout/virtual-list/",
    "/components/cn/table/",
    "/components/cn/tree/",
    "/components/cn/charts/",
    "/components/cn/charts/examples/area-chart/",
    "/components/cn/charts/examples/stacked-area-chart/",
    "/components/cn/charts/examples/bar-chart/",
    "/components/cn/charts/examples/stacked-bar-chart/",
    "/components/cn/charts/examples/horizontal-bar-chart/",
    "/components/cn/charts/examples/pie-chart/",
    "/components/cn/charts/examples/donut-chart/",
    "/components/cn/charts/examples/sparkline/",
    "/components/cn/charts/examples/threshold-chart/",
    "/components/cn/charts/examples/histogram/",
    "/components/cn/charts/examples/comparison-chart/",
    "/components/cn/line-chart/",
    "/components/cn/typography/",
    "/components/layout/lists/",
    "/components/layout/blockquote/",
    "/components/layout/markdown/",
    "/components/layout/code-block/",
    "/components/layout/code-editor/",
    "/components/layout/rich-text-editor/",
    "/components/cn/kbd/",
    "/components/cn/icons/",
    "/components/layout/canvas/",
    "/components/layout/svg/",
    "/components/layout/notch/",
    "/components/layout/image/",
    "/components/layout/waveform/",
    "/components/layout/audio-player/",
    "/components/layout/video-player/",
    "/components/layout/gestures/",
    "/components/layout/motion/"
  ],
  "runtime_built": true,
  "runtime_channel": "unreleased",
  "runtime_inputs_sha256": "46471a54a9f6f4cc0fee5cb3e1b1052965b4099c283cd34536be088645122ae7",
  "schema_version": 1,
  "source_dirty": false,
  "source_revision": "e2e55c24e078845c9f782c13b2fbe6806cf745d0"
}