diff --git a/.flox/env/manifest.lock b/.flox/env/manifest.lock
index 79d2290..a00dbfb 100644
--- a/.flox/env/manifest.lock
+++ b/.flox/env/manifest.lock
@@ -1,7 +1,7 @@
{
"lockfile-version": 1,
"manifest": {
- "version": 1,
+ "schema-version": "1.12.0",
"install": {
"clean-css-cli": {
"pkg-path": "clean-css-cli"
@@ -14,19 +14,23 @@
]
},
"imagemagick": {
- "pkg-path": "imagemagick"
+ "pkg-path": "imagemagick",
+ "outputs": "all"
},
"just": {
- "pkg-path": "just"
+ "pkg-path": "just",
+ "outputs": "all"
},
"libwebp": {
"pkg-path": "libwebp"
},
"livereload": {
- "pkg-path": "python313Packages.livereload"
+ "pkg-path": "python313Packages.livereload",
+ "outputs": "all"
},
"nodejs": {
- "pkg-path": "nodejs"
+ "pkg-path": "nodejs",
+ "outputs": "all"
},
"optipng": {
"pkg-path": "optipng"
@@ -49,17 +53,17 @@
{
"attr_path": "clean-css-cli",
"broken": false,
- "derivation": "/nix/store/bk47cvvjbr1fh5mn2pqdyqij68rg4nb5-clean-css-cli-5.6.3.drv",
+ "derivation": "/nix/store/kxk5n0srzsml0r6wv96i5f2k2ajy9306-clean-css-cli-5.6.3.drv",
"description": "Command-line interface to the clean-css CSS optimization library",
"install_id": "clean-css-cli",
"license": "MIT",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
"name": "clean-css-cli-5.6.3",
"pname": "clean-css-cli",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T02:54:43.943535Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T03:13:44.021179Z",
"stabilities": [
"unstable"
],
@@ -69,7 +73,7 @@
"out"
],
"outputs": {
- "out": "/nix/store/cbbjk2bq8kmnl4cz4dhr7rmpln8830kk-clean-css-cli-5.6.3"
+ "out": "/nix/store/4ga29bzzk2l0qhr36yzm8w48w3kkddgq-clean-css-cli-5.6.3"
},
"system": "aarch64-darwin",
"group": "toplevel",
@@ -78,17 +82,17 @@
{
"attr_path": "clean-css-cli",
"broken": false,
- "derivation": "/nix/store/5i210wgrnfylqa2pj3qkk93al46q5f6m-clean-css-cli-5.6.3.drv",
+ "derivation": "/nix/store/gp7y94yxhp1wk83pn411didmivv4254k-clean-css-cli-5.6.3.drv",
"description": "Command-line interface to the clean-css CSS optimization library",
"install_id": "clean-css-cli",
"license": "MIT",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
"name": "clean-css-cli-5.6.3",
"pname": "clean-css-cli",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:03:54.422311Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T03:44:32.773883Z",
"stabilities": [
"unstable"
],
@@ -98,7 +102,7 @@
"out"
],
"outputs": {
- "out": "/nix/store/wfjas5w0mpiysz8450d3y540i7yibg5i-clean-css-cli-5.6.3"
+ "out": "/nix/store/jcp8x000bji27h8ibldrpry2k0c8jcnh-clean-css-cli-5.6.3"
},
"system": "aarch64-linux",
"group": "toplevel",
@@ -107,17 +111,17 @@
{
"attr_path": "clean-css-cli",
"broken": false,
- "derivation": "/nix/store/jziwgc8l9kdg0iw3qb2p0ni23s9lgvwk-clean-css-cli-5.6.3.drv",
+ "derivation": "/nix/store/v64g8wkp7kvr3y5mjy7p51mql5cdzxnk-clean-css-cli-5.6.3.drv",
"description": "Command-line interface to the clean-css CSS optimization library",
"install_id": "clean-css-cli",
"license": "MIT",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
"name": "clean-css-cli-5.6.3",
"pname": "clean-css-cli",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:13:57.846055Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T04:14:36.697423Z",
"stabilities": [
"unstable"
],
@@ -127,7 +131,7 @@
"out"
],
"outputs": {
- "out": "/nix/store/z7cv3vxf0s0mxy2jyh5qkdf5inc8631f-clean-css-cli-5.6.3"
+ "out": "/nix/store/1xk0qclb7k5qzkyd14z7dv3fhy24z6ny-clean-css-cli-5.6.3"
},
"system": "x86_64-darwin",
"group": "toplevel",
@@ -136,17 +140,17 @@
{
"attr_path": "clean-css-cli",
"broken": false,
- "derivation": "/nix/store/j9sz6cjp87k9hw0blyrijw5har0kkaqj-clean-css-cli-5.6.3.drv",
+ "derivation": "/nix/store/sw3ym4n034wxscl0h0x42wxq1jd0yqi3-clean-css-cli-5.6.3.drv",
"description": "Command-line interface to the clean-css CSS optimization library",
"install_id": "clean-css-cli",
"license": "MIT",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
"name": "clean-css-cli-5.6.3",
"pname": "clean-css-cli",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:23:17.704714Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T04:47:35.778451Z",
"stabilities": [
"unstable"
],
@@ -156,7 +160,7 @@
"out"
],
"outputs": {
- "out": "/nix/store/f1mzbqc66qsscjqq7h2qwihjyz60zm91-clean-css-cli-5.6.3"
+ "out": "/nix/store/4i7xvm7h84llgsn5zsd59slbz5d3sqdy-clean-css-cli-5.6.3"
},
"system": "x86_64-linux",
"group": "toplevel",
@@ -165,27 +169,27 @@
{
"attr_path": "google-lighthouse",
"broken": false,
- "derivation": "/nix/store/khifp45mz1mishb73c9d10grdzd3zdmj-google-lighthouse-12.8.2.drv",
+ "derivation": "/nix/store/rffrihnb2clqldhy5mpa10z9pnrklqg1-google-lighthouse-13.3.0.drv",
"description": "Automated auditing, performance metrics, and best practices for the web",
"install_id": "google-lighthouse",
"license": "Apache-2.0",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "name": "google-lighthouse-12.8.2",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "name": "google-lighthouse-13.3.0",
"pname": "google-lighthouse",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:03:56.295086Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T03:44:35.021753Z",
"stabilities": [
"unstable"
],
"unfree": false,
- "version": "12.8.2",
+ "version": "13.3.0",
"outputs_to_install": [
"out"
],
"outputs": {
- "out": "/nix/store/hxjrj69vnv80r74zc0h1fr9iwqhy5iv5-google-lighthouse-12.8.2"
+ "out": "/nix/store/akqkna9hp8n2dw3jkp2vkzj48mnxlblk-google-lighthouse-13.3.0"
},
"system": "aarch64-linux",
"group": "toplevel",
@@ -194,27 +198,27 @@
{
"attr_path": "google-lighthouse",
"broken": false,
- "derivation": "/nix/store/7z7d9f6b2yz7361dknym4swf495zzbmk-google-lighthouse-12.8.2.drv",
+ "derivation": "/nix/store/7b3ip23hg3g71njx2slyqszs5zanrvak-google-lighthouse-13.3.0.drv",
"description": "Automated auditing, performance metrics, and best practices for the web",
"install_id": "google-lighthouse",
"license": "Apache-2.0",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "name": "google-lighthouse-12.8.2",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "name": "google-lighthouse-13.3.0",
"pname": "google-lighthouse",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:23:19.778607Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T04:47:38.331280Z",
"stabilities": [
"unstable"
],
"unfree": false,
- "version": "12.8.2",
+ "version": "13.3.0",
"outputs_to_install": [
"out"
],
"outputs": {
- "out": "/nix/store/3i9wz41hp5w4cq4ms7y3c35sz9nxkzjd-google-lighthouse-12.8.2"
+ "out": "/nix/store/65v73ywxiqrbri6sfhqjykw5lil79y5b-google-lighthouse-13.3.0"
},
"system": "x86_64-linux",
"group": "toplevel",
@@ -223,29 +227,29 @@
{
"attr_path": "imagemagick",
"broken": false,
- "derivation": "/nix/store/h5pj245w1lpgff141vjjiq9ckb6nlx4m-imagemagick-7.1.2-8.drv",
+ "derivation": "/nix/store/88f8nx403rgljnmran8hkd8a86dbq8fa-imagemagick-7.1.2-23.drv",
"description": "Software suite to create, edit, compose, or convert bitmap images",
"install_id": "imagemagick",
"license": "Apache-2.0",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "name": "imagemagick-7.1.2-8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "name": "imagemagick-7.1.2-23",
"pname": "imagemagick",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T02:54:58.092226Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T03:14:01.513680Z",
"stabilities": [
"unstable"
],
"unfree": false,
- "version": "7.1.2-8",
+ "version": "7.1.2-23",
"outputs_to_install": [
"out"
],
"outputs": {
- "dev": "/nix/store/0a3ysi0dx9iz1i5v0xj85zzc8yjavlrv-imagemagick-7.1.2-8-dev",
- "doc": "/nix/store/1qna9ngsjxq8hy9chg8hqwsy1lg0f6bw-imagemagick-7.1.2-8-doc",
- "out": "/nix/store/dzaplnfxc976z4dm94vb5c7kc8956nks-imagemagick-7.1.2-8"
+ "dev": "/nix/store/4as8dc7lb02lnnqdi7278705h7ayc4zg-imagemagick-7.1.2-23-dev",
+ "doc": "/nix/store/kmzihbxg9n3j6l12fr1l4mz0lqmqrim9-imagemagick-7.1.2-23-doc",
+ "out": "/nix/store/paxfk2s1gb9qylklxdlvicc5x0hf3fy7-imagemagick-7.1.2-23"
},
"system": "aarch64-darwin",
"group": "toplevel",
@@ -254,29 +258,30 @@
{
"attr_path": "imagemagick",
"broken": false,
- "derivation": "/nix/store/74ikbb0z6zqi17vv6qq0iy17kvd88wbj-imagemagick-7.1.2-8.drv",
+ "derivation": "/nix/store/d3v2rcbvb8hbx0khm5vy428awi1xlshi-imagemagick-7.1.2-23.drv",
"description": "Software suite to create, edit, compose, or convert bitmap images",
"install_id": "imagemagick",
"license": "Apache-2.0",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "name": "imagemagick-7.1.2-8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "name": "imagemagick-7.1.2-23",
"pname": "imagemagick",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:04:14.372688Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T03:44:54.771496Z",
"stabilities": [
"unstable"
],
"unfree": false,
- "version": "7.1.2-8",
+ "version": "7.1.2-23",
"outputs_to_install": [
+ "out",
"out"
],
"outputs": {
- "dev": "/nix/store/gwvsj5l3bpx6jbh5a3qnfk11s3awa8ll-imagemagick-7.1.2-8-dev",
- "doc": "/nix/store/znvckz4a0dlfwzpdwbwgfffmidp1baig-imagemagick-7.1.2-8-doc",
- "out": "/nix/store/7blk6gy4bmi3vrm7k6z0vkw1a2f1janp-imagemagick-7.1.2-8"
+ "dev": "/nix/store/z77shkv7hqjffi2zygbl9gxspswmrqvs-imagemagick-7.1.2-23-dev",
+ "doc": "/nix/store/fk4qf1lj4yv486hk2v55p3yddxgskkl8-imagemagick-7.1.2-23-doc",
+ "out": "/nix/store/nqqi92858bzd9sx119kcyrybbriaz4ab-imagemagick-7.1.2-23"
},
"system": "aarch64-linux",
"group": "toplevel",
@@ -285,29 +290,29 @@
{
"attr_path": "imagemagick",
"broken": false,
- "derivation": "/nix/store/imlwh8q0ka4h3ls4fwsrq13kb3ih3xr7-imagemagick-7.1.2-8.drv",
+ "derivation": "/nix/store/rf0hfv4yyh8nm6f5hv9gsinimidhkd2v-imagemagick-7.1.2-23.drv",
"description": "Software suite to create, edit, compose, or convert bitmap images",
"install_id": "imagemagick",
"license": "Apache-2.0",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "name": "imagemagick-7.1.2-8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "name": "imagemagick-7.1.2-23",
"pname": "imagemagick",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:14:12.444546Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T04:14:53.715354Z",
"stabilities": [
"unstable"
],
"unfree": false,
- "version": "7.1.2-8",
+ "version": "7.1.2-23",
"outputs_to_install": [
"out"
],
"outputs": {
- "dev": "/nix/store/58j6z4b5pg55xvq99pbgk9bd0i30xzcl-imagemagick-7.1.2-8-dev",
- "doc": "/nix/store/aw9v3sdqm8023qq8z7nkf62b3w3jbi47-imagemagick-7.1.2-8-doc",
- "out": "/nix/store/xj3hbbcfbr8dgviwg8yaw6bnw5asxbs3-imagemagick-7.1.2-8"
+ "dev": "/nix/store/yxdrxin5kv207nmhgg1sgf5va467b0z9-imagemagick-7.1.2-23-dev",
+ "doc": "/nix/store/90naf9g7bjbhjj544wdql90dm7yad2bg-imagemagick-7.1.2-23-doc",
+ "out": "/nix/store/52dp7qa7c566z1px4fq50in87jx6s3yb-imagemagick-7.1.2-23"
},
"system": "x86_64-darwin",
"group": "toplevel",
@@ -316,29 +321,30 @@
{
"attr_path": "imagemagick",
"broken": false,
- "derivation": "/nix/store/7ss86p3m020zc69s7y0pp7pra0yprcpd-imagemagick-7.1.2-8.drv",
+ "derivation": "/nix/store/cqq7r0qbpgh9j6y7z39bs7n6brn0xg3m-imagemagick-7.1.2-23.drv",
"description": "Software suite to create, edit, compose, or convert bitmap images",
"install_id": "imagemagick",
"license": "Apache-2.0",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "name": "imagemagick-7.1.2-8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "name": "imagemagick-7.1.2-23",
"pname": "imagemagick",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:23:38.123590Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T04:47:58.504450Z",
"stabilities": [
"unstable"
],
"unfree": false,
- "version": "7.1.2-8",
+ "version": "7.1.2-23",
"outputs_to_install": [
+ "out",
"out"
],
"outputs": {
- "dev": "/nix/store/7dshaawa31ri8g7qffb3kbgy3jwqhkl2-imagemagick-7.1.2-8-dev",
- "doc": "/nix/store/lp3vnmaw0w0lnkmy1b15qa3ay7cr73fv-imagemagick-7.1.2-8-doc",
- "out": "/nix/store/xdckbi96kj51j8qxbj2m6bag3v83hn8q-imagemagick-7.1.2-8"
+ "dev": "/nix/store/mqn50k3viz5wb0gwbdfwb23v7l32kfxf-imagemagick-7.1.2-23-dev",
+ "doc": "/nix/store/fqly9ymadz5cj8kq18wv2flq45m00rs1-imagemagick-7.1.2-23-doc",
+ "out": "/nix/store/vwalk1kcnb5mr5c5c8100a96r9kgq4g2-imagemagick-7.1.2-23"
},
"system": "x86_64-linux",
"group": "toplevel",
@@ -347,30 +353,30 @@
{
"attr_path": "just",
"broken": false,
- "derivation": "/nix/store/xa4ji0rg0r5richc3jmbi5285vd7x8nf-just-1.43.1.drv",
+ "derivation": "/nix/store/qayl4w7mfizkldr60008cphxz28f7yjm-just-1.51.0.drv",
"description": "Handy way to save and run project-specific commands",
"install_id": "just",
"license": "CC0-1.0",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "name": "just-1.43.1",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "name": "just-1.51.0",
"pname": "just",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T02:54:58.699398Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T03:14:02.321902Z",
"stabilities": [
"unstable"
],
"unfree": false,
- "version": "1.43.1",
+ "version": "1.51.0",
"outputs_to_install": [
"man",
"out"
],
"outputs": {
- "doc": "/nix/store/g2z02i3a2z17h9cmx04sp7zpzzgzkqh8-just-1.43.1-doc",
- "man": "/nix/store/y8ggbr7rq06mpqsdckpdsxzhjkspw63g-just-1.43.1-man",
- "out": "/nix/store/g6cidwix7lzzb0i5lpisvb7gx051qsc1-just-1.43.1"
+ "doc": "/nix/store/d0n7b7xd2miyja6m2nlzc2szj0gqzgxb-just-1.51.0-doc",
+ "man": "/nix/store/48iac05gjz4kjpx605hcgn95an8ary9q-just-1.51.0-man",
+ "out": "/nix/store/18ml04rix1526kmcv5fcir6n7cb8lxyf-just-1.51.0"
},
"system": "aarch64-darwin",
"group": "toplevel",
@@ -379,30 +385,30 @@
{
"attr_path": "just",
"broken": false,
- "derivation": "/nix/store/k4j49c343j0zasiamm81ylpkvihbyc4y-just-1.43.1.drv",
+ "derivation": "/nix/store/21sazfphih8v3qrf16swhbp2hi4bvjha-just-1.51.0.drv",
"description": "Handy way to save and run project-specific commands",
"install_id": "just",
"license": "CC0-1.0",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "name": "just-1.43.1",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "name": "just-1.51.0",
"pname": "just",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:04:15.460660Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T03:44:56.041064Z",
"stabilities": [
"unstable"
],
"unfree": false,
- "version": "1.43.1",
+ "version": "1.51.0",
"outputs_to_install": [
"man",
"out"
],
"outputs": {
- "doc": "/nix/store/99qn6axss3rk7c681rkhj9zza0ax2i74-just-1.43.1-doc",
- "man": "/nix/store/59aflmjxv0qbkaqzmjni4yydg873dl5v-just-1.43.1-man",
- "out": "/nix/store/ni4jn8rsn0h49lng7hdq6584zc4gpy9l-just-1.43.1"
+ "doc": "/nix/store/ppj3c78k6x3bql77f3mgrjjrxb2jjc0q-just-1.51.0-doc",
+ "man": "/nix/store/8ygmlmpxmggc2wqbkz1yhf7fz5nwg084-just-1.51.0-man",
+ "out": "/nix/store/6q8i59br2gzxnqax4dz3g1fmkwp2mfs2-just-1.51.0"
},
"system": "aarch64-linux",
"group": "toplevel",
@@ -411,30 +417,30 @@
{
"attr_path": "just",
"broken": false,
- "derivation": "/nix/store/66w205j74zfnp4fmwi7rggs8hg1kxrlh-just-1.43.1.drv",
+ "derivation": "/nix/store/y4m13kj7shshrl3kai9j827k7g1rcyjc-just-1.51.0.drv",
"description": "Handy way to save and run project-specific commands",
"install_id": "just",
"license": "CC0-1.0",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "name": "just-1.43.1",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "name": "just-1.51.0",
"pname": "just",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:14:13.092487Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T04:14:54.494733Z",
"stabilities": [
"unstable"
],
"unfree": false,
- "version": "1.43.1",
+ "version": "1.51.0",
"outputs_to_install": [
"man",
"out"
],
"outputs": {
- "doc": "/nix/store/kqx5lgjwpaipi7whnydwkl72alwvn5jz-just-1.43.1-doc",
- "man": "/nix/store/j67aa2bj6ssz61x4bh0ga0z1qzzv3prp-just-1.43.1-man",
- "out": "/nix/store/aa9459rdk1lzj2yd27csaasn9hb98ckr-just-1.43.1"
+ "doc": "/nix/store/x5g644hwbjdlij9w37gwgg1z1h4b6qqk-just-1.51.0-doc",
+ "man": "/nix/store/144wqvh3s441y05xvzn8m16rhcqbki7d-just-1.51.0-man",
+ "out": "/nix/store/7ppiil9ycr565vqgbc18x4rpgbfgcnzy-just-1.51.0"
},
"system": "x86_64-darwin",
"group": "toplevel",
@@ -443,30 +449,30 @@
{
"attr_path": "just",
"broken": false,
- "derivation": "/nix/store/7qy22sjsyx9jnh44lqvn2a0a2l62dbkr-just-1.43.1.drv",
+ "derivation": "/nix/store/giqf7rkyq3fbfg6glrlk19gxi5gk6svf-just-1.51.0.drv",
"description": "Handy way to save and run project-specific commands",
"install_id": "just",
"license": "CC0-1.0",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "name": "just-1.43.1",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "name": "just-1.51.0",
"pname": "just",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:23:39.278226Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T04:47:59.802850Z",
"stabilities": [
"unstable"
],
"unfree": false,
- "version": "1.43.1",
+ "version": "1.51.0",
"outputs_to_install": [
"man",
"out"
],
"outputs": {
- "doc": "/nix/store/idyx9h5gmcnzzqbjb50nwf30i4g1050v-just-1.43.1-doc",
- "man": "/nix/store/ib17hahpg1vpgh1ll0r7nb6rkmilpiil-just-1.43.1-man",
- "out": "/nix/store/kkmg0vkp9y4jp9yqgzrml0fgac9lfcyq-just-1.43.1"
+ "doc": "/nix/store/r800x8xppg70s00hw3h6x9cxpd6nh06y-just-1.51.0-doc",
+ "man": "/nix/store/p04vig0h2hj7hg5vgd74n5nphlcy23l8-just-1.51.0-man",
+ "out": "/nix/store/3j32zmchv9wd60qng1mm04yj07wf04i8-just-1.51.0"
},
"system": "x86_64-linux",
"group": "toplevel",
@@ -475,17 +481,17 @@
{
"attr_path": "libwebp",
"broken": false,
- "derivation": "/nix/store/c3icazdmv6jhycskgxwmijh30bvc5czk-libwebp-1.6.0.drv",
+ "derivation": "/nix/store/iks5mrlgm8iibap3kldg3pna5apf7v3k-libwebp-1.6.0.drv",
"description": "Tools and library for the WebP image format",
"install_id": "libwebp",
"license": "BSD-3-Clause",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
"name": "libwebp-1.6.0",
"pname": "libwebp",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T02:55:00.636729Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T03:14:04.714974Z",
"stabilities": [
"unstable"
],
@@ -495,7 +501,7 @@
"out"
],
"outputs": {
- "out": "/nix/store/n6p9lh1gh645h9ac66iqmpcb0lb1j4mr-libwebp-1.6.0"
+ "out": "/nix/store/29422zhl8b4pldca52ynskii2zxklml3-libwebp-1.6.0"
},
"system": "aarch64-darwin",
"group": "toplevel",
@@ -504,27 +510,28 @@
{
"attr_path": "libwebp",
"broken": false,
- "derivation": "/nix/store/nmk7nvypdy26g0gkanff2mdr7gvk5g5b-libwebp-1.6.0.drv",
+ "derivation": "/nix/store/z5r6syqr4b6zwg79dziaq9ikckl5564s-libwebp-1.6.0.drv",
"description": "Tools and library for the WebP image format",
"install_id": "libwebp",
"license": "BSD-3-Clause",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
"name": "libwebp-1.6.0",
"pname": "libwebp",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:04:19.454908Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T03:45:00.249919Z",
"stabilities": [
"unstable"
],
"unfree": false,
"version": "1.6.0",
"outputs_to_install": [
+ "out",
"out"
],
"outputs": {
- "out": "/nix/store/yj01rplw2k8ldgqdgjajm17yvr28004r-libwebp-1.6.0"
+ "out": "/nix/store/3jkvfbw794mxaddmhkbp6vkx2d4azvyd-libwebp-1.6.0"
},
"system": "aarch64-linux",
"group": "toplevel",
@@ -533,17 +540,17 @@
{
"attr_path": "libwebp",
"broken": false,
- "derivation": "/nix/store/7cpbix5njr66rmzgxzkv98jjsknccb1r-libwebp-1.6.0.drv",
+ "derivation": "/nix/store/sp8g1flmi7xxjni4r634awf1d6yr7n2q-libwebp-1.6.0.drv",
"description": "Tools and library for the WebP image format",
"install_id": "libwebp",
"license": "BSD-3-Clause",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
"name": "libwebp-1.6.0",
"pname": "libwebp",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:14:15.135410Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T04:14:56.729550Z",
"stabilities": [
"unstable"
],
@@ -553,7 +560,7 @@
"out"
],
"outputs": {
- "out": "/nix/store/22cpx27kbcagc4bbgk4bf95faig8cc5k-libwebp-1.6.0"
+ "out": "/nix/store/0srjc1mmi21066iqpzr9d05qhmg9f51s-libwebp-1.6.0"
},
"system": "x86_64-darwin",
"group": "toplevel",
@@ -562,27 +569,28 @@
{
"attr_path": "libwebp",
"broken": false,
- "derivation": "/nix/store/krbshhzhds81hkmc687wfjcbrrprrhgx-libwebp-1.6.0.drv",
+ "derivation": "/nix/store/aahg2zbd0rr0ssp74jmz5yyx9d1dbb0d-libwebp-1.6.0.drv",
"description": "Tools and library for the WebP image format",
"install_id": "libwebp",
"license": "BSD-3-Clause",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
"name": "libwebp-1.6.0",
"pname": "libwebp",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:23:43.333006Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T04:48:04.015113Z",
"stabilities": [
"unstable"
],
"unfree": false,
"version": "1.6.0",
"outputs_to_install": [
+ "out",
"out"
],
"outputs": {
- "out": "/nix/store/bcv98jffnvqxvyncf1bayz50r9wj7g3q-libwebp-1.6.0"
+ "out": "/nix/store/40kvg6g8ww9k9d116fiv7r9kwxhg4n7s-libwebp-1.6.0"
},
"system": "x86_64-linux",
"group": "toplevel",
@@ -591,17 +599,17 @@
{
"attr_path": "python313Packages.livereload",
"broken": false,
- "derivation": "/nix/store/k2sr7inri3bpnvybf45imbgbhk8v30ns-python3.13-livereload-2.7.1.drv",
+ "derivation": "/nix/store/cykkjkzl89s6psz9ppm8g7k1b8ggxmf5-python3.13-livereload-2.7.1.drv",
"description": "Runs a local server that reloads as you develop",
"install_id": "livereload",
"license": "BSD-3-Clause",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
"name": "python3.13-livereload-2.7.1",
"pname": "livereload",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T02:55:48.272759Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T03:14:36.390389Z",
"stabilities": [
"unstable"
],
@@ -611,8 +619,8 @@
"out"
],
"outputs": {
- "dist": "/nix/store/dnbj4krbpqvwkraishp8qljghzqsjwcv-python3.13-livereload-2.7.1-dist",
- "out": "/nix/store/rdyhy2przrd5dvwnhrls91khnc7xm3pw-python3.13-livereload-2.7.1"
+ "dist": "/nix/store/qadkllwrs5zmn7qn8hbd55qc93r9yydz-python3.13-livereload-2.7.1-dist",
+ "out": "/nix/store/nhz7w41y7gwdqng4wnzn63fjnwkf63lv-python3.13-livereload-2.7.1"
},
"system": "aarch64-darwin",
"group": "toplevel",
@@ -621,17 +629,17 @@
{
"attr_path": "python313Packages.livereload",
"broken": false,
- "derivation": "/nix/store/07hqanz6zkipv7yflpd7rk45z71rbf2a-python3.13-livereload-2.7.1.drv",
+ "derivation": "/nix/store/pvdhqlfhifak6kp678akrzf9dmd333bz-python3.13-livereload-2.7.1.drv",
"description": "Runs a local server that reloads as you develop",
"install_id": "livereload",
"license": "BSD-3-Clause",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
"name": "python3.13-livereload-2.7.1",
"pname": "livereload",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:05:33.985285Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T03:45:49.119404Z",
"stabilities": [
"unstable"
],
@@ -641,8 +649,8 @@
"out"
],
"outputs": {
- "dist": "/nix/store/xanmwsf8sblbvxsn81l7d07sr8vkswq5-python3.13-livereload-2.7.1-dist",
- "out": "/nix/store/jaw2si5w3z7zsr9hczylgmw6wm0nrn5w-python3.13-livereload-2.7.1"
+ "dist": "/nix/store/zzp0k74nlkd0qhr79c9pd1yw1v7vvzkj-python3.13-livereload-2.7.1-dist",
+ "out": "/nix/store/124d6fdrjyx9jackyspmf5rwvgqnysfn-python3.13-livereload-2.7.1"
},
"system": "aarch64-linux",
"group": "toplevel",
@@ -651,17 +659,17 @@
{
"attr_path": "python313Packages.livereload",
"broken": false,
- "derivation": "/nix/store/34hl55cb7a2qz0ccmic3hm1dy943fz62-python3.13-livereload-2.7.1.drv",
+ "derivation": "/nix/store/5s2ma45dfnmrl1zxb5ivrfvkbalva8vm-python3.13-livereload-2.7.1.drv",
"description": "Runs a local server that reloads as you develop",
"install_id": "livereload",
"license": "BSD-3-Clause",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
"name": "python3.13-livereload-2.7.1",
"pname": "livereload",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:15:07.238425Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T04:15:30.220495Z",
"stabilities": [
"unstable"
],
@@ -671,8 +679,8 @@
"out"
],
"outputs": {
- "dist": "/nix/store/n6vsc5sy4lv2g7vfgacrklwmrg0vnppb-python3.13-livereload-2.7.1-dist",
- "out": "/nix/store/ipzpdks3r8isp2wx4kbp5hm3hrvkgliv-python3.13-livereload-2.7.1"
+ "dist": "/nix/store/5wpr2a669vk3pj69sl26mlr5x5wg6miq-python3.13-livereload-2.7.1-dist",
+ "out": "/nix/store/li4n6j2lvissaynzrifmwc62gh2kbiay-python3.13-livereload-2.7.1"
},
"system": "x86_64-darwin",
"group": "toplevel",
@@ -681,17 +689,17 @@
{
"attr_path": "python313Packages.livereload",
"broken": false,
- "derivation": "/nix/store/c42ilcc1lh91lbrxq1k1fx4x4qyycv3r-python3.13-livereload-2.7.1.drv",
+ "derivation": "/nix/store/5czbpwvcrgi50p7bkw02gz3n337hkj7q-python3.13-livereload-2.7.1.drv",
"description": "Runs a local server that reloads as you develop",
"install_id": "livereload",
"license": "BSD-3-Clause",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
"name": "python3.13-livereload-2.7.1",
"pname": "livereload",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:25:00.955242Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T04:48:51.150296Z",
"stabilities": [
"unstable"
],
@@ -701,8 +709,8 @@
"out"
],
"outputs": {
- "dist": "/nix/store/9br7xjxzg7b90fqq3rs3hwg578c8plc8-python3.13-livereload-2.7.1-dist",
- "out": "/nix/store/09aw33m97k373ryp7bg88m7gnc4mzh7k-python3.13-livereload-2.7.1"
+ "dist": "/nix/store/y86lyiypfs1py3na652sfc8p2a4d7c4w-python3.13-livereload-2.7.1-dist",
+ "out": "/nix/store/kp357nfzsjhgkvl5krw764c06iydvfc2-python3.13-livereload-2.7.1"
},
"system": "x86_64-linux",
"group": "toplevel",
@@ -711,29 +719,27 @@
{
"attr_path": "nodejs",
"broken": false,
- "derivation": "/nix/store/x9g1nm5wwc7bycyw0q9k8fl03brz5yar-nodejs-22.21.1.drv",
+ "derivation": "/nix/store/vbx35am7lar9zvwhk4nfl3lysmbd0ils-nodejs-24.15.0.drv",
"description": "Event-driven I/O framework for the V8 JavaScript engine",
"install_id": "nodejs",
"license": "MIT",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "name": "nodejs-22.21.1",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "name": "nodejs-24.15.0",
"pname": "nodejs",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T02:55:05.864189Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T03:14:10.752563Z",
"stabilities": [
"unstable"
],
"unfree": false,
- "version": "22.21.1",
+ "version": "24.15.0",
"outputs_to_install": [
"out"
],
"outputs": {
- "dev": "/nix/store/bkir3agnj2cvpx80a0z1lj50pg2dhddi-nodejs-22.21.1-dev",
- "libv8": "/nix/store/ivbmw7d10pxzkrz5397bimhqwwlrc8gp-nodejs-22.21.1-libv8",
- "out": "/nix/store/92igwjsd6av0pg8dvygirhdwahwq2sh7-nodejs-22.21.1"
+ "out": "/nix/store/3mvbmkd7lmxi3xlka1avra24flwbgjv9-nodejs-24.15.0"
},
"system": "aarch64-darwin",
"group": "toplevel",
@@ -742,29 +748,27 @@
{
"attr_path": "nodejs",
"broken": false,
- "derivation": "/nix/store/07m9qkb2rvy59x90w3hi9nykdxf409x8-nodejs-22.21.1.drv",
+ "derivation": "/nix/store/zc41z1042wi0d1gmyc8mlwv5av8fds2q-nodejs-24.15.0.drv",
"description": "Event-driven I/O framework for the V8 JavaScript engine",
"install_id": "nodejs",
"license": "MIT",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "name": "nodejs-22.21.1",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "name": "nodejs-24.15.0",
"pname": "nodejs",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:04:31.849814Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T03:45:13.939576Z",
"stabilities": [
"unstable"
],
"unfree": false,
- "version": "22.21.1",
+ "version": "24.15.0",
"outputs_to_install": [
"out"
],
"outputs": {
- "dev": "/nix/store/1akvaqvrp0cf6pd7mkqy7m3gnzc3wfd7-nodejs-22.21.1-dev",
- "libv8": "/nix/store/ykj9hi9qv7gwxnbg2vh6ca00w9zsbhm0-nodejs-22.21.1-libv8",
- "out": "/nix/store/hps7k16bd9isj7pfsjzg7q0wgvrw47kn-nodejs-22.21.1"
+ "out": "/nix/store/rmdjmd0iy5zlyg0j2i1cd0s7ha1562fs-nodejs-24.15.0"
},
"system": "aarch64-linux",
"group": "toplevel",
@@ -773,29 +777,27 @@
{
"attr_path": "nodejs",
"broken": false,
- "derivation": "/nix/store/j1fpqmshmrxx52k2xqqrv5c718y6sjih-nodejs-22.21.1.drv",
+ "derivation": "/nix/store/f0ay9hny5gn4c0lfrb95xrakm7yf3s2q-nodejs-24.15.0.drv",
"description": "Event-driven I/O framework for the V8 JavaScript engine",
"install_id": "nodejs",
"license": "MIT",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "name": "nodejs-22.21.1",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "name": "nodejs-24.15.0",
"pname": "nodejs",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:14:20.707971Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T04:15:02.646495Z",
"stabilities": [
"unstable"
],
"unfree": false,
- "version": "22.21.1",
+ "version": "24.15.0",
"outputs_to_install": [
"out"
],
"outputs": {
- "dev": "/nix/store/haa4773lz7wfhnql05181azh4z5141r7-nodejs-22.21.1-dev",
- "libv8": "/nix/store/0pswqdxlx8y0v54gq0ixwps19agv6bds-nodejs-22.21.1-libv8",
- "out": "/nix/store/wfjyiwara336j7r1v0ia3kib8779wzwf-nodejs-22.21.1"
+ "out": "/nix/store/rhv8jiklgw2bw4ljh4nm3h3r3bpnkcl3-nodejs-24.15.0"
},
"system": "x86_64-darwin",
"group": "toplevel",
@@ -804,29 +806,27 @@
{
"attr_path": "nodejs",
"broken": false,
- "derivation": "/nix/store/wjimqspfnxjp5y11703a1rz75cbvj4ph-nodejs-22.21.1.drv",
+ "derivation": "/nix/store/f8i8jydaqs0ngxm97c091zna2mnjb43f-nodejs-24.15.0.drv",
"description": "Event-driven I/O framework for the V8 JavaScript engine",
"install_id": "nodejs",
"license": "MIT",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "name": "nodejs-22.21.1",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "name": "nodejs-24.15.0",
"pname": "nodejs",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:23:57.507358Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T04:48:17.971319Z",
"stabilities": [
"unstable"
],
"unfree": false,
- "version": "22.21.1",
+ "version": "24.15.0",
"outputs_to_install": [
"out"
],
"outputs": {
- "dev": "/nix/store/l1idqv7ff0m2kbcqnn1yr415wyga1wxf-nodejs-22.21.1-dev",
- "libv8": "/nix/store/farc7vk89kr367hsx0qchmahf6i6sbk1-nodejs-22.21.1-libv8",
- "out": "/nix/store/l85fis49agvp5q1ild1rfh4rrgmn92sr-nodejs-22.21.1"
+ "out": "/nix/store/5a8ysg1jnj8jmzzyfcfw7rvpvnp5rfpa-nodejs-24.15.0"
},
"system": "x86_64-linux",
"group": "toplevel",
@@ -835,17 +835,17 @@
{
"attr_path": "optipng",
"broken": false,
- "derivation": "/nix/store/vji77y2gsjhiwjas4m5r9xivgw2ms8f7-optipng-7.9.1.drv",
+ "derivation": "/nix/store/saycql3b7k6krrjzabf74vgq0048vx63-optipng-7.9.1.drv",
"description": "PNG optimizer",
"install_id": "optipng",
"license": "Zlib",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
"name": "optipng-7.9.1",
"pname": "optipng",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T02:55:08.681282Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T03:14:16.443041Z",
"stabilities": [
"unstable"
],
@@ -855,7 +855,7 @@
"out"
],
"outputs": {
- "out": "/nix/store/x1gn8cxwsx7633r1vby4jyfjjv0kx39a-optipng-7.9.1"
+ "out": "/nix/store/a6a1y7lnqb8cxk20idxjiqp8y07i9h57-optipng-7.9.1"
},
"system": "aarch64-darwin",
"group": "toplevel",
@@ -864,17 +864,17 @@
{
"attr_path": "optipng",
"broken": false,
- "derivation": "/nix/store/qrwc6vj3ifds68wqw2dglggz6fh9da2g-optipng-7.9.1.drv",
+ "derivation": "/nix/store/lfsw4g4irxv63q65fkjhih3qpmcglrjz-optipng-7.9.1.drv",
"description": "PNG optimizer",
"install_id": "optipng",
"license": "Zlib",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
"name": "optipng-7.9.1",
"pname": "optipng",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:04:36.447106Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T03:45:21.754151Z",
"stabilities": [
"unstable"
],
@@ -884,7 +884,7 @@
"out"
],
"outputs": {
- "out": "/nix/store/88g6ldb2agsqpdl57xz6388mmhvmayv6-optipng-7.9.1"
+ "out": "/nix/store/ji5n3pzv9fk9iyw9qpvvryv8qhik5jz0-optipng-7.9.1"
},
"system": "aarch64-linux",
"group": "toplevel",
@@ -893,17 +893,17 @@
{
"attr_path": "optipng",
"broken": false,
- "derivation": "/nix/store/7zx73vwpzs4hg4qvq3p42wyyjinaqrc0-optipng-7.9.1.drv",
+ "derivation": "/nix/store/7nlpdr88rls4qqkkwldkdc1gkgnd9hab-optipng-7.9.1.drv",
"description": "PNG optimizer",
"install_id": "optipng",
"license": "Zlib",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
"name": "optipng-7.9.1",
"pname": "optipng",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:14:23.777999Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T04:15:08.638569Z",
"stabilities": [
"unstable"
],
@@ -913,7 +913,7 @@
"out"
],
"outputs": {
- "out": "/nix/store/ihzzz48mk6rk4a316aajzw80h0v95zpy-optipng-7.9.1"
+ "out": "/nix/store/9xhicr2blyx33a9apzgni4xv1fqnqcdp-optipng-7.9.1"
},
"system": "x86_64-darwin",
"group": "toplevel",
@@ -922,17 +922,17 @@
{
"attr_path": "optipng",
"broken": false,
- "derivation": "/nix/store/4piyvapxin1pqswbqx00964vpqvv15fm-optipng-7.9.1.drv",
+ "derivation": "/nix/store/6q1m5l9lak96ii6a3ahr9fif9kif9bkq-optipng-7.9.1.drv",
"description": "PNG optimizer",
"install_id": "optipng",
"license": "Zlib",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
"name": "optipng-7.9.1",
"pname": "optipng",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:24:02.406936Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T04:48:25.797393Z",
"stabilities": [
"unstable"
],
@@ -942,7 +942,7 @@
"out"
],
"outputs": {
- "out": "/nix/store/g2b3is8swa9dy9jgpw8wmpnhm04yk23x-optipng-7.9.1"
+ "out": "/nix/store/blkwhx0hqlk9m3vvj66gh8cl7nl3n92v-optipng-7.9.1"
},
"system": "x86_64-linux",
"group": "toplevel",
@@ -951,17 +951,17 @@
{
"attr_path": "pngquant",
"broken": false,
- "derivation": "/nix/store/w69g4z0g4snjha4jnsn5d3af6fnnd1vd-pngquant-3.0.3.drv",
+ "derivation": "/nix/store/cxivls5fj039zsqcg7px48vk74b7g1di-pngquant-3.0.3.drv",
"description": "Tool to convert 24/32-bit RGBA PNGs to 8-bit palette with alpha channel preserved",
"install_id": "pngquant",
"license": "[ GPL-3.0-or-later, HPND, BSD-2-Clause ]",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
"name": "pngquant-3.0.3",
"pname": "pngquant",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T02:55:19.779087Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T03:14:25.849651Z",
"stabilities": [
"unstable"
],
@@ -972,8 +972,8 @@
"out"
],
"outputs": {
- "man": "/nix/store/vbjvxmxnmixlpdr15m9597f2k2bp35jh-pngquant-3.0.3-man",
- "out": "/nix/store/2c4n20nrnh6zl5xfmah128qbnciqlzfs-pngquant-3.0.3"
+ "man": "/nix/store/qvwg09wjr4w5fzwnp0mzgbxcdnwgqnzb-pngquant-3.0.3-man",
+ "out": "/nix/store/6h4mnz6bwhc771gq408xywsdn8wy9clp-pngquant-3.0.3"
},
"system": "aarch64-darwin",
"group": "toplevel",
@@ -982,17 +982,17 @@
{
"attr_path": "pngquant",
"broken": false,
- "derivation": "/nix/store/69fjrw4crds9vg7m2izny8qy82dsi1f4-pngquant-3.0.3.drv",
+ "derivation": "/nix/store/q29s9jvxkb9p9y0r9bp1hds2bbgvmn1k-pngquant-3.0.3.drv",
"description": "Tool to convert 24/32-bit RGBA PNGs to 8-bit palette with alpha channel preserved",
"install_id": "pngquant",
"license": "[ GPL-3.0-or-later, HPND, BSD-2-Clause ]",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
"name": "pngquant-3.0.3",
"pname": "pngquant",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:04:52.719059Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T03:45:35.466900Z",
"stabilities": [
"unstable"
],
@@ -1003,8 +1003,8 @@
"out"
],
"outputs": {
- "man": "/nix/store/p0b9f2c1pp0hvp1ljz95p83j8fyb8rc7-pngquant-3.0.3-man",
- "out": "/nix/store/w4fpfg8vpic4sm6qripsmrwxslmdw2x6-pngquant-3.0.3"
+ "man": "/nix/store/hjsfn9r3nv4hm2w8b2anm2flf3aphh7c-pngquant-3.0.3-man",
+ "out": "/nix/store/mznyygcbw5s63928zx4dv546l5nqkb7i-pngquant-3.0.3"
},
"system": "aarch64-linux",
"group": "toplevel",
@@ -1013,17 +1013,17 @@
{
"attr_path": "pngquant",
"broken": false,
- "derivation": "/nix/store/vqf5jbq3ry1zrxk0sn9nl5jzjqkks5m8-pngquant-3.0.3.drv",
+ "derivation": "/nix/store/l09khm3b1l3s50r39804yrc8vpl7mv0j-pngquant-3.0.3.drv",
"description": "Tool to convert 24/32-bit RGBA PNGs to 8-bit palette with alpha channel preserved",
"install_id": "pngquant",
"license": "[ GPL-3.0-or-later, HPND, BSD-2-Clause ]",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
"name": "pngquant-3.0.3",
"pname": "pngquant",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:14:35.744126Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T04:15:18.617686Z",
"stabilities": [
"unstable"
],
@@ -1034,8 +1034,8 @@
"out"
],
"outputs": {
- "man": "/nix/store/z584l4zs8sbfywlqndvfk56bwld2xcpp-pngquant-3.0.3-man",
- "out": "/nix/store/7m5syywabnps0z390lbh4aymm4jwvxkl-pngquant-3.0.3"
+ "man": "/nix/store/9ycpsy4f3virwar7y0rj4dz6b9gjljy0-pngquant-3.0.3-man",
+ "out": "/nix/store/v0axkwqf1dgvbgjx9w5r81svqp5qvswx-pngquant-3.0.3"
},
"system": "x86_64-darwin",
"group": "toplevel",
@@ -1044,17 +1044,17 @@
{
"attr_path": "pngquant",
"broken": false,
- "derivation": "/nix/store/gin4iyr426iv9l99yv9z5r6p41m83aj2-pngquant-3.0.3.drv",
+ "derivation": "/nix/store/kprijdnxyqjn747s30mq1rirql2mjx5z-pngquant-3.0.3.drv",
"description": "Tool to convert 24/32-bit RGBA PNGs to 8-bit palette with alpha channel preserved",
"install_id": "pngquant",
"license": "[ GPL-3.0-or-later, HPND, BSD-2-Clause ]",
- "locked_url": "https://github.com/flox/nixpkgs?rev=addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
+ "locked_url": "https://github.com/flox/nixpkgs?rev=9ae611a455b90cf061d8f332b977e387bda8e1ca",
"name": "pngquant-3.0.3",
"pname": "pngquant",
- "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
- "rev_count": 908783,
- "rev_date": "2025-12-08T09:27:56Z",
- "scrape_date": "2025-12-10T03:24:19.521665Z",
+ "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca",
+ "rev_count": 1014179,
+ "rev_date": "2026-06-10T06:56:03Z",
+ "scrape_date": "2026-06-12T04:48:38.136548Z",
"stabilities": [
"unstable"
],
@@ -1065,8 +1065,8 @@
"out"
],
"outputs": {
- "man": "/nix/store/zds20g9hrf58kr6xw5qsbf2i71j41k86-pngquant-3.0.3-man",
- "out": "/nix/store/9a4ni47s5baw28918i9rl1krfwr0v056-pngquant-3.0.3"
+ "man": "/nix/store/cfz23lsybarf9l9i1d66b4a5267c7ng0-pngquant-3.0.3-man",
+ "out": "/nix/store/99kvapc4wmbzs0gmilbcs7s8574nsab4-pngquant-3.0.3"
},
"system": "x86_64-linux",
"group": "toplevel",
diff --git a/.flox/env/manifest.toml b/.flox/env/manifest.toml
index 1b4da0f..c391b2f 100644
--- a/.flox/env/manifest.toml
+++ b/.flox/env/manifest.toml
@@ -1,15 +1,19 @@
-version = 1
+schema-version = "1.12.0"
[install]
livereload.pkg-path = "python313Packages.livereload"
+livereload.outputs = "all"
imagemagick.pkg-path = "imagemagick"
+imagemagick.outputs = "all"
pngquant.pkg-path = "pngquant"
optipng.pkg-path = "optipng"
libwebp.pkg-path = "libwebp"
just.pkg-path = "just"
+just.outputs = "all"
google-lighthouse.pkg-path = "google-lighthouse"
google-lighthouse.systems = ["aarch64-linux", "x86_64-linux"]
nodejs.pkg-path = "nodejs"
+nodejs.outputs = "all"
clean-css-cli.pkg-path = "clean-css-cli"
[hook]
diff --git a/.github/workflows/lighthouse-pr.yml b/.github/workflows/lighthouse-pr.yml
index cfe68dc..834295e 100644
--- a/.github/workflows/lighthouse-pr.yml
+++ b/.github/workflows/lighthouse-pr.yml
@@ -26,12 +26,23 @@ jobs:
- name: Activate Flox environment
run: flox activate
+ # Stash the PR branch's (fixed) Flox env so we can reuse it to measure the
+ # base branch. The base branch may have an older/broken env locked, which
+ # would otherwise fail `flox activate` and block the whole job.
+ - name: Save PR Flox environment
+ run: cp -r .flox /tmp/pr-flox
+
# Test BASE branch first
- name: Checkout base branch
uses: actions/checkout@v4
with:
ref: ${{ github.base_ref }}
+ - name: Restore PR Flox environment onto base branch
+ run: |
+ rm -rf .flox
+ cp -r /tmp/pr-flox .flox
+
- name: Start dev server for base branch
run: |
flox activate -- livereload --port 8888 > /dev/null 2>&1 &
diff --git a/2026/agenda.html b/2026/agenda.html
new file mode 100644
index 0000000..2c53d3c
--- /dev/null
+++ b/2026/agenda.html
@@ -0,0 +1,360 @@
+
+
+
+
+
+
+
+ Agenda - PlanetNix 2026
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Where Nix Builders Come Together
+
March 5th-6th, 2026 @ Pasadena, CA
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/2026/assets/css/pico.min.css b/2026/assets/css/pico.min.css
new file mode 100644
index 0000000..e10ec26
--- /dev/null
+++ b/2026/assets/css/pico.min.css
@@ -0,0 +1,4 @@
+@charset "UTF-8";/*!
+ * Pico CSS ✨ v2.1.1 (https://picocss.com)
+ * Copyright 2019-2025 - Licensed under MIT
+ */:host,:root{--pico-font-family-emoji:"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--pico-font-family-sans-serif:system-ui,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,Helvetica,Arial,"Helvetica Neue",sans-serif,var(--pico-font-family-emoji);--pico-font-family-monospace:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace,var(--pico-font-family-emoji);--pico-font-family:var(--pico-font-family-sans-serif);--pico-line-height:1.5;--pico-font-weight:400;--pico-font-size:100%;--pico-text-underline-offset:0.1rem;--pico-border-radius:0.25rem;--pico-border-width:0.0625rem;--pico-outline-width:0.125rem;--pico-transition:0.2s ease-in-out;--pico-spacing:1rem;--pico-typography-spacing-vertical:1rem;--pico-block-spacing-vertical:var(--pico-spacing);--pico-block-spacing-horizontal:var(--pico-spacing);--pico-grid-column-gap:var(--pico-spacing);--pico-grid-row-gap:var(--pico-spacing);--pico-form-element-spacing-vertical:0.75rem;--pico-form-element-spacing-horizontal:1rem;--pico-group-box-shadow:0 0 0 rgba(0, 0, 0, 0);--pico-group-box-shadow-focus-with-button:0 0 0 var(--pico-outline-width) var(--pico-primary-focus);--pico-group-box-shadow-focus-with-input:0 0 0 0.0625rem var(--pico-form-element-border-color);--pico-modal-overlay-backdrop-filter:blur(0.375rem);--pico-nav-element-spacing-vertical:1rem;--pico-nav-element-spacing-horizontal:0.5rem;--pico-nav-link-spacing-vertical:0.5rem;--pico-nav-link-spacing-horizontal:0.5rem;--pico-nav-breadcrumb-divider:">";--pico-icon-checkbox:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(255, 255, 255)' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");--pico-icon-minus:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(255, 255, 255)' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'%3E%3C/line%3E%3C/svg%3E");--pico-icon-chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(136, 145, 164)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");--pico-icon-date:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(136, 145, 164)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E");--pico-icon-time:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(136, 145, 164)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolyline points='12 6 12 12 16 14'%3E%3C/polyline%3E%3C/svg%3E");--pico-icon-search:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(136, 145, 164)' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E");--pico-icon-close:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(136, 145, 164)' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'%3E%3C/line%3E%3Cline x1='6' y1='6' x2='18' y2='18'%3E%3C/line%3E%3C/svg%3E");--pico-icon-loading:url("data:image/svg+xml,%3Csvg fill='none' height='24' width='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E g %7B animation: rotate 2s linear infinite; transform-origin: center center; %7D circle %7B stroke-dasharray: 75,100; stroke-dashoffset: -5; animation: dash 1.5s ease-in-out infinite; stroke-linecap: round; %7D @keyframes rotate %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D @keyframes dash %7B 0%25 %7B stroke-dasharray: 1,100; stroke-dashoffset: 0; %7D 50%25 %7B stroke-dasharray: 44.5,100; stroke-dashoffset: -17.5; %7D 100%25 %7B stroke-dasharray: 44.5,100; stroke-dashoffset: -62; %7D %7D %3C/style%3E%3Cg%3E%3Ccircle cx='12' cy='12' r='10' fill='none' stroke='rgb(136, 145, 164)' stroke-width='4' /%3E%3C/g%3E%3C/svg%3E")}@media (min-width:576px){:host,:root{--pico-font-size:106.25%}}@media (min-width:768px){:host,:root{--pico-font-size:112.5%}}@media (min-width:1024px){:host,:root{--pico-font-size:118.75%}}@media (min-width:1280px){:host,:root{--pico-font-size:125%}}@media (min-width:1536px){:host,:root{--pico-font-size:131.25%}}a{--pico-text-decoration:underline}a.contrast,a.secondary{--pico-text-decoration:underline}small{--pico-font-size:0.875em}h1,h2,h3,h4,h5,h6{--pico-font-weight:700}h1{--pico-font-size:2rem;--pico-line-height:1.125;--pico-typography-spacing-top:3rem}h2{--pico-font-size:1.75rem;--pico-line-height:1.15;--pico-typography-spacing-top:2.625rem}h3{--pico-font-size:1.5rem;--pico-line-height:1.175;--pico-typography-spacing-top:2.25rem}h4{--pico-font-size:1.25rem;--pico-line-height:1.2;--pico-typography-spacing-top:1.874rem}h5{--pico-font-size:1.125rem;--pico-line-height:1.225;--pico-typography-spacing-top:1.6875rem}h6{--pico-font-size:1rem;--pico-line-height:1.25;--pico-typography-spacing-top:1.5rem}tfoot td,tfoot th,thead td,thead th{--pico-font-weight:600;--pico-border-width:0.1875rem}code,kbd,pre,samp{--pico-font-family:var(--pico-font-family-monospace)}kbd{--pico-font-weight:bolder}:where(select,textarea),input:not([type=submit],[type=button],[type=reset],[type=checkbox],[type=radio],[type=file]){--pico-outline-width:0.0625rem}[type=search]{--pico-border-radius:5rem}[type=checkbox],[type=radio]{--pico-border-width:0.125rem}[type=checkbox][role=switch]{--pico-border-width:0.1875rem}details.dropdown summary:not([role=button]){--pico-outline-width:0.0625rem}nav details.dropdown summary:focus-visible{--pico-outline-width:0.125rem}[role=search]{--pico-border-radius:5rem}[role=group]:has(button.secondary:focus,[type=submit].secondary:focus,[type=button].secondary:focus,[role=button].secondary:focus),[role=search]:has(button.secondary:focus,[type=submit].secondary:focus,[type=button].secondary:focus,[role=button].secondary:focus){--pico-group-box-shadow-focus-with-button:0 0 0 var(--pico-outline-width) var(--pico-secondary-focus)}[role=group]:has(button.contrast:focus,[type=submit].contrast:focus,[type=button].contrast:focus,[role=button].contrast:focus),[role=search]:has(button.contrast:focus,[type=submit].contrast:focus,[type=button].contrast:focus,[role=button].contrast:focus){--pico-group-box-shadow-focus-with-button:0 0 0 var(--pico-outline-width) var(--pico-contrast-focus)}[role=group] [role=button],[role=group] [type=button],[role=group] [type=submit],[role=group] button,[role=search] [role=button],[role=search] [type=button],[role=search] [type=submit],[role=search] button{--pico-form-element-spacing-horizontal:2rem}details summary[role=button]:not(.outline)::after{filter:brightness(0) invert(1)}[aria-busy=true]:not(input,select,textarea):is(button,[type=submit],[type=button],[type=reset],[role=button]):not(.outline)::before{filter:brightness(0) invert(1)}:host(:not([data-theme=dark])),:root:not([data-theme=dark]),[data-theme=light]{color-scheme:light;--pico-background-color:#fff;--pico-color:#373c44;--pico-text-selection-color:rgba(2, 154, 232, 0.25);--pico-muted-color:#646b79;--pico-muted-border-color:rgb(231, 234, 239.5);--pico-primary:#0172ad;--pico-primary-background:#0172ad;--pico-primary-border:var(--pico-primary-background);--pico-primary-underline:rgba(1, 114, 173, 0.5);--pico-primary-hover:#015887;--pico-primary-hover-background:#02659a;--pico-primary-hover-border:var(--pico-primary-hover-background);--pico-primary-hover-underline:var(--pico-primary-hover);--pico-primary-focus:rgba(2, 154, 232, 0.5);--pico-primary-inverse:#fff;--pico-secondary:#5d6b89;--pico-secondary-background:#525f7a;--pico-secondary-border:var(--pico-secondary-background);--pico-secondary-underline:rgba(93, 107, 137, 0.5);--pico-secondary-hover:#48536b;--pico-secondary-hover-background:#48536b;--pico-secondary-hover-border:var(--pico-secondary-hover-background);--pico-secondary-hover-underline:var(--pico-secondary-hover);--pico-secondary-focus:rgba(93, 107, 137, 0.25);--pico-secondary-inverse:#fff;--pico-contrast:#181c25;--pico-contrast-background:#181c25;--pico-contrast-border:var(--pico-contrast-background);--pico-contrast-underline:rgba(24, 28, 37, 0.5);--pico-contrast-hover:#000;--pico-contrast-hover-background:#000;--pico-contrast-hover-border:var(--pico-contrast-hover-background);--pico-contrast-hover-underline:var(--pico-secondary-hover);--pico-contrast-focus:rgba(93, 107, 137, 0.25);--pico-contrast-inverse:#fff;--pico-box-shadow:0.0145rem 0.029rem 0.174rem rgba(129, 145, 181, 0.01698),0.0335rem 0.067rem 0.402rem rgba(129, 145, 181, 0.024),0.0625rem 0.125rem 0.75rem rgba(129, 145, 181, 0.03),0.1125rem 0.225rem 1.35rem rgba(129, 145, 181, 0.036),0.2085rem 0.417rem 2.502rem rgba(129, 145, 181, 0.04302),0.5rem 1rem 6rem rgba(129, 145, 181, 0.06),0 0 0 0.0625rem rgba(129, 145, 181, 0.015);--pico-h1-color:#2d3138;--pico-h2-color:#373c44;--pico-h3-color:#424751;--pico-h4-color:#4d535e;--pico-h5-color:#5c6370;--pico-h6-color:#646b79;--pico-mark-background-color:rgb(252.5, 230.5, 191.5);--pico-mark-color:#0f1114;--pico-ins-color:rgb(28.5, 105.5, 84);--pico-del-color:rgb(136, 56.5, 53);--pico-blockquote-border-color:var(--pico-muted-border-color);--pico-blockquote-footer-color:var(--pico-muted-color);--pico-button-box-shadow:0 0 0 rgba(0, 0, 0, 0);--pico-button-hover-box-shadow:0 0 0 rgba(0, 0, 0, 0);--pico-table-border-color:var(--pico-muted-border-color);--pico-table-row-stripped-background-color:rgba(111, 120, 135, 0.0375);--pico-code-background-color:rgb(243, 244.5, 246.75);--pico-code-color:#646b79;--pico-code-kbd-background-color:var(--pico-color);--pico-code-kbd-color:var(--pico-background-color);--pico-form-element-background-color:rgb(251, 251.5, 252.25);--pico-form-element-selected-background-color:#dfe3eb;--pico-form-element-border-color:#cfd5e2;--pico-form-element-color:#23262c;--pico-form-element-placeholder-color:var(--pico-muted-color);--pico-form-element-active-background-color:#fff;--pico-form-element-active-border-color:var(--pico-primary-border);--pico-form-element-focus-color:var(--pico-primary-border);--pico-form-element-disabled-opacity:0.5;--pico-form-element-invalid-border-color:rgb(183.5, 105.5, 106.5);--pico-form-element-invalid-active-border-color:rgb(200.25, 79.25, 72.25);--pico-form-element-invalid-focus-color:var(--pico-form-element-invalid-active-border-color);--pico-form-element-valid-border-color:rgb(76, 154.5, 137.5);--pico-form-element-valid-active-border-color:rgb(39, 152.75, 118.75);--pico-form-element-valid-focus-color:var(--pico-form-element-valid-active-border-color);--pico-switch-background-color:#bfc7d9;--pico-switch-checked-background-color:var(--pico-primary-background);--pico-switch-color:#fff;--pico-switch-thumb-box-shadow:0 0 0 rgba(0, 0, 0, 0);--pico-range-border-color:#dfe3eb;--pico-range-active-border-color:#bfc7d9;--pico-range-thumb-border-color:var(--pico-background-color);--pico-range-thumb-color:var(--pico-secondary-background);--pico-range-thumb-active-color:var(--pico-primary-background);--pico-accordion-border-color:var(--pico-muted-border-color);--pico-accordion-active-summary-color:var(--pico-primary-hover);--pico-accordion-close-summary-color:var(--pico-color);--pico-accordion-open-summary-color:var(--pico-muted-color);--pico-card-background-color:var(--pico-background-color);--pico-card-border-color:var(--pico-muted-border-color);--pico-card-box-shadow:var(--pico-box-shadow);--pico-card-sectioning-background-color:rgb(251, 251.5, 252.25);--pico-dropdown-background-color:#fff;--pico-dropdown-border-color:#eff1f4;--pico-dropdown-box-shadow:var(--pico-box-shadow);--pico-dropdown-color:var(--pico-color);--pico-dropdown-hover-background-color:#eff1f4;--pico-loading-spinner-opacity:0.5;--pico-modal-overlay-background-color:rgba(232, 234, 237, 0.75);--pico-progress-background-color:#dfe3eb;--pico-progress-color:var(--pico-primary-background);--pico-tooltip-background-color:var(--pico-contrast-background);--pico-tooltip-color:var(--pico-contrast-inverse);--pico-icon-valid:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(76, 154.5, 137.5)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");--pico-icon-invalid:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(200.25, 79.25, 72.25)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E")}:host(:not([data-theme=dark])) input:is([type=submit],[type=button],[type=reset],[type=checkbox],[type=radio],[type=file]),:root:not([data-theme=dark]) input:is([type=submit],[type=button],[type=reset],[type=checkbox],[type=radio],[type=file]),[data-theme=light] input:is([type=submit],[type=button],[type=reset],[type=checkbox],[type=radio],[type=file]){--pico-form-element-focus-color:var(--pico-primary-focus)}@media only screen and (prefers-color-scheme:dark){:host(:not([data-theme])),:root:not([data-theme]){color-scheme:dark;--pico-background-color:rgb(19, 22.5, 30.5);--pico-color:#c2c7d0;--pico-text-selection-color:rgba(1, 170, 255, 0.1875);--pico-muted-color:#7b8495;--pico-muted-border-color:#202632;--pico-primary:#01aaff;--pico-primary-background:#0172ad;--pico-primary-border:var(--pico-primary-background);--pico-primary-underline:rgba(1, 170, 255, 0.5);--pico-primary-hover:#79c0ff;--pico-primary-hover-background:#017fc0;--pico-primary-hover-border:var(--pico-primary-hover-background);--pico-primary-hover-underline:var(--pico-primary-hover);--pico-primary-focus:rgba(1, 170, 255, 0.375);--pico-primary-inverse:#fff;--pico-secondary:#969eaf;--pico-secondary-background:#525f7a;--pico-secondary-border:var(--pico-secondary-background);--pico-secondary-underline:rgba(150, 158, 175, 0.5);--pico-secondary-hover:#b3b9c5;--pico-secondary-hover-background:#5d6b89;--pico-secondary-hover-border:var(--pico-secondary-hover-background);--pico-secondary-hover-underline:var(--pico-secondary-hover);--pico-secondary-focus:rgba(144, 158, 190, 0.25);--pico-secondary-inverse:#fff;--pico-contrast:#dfe3eb;--pico-contrast-background:#eff1f4;--pico-contrast-border:var(--pico-contrast-background);--pico-contrast-underline:rgba(223, 227, 235, 0.5);--pico-contrast-hover:#fff;--pico-contrast-hover-background:#fff;--pico-contrast-hover-border:var(--pico-contrast-hover-background);--pico-contrast-hover-underline:var(--pico-contrast-hover);--pico-contrast-focus:rgba(207, 213, 226, 0.25);--pico-contrast-inverse:#000;--pico-box-shadow:0.0145rem 0.029rem 0.174rem rgba(7, 8.5, 12, 0.01698),0.0335rem 0.067rem 0.402rem rgba(7, 8.5, 12, 0.024),0.0625rem 0.125rem 0.75rem rgba(7, 8.5, 12, 0.03),0.1125rem 0.225rem 1.35rem rgba(7, 8.5, 12, 0.036),0.2085rem 0.417rem 2.502rem rgba(7, 8.5, 12, 0.04302),0.5rem 1rem 6rem rgba(7, 8.5, 12, 0.06),0 0 0 0.0625rem rgba(7, 8.5, 12, 0.015);--pico-h1-color:#f0f1f3;--pico-h2-color:#e0e3e7;--pico-h3-color:#c2c7d0;--pico-h4-color:#b3b9c5;--pico-h5-color:#a4acba;--pico-h6-color:#8891a4;--pico-mark-background-color:#014063;--pico-mark-color:#fff;--pico-ins-color:#62af9a;--pico-del-color:rgb(205.5, 126, 123);--pico-blockquote-border-color:var(--pico-muted-border-color);--pico-blockquote-footer-color:var(--pico-muted-color);--pico-button-box-shadow:0 0 0 rgba(0, 0, 0, 0);--pico-button-hover-box-shadow:0 0 0 rgba(0, 0, 0, 0);--pico-table-border-color:var(--pico-muted-border-color);--pico-table-row-stripped-background-color:rgba(111, 120, 135, 0.0375);--pico-code-background-color:rgb(26, 30.5, 40.25);--pico-code-color:#8891a4;--pico-code-kbd-background-color:var(--pico-color);--pico-code-kbd-color:var(--pico-background-color);--pico-form-element-background-color:rgb(28, 33, 43.5);--pico-form-element-selected-background-color:#2a3140;--pico-form-element-border-color:#2a3140;--pico-form-element-color:#e0e3e7;--pico-form-element-placeholder-color:#8891a4;--pico-form-element-active-background-color:rgb(26, 30.5, 40.25);--pico-form-element-active-border-color:var(--pico-primary-border);--pico-form-element-focus-color:var(--pico-primary-border);--pico-form-element-disabled-opacity:0.5;--pico-form-element-invalid-border-color:rgb(149.5, 74, 80);--pico-form-element-invalid-active-border-color:rgb(183.25, 63.5, 59);--pico-form-element-invalid-focus-color:var(--pico-form-element-invalid-active-border-color);--pico-form-element-valid-border-color:#2a7b6f;--pico-form-element-valid-active-border-color:rgb(22, 137, 105.5);--pico-form-element-valid-focus-color:var(--pico-form-element-valid-active-border-color);--pico-switch-background-color:#333c4e;--pico-switch-checked-background-color:var(--pico-primary-background);--pico-switch-color:#fff;--pico-switch-thumb-box-shadow:0 0 0 rgba(0, 0, 0, 0);--pico-range-border-color:#202632;--pico-range-active-border-color:#2a3140;--pico-range-thumb-border-color:var(--pico-background-color);--pico-range-thumb-color:var(--pico-secondary-background);--pico-range-thumb-active-color:var(--pico-primary-background);--pico-accordion-border-color:var(--pico-muted-border-color);--pico-accordion-active-summary-color:var(--pico-primary-hover);--pico-accordion-close-summary-color:var(--pico-color);--pico-accordion-open-summary-color:var(--pico-muted-color);--pico-card-background-color:#181c25;--pico-card-border-color:var(--pico-card-background-color);--pico-card-box-shadow:var(--pico-box-shadow);--pico-card-sectioning-background-color:rgb(26, 30.5, 40.25);--pico-dropdown-background-color:#181c25;--pico-dropdown-border-color:#202632;--pico-dropdown-box-shadow:var(--pico-box-shadow);--pico-dropdown-color:var(--pico-color);--pico-dropdown-hover-background-color:#202632;--pico-loading-spinner-opacity:0.5;--pico-modal-overlay-background-color:rgba(7.5, 8.5, 10, 0.75);--pico-progress-background-color:#202632;--pico-progress-color:var(--pico-primary-background);--pico-tooltip-background-color:var(--pico-contrast-background);--pico-tooltip-color:var(--pico-contrast-inverse);--pico-icon-valid:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(42, 123, 111)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");--pico-icon-invalid:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(149.5, 74, 80)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E")}:host(:not([data-theme])) input:is([type=submit],[type=button],[type=reset],[type=checkbox],[type=radio],[type=file]),:root:not([data-theme]) input:is([type=submit],[type=button],[type=reset],[type=checkbox],[type=radio],[type=file]){--pico-form-element-focus-color:var(--pico-primary-focus)}:host(:not([data-theme])) details summary[role=button].contrast:not(.outline)::after,:root:not([data-theme]) details summary[role=button].contrast:not(.outline)::after{filter:brightness(0)}:host(:not([data-theme])) [aria-busy=true]:not(input,select,textarea).contrast:is(button,[type=submit],[type=button],[type=reset],[role=button]):not(.outline)::before,:root:not([data-theme]) [aria-busy=true]:not(input,select,textarea).contrast:is(button,[type=submit],[type=button],[type=reset],[role=button]):not(.outline)::before{filter:brightness(0)}}[data-theme=dark]{color-scheme:dark;--pico-background-color:rgb(19, 22.5, 30.5);--pico-color:#c2c7d0;--pico-text-selection-color:rgba(1, 170, 255, 0.1875);--pico-muted-color:#7b8495;--pico-muted-border-color:#202632;--pico-primary:#01aaff;--pico-primary-background:#0172ad;--pico-primary-border:var(--pico-primary-background);--pico-primary-underline:rgba(1, 170, 255, 0.5);--pico-primary-hover:#79c0ff;--pico-primary-hover-background:#017fc0;--pico-primary-hover-border:var(--pico-primary-hover-background);--pico-primary-hover-underline:var(--pico-primary-hover);--pico-primary-focus:rgba(1, 170, 255, 0.375);--pico-primary-inverse:#fff;--pico-secondary:#969eaf;--pico-secondary-background:#525f7a;--pico-secondary-border:var(--pico-secondary-background);--pico-secondary-underline:rgba(150, 158, 175, 0.5);--pico-secondary-hover:#b3b9c5;--pico-secondary-hover-background:#5d6b89;--pico-secondary-hover-border:var(--pico-secondary-hover-background);--pico-secondary-hover-underline:var(--pico-secondary-hover);--pico-secondary-focus:rgba(144, 158, 190, 0.25);--pico-secondary-inverse:#fff;--pico-contrast:#dfe3eb;--pico-contrast-background:#eff1f4;--pico-contrast-border:var(--pico-contrast-background);--pico-contrast-underline:rgba(223, 227, 235, 0.5);--pico-contrast-hover:#fff;--pico-contrast-hover-background:#fff;--pico-contrast-hover-border:var(--pico-contrast-hover-background);--pico-contrast-hover-underline:var(--pico-contrast-hover);--pico-contrast-focus:rgba(207, 213, 226, 0.25);--pico-contrast-inverse:#000;--pico-box-shadow:0.0145rem 0.029rem 0.174rem rgba(7, 8.5, 12, 0.01698),0.0335rem 0.067rem 0.402rem rgba(7, 8.5, 12, 0.024),0.0625rem 0.125rem 0.75rem rgba(7, 8.5, 12, 0.03),0.1125rem 0.225rem 1.35rem rgba(7, 8.5, 12, 0.036),0.2085rem 0.417rem 2.502rem rgba(7, 8.5, 12, 0.04302),0.5rem 1rem 6rem rgba(7, 8.5, 12, 0.06),0 0 0 0.0625rem rgba(7, 8.5, 12, 0.015);--pico-h1-color:#f0f1f3;--pico-h2-color:#e0e3e7;--pico-h3-color:#c2c7d0;--pico-h4-color:#b3b9c5;--pico-h5-color:#a4acba;--pico-h6-color:#8891a4;--pico-mark-background-color:#014063;--pico-mark-color:#fff;--pico-ins-color:#62af9a;--pico-del-color:rgb(205.5, 126, 123);--pico-blockquote-border-color:var(--pico-muted-border-color);--pico-blockquote-footer-color:var(--pico-muted-color);--pico-button-box-shadow:0 0 0 rgba(0, 0, 0, 0);--pico-button-hover-box-shadow:0 0 0 rgba(0, 0, 0, 0);--pico-table-border-color:var(--pico-muted-border-color);--pico-table-row-stripped-background-color:rgba(111, 120, 135, 0.0375);--pico-code-background-color:rgb(26, 30.5, 40.25);--pico-code-color:#8891a4;--pico-code-kbd-background-color:var(--pico-color);--pico-code-kbd-color:var(--pico-background-color);--pico-form-element-background-color:rgb(28, 33, 43.5);--pico-form-element-selected-background-color:#2a3140;--pico-form-element-border-color:#2a3140;--pico-form-element-color:#e0e3e7;--pico-form-element-placeholder-color:#8891a4;--pico-form-element-active-background-color:rgb(26, 30.5, 40.25);--pico-form-element-active-border-color:var(--pico-primary-border);--pico-form-element-focus-color:var(--pico-primary-border);--pico-form-element-disabled-opacity:0.5;--pico-form-element-invalid-border-color:rgb(149.5, 74, 80);--pico-form-element-invalid-active-border-color:rgb(183.25, 63.5, 59);--pico-form-element-invalid-focus-color:var(--pico-form-element-invalid-active-border-color);--pico-form-element-valid-border-color:#2a7b6f;--pico-form-element-valid-active-border-color:rgb(22, 137, 105.5);--pico-form-element-valid-focus-color:var(--pico-form-element-valid-active-border-color);--pico-switch-background-color:#333c4e;--pico-switch-checked-background-color:var(--pico-primary-background);--pico-switch-color:#fff;--pico-switch-thumb-box-shadow:0 0 0 rgba(0, 0, 0, 0);--pico-range-border-color:#202632;--pico-range-active-border-color:#2a3140;--pico-range-thumb-border-color:var(--pico-background-color);--pico-range-thumb-color:var(--pico-secondary-background);--pico-range-thumb-active-color:var(--pico-primary-background);--pico-accordion-border-color:var(--pico-muted-border-color);--pico-accordion-active-summary-color:var(--pico-primary-hover);--pico-accordion-close-summary-color:var(--pico-color);--pico-accordion-open-summary-color:var(--pico-muted-color);--pico-card-background-color:#181c25;--pico-card-border-color:var(--pico-card-background-color);--pico-card-box-shadow:var(--pico-box-shadow);--pico-card-sectioning-background-color:rgb(26, 30.5, 40.25);--pico-dropdown-background-color:#181c25;--pico-dropdown-border-color:#202632;--pico-dropdown-box-shadow:var(--pico-box-shadow);--pico-dropdown-color:var(--pico-color);--pico-dropdown-hover-background-color:#202632;--pico-loading-spinner-opacity:0.5;--pico-modal-overlay-background-color:rgba(7.5, 8.5, 10, 0.75);--pico-progress-background-color:#202632;--pico-progress-color:var(--pico-primary-background);--pico-tooltip-background-color:var(--pico-contrast-background);--pico-tooltip-color:var(--pico-contrast-inverse);--pico-icon-valid:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(42, 123, 111)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");--pico-icon-invalid:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(149.5, 74, 80)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E")}[data-theme=dark] input:is([type=submit],[type=button],[type=reset],[type=checkbox],[type=radio],[type=file]){--pico-form-element-focus-color:var(--pico-primary-focus)}[data-theme=dark] details summary[role=button].contrast:not(.outline)::after{filter:brightness(0)}[data-theme=dark] [aria-busy=true]:not(input,select,textarea).contrast:is(button,[type=submit],[type=button],[type=reset],[role=button]):not(.outline)::before{filter:brightness(0)}[type=checkbox],[type=radio],[type=range],progress{accent-color:var(--pico-primary)}*,::after,::before{box-sizing:border-box;background-repeat:no-repeat}::after,::before{text-decoration:inherit;vertical-align:inherit}:where(:host),:where(:root){-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background-color:var(--pico-background-color);color:var(--pico-color);font-weight:var(--pico-font-weight);font-size:var(--pico-font-size);line-height:var(--pico-line-height);font-family:var(--pico-font-family);text-underline-offset:var(--pico-text-underline-offset);text-rendering:optimizeLegibility;overflow-wrap:break-word;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{width:100%;margin:0}main{display:block}body>footer,body>header,body>main{padding-block:var(--pico-block-spacing-vertical)}section{margin-bottom:var(--pico-block-spacing-vertical)}.container,.container-fluid{width:100%;margin-right:auto;margin-left:auto;padding-right:var(--pico-spacing);padding-left:var(--pico-spacing)}@media (min-width:576px){.container{max-width:510px;padding-right:0;padding-left:0}}@media (min-width:768px){.container{max-width:700px}}@media (min-width:1024px){.container{max-width:950px}}@media (min-width:1280px){.container{max-width:1200px}}@media (min-width:1536px){.container{max-width:1450px}}.grid{grid-column-gap:var(--pico-grid-column-gap);grid-row-gap:var(--pico-grid-row-gap);display:grid;grid-template-columns:1fr}@media (min-width:768px){.grid{grid-template-columns:repeat(auto-fit,minmax(0%,1fr))}}.grid>*{min-width:0}.overflow-auto{overflow:auto}b,strong{font-weight:bolder}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}address,blockquote,dl,ol,p,pre,table,ul{margin-top:0;margin-bottom:var(--pico-typography-spacing-vertical);color:var(--pico-color);font-style:normal;font-weight:var(--pico-font-weight)}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:var(--pico-typography-spacing-vertical);color:var(--pico-color);font-weight:var(--pico-font-weight);font-size:var(--pico-font-size);line-height:var(--pico-line-height);font-family:var(--pico-font-family)}h1{--pico-color:var(--pico-h1-color)}h2{--pico-color:var(--pico-h2-color)}h3{--pico-color:var(--pico-h3-color)}h4{--pico-color:var(--pico-h4-color)}h5{--pico-color:var(--pico-h5-color)}h6{--pico-color:var(--pico-h6-color)}:where(article,address,blockquote,dl,figure,form,ol,p,pre,table,ul)~:is(h1,h2,h3,h4,h5,h6){margin-top:var(--pico-typography-spacing-top)}p{margin-bottom:var(--pico-typography-spacing-vertical)}hgroup{margin-bottom:var(--pico-typography-spacing-vertical)}hgroup>*{margin-top:0;margin-bottom:0}hgroup>:not(:first-child):last-child{--pico-color:var(--pico-muted-color);--pico-font-weight:unset;font-size:1rem}:where(ol,ul) li{margin-bottom:calc(var(--pico-typography-spacing-vertical) * .25)}:where(dl,ol,ul) :where(dl,ol,ul){margin:0;margin-top:calc(var(--pico-typography-spacing-vertical) * .25)}ul li{list-style:square}mark{padding:.125rem .25rem;background-color:var(--pico-mark-background-color);color:var(--pico-mark-color);vertical-align:baseline}blockquote{display:block;margin:var(--pico-typography-spacing-vertical) 0;padding:var(--pico-spacing);border-right:none;border-left:.25rem solid var(--pico-blockquote-border-color);border-inline-start:0.25rem solid var(--pico-blockquote-border-color);border-inline-end:none}blockquote footer{margin-top:calc(var(--pico-typography-spacing-vertical) * .5);color:var(--pico-blockquote-footer-color)}abbr[title]{border-bottom:1px dotted;text-decoration:none;cursor:help}ins{color:var(--pico-ins-color);text-decoration:none}del{color:var(--pico-del-color)}::-moz-selection{background-color:var(--pico-text-selection-color)}::selection{background-color:var(--pico-text-selection-color)}:where(a:not([role=button])),[role=link]{--pico-color:var(--pico-primary);--pico-background-color:transparent;--pico-underline:var(--pico-primary-underline);outline:0;background-color:var(--pico-background-color);color:var(--pico-color);-webkit-text-decoration:var(--pico-text-decoration);text-decoration:var(--pico-text-decoration);text-decoration-color:var(--pico-underline);text-underline-offset:0.125em;transition:background-color var(--pico-transition),color var(--pico-transition),box-shadow var(--pico-transition),-webkit-text-decoration var(--pico-transition);transition:background-color var(--pico-transition),color var(--pico-transition),text-decoration var(--pico-transition),box-shadow var(--pico-transition);transition:background-color var(--pico-transition),color var(--pico-transition),text-decoration var(--pico-transition),box-shadow var(--pico-transition),-webkit-text-decoration var(--pico-transition)}:where(a:not([role=button])):is([aria-current]:not([aria-current=false]),:hover,:active,:focus),[role=link]:is([aria-current]:not([aria-current=false]),:hover,:active,:focus){--pico-color:var(--pico-primary-hover);--pico-underline:var(--pico-primary-hover-underline);--pico-text-decoration:underline}:where(a:not([role=button])):focus-visible,[role=link]:focus-visible{box-shadow:0 0 0 var(--pico-outline-width) var(--pico-primary-focus)}:where(a:not([role=button])).secondary,[role=link].secondary{--pico-color:var(--pico-secondary);--pico-underline:var(--pico-secondary-underline)}:where(a:not([role=button])).secondary:is([aria-current]:not([aria-current=false]),:hover,:active,:focus),[role=link].secondary:is([aria-current]:not([aria-current=false]),:hover,:active,:focus){--pico-color:var(--pico-secondary-hover);--pico-underline:var(--pico-secondary-hover-underline)}:where(a:not([role=button])).contrast,[role=link].contrast{--pico-color:var(--pico-contrast);--pico-underline:var(--pico-contrast-underline)}:where(a:not([role=button])).contrast:is([aria-current]:not([aria-current=false]),:hover,:active,:focus),[role=link].contrast:is([aria-current]:not([aria-current=false]),:hover,:active,:focus){--pico-color:var(--pico-contrast-hover);--pico-underline:var(--pico-contrast-hover-underline)}a[role=button]{display:inline-block}button{margin:0;overflow:visible;font-family:inherit;text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[role=button],[type=button],[type=file]::file-selector-button,[type=reset],[type=submit],button{--pico-background-color:var(--pico-primary-background);--pico-border-color:var(--pico-primary-border);--pico-color:var(--pico-primary-inverse);--pico-box-shadow:var(--pico-button-box-shadow, 0 0 0 rgba(0, 0, 0, 0));padding:var(--pico-form-element-spacing-vertical) var(--pico-form-element-spacing-horizontal);border:var(--pico-border-width) solid var(--pico-border-color);border-radius:var(--pico-border-radius);outline:0;background-color:var(--pico-background-color);box-shadow:var(--pico-box-shadow);color:var(--pico-color);font-weight:var(--pico-font-weight);font-size:1rem;line-height:var(--pico-line-height);text-align:center;text-decoration:none;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background-color var(--pico-transition),border-color var(--pico-transition),color var(--pico-transition),box-shadow var(--pico-transition)}[role=button]:is(:hover,:active,:focus),[role=button]:is([aria-current]:not([aria-current=false])),[type=button]:is(:hover,:active,:focus),[type=button]:is([aria-current]:not([aria-current=false])),[type=file]::file-selector-button:is(:hover,:active,:focus),[type=file]::file-selector-button:is([aria-current]:not([aria-current=false])),[type=reset]:is(:hover,:active,:focus),[type=reset]:is([aria-current]:not([aria-current=false])),[type=submit]:is(:hover,:active,:focus),[type=submit]:is([aria-current]:not([aria-current=false])),button:is(:hover,:active,:focus),button:is([aria-current]:not([aria-current=false])){--pico-background-color:var(--pico-primary-hover-background);--pico-border-color:var(--pico-primary-hover-border);--pico-box-shadow:var(--pico-button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0));--pico-color:var(--pico-primary-inverse)}[role=button]:focus,[role=button]:is([aria-current]:not([aria-current=false])):focus,[type=button]:focus,[type=button]:is([aria-current]:not([aria-current=false])):focus,[type=file]::file-selector-button:focus,[type=file]::file-selector-button:is([aria-current]:not([aria-current=false])):focus,[type=reset]:focus,[type=reset]:is([aria-current]:not([aria-current=false])):focus,[type=submit]:focus,[type=submit]:is([aria-current]:not([aria-current=false])):focus,button:focus,button:is([aria-current]:not([aria-current=false])):focus{--pico-box-shadow:var(--pico-button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)),0 0 0 var(--pico-outline-width) var(--pico-primary-focus)}[type=button],[type=reset],[type=submit]{margin-bottom:var(--pico-spacing)}:is(button,[type=submit],[type=button],[role=button]).secondary,[type=file]::file-selector-button,[type=reset]{--pico-background-color:var(--pico-secondary-background);--pico-border-color:var(--pico-secondary-border);--pico-color:var(--pico-secondary-inverse);cursor:pointer}:is(button,[type=submit],[type=button],[role=button]).secondary:is([aria-current]:not([aria-current=false]),:hover,:active,:focus),[type=file]::file-selector-button:is([aria-current]:not([aria-current=false]),:hover,:active,:focus),[type=reset]:is([aria-current]:not([aria-current=false]),:hover,:active,:focus){--pico-background-color:var(--pico-secondary-hover-background);--pico-border-color:var(--pico-secondary-hover-border);--pico-color:var(--pico-secondary-inverse)}:is(button,[type=submit],[type=button],[role=button]).secondary:focus,:is(button,[type=submit],[type=button],[role=button]).secondary:is([aria-current]:not([aria-current=false])):focus,[type=file]::file-selector-button:focus,[type=file]::file-selector-button:is([aria-current]:not([aria-current=false])):focus,[type=reset]:focus,[type=reset]:is([aria-current]:not([aria-current=false])):focus{--pico-box-shadow:var(--pico-button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)),0 0 0 var(--pico-outline-width) var(--pico-secondary-focus)}:is(button,[type=submit],[type=button],[role=button]).contrast{--pico-background-color:var(--pico-contrast-background);--pico-border-color:var(--pico-contrast-border);--pico-color:var(--pico-contrast-inverse)}:is(button,[type=submit],[type=button],[role=button]).contrast:is([aria-current]:not([aria-current=false]),:hover,:active,:focus){--pico-background-color:var(--pico-contrast-hover-background);--pico-border-color:var(--pico-contrast-hover-border);--pico-color:var(--pico-contrast-inverse)}:is(button,[type=submit],[type=button],[role=button]).contrast:focus,:is(button,[type=submit],[type=button],[role=button]).contrast:is([aria-current]:not([aria-current=false])):focus{--pico-box-shadow:var(--pico-button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)),0 0 0 var(--pico-outline-width) var(--pico-contrast-focus)}:is(button,[type=submit],[type=button],[role=button]).outline,[type=reset].outline{--pico-background-color:transparent;--pico-color:var(--pico-primary);--pico-border-color:var(--pico-primary)}:is(button,[type=submit],[type=button],[role=button]).outline:is([aria-current]:not([aria-current=false]),:hover,:active,:focus),[type=reset].outline:is([aria-current]:not([aria-current=false]),:hover,:active,:focus){--pico-background-color:transparent;--pico-color:var(--pico-primary-hover);--pico-border-color:var(--pico-primary-hover)}:is(button,[type=submit],[type=button],[role=button]).outline.secondary,[type=reset].outline{--pico-color:var(--pico-secondary);--pico-border-color:var(--pico-secondary)}:is(button,[type=submit],[type=button],[role=button]).outline.secondary:is([aria-current]:not([aria-current=false]),:hover,:active,:focus),[type=reset].outline:is([aria-current]:not([aria-current=false]),:hover,:active,:focus){--pico-color:var(--pico-secondary-hover);--pico-border-color:var(--pico-secondary-hover)}:is(button,[type=submit],[type=button],[role=button]).outline.contrast{--pico-color:var(--pico-contrast);--pico-border-color:var(--pico-contrast)}:is(button,[type=submit],[type=button],[role=button]).outline.contrast:is([aria-current]:not([aria-current=false]),:hover,:active,:focus){--pico-color:var(--pico-contrast-hover);--pico-border-color:var(--pico-contrast-hover)}:where(button,[type=submit],[type=reset],[type=button],[role=button])[disabled],:where(fieldset[disabled]) :is(button,[type=submit],[type=button],[type=reset],[role=button]){opacity:.5;pointer-events:none}:where(table){width:100%;border-collapse:collapse;border-spacing:0;text-indent:0}td,th{padding:calc(var(--pico-spacing)/ 2) var(--pico-spacing);border-bottom:var(--pico-border-width) solid var(--pico-table-border-color);background-color:var(--pico-background-color);color:var(--pico-color);font-weight:var(--pico-font-weight);text-align:left;text-align:start}tfoot td,tfoot th{border-top:var(--pico-border-width) solid var(--pico-table-border-color);border-bottom:0}table.striped tbody tr:nth-child(odd) td,table.striped tbody tr:nth-child(odd) th{background-color:var(--pico-table-row-stripped-background-color)}:where(audio,canvas,iframe,img,svg,video){vertical-align:middle}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}:where(iframe){border-style:none}img{max-width:100%;height:auto;border-style:none}:where(svg:not([fill])){fill:currentColor}svg:not(:host),svg:not(:root){overflow:hidden}code,kbd,pre,samp{font-size:.875em;font-family:var(--pico-font-family)}pre code,pre samp{font-size:inherit;font-family:inherit}pre{-ms-overflow-style:scrollbar;overflow:auto}code,kbd,pre,samp{border-radius:var(--pico-border-radius);background:var(--pico-code-background-color);color:var(--pico-code-color);font-weight:var(--pico-font-weight);line-height:initial}code,kbd,samp{display:inline-block;padding:.375rem}pre{display:block;margin-bottom:var(--pico-spacing);overflow-x:auto}pre>code,pre>samp{display:block;padding:var(--pico-spacing);background:0 0;line-height:var(--pico-line-height)}kbd{background-color:var(--pico-code-kbd-background-color);color:var(--pico-code-kbd-color);vertical-align:baseline}figure{display:block;margin:0;padding:0}figure figcaption{padding:calc(var(--pico-spacing) * .5) 0;color:var(--pico-muted-color)}hr{height:0;margin:var(--pico-typography-spacing-vertical) 0;border:0;border-top:1px solid var(--pico-muted-border-color);color:inherit}[hidden],template{display:none!important}canvas{display:inline-block}input,optgroup,select,textarea{margin:0;font-size:1rem;line-height:var(--pico-line-height);font-family:inherit;letter-spacing:inherit}input{overflow:visible}select{text-transform:none}legend{max-width:100%;padding:0;color:inherit;white-space:normal}textarea{overflow:auto}[type=checkbox],[type=radio]{padding:0}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}::-moz-focus-inner{padding:0;border-style:none}:-moz-focusring{outline:0}:-moz-ui-invalid{box-shadow:none}::-ms-expand{display:none}[type=file],[type=range]{padding:0;border-width:0}input:not([type=checkbox],[type=radio],[type=range]){height:calc(1rem * var(--pico-line-height) + var(--pico-form-element-spacing-vertical) * 2 + var(--pico-border-width) * 2)}fieldset{width:100%;margin:0;margin-bottom:var(--pico-spacing);padding:0;border:0}fieldset legend,label{display:block;margin-bottom:calc(var(--pico-spacing) * .375);color:var(--pico-color);font-weight:var(--pico-form-label-font-weight,var(--pico-font-weight))}fieldset legend{margin-bottom:calc(var(--pico-spacing) * .5)}button[type=submit],input:not([type=checkbox],[type=radio]),select,textarea{width:100%}input:not([type=checkbox],[type=radio],[type=range],[type=file]),select,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:var(--pico-form-element-spacing-vertical) var(--pico-form-element-spacing-horizontal)}input,select,textarea{--pico-background-color:var(--pico-form-element-background-color);--pico-border-color:var(--pico-form-element-border-color);--pico-color:var(--pico-form-element-color);--pico-box-shadow:none;border:var(--pico-border-width) solid var(--pico-border-color);border-radius:var(--pico-border-radius);outline:0;background-color:var(--pico-background-color);box-shadow:var(--pico-box-shadow);color:var(--pico-color);font-weight:var(--pico-font-weight);transition:background-color var(--pico-transition),border-color var(--pico-transition),color var(--pico-transition),box-shadow var(--pico-transition)}:where(select,textarea):not([readonly]):is(:active,:focus),input:not([type=submit],[type=button],[type=reset],[type=checkbox],[type=radio],[readonly]):is(:active,:focus){--pico-background-color:var(--pico-form-element-active-background-color)}:where(select,textarea):not([readonly]):is(:active,:focus),input:not([type=submit],[type=button],[type=reset],[role=switch],[readonly]):is(:active,:focus){--pico-border-color:var(--pico-form-element-active-border-color)}:where(select,textarea):not([readonly]):focus,input:not([type=submit],[type=button],[type=reset],[type=range],[type=file],[readonly]):focus{--pico-box-shadow:0 0 0 var(--pico-outline-width) var(--pico-form-element-focus-color)}:where(fieldset[disabled]) :is(input:not([type=submit],[type=button],[type=reset]),select,textarea),input:not([type=submit],[type=button],[type=reset])[disabled],label[aria-disabled=true],select[disabled],textarea[disabled]{opacity:var(--pico-form-element-disabled-opacity);pointer-events:none}label[aria-disabled=true] input[disabled]{opacity:1}:where(input,select,textarea):not([type=checkbox],[type=radio],[type=date],[type=datetime-local],[type=month],[type=time],[type=week],[type=range])[aria-invalid]{padding-right:calc(var(--pico-form-element-spacing-horizontal) + 1.5rem)!important;padding-left:var(--pico-form-element-spacing-horizontal);padding-inline-start:var(--pico-form-element-spacing-horizontal)!important;padding-inline-end:calc(var(--pico-form-element-spacing-horizontal) + 1.5rem)!important;background-position:center right .75rem;background-size:1rem auto;background-repeat:no-repeat}:where(input,select,textarea):not([type=checkbox],[type=radio],[type=date],[type=datetime-local],[type=month],[type=time],[type=week],[type=range])[aria-invalid=false]:not(select){background-image:var(--pico-icon-valid)}:where(input,select,textarea):not([type=checkbox],[type=radio],[type=date],[type=datetime-local],[type=month],[type=time],[type=week],[type=range])[aria-invalid=true]:not(select){background-image:var(--pico-icon-invalid)}:where(input,select,textarea)[aria-invalid=false]{--pico-border-color:var(--pico-form-element-valid-border-color)}:where(input,select,textarea)[aria-invalid=false]:is(:active,:focus){--pico-border-color:var(--pico-form-element-valid-active-border-color)!important}:where(input,select,textarea)[aria-invalid=false]:is(:active,:focus):not([type=checkbox],[type=radio]){--pico-box-shadow:0 0 0 var(--pico-outline-width) var(--pico-form-element-valid-focus-color)!important}:where(input,select,textarea)[aria-invalid=true]{--pico-border-color:var(--pico-form-element-invalid-border-color)}:where(input,select,textarea)[aria-invalid=true]:is(:active,:focus){--pico-border-color:var(--pico-form-element-invalid-active-border-color)!important}:where(input,select,textarea)[aria-invalid=true]:is(:active,:focus):not([type=checkbox],[type=radio]){--pico-box-shadow:0 0 0 var(--pico-outline-width) var(--pico-form-element-invalid-focus-color)!important}[dir=rtl] :where(input,select,textarea):not([type=checkbox],[type=radio]):is([aria-invalid],[aria-invalid=true],[aria-invalid=false]){background-position:center left .75rem}input::-webkit-input-placeholder,input::placeholder,select:invalid,textarea::-webkit-input-placeholder,textarea::placeholder{color:var(--pico-form-element-placeholder-color);opacity:1}input:not([type=checkbox],[type=radio]),select,textarea{margin-bottom:var(--pico-spacing)}select::-ms-expand{border:0;background-color:transparent}select:not([multiple],[size]){padding-right:calc(var(--pico-form-element-spacing-horizontal) + 1.5rem);padding-left:var(--pico-form-element-spacing-horizontal);padding-inline-start:var(--pico-form-element-spacing-horizontal);padding-inline-end:calc(var(--pico-form-element-spacing-horizontal) + 1.5rem);background-image:var(--pico-icon-chevron);background-position:center right .75rem;background-size:1rem auto;background-repeat:no-repeat}select[multiple] option:checked{background:var(--pico-form-element-selected-background-color);color:var(--pico-form-element-color)}[dir=rtl] select:not([multiple],[size]){background-position:center left .75rem}textarea{display:block;resize:vertical}textarea[aria-invalid]{--pico-icon-height:calc(1rem * var(--pico-line-height) + var(--pico-form-element-spacing-vertical) * 2 + var(--pico-border-width) * 2);background-position:top right .75rem!important;background-size:1rem var(--pico-icon-height)!important}:where(input,select,textarea,fieldset,.grid)+small{display:block;width:100%;margin-top:calc(var(--pico-spacing) * -.75);margin-bottom:var(--pico-spacing);color:var(--pico-muted-color)}:where(input,select,textarea,fieldset,.grid)[aria-invalid=false]+small{color:var(--pico-ins-color)}:where(input,select,textarea,fieldset,.grid)[aria-invalid=true]+small{color:var(--pico-del-color)}label>:where(input,select,textarea){margin-top:calc(var(--pico-spacing) * .25)}label:has([type=checkbox],[type=radio]){width:-moz-fit-content;width:fit-content;cursor:pointer}[type=checkbox],[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:1.25em;height:1.25em;margin-top:-.125em;margin-inline-end:.5em;border-width:var(--pico-border-width);vertical-align:middle;cursor:pointer}[type=checkbox]::-ms-check,[type=radio]::-ms-check{display:none}[type=checkbox]:checked,[type=checkbox]:checked:active,[type=checkbox]:checked:focus,[type=radio]:checked,[type=radio]:checked:active,[type=radio]:checked:focus{--pico-background-color:var(--pico-primary-background);--pico-border-color:var(--pico-primary-border);background-image:var(--pico-icon-checkbox);background-position:center;background-size:.75em auto;background-repeat:no-repeat}[type=checkbox]~label,[type=radio]~label{display:inline-block;margin-bottom:0;cursor:pointer}[type=checkbox]~label:not(:last-of-type),[type=radio]~label:not(:last-of-type){margin-inline-end:1em}[type=checkbox]:indeterminate{--pico-background-color:var(--pico-primary-background);--pico-border-color:var(--pico-primary-border);background-image:var(--pico-icon-minus);background-position:center;background-size:.75em auto;background-repeat:no-repeat}[type=radio]{border-radius:50%}[type=radio]:checked,[type=radio]:checked:active,[type=radio]:checked:focus{--pico-background-color:var(--pico-primary-inverse);border-width:.35em;background-image:none}[type=checkbox][role=switch]{--pico-background-color:var(--pico-switch-background-color);--pico-color:var(--pico-switch-color);width:2.25em;height:1.25em;border:var(--pico-border-width) solid var(--pico-border-color);border-radius:1.25em;background-color:var(--pico-background-color);line-height:1.25em}[type=checkbox][role=switch]:not([aria-invalid]){--pico-border-color:var(--pico-switch-background-color)}[type=checkbox][role=switch]:before{display:block;aspect-ratio:1;height:100%;border-radius:50%;background-color:var(--pico-color);box-shadow:var(--pico-switch-thumb-box-shadow);content:"";transition:margin .1s ease-in-out}[type=checkbox][role=switch]:focus{--pico-background-color:var(--pico-switch-background-color);--pico-border-color:var(--pico-switch-background-color)}[type=checkbox][role=switch]:checked{--pico-background-color:var(--pico-switch-checked-background-color);--pico-border-color:var(--pico-switch-checked-background-color);background-image:none}[type=checkbox][role=switch]:checked::before{margin-inline-start:calc(2.25em - 1.25em)}[type=checkbox][role=switch][disabled]{--pico-background-color:var(--pico-border-color)}[type=checkbox][aria-invalid=false]:checked,[type=checkbox][aria-invalid=false]:checked:active,[type=checkbox][aria-invalid=false]:checked:focus,[type=checkbox][role=switch][aria-invalid=false]:checked,[type=checkbox][role=switch][aria-invalid=false]:checked:active,[type=checkbox][role=switch][aria-invalid=false]:checked:focus{--pico-background-color:var(--pico-form-element-valid-border-color)}[type=checkbox]:checked:active[aria-invalid=true],[type=checkbox]:checked:focus[aria-invalid=true],[type=checkbox]:checked[aria-invalid=true],[type=checkbox][role=switch]:checked:active[aria-invalid=true],[type=checkbox][role=switch]:checked:focus[aria-invalid=true],[type=checkbox][role=switch]:checked[aria-invalid=true]{--pico-background-color:var(--pico-form-element-invalid-border-color)}[type=checkbox][aria-invalid=false]:checked,[type=checkbox][aria-invalid=false]:checked:active,[type=checkbox][aria-invalid=false]:checked:focus,[type=checkbox][role=switch][aria-invalid=false]:checked,[type=checkbox][role=switch][aria-invalid=false]:checked:active,[type=checkbox][role=switch][aria-invalid=false]:checked:focus,[type=radio][aria-invalid=false]:checked,[type=radio][aria-invalid=false]:checked:active,[type=radio][aria-invalid=false]:checked:focus{--pico-border-color:var(--pico-form-element-valid-border-color)}[type=checkbox]:checked:active[aria-invalid=true],[type=checkbox]:checked:focus[aria-invalid=true],[type=checkbox]:checked[aria-invalid=true],[type=checkbox][role=switch]:checked:active[aria-invalid=true],[type=checkbox][role=switch]:checked:focus[aria-invalid=true],[type=checkbox][role=switch]:checked[aria-invalid=true],[type=radio]:checked:active[aria-invalid=true],[type=radio]:checked:focus[aria-invalid=true],[type=radio]:checked[aria-invalid=true]{--pico-border-color:var(--pico-form-element-invalid-border-color)}[type=color]::-webkit-color-swatch-wrapper{padding:0}[type=color]::-moz-focus-inner{padding:0}[type=color]::-webkit-color-swatch{border:0;border-radius:calc(var(--pico-border-radius) * .5)}[type=color]::-moz-color-swatch{border:0;border-radius:calc(var(--pico-border-radius) * .5)}input:not([type=checkbox],[type=radio],[type=range],[type=file]):is([type=date],[type=datetime-local],[type=month],[type=time],[type=week]){--pico-icon-position:0.75rem;--pico-icon-width:1rem;padding-right:calc(var(--pico-icon-width) + var(--pico-icon-position));background-image:var(--pico-icon-date);background-position:center right var(--pico-icon-position);background-size:var(--pico-icon-width) auto;background-repeat:no-repeat}input:not([type=checkbox],[type=radio],[type=range],[type=file])[type=time]{background-image:var(--pico-icon-time)}[type=date]::-webkit-calendar-picker-indicator,[type=datetime-local]::-webkit-calendar-picker-indicator,[type=month]::-webkit-calendar-picker-indicator,[type=time]::-webkit-calendar-picker-indicator,[type=week]::-webkit-calendar-picker-indicator{width:var(--pico-icon-width);margin-right:calc(var(--pico-icon-width) * -1);margin-left:var(--pico-icon-position);opacity:0}@-moz-document url-prefix(){[type=date],[type=datetime-local],[type=month],[type=time],[type=week]{padding-right:var(--pico-form-element-spacing-horizontal)!important;background-image:none!important}}[dir=rtl] :is([type=date],[type=datetime-local],[type=month],[type=time],[type=week]){text-align:right}[type=file]{--pico-color:var(--pico-muted-color);margin-left:calc(var(--pico-outline-width) * -1);padding:calc(var(--pico-form-element-spacing-vertical) * .5) 0;padding-left:var(--pico-outline-width);border:0;border-radius:0;background:0 0}[type=file]::file-selector-button{margin-right:calc(var(--pico-spacing)/ 2);padding:calc(var(--pico-form-element-spacing-vertical) * .5) var(--pico-form-element-spacing-horizontal)}[type=file]:is(:hover,:active,:focus)::file-selector-button{--pico-background-color:var(--pico-secondary-hover-background);--pico-border-color:var(--pico-secondary-hover-border)}[type=file]:focus::file-selector-button{--pico-box-shadow:var(--pico-button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)),0 0 0 var(--pico-outline-width) var(--pico-secondary-focus)}[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:1.25rem;background:0 0}[type=range]::-webkit-slider-runnable-track{width:100%;height:.375rem;border-radius:var(--pico-border-radius);background-color:var(--pico-range-border-color);-webkit-transition:background-color var(--pico-transition),box-shadow var(--pico-transition);transition:background-color var(--pico-transition),box-shadow var(--pico-transition)}[type=range]::-moz-range-track{width:100%;height:.375rem;border-radius:var(--pico-border-radius);background-color:var(--pico-range-border-color);-moz-transition:background-color var(--pico-transition),box-shadow var(--pico-transition);transition:background-color var(--pico-transition),box-shadow var(--pico-transition)}[type=range]::-ms-track{width:100%;height:.375rem;border-radius:var(--pico-border-radius);background-color:var(--pico-range-border-color);-ms-transition:background-color var(--pico-transition),box-shadow var(--pico-transition);transition:background-color var(--pico-transition),box-shadow var(--pico-transition)}[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:1.25rem;height:1.25rem;margin-top:-.4375rem;border:2px solid var(--pico-range-thumb-border-color);border-radius:50%;background-color:var(--pico-range-thumb-color);cursor:pointer;-webkit-transition:background-color var(--pico-transition),transform var(--pico-transition);transition:background-color var(--pico-transition),transform var(--pico-transition)}[type=range]::-moz-range-thumb{-webkit-appearance:none;width:1.25rem;height:1.25rem;margin-top:-.4375rem;border:2px solid var(--pico-range-thumb-border-color);border-radius:50%;background-color:var(--pico-range-thumb-color);cursor:pointer;-moz-transition:background-color var(--pico-transition),transform var(--pico-transition);transition:background-color var(--pico-transition),transform var(--pico-transition)}[type=range]::-ms-thumb{-webkit-appearance:none;width:1.25rem;height:1.25rem;margin-top:-.4375rem;border:2px solid var(--pico-range-thumb-border-color);border-radius:50%;background-color:var(--pico-range-thumb-color);cursor:pointer;-ms-transition:background-color var(--pico-transition),transform var(--pico-transition);transition:background-color var(--pico-transition),transform var(--pico-transition)}[type=range]:active,[type=range]:focus-within{--pico-range-border-color:var(--pico-range-active-border-color);--pico-range-thumb-color:var(--pico-range-thumb-active-color)}[type=range]:active::-webkit-slider-thumb{transform:scale(1.25)}[type=range]:active::-moz-range-thumb{transform:scale(1.25)}[type=range]:active::-ms-thumb{transform:scale(1.25)}input:not([type=checkbox],[type=radio],[type=range],[type=file])[type=search]{padding-inline-start:calc(var(--pico-form-element-spacing-horizontal) + 1.75rem);background-image:var(--pico-icon-search);background-position:center left calc(var(--pico-form-element-spacing-horizontal) + .125rem);background-size:1rem auto;background-repeat:no-repeat}input:not([type=checkbox],[type=radio],[type=range],[type=file])[type=search][aria-invalid]{padding-inline-start:calc(var(--pico-form-element-spacing-horizontal) + 1.75rem)!important;background-position:center left 1.125rem,center right .75rem}input:not([type=checkbox],[type=radio],[type=range],[type=file])[type=search][aria-invalid=false]{background-image:var(--pico-icon-search),var(--pico-icon-valid)}input:not([type=checkbox],[type=radio],[type=range],[type=file])[type=search][aria-invalid=true]{background-image:var(--pico-icon-search),var(--pico-icon-invalid)}[dir=rtl] :where(input):not([type=checkbox],[type=radio],[type=range],[type=file])[type=search]{background-position:center right 1.125rem}[dir=rtl] :where(input):not([type=checkbox],[type=radio],[type=range],[type=file])[type=search][aria-invalid]{background-position:center right 1.125rem,center left .75rem}details{display:block;margin-bottom:var(--pico-spacing)}details summary{line-height:1rem;list-style-type:none;cursor:pointer;transition:color var(--pico-transition)}details summary:not([role]){color:var(--pico-accordion-close-summary-color)}details summary::-webkit-details-marker{display:none}details summary::marker{display:none}details summary::-moz-list-bullet{list-style-type:none}details summary::after{display:block;width:1rem;height:1rem;margin-inline-start:calc(var(--pico-spacing,1rem) * .5);float:right;transform:rotate(-90deg);background-image:var(--pico-icon-chevron);background-position:right center;background-size:1rem auto;background-repeat:no-repeat;content:"";transition:transform var(--pico-transition)}details summary:focus{outline:0}details summary:focus:not([role]){color:var(--pico-accordion-active-summary-color)}details summary:focus-visible:not([role]){outline:var(--pico-outline-width) solid var(--pico-primary-focus);outline-offset:calc(var(--pico-spacing,1rem) * 0.5);color:var(--pico-primary)}details summary[role=button]{width:100%;text-align:left}details summary[role=button]::after{height:calc(1rem * var(--pico-line-height,1.5))}details[open]>summary{margin-bottom:var(--pico-spacing)}details[open]>summary:not([role]):not(:focus){color:var(--pico-accordion-open-summary-color)}details[open]>summary::after{transform:rotate(0)}[dir=rtl] details summary{text-align:right}[dir=rtl] details summary::after{float:left;background-position:left center}article{margin-bottom:var(--pico-block-spacing-vertical);padding:var(--pico-block-spacing-vertical) var(--pico-block-spacing-horizontal);border-radius:var(--pico-border-radius);background:var(--pico-card-background-color);box-shadow:var(--pico-card-box-shadow)}article>footer,article>header{margin-right:calc(var(--pico-block-spacing-horizontal) * -1);margin-left:calc(var(--pico-block-spacing-horizontal) * -1);padding:calc(var(--pico-block-spacing-vertical) * .66) var(--pico-block-spacing-horizontal);background-color:var(--pico-card-sectioning-background-color)}article>header{margin-top:calc(var(--pico-block-spacing-vertical) * -1);margin-bottom:var(--pico-block-spacing-vertical);border-bottom:var(--pico-border-width) solid var(--pico-card-border-color);border-top-right-radius:var(--pico-border-radius);border-top-left-radius:var(--pico-border-radius)}article>footer{margin-top:var(--pico-block-spacing-vertical);margin-bottom:calc(var(--pico-block-spacing-vertical) * -1);border-top:var(--pico-border-width) solid var(--pico-card-border-color);border-bottom-right-radius:var(--pico-border-radius);border-bottom-left-radius:var(--pico-border-radius)}details.dropdown{position:relative;border-bottom:none}details.dropdown>a::after,details.dropdown>button::after,details.dropdown>summary::after{display:block;width:1rem;height:calc(1rem * var(--pico-line-height,1.5));margin-inline-start:.25rem;float:right;transform:rotate(0) translateX(.2rem);background-image:var(--pico-icon-chevron);background-position:right center;background-size:1rem auto;background-repeat:no-repeat;content:""}nav details.dropdown{margin-bottom:0}details.dropdown>summary:not([role]){height:calc(1rem * var(--pico-line-height) + var(--pico-form-element-spacing-vertical) * 2 + var(--pico-border-width) * 2);padding:var(--pico-form-element-spacing-vertical) var(--pico-form-element-spacing-horizontal);border:var(--pico-border-width) solid var(--pico-form-element-border-color);border-radius:var(--pico-border-radius);background-color:var(--pico-form-element-background-color);color:var(--pico-form-element-placeholder-color);line-height:inherit;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background-color var(--pico-transition),border-color var(--pico-transition),color var(--pico-transition),box-shadow var(--pico-transition)}details.dropdown>summary:not([role]):active,details.dropdown>summary:not([role]):focus{border-color:var(--pico-form-element-active-border-color);background-color:var(--pico-form-element-active-background-color)}details.dropdown>summary:not([role]):focus{box-shadow:0 0 0 var(--pico-outline-width) var(--pico-form-element-focus-color)}details.dropdown>summary:not([role]):focus-visible{outline:0}details.dropdown>summary:not([role])[aria-invalid=false]{--pico-form-element-border-color:var(--pico-form-element-valid-border-color);--pico-form-element-active-border-color:var(--pico-form-element-valid-focus-color);--pico-form-element-focus-color:var(--pico-form-element-valid-focus-color)}details.dropdown>summary:not([role])[aria-invalid=true]{--pico-form-element-border-color:var(--pico-form-element-invalid-border-color);--pico-form-element-active-border-color:var(--pico-form-element-invalid-focus-color);--pico-form-element-focus-color:var(--pico-form-element-invalid-focus-color)}nav details.dropdown{display:inline;margin:calc(var(--pico-nav-element-spacing-vertical) * -1) 0}nav details.dropdown>summary::after{transform:rotate(0) translateX(0)}nav details.dropdown>summary:not([role]){height:calc(1rem * var(--pico-line-height) + var(--pico-nav-link-spacing-vertical) * 2);padding:calc(var(--pico-nav-link-spacing-vertical) - var(--pico-border-width) * 2) var(--pico-nav-link-spacing-horizontal)}nav details.dropdown>summary:not([role]):focus-visible{box-shadow:0 0 0 var(--pico-outline-width) var(--pico-primary-focus)}details.dropdown>summary+ul{display:flex;z-index:99;position:absolute;left:0;flex-direction:column;width:100%;min-width:-moz-fit-content;min-width:fit-content;margin:0;margin-top:var(--pico-outline-width);padding:0;border:var(--pico-border-width) solid var(--pico-dropdown-border-color);border-radius:var(--pico-border-radius);background-color:var(--pico-dropdown-background-color);box-shadow:var(--pico-dropdown-box-shadow);color:var(--pico-dropdown-color);white-space:nowrap;opacity:0;transition:opacity var(--pico-transition),transform 0s ease-in-out 1s}details.dropdown>summary+ul[dir=rtl]{right:0;left:auto}details.dropdown>summary+ul li{width:100%;margin-bottom:0;padding:calc(var(--pico-form-element-spacing-vertical) * .5) var(--pico-form-element-spacing-horizontal);list-style:none}details.dropdown>summary+ul li:first-of-type{margin-top:calc(var(--pico-form-element-spacing-vertical) * .5)}details.dropdown>summary+ul li:last-of-type{margin-bottom:calc(var(--pico-form-element-spacing-vertical) * .5)}details.dropdown>summary+ul li a{display:block;margin:calc(var(--pico-form-element-spacing-vertical) * -.5) calc(var(--pico-form-element-spacing-horizontal) * -1);padding:calc(var(--pico-form-element-spacing-vertical) * .5) var(--pico-form-element-spacing-horizontal);overflow:hidden;border-radius:0;color:var(--pico-dropdown-color);text-decoration:none;text-overflow:ellipsis}details.dropdown>summary+ul li a:active,details.dropdown>summary+ul li a:focus,details.dropdown>summary+ul li a:focus-visible,details.dropdown>summary+ul li a:hover,details.dropdown>summary+ul li a[aria-current]:not([aria-current=false]){background-color:var(--pico-dropdown-hover-background-color)}details.dropdown>summary+ul li label{width:100%}details.dropdown>summary+ul li:has(label):hover{background-color:var(--pico-dropdown-hover-background-color)}details.dropdown[open]>summary{margin-bottom:0}details.dropdown[open]>summary+ul{transform:scaleY(1);opacity:1;transition:opacity var(--pico-transition),transform 0s ease-in-out 0s}details.dropdown[open]>summary::before{display:block;z-index:1;position:fixed;width:100vw;height:100vh;inset:0;background:0 0;content:"";cursor:default}label>details.dropdown{margin-top:calc(var(--pico-spacing) * .25)}[role=group],[role=search]{display:inline-flex;position:relative;width:100%;margin-bottom:var(--pico-spacing);border-radius:var(--pico-border-radius);box-shadow:var(--pico-group-box-shadow,0 0 0 transparent);vertical-align:middle;transition:box-shadow var(--pico-transition)}[role=group] input:not([type=checkbox],[type=radio]),[role=group] select,[role=group]>*,[role=search] input:not([type=checkbox],[type=radio]),[role=search] select,[role=search]>*{position:relative;flex:1 1 auto;margin-bottom:0}[role=group] input:not([type=checkbox],[type=radio]):not(:first-child),[role=group] select:not(:first-child),[role=group]>:not(:first-child),[role=search] input:not([type=checkbox],[type=radio]):not(:first-child),[role=search] select:not(:first-child),[role=search]>:not(:first-child){margin-left:0;border-top-left-radius:0;border-bottom-left-radius:0}[role=group] input:not([type=checkbox],[type=radio]):not(:last-child),[role=group] select:not(:last-child),[role=group]>:not(:last-child),[role=search] input:not([type=checkbox],[type=radio]):not(:last-child),[role=search] select:not(:last-child),[role=search]>:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}[role=group] input:not([type=checkbox],[type=radio]):focus,[role=group] select:focus,[role=group]>:focus,[role=search] input:not([type=checkbox],[type=radio]):focus,[role=search] select:focus,[role=search]>:focus{z-index:2}[role=group] [role=button]:not(:first-child),[role=group] [type=button]:not(:first-child),[role=group] [type=reset]:not(:first-child),[role=group] [type=submit]:not(:first-child),[role=group] button:not(:first-child),[role=group] input:not([type=checkbox],[type=radio]):not(:first-child),[role=group] select:not(:first-child),[role=search] [role=button]:not(:first-child),[role=search] [type=button]:not(:first-child),[role=search] [type=reset]:not(:first-child),[role=search] [type=submit]:not(:first-child),[role=search] button:not(:first-child),[role=search] input:not([type=checkbox],[type=radio]):not(:first-child),[role=search] select:not(:first-child){margin-left:calc(var(--pico-border-width) * -1)}[role=group] [role=button],[role=group] [type=button],[role=group] [type=reset],[role=group] [type=submit],[role=group] button,[role=search] [role=button],[role=search] [type=button],[role=search] [type=reset],[role=search] [type=submit],[role=search] button{width:auto}@supports selector(:has(*)){[role=group]:has(button:focus,[type=submit]:focus,[type=button]:focus,[role=button]:focus),[role=search]:has(button:focus,[type=submit]:focus,[type=button]:focus,[role=button]:focus){--pico-group-box-shadow:var(--pico-group-box-shadow-focus-with-button)}[role=group]:has(button:focus,[type=submit]:focus,[type=button]:focus,[role=button]:focus) input:not([type=checkbox],[type=radio]),[role=group]:has(button:focus,[type=submit]:focus,[type=button]:focus,[role=button]:focus) select,[role=search]:has(button:focus,[type=submit]:focus,[type=button]:focus,[role=button]:focus) input:not([type=checkbox],[type=radio]),[role=search]:has(button:focus,[type=submit]:focus,[type=button]:focus,[role=button]:focus) select{border-color:transparent}[role=group]:has(input:not([type=submit],[type=button]):focus,select:focus),[role=search]:has(input:not([type=submit],[type=button]):focus,select:focus){--pico-group-box-shadow:var(--pico-group-box-shadow-focus-with-input)}[role=group]:has(input:not([type=submit],[type=button]):focus,select:focus) [role=button],[role=group]:has(input:not([type=submit],[type=button]):focus,select:focus) [type=button],[role=group]:has(input:not([type=submit],[type=button]):focus,select:focus) [type=submit],[role=group]:has(input:not([type=submit],[type=button]):focus,select:focus) button,[role=search]:has(input:not([type=submit],[type=button]):focus,select:focus) [role=button],[role=search]:has(input:not([type=submit],[type=button]):focus,select:focus) [type=button],[role=search]:has(input:not([type=submit],[type=button]):focus,select:focus) [type=submit],[role=search]:has(input:not([type=submit],[type=button]):focus,select:focus) button{--pico-button-box-shadow:0 0 0 var(--pico-border-width) var(--pico-primary-border);--pico-button-hover-box-shadow:0 0 0 var(--pico-border-width) var(--pico-primary-hover-border)}[role=group] [role=button]:focus,[role=group] [type=button]:focus,[role=group] [type=reset]:focus,[role=group] [type=submit]:focus,[role=group] button:focus,[role=search] [role=button]:focus,[role=search] [type=button]:focus,[role=search] [type=reset]:focus,[role=search] [type=submit]:focus,[role=search] button:focus{box-shadow:none}}[role=search]>:first-child{border-top-left-radius:5rem;border-bottom-left-radius:5rem}[role=search]>:last-child{border-top-right-radius:5rem;border-bottom-right-radius:5rem}[aria-busy=true]:not(input,select,textarea,html,form){white-space:nowrap}[aria-busy=true]:not(input,select,textarea,html,form)::before{display:inline-block;width:1em;height:1em;background-image:var(--pico-icon-loading);background-size:1em auto;background-repeat:no-repeat;content:"";vertical-align:-.125em}[aria-busy=true]:not(input,select,textarea,html,form):not(:empty)::before{margin-inline-end:calc(var(--pico-spacing) * .5)}[aria-busy=true]:not(input,select,textarea,html,form):empty{text-align:center}[role=button][aria-busy=true],[type=button][aria-busy=true],[type=reset][aria-busy=true],[type=submit][aria-busy=true],a[aria-busy=true],button[aria-busy=true]{pointer-events:none}:host,:root{--pico-scrollbar-width:0px}dialog{display:flex;z-index:999;position:fixed;top:0;right:0;bottom:0;left:0;align-items:center;justify-content:center;width:inherit;min-width:100%;height:inherit;min-height:100%;padding:0;border:0;-webkit-backdrop-filter:var(--pico-modal-overlay-backdrop-filter);backdrop-filter:var(--pico-modal-overlay-backdrop-filter);background-color:var(--pico-modal-overlay-background-color);color:var(--pico-color)}dialog>article{width:100%;max-height:calc(100vh - var(--pico-spacing) * 2);margin:var(--pico-spacing);overflow:auto}@media (min-width:576px){dialog>article{max-width:510px}}@media (min-width:768px){dialog>article{max-width:700px}}dialog>article>header>*{margin-bottom:0}dialog>article>header .close,dialog>article>header :is(a,button)[rel=prev]{margin:0;margin-left:var(--pico-spacing);padding:0;float:right}dialog>article>footer{text-align:right}dialog>article>footer [role=button],dialog>article>footer button{margin-bottom:0}dialog>article>footer [role=button]:not(:first-of-type),dialog>article>footer button:not(:first-of-type){margin-left:calc(var(--pico-spacing) * .5)}dialog>article .close,dialog>article :is(a,button)[rel=prev]{display:block;width:1rem;height:1rem;margin-top:calc(var(--pico-spacing) * -1);margin-bottom:var(--pico-spacing);margin-left:auto;border:none;background-image:var(--pico-icon-close);background-position:center;background-size:auto 1rem;background-repeat:no-repeat;background-color:transparent;opacity:.5;transition:opacity var(--pico-transition)}dialog>article .close:is([aria-current]:not([aria-current=false]),:hover,:active,:focus),dialog>article :is(a,button)[rel=prev]:is([aria-current]:not([aria-current=false]),:hover,:active,:focus){opacity:1}dialog:not([open]),dialog[open=false]{display:none}.modal-is-open{padding-right:var(--pico-scrollbar-width,0);overflow:hidden;pointer-events:none;touch-action:none}.modal-is-open dialog{pointer-events:auto;touch-action:auto}:where(.modal-is-opening,.modal-is-closing) dialog,:where(.modal-is-opening,.modal-is-closing) dialog>article{animation-duration:.2s;animation-timing-function:ease-in-out;animation-fill-mode:both}:where(.modal-is-opening,.modal-is-closing) dialog{animation-duration:.8s;animation-name:modal-overlay}:where(.modal-is-opening,.modal-is-closing) dialog>article{animation-delay:.2s;animation-name:modal}.modal-is-closing dialog,.modal-is-closing dialog>article{animation-delay:0s;animation-direction:reverse}@keyframes modal-overlay{from{-webkit-backdrop-filter:none;backdrop-filter:none;background-color:transparent}}@keyframes modal{from{transform:translateY(-100%);opacity:0}}:where(nav li)::before{float:left;content:""}nav,nav ul{display:flex}nav{justify-content:space-between;overflow:visible}nav ol,nav ul{align-items:center;margin-bottom:0;padding:0;list-style:none}nav ol:first-of-type,nav ul:first-of-type{margin-left:calc(var(--pico-nav-element-spacing-horizontal) * -1)}nav ol:last-of-type,nav ul:last-of-type{margin-right:calc(var(--pico-nav-element-spacing-horizontal) * -1)}nav li{display:inline-block;margin:0;padding:var(--pico-nav-element-spacing-vertical) var(--pico-nav-element-spacing-horizontal)}nav li :where(a,[role=link]){display:inline-block;margin:calc(var(--pico-nav-link-spacing-vertical) * -1) calc(var(--pico-nav-link-spacing-horizontal) * -1);padding:var(--pico-nav-link-spacing-vertical) var(--pico-nav-link-spacing-horizontal);border-radius:var(--pico-border-radius)}nav li :where(a,[role=link]):not(:hover){text-decoration:none}nav li [role=button],nav li [type=button],nav li button,nav li input:not([type=checkbox],[type=radio],[type=range],[type=file]),nav li select{height:auto;margin-right:inherit;margin-bottom:0;margin-left:inherit;padding:calc(var(--pico-nav-link-spacing-vertical) - var(--pico-border-width) * 2) var(--pico-nav-link-spacing-horizontal)}nav[aria-label=breadcrumb]{align-items:center;justify-content:start}nav[aria-label=breadcrumb] ul li:not(:first-child){margin-inline-start:var(--pico-nav-link-spacing-horizontal)}nav[aria-label=breadcrumb] ul li a{margin:calc(var(--pico-nav-link-spacing-vertical) * -1) 0;margin-inline-start:calc(var(--pico-nav-link-spacing-horizontal) * -1)}nav[aria-label=breadcrumb] ul li:not(:last-child)::after{display:inline-block;position:absolute;width:calc(var(--pico-nav-link-spacing-horizontal) * 4);margin:0 calc(var(--pico-nav-link-spacing-horizontal) * -1);content:var(--pico-nav-breadcrumb-divider);color:var(--pico-muted-color);text-align:center;text-decoration:none;white-space:nowrap}nav[aria-label=breadcrumb] a[aria-current]:not([aria-current=false]){background-color:transparent;color:inherit;text-decoration:none;pointer-events:none}aside li,aside nav,aside ol,aside ul{display:block}aside li{padding:calc(var(--pico-nav-element-spacing-vertical) * .5) var(--pico-nav-element-spacing-horizontal)}aside li a{display:block}aside li [role=button]{margin:inherit}[dir=rtl] nav[aria-label=breadcrumb] ul li:not(:last-child) ::after{content:"\\"}progress{display:inline-block;vertical-align:baseline}progress{-webkit-appearance:none;-moz-appearance:none;display:inline-block;appearance:none;width:100%;height:.5rem;margin-bottom:calc(var(--pico-spacing) * .5);overflow:hidden;border:0;border-radius:var(--pico-border-radius);background-color:var(--pico-progress-background-color);color:var(--pico-progress-color)}progress::-webkit-progress-bar{border-radius:var(--pico-border-radius);background:0 0}progress[value]::-webkit-progress-value{background-color:var(--pico-progress-color);-webkit-transition:inline-size var(--pico-transition);transition:inline-size var(--pico-transition)}progress::-moz-progress-bar{background-color:var(--pico-progress-color)}@media (prefers-reduced-motion:no-preference){progress:indeterminate{background:var(--pico-progress-background-color) linear-gradient(to right,var(--pico-progress-color) 30%,var(--pico-progress-background-color) 30%) top left/150% 150% no-repeat;animation:progress-indeterminate 1s linear infinite}progress:indeterminate[value]::-webkit-progress-value{background-color:transparent}progress:indeterminate::-moz-progress-bar{background-color:transparent}}@media (prefers-reduced-motion:no-preference){[dir=rtl] progress:indeterminate{animation-direction:reverse}}@keyframes progress-indeterminate{0%{background-position:200% 0}100%{background-position:-200% 0}}[data-tooltip]{position:relative}[data-tooltip]:not(a,button,input,[role=button]){border-bottom:1px dotted;text-decoration:none;cursor:help}[data-tooltip]::after,[data-tooltip]::before,[data-tooltip][data-placement=top]::after,[data-tooltip][data-placement=top]::before{display:block;z-index:99;position:absolute;bottom:100%;left:50%;padding:.25rem .5rem;overflow:hidden;transform:translate(-50%,-.25rem);border-radius:var(--pico-border-radius);background:var(--pico-tooltip-background-color);content:attr(data-tooltip);color:var(--pico-tooltip-color);font-style:normal;font-weight:var(--pico-font-weight);font-size:.875rem;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;opacity:0;pointer-events:none}[data-tooltip]::after,[data-tooltip][data-placement=top]::after{padding:0;transform:translate(-50%,0);border-top:.3rem solid;border-right:.3rem solid transparent;border-left:.3rem solid transparent;border-radius:0;background-color:transparent;content:"";color:var(--pico-tooltip-background-color)}[data-tooltip][data-placement=bottom]::after,[data-tooltip][data-placement=bottom]::before{top:100%;bottom:auto;transform:translate(-50%,.25rem)}[data-tooltip][data-placement=bottom]:after{transform:translate(-50%,-.3rem);border:.3rem solid transparent;border-bottom:.3rem solid}[data-tooltip][data-placement=left]::after,[data-tooltip][data-placement=left]::before{top:50%;right:100%;bottom:auto;left:auto;transform:translate(-.25rem,-50%)}[data-tooltip][data-placement=left]:after{transform:translate(.3rem,-50%);border:.3rem solid transparent;border-left:.3rem solid}[data-tooltip][data-placement=right]::after,[data-tooltip][data-placement=right]::before{top:50%;right:auto;bottom:auto;left:100%;transform:translate(.25rem,-50%)}[data-tooltip][data-placement=right]:after{transform:translate(-.3rem,-50%);border:.3rem solid transparent;border-right:.3rem solid}[data-tooltip]:focus::after,[data-tooltip]:focus::before,[data-tooltip]:hover::after,[data-tooltip]:hover::before{opacity:1}@media (hover:hover) and (pointer:fine){[data-tooltip]:focus::after,[data-tooltip]:focus::before,[data-tooltip]:hover::after,[data-tooltip]:hover::before{--pico-tooltip-slide-to:translate(-50%, -0.25rem);transform:translate(-50%,.75rem);animation-duration:.2s;animation-fill-mode:forwards;animation-name:tooltip-slide;opacity:0}[data-tooltip]:focus::after,[data-tooltip]:hover::after{--pico-tooltip-caret-slide-to:translate(-50%, 0rem);transform:translate(-50%,-.25rem);animation-name:tooltip-caret-slide}[data-tooltip][data-placement=bottom]:focus::after,[data-tooltip][data-placement=bottom]:focus::before,[data-tooltip][data-placement=bottom]:hover::after,[data-tooltip][data-placement=bottom]:hover::before{--pico-tooltip-slide-to:translate(-50%, 0.25rem);transform:translate(-50%,-.75rem);animation-name:tooltip-slide}[data-tooltip][data-placement=bottom]:focus::after,[data-tooltip][data-placement=bottom]:hover::after{--pico-tooltip-caret-slide-to:translate(-50%, -0.3rem);transform:translate(-50%,-.5rem);animation-name:tooltip-caret-slide}[data-tooltip][data-placement=left]:focus::after,[data-tooltip][data-placement=left]:focus::before,[data-tooltip][data-placement=left]:hover::after,[data-tooltip][data-placement=left]:hover::before{--pico-tooltip-slide-to:translate(-0.25rem, -50%);transform:translate(.75rem,-50%);animation-name:tooltip-slide}[data-tooltip][data-placement=left]:focus::after,[data-tooltip][data-placement=left]:hover::after{--pico-tooltip-caret-slide-to:translate(0.3rem, -50%);transform:translate(.05rem,-50%);animation-name:tooltip-caret-slide}[data-tooltip][data-placement=right]:focus::after,[data-tooltip][data-placement=right]:focus::before,[data-tooltip][data-placement=right]:hover::after,[data-tooltip][data-placement=right]:hover::before{--pico-tooltip-slide-to:translate(0.25rem, -50%);transform:translate(-.75rem,-50%);animation-name:tooltip-slide}[data-tooltip][data-placement=right]:focus::after,[data-tooltip][data-placement=right]:hover::after{--pico-tooltip-caret-slide-to:translate(-0.3rem, -50%);transform:translate(-.05rem,-50%);animation-name:tooltip-caret-slide}}@keyframes tooltip-slide{to{transform:var(--pico-tooltip-slide-to);opacity:1}}@keyframes tooltip-caret-slide{50%{opacity:0}to{transform:var(--pico-tooltip-caret-slide-to);opacity:1}}[aria-controls]{cursor:pointer}[aria-disabled=true],[disabled]{cursor:not-allowed}[aria-hidden=false][hidden]{display:initial}[aria-hidden=false][hidden]:not(:focus){clip:rect(0,0,0,0);position:absolute}[tabindex],a,area,button,input,label,select,summary,textarea{-ms-touch-action:manipulation}[dir=rtl]{direction:rtl}@media (prefers-reduced-motion:reduce){:not([aria-busy=true]),:not([aria-busy=true])::after,:not([aria-busy=true])::before{background-attachment:initial!important;animation-duration:1ms!important;animation-delay:-1ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-delay:0s!important;transition-duration:0s!important}}
\ No newline at end of file
diff --git a/2026/assets/fonts/Geist-100.ttf b/2026/assets/fonts/Geist-100.ttf
new file mode 100644
index 0000000..62a2259
Binary files /dev/null and b/2026/assets/fonts/Geist-100.ttf differ
diff --git a/2026/assets/fonts/Geist-200.ttf b/2026/assets/fonts/Geist-200.ttf
new file mode 100644
index 0000000..61f4ae3
Binary files /dev/null and b/2026/assets/fonts/Geist-200.ttf differ
diff --git a/2026/assets/fonts/Geist-300.ttf b/2026/assets/fonts/Geist-300.ttf
new file mode 100644
index 0000000..51e174a
Binary files /dev/null and b/2026/assets/fonts/Geist-300.ttf differ
diff --git a/2026/assets/fonts/Geist-400.ttf b/2026/assets/fonts/Geist-400.ttf
new file mode 100644
index 0000000..cd63299
Binary files /dev/null and b/2026/assets/fonts/Geist-400.ttf differ
diff --git a/2026/assets/fonts/Geist-500.ttf b/2026/assets/fonts/Geist-500.ttf
new file mode 100644
index 0000000..768a572
Binary files /dev/null and b/2026/assets/fonts/Geist-500.ttf differ
diff --git a/2026/assets/fonts/Geist-600.ttf b/2026/assets/fonts/Geist-600.ttf
new file mode 100644
index 0000000..53fdf94
Binary files /dev/null and b/2026/assets/fonts/Geist-600.ttf differ
diff --git a/2026/assets/fonts/Geist-700.ttf b/2026/assets/fonts/Geist-700.ttf
new file mode 100644
index 0000000..aeac4a3
Binary files /dev/null and b/2026/assets/fonts/Geist-700.ttf differ
diff --git a/2026/assets/fonts/Geist-800.ttf b/2026/assets/fonts/Geist-800.ttf
new file mode 100644
index 0000000..b945545
Binary files /dev/null and b/2026/assets/fonts/Geist-800.ttf differ
diff --git a/2026/assets/fonts/Geist-900.ttf b/2026/assets/fonts/Geist-900.ttf
new file mode 100644
index 0000000..056531b
Binary files /dev/null and b/2026/assets/fonts/Geist-900.ttf differ
diff --git a/2026/assets/fonts/GeistMono-100.ttf b/2026/assets/fonts/GeistMono-100.ttf
new file mode 100644
index 0000000..536bbb8
Binary files /dev/null and b/2026/assets/fonts/GeistMono-100.ttf differ
diff --git a/2026/assets/fonts/GeistMono-200.ttf b/2026/assets/fonts/GeistMono-200.ttf
new file mode 100644
index 0000000..ec5f076
Binary files /dev/null and b/2026/assets/fonts/GeistMono-200.ttf differ
diff --git a/2026/assets/fonts/GeistMono-300.ttf b/2026/assets/fonts/GeistMono-300.ttf
new file mode 100644
index 0000000..b9c15c6
Binary files /dev/null and b/2026/assets/fonts/GeistMono-300.ttf differ
diff --git a/2026/assets/fonts/GeistMono-400.ttf b/2026/assets/fonts/GeistMono-400.ttf
new file mode 100644
index 0000000..feabd60
Binary files /dev/null and b/2026/assets/fonts/GeistMono-400.ttf differ
diff --git a/2026/assets/fonts/GeistMono-500.ttf b/2026/assets/fonts/GeistMono-500.ttf
new file mode 100644
index 0000000..f9d34a3
Binary files /dev/null and b/2026/assets/fonts/GeistMono-500.ttf differ
diff --git a/2026/assets/fonts/GeistMono-600.ttf b/2026/assets/fonts/GeistMono-600.ttf
new file mode 100644
index 0000000..be2c9f2
Binary files /dev/null and b/2026/assets/fonts/GeistMono-600.ttf differ
diff --git a/2026/assets/fonts/GeistMono-700.ttf b/2026/assets/fonts/GeistMono-700.ttf
new file mode 100644
index 0000000..162f8f5
Binary files /dev/null and b/2026/assets/fonts/GeistMono-700.ttf differ
diff --git a/2026/assets/fonts/GeistMono-800.ttf b/2026/assets/fonts/GeistMono-800.ttf
new file mode 100644
index 0000000..1c842c9
Binary files /dev/null and b/2026/assets/fonts/GeistMono-800.ttf differ
diff --git a/2026/assets/fonts/GeistMono-900.ttf b/2026/assets/fonts/GeistMono-900.ttf
new file mode 100644
index 0000000..1439979
Binary files /dev/null and b/2026/assets/fonts/GeistMono-900.ttf differ
diff --git a/2026/assets/images/about-bg.png b/2026/assets/images/about-bg.png
new file mode 100644
index 0000000..8b4f700
Binary files /dev/null and b/2026/assets/images/about-bg.png differ
diff --git a/2026/assets/images/about_grid_ci.svg b/2026/assets/images/about_grid_ci.svg
new file mode 100644
index 0000000..3a4b336
--- /dev/null
+++ b/2026/assets/images/about_grid_ci.svg
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/2026/assets/images/about_grid_debug.svg b/2026/assets/images/about_grid_debug.svg
new file mode 100644
index 0000000..b72b8a4
--- /dev/null
+++ b/2026/assets/images/about_grid_debug.svg
@@ -0,0 +1,6 @@
+
+
+
+
+
+
diff --git a/2026/assets/images/about_grid_devx.svg b/2026/assets/images/about_grid_devx.svg
new file mode 100644
index 0000000..90ad046
--- /dev/null
+++ b/2026/assets/images/about_grid_devx.svg
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/2026/assets/images/about_grid_repro.svg b/2026/assets/images/about_grid_repro.svg
new file mode 100644
index 0000000..bc87a69
--- /dev/null
+++ b/2026/assets/images/about_grid_repro.svg
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
diff --git a/2026/assets/images/about_grid_team.svg b/2026/assets/images/about_grid_team.svg
new file mode 100644
index 0000000..ed49aaf
--- /dev/null
+++ b/2026/assets/images/about_grid_team.svg
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/2026/assets/images/android-chrome-192x192.png b/2026/assets/images/android-chrome-192x192.png
new file mode 100644
index 0000000..dfd5347
Binary files /dev/null and b/2026/assets/images/android-chrome-192x192.png differ
diff --git a/2026/assets/images/android-chrome-512x512.png b/2026/assets/images/android-chrome-512x512.png
new file mode 100644
index 0000000..04396ef
Binary files /dev/null and b/2026/assets/images/android-chrome-512x512.png differ
diff --git a/2026/assets/images/anthropic-logo.svg b/2026/assets/images/anthropic-logo.svg
new file mode 100644
index 0000000..7e02ca9
--- /dev/null
+++ b/2026/assets/images/anthropic-logo.svg
@@ -0,0 +1,3 @@
+
+
+
diff --git a/2026/assets/images/apple-touch-icon.png b/2026/assets/images/apple-touch-icon.png
new file mode 100644
index 0000000..61e6564
Binary files /dev/null and b/2026/assets/images/apple-touch-icon.png differ
diff --git a/2026/assets/images/bluesky.svg b/2026/assets/images/bluesky.svg
new file mode 100644
index 0000000..8b48bb5
--- /dev/null
+++ b/2026/assets/images/bluesky.svg
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/2026/assets/images/favicon-16x16.png b/2026/assets/images/favicon-16x16.png
new file mode 100644
index 0000000..4dcebad
Binary files /dev/null and b/2026/assets/images/favicon-16x16.png differ
diff --git a/2026/assets/images/favicon-32x32.png b/2026/assets/images/favicon-32x32.png
new file mode 100644
index 0000000..f40a24d
Binary files /dev/null and b/2026/assets/images/favicon-32x32.png differ
diff --git a/2026/assets/images/favicon.ico b/2026/assets/images/favicon.ico
new file mode 100644
index 0000000..a7a421a
Binary files /dev/null and b/2026/assets/images/favicon.ico differ
diff --git a/2026/assets/images/flox_logo.svg b/2026/assets/images/flox_logo.svg
new file mode 100644
index 0000000..ac8b4f8
--- /dev/null
+++ b/2026/assets/images/flox_logo.svg
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
diff --git a/2026/assets/images/generated/about-bg-1024w.png b/2026/assets/images/generated/about-bg-1024w.png
new file mode 100644
index 0000000..729e716
Binary files /dev/null and b/2026/assets/images/generated/about-bg-1024w.png differ
diff --git a/2026/assets/images/generated/about-bg-1024w.webp b/2026/assets/images/generated/about-bg-1024w.webp
new file mode 100644
index 0000000..7a3c736
Binary files /dev/null and b/2026/assets/images/generated/about-bg-1024w.webp differ
diff --git a/2026/assets/images/generated/about-bg-480w.png b/2026/assets/images/generated/about-bg-480w.png
new file mode 100644
index 0000000..06d526c
Binary files /dev/null and b/2026/assets/images/generated/about-bg-480w.png differ
diff --git a/2026/assets/images/generated/about-bg-480w.webp b/2026/assets/images/generated/about-bg-480w.webp
new file mode 100644
index 0000000..ec9563a
Binary files /dev/null and b/2026/assets/images/generated/about-bg-480w.webp differ
diff --git a/2026/assets/images/generated/about-bg-768w.png b/2026/assets/images/generated/about-bg-768w.png
new file mode 100644
index 0000000..a157207
Binary files /dev/null and b/2026/assets/images/generated/about-bg-768w.png differ
diff --git a/2026/assets/images/generated/about-bg-768w.webp b/2026/assets/images/generated/about-bg-768w.webp
new file mode 100644
index 0000000..8a219d3
Binary files /dev/null and b/2026/assets/images/generated/about-bg-768w.webp differ
diff --git a/2026/assets/images/generated/about-bg.webp b/2026/assets/images/generated/about-bg.webp
new file mode 100644
index 0000000..c359fe9
Binary files /dev/null and b/2026/assets/images/generated/about-bg.webp differ
diff --git a/2026/assets/images/generated/android-chrome-192x192.png b/2026/assets/images/generated/android-chrome-192x192.png
new file mode 100644
index 0000000..2f9868a
Binary files /dev/null and b/2026/assets/images/generated/android-chrome-192x192.png differ
diff --git a/2026/assets/images/generated/android-chrome-512x512.png b/2026/assets/images/generated/android-chrome-512x512.png
new file mode 100644
index 0000000..7f7b8df
Binary files /dev/null and b/2026/assets/images/generated/android-chrome-512x512.png differ
diff --git a/2026/assets/images/generated/apple-touch-icon.png b/2026/assets/images/generated/apple-touch-icon.png
new file mode 100644
index 0000000..2f9e175
Binary files /dev/null and b/2026/assets/images/generated/apple-touch-icon.png differ
diff --git a/2026/assets/images/generated/favicon-16x16.png b/2026/assets/images/generated/favicon-16x16.png
new file mode 100644
index 0000000..d582f97
Binary files /dev/null and b/2026/assets/images/generated/favicon-16x16.png differ
diff --git a/2026/assets/images/generated/favicon-32x32.png b/2026/assets/images/generated/favicon-32x32.png
new file mode 100644
index 0000000..0e83187
Binary files /dev/null and b/2026/assets/images/generated/favicon-32x32.png differ
diff --git a/2026/assets/images/generated/favicon.ico b/2026/assets/images/generated/favicon.ico
new file mode 100644
index 0000000..6fa2c6d
Binary files /dev/null and b/2026/assets/images/generated/favicon.ico differ
diff --git a/2026/assets/images/generated/grid.webp b/2026/assets/images/generated/grid.webp
new file mode 100644
index 0000000..4f4072c
Binary files /dev/null and b/2026/assets/images/generated/grid.webp differ
diff --git a/2026/assets/images/generated/hero-moon.webp b/2026/assets/images/generated/hero-moon.webp
new file mode 100644
index 0000000..a90fd9c
Binary files /dev/null and b/2026/assets/images/generated/hero-moon.webp differ
diff --git a/2026/assets/images/generated/location-bg-1024w.png b/2026/assets/images/generated/location-bg-1024w.png
new file mode 100644
index 0000000..9dab474
Binary files /dev/null and b/2026/assets/images/generated/location-bg-1024w.png differ
diff --git a/2026/assets/images/generated/location-bg-1024w.webp b/2026/assets/images/generated/location-bg-1024w.webp
new file mode 100644
index 0000000..ed79453
Binary files /dev/null and b/2026/assets/images/generated/location-bg-1024w.webp differ
diff --git a/2026/assets/images/generated/location-bg-480w.png b/2026/assets/images/generated/location-bg-480w.png
new file mode 100644
index 0000000..a698e0c
Binary files /dev/null and b/2026/assets/images/generated/location-bg-480w.png differ
diff --git a/2026/assets/images/generated/location-bg-480w.webp b/2026/assets/images/generated/location-bg-480w.webp
new file mode 100644
index 0000000..4426dc0
Binary files /dev/null and b/2026/assets/images/generated/location-bg-480w.webp differ
diff --git a/2026/assets/images/generated/location-bg-768w.png b/2026/assets/images/generated/location-bg-768w.png
new file mode 100644
index 0000000..e049a1e
Binary files /dev/null and b/2026/assets/images/generated/location-bg-768w.png differ
diff --git a/2026/assets/images/generated/location-bg-768w.webp b/2026/assets/images/generated/location-bg-768w.webp
new file mode 100644
index 0000000..4c4e027
Binary files /dev/null and b/2026/assets/images/generated/location-bg-768w.webp differ
diff --git a/2026/assets/images/generated/location-bg.webp b/2026/assets/images/generated/location-bg.webp
new file mode 100644
index 0000000..9dec5fe
Binary files /dev/null and b/2026/assets/images/generated/location-bg.webp differ
diff --git a/2026/assets/images/generated/speaker_kelsey_hightower.webp b/2026/assets/images/generated/speaker_kelsey_hightower.webp
new file mode 100644
index 0000000..c348998
Binary files /dev/null and b/2026/assets/images/generated/speaker_kelsey_hightower.webp differ
diff --git a/2026/assets/images/generated/speaker_priya_ananthasankar.webp b/2026/assets/images/generated/speaker_priya_ananthasankar.webp
new file mode 100644
index 0000000..3ccfaa4
Binary files /dev/null and b/2026/assets/images/generated/speaker_priya_ananthasankar.webp differ
diff --git a/2026/assets/images/generated/speaker_rok_garbas.webp b/2026/assets/images/generated/speaker_rok_garbas.webp
new file mode 100644
index 0000000..cda710c
Binary files /dev/null and b/2026/assets/images/generated/speaker_rok_garbas.webp differ
diff --git a/2026/assets/images/generated/speaker_ron_efroni.webp b/2026/assets/images/generated/speaker_ron_efroni.webp
new file mode 100644
index 0000000..491ba23
Binary files /dev/null and b/2026/assets/images/generated/speaker_ron_efroni.webp differ
diff --git a/2026/assets/images/generated/speaker_stormy_peters.webp b/2026/assets/images/generated/speaker_stormy_peters.webp
new file mode 100644
index 0000000..2e98336
Binary files /dev/null and b/2026/assets/images/generated/speaker_stormy_peters.webp differ
diff --git a/2026/assets/images/grid.png b/2026/assets/images/grid.png
new file mode 100644
index 0000000..075324d
Binary files /dev/null and b/2026/assets/images/grid.png differ
diff --git a/2026/assets/images/hero-moon.png b/2026/assets/images/hero-moon.png
new file mode 100644
index 0000000..828ca05
Binary files /dev/null and b/2026/assets/images/hero-moon.png differ
diff --git a/2026/assets/images/location-bg.png b/2026/assets/images/location-bg.png
new file mode 100644
index 0000000..e1c263c
Binary files /dev/null and b/2026/assets/images/location-bg.png differ
diff --git a/2026/assets/images/mastodon.svg b/2026/assets/images/mastodon.svg
new file mode 100644
index 0000000..2ea0ca8
--- /dev/null
+++ b/2026/assets/images/mastodon.svg
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/2026/assets/images/numtide_logo.svg b/2026/assets/images/numtide_logo.svg
new file mode 100644
index 0000000..11b515d
--- /dev/null
+++ b/2026/assets/images/numtide_logo.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2026/assets/images/planetnix-logo-small.png b/2026/assets/images/planetnix-logo-small.png
new file mode 100644
index 0000000..36b6eb7
Binary files /dev/null and b/2026/assets/images/planetnix-logo-small.png differ
diff --git a/2026/assets/images/planetnix-logo.svg b/2026/assets/images/planetnix-logo.svg
new file mode 100644
index 0000000..1371db0
--- /dev/null
+++ b/2026/assets/images/planetnix-logo.svg
@@ -0,0 +1,46 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/2026/assets/images/socal-nug-logo.svg b/2026/assets/images/socal-nug-logo.svg
new file mode 100644
index 0000000..350a15b
--- /dev/null
+++ b/2026/assets/images/socal-nug-logo.svg
@@ -0,0 +1,171 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/2026/assets/images/speaker_kelsey_hightower.png b/2026/assets/images/speaker_kelsey_hightower.png
new file mode 100644
index 0000000..842f890
Binary files /dev/null and b/2026/assets/images/speaker_kelsey_hightower.png differ
diff --git a/2026/assets/images/speaker_priya_ananthasankar.png b/2026/assets/images/speaker_priya_ananthasankar.png
new file mode 100644
index 0000000..0cd44ef
Binary files /dev/null and b/2026/assets/images/speaker_priya_ananthasankar.png differ
diff --git a/2026/assets/images/speaker_rok_garbas.png b/2026/assets/images/speaker_rok_garbas.png
new file mode 100644
index 0000000..c827e18
Binary files /dev/null and b/2026/assets/images/speaker_rok_garbas.png differ
diff --git a/2026/assets/images/speaker_ron_efroni.png b/2026/assets/images/speaker_ron_efroni.png
new file mode 100644
index 0000000..a743d53
Binary files /dev/null and b/2026/assets/images/speaker_ron_efroni.png differ
diff --git a/2026/assets/images/speaker_stormy_peters.png b/2026/assets/images/speaker_stormy_peters.png
new file mode 100644
index 0000000..a503e27
Binary files /dev/null and b/2026/assets/images/speaker_stormy_peters.png differ
diff --git a/2026/assets/images/sponsor_expressvpn.svg b/2026/assets/images/sponsor_expressvpn.svg
new file mode 100644
index 0000000..fff2efa
--- /dev/null
+++ b/2026/assets/images/sponsor_expressvpn.svg
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/2026/assets/images/sponsor_pdt.svg b/2026/assets/images/sponsor_pdt.svg
new file mode 100644
index 0000000..71518e0
--- /dev/null
+++ b/2026/assets/images/sponsor_pdt.svg
@@ -0,0 +1,4 @@
+
+
+
diff --git a/2026/assets/images/twitter.svg b/2026/assets/images/twitter.svg
new file mode 100644
index 0000000..2719cb2
--- /dev/null
+++ b/2026/assets/images/twitter.svg
@@ -0,0 +1,3 @@
+
+
+
diff --git a/2026/index.html b/2026/index.html
new file mode 100644
index 0000000..882c2dc
--- /dev/null
+++ b/2026/index.html
@@ -0,0 +1,1208 @@
+
+
+
+
+
+
+
+ PlanetNix 2026
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Where Nix Builders Come Together
+
March 5th-6th, 2026 @ Pasadena, CA
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Speakers
+
+
+
+
+
+
+
Kelsey Hightower
+
Distinguished Engineer
+
+
+
+
+
+
+
Ron Efroni
+
CEO at Flox
+
+
+
+
+
+
+
Priya Ananthasankar
+
Principal Software Engineer at Microsoft
+
+
+
+
+
+
+
Stormy Peters
+
Head of Open Source Strategy & Marketing at AWS
+
+
+
+
+
+
+
Rok Garbas
+
Nix Ecosystem Lead at Flox
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ About
+
+
+ PlanetNix 2026 is a two-day conference for people building things
+ with Nix: solo devs, open-source contributors, and teams using Nix
+ in real production environments.
+
+
+ We’re gathering in Pasadena (co-located with SCALE 23x )
+ for talks, workshops, and lots of hands-on learning. Expect
+ practical content: how people build and ship with Nix, how they
+ debug it, how they onboard teams, and all the magical, brilliant
+ stuff Nix gets used
+ for.
+
+
+
+
+
+
Team and Company Adoption Stories
+
+
+
+
CI pipelines, Hydra,
Build farms, Caches
+
+
+
+
Onboarding and Developer Experience
+
+
+
+
Debugging, Tricks, Hacks & Adventures
+
+
+
+
Reproducible builds,
Cross-compiling, Flakes, CA derivations
+
+
+
+
+
+
+
+
+
+
+
+
+
+ location
+
+
March 5th-6th, 2026
+
+
Pasadena Convention Center
+
330 E Green St
+
Pasadena, CA 91101
+
+
+
+
+
+
+
+
+ FAQ
+
+
+
+ What is the Community Table CFP? Who should apply to exhibit
+ at PlanetNix?
+
+
+ The Community Table CFP is an application-based opportunity to
+ exhibit a Nix-related open source project or technology at Planet
+ Nix — at no cost. We’re looking for teams or individuals with
+ something concrete to show (demos, tools, workflows, or live
+ projects) who want to spark technical conversations, share their
+ work, and get feedback from a highly engaged Nix audience.
+ Exhibitors are selected by the PlanetNix organizing team based
+ on relevance to the Nix ecosystem, quality of the submission, and
+ contribution to a vibrant event space. Accepted exhibitors
+ receive a table with power and inclusion on the PlanetNix
+ website; any additional AV or special requirements are handled by
+ the exhibitor.
+
You can apply here .
+
+
+
+
+ How to sign up?
+
+
+ PlanetNix is part of the
+
SCALE conference .
+ Either a full SCALE Pass or Expo Pass will provide entrance to
+ PlanetNix.
+
+
+
+
+ Do I need to prepare anything?
+
+
+ As you prepare for the event we'd like to encourage all attendees
+ to download any important repositories to their local machines
+ and prepare their API-Keys beforehand as we will get rate limited
+ by some organizations. The Nix manual shows how to configure nix
+ to use with access-tokens. For GitHub for example we recommend a
+ fine-grained token with no extra account permissions, as it will
+ be only used for authentication purposes.
+
+
+
+
+ I am interested in helping? What can I do?
+
+
+ We are actively looking for volunteers for before, during and
+ after the event. If you are interested, please reach out to
+
planetnix@flox.dev
+
+
+
+
+ Will there be video recording?
+
+
+
+
+
+ This website is broken! Can I fix it?
+
+
+
+
+
+ What is a Unconf?
+
+
+ An Unconference is all about you taking the lead. No predetermined
+ schedules or set topics. Have a burning question or exciting idea
+ about Nix? Grab a group, snag a table, and dive into the
+ conversation. This is your time to connect with like-minded
+ individuals and discuss whatever you're passionate about.
+
+
+
+
+ How do I get to PlanetNix?
+
+
+
+ The best information can be found on the Visit
+ Pasadena website.
+
+
+ By plane
+
+ If you are coming from LAX, it is possible to reach the convention center via public transportation in approximately 90 minutes.
+ Head to Terminal B Lower Level and take the FlyAway Bus to Union
+ Station . Take the Metro A Line to Memorial Park Station or
+ Del Mar Station, both stations are 0.4 miles away from the
+ convention center and about a ten minute walk.
+
+ By car
+
+ There are a number of ways to get to the convention center by
+ car. See the Visit
+ Pasadena site for the most accurate information. There are
+ several parking structures around the convention center with a
+ daily flat rate of $15.
+
+ By metro
+
+ Head to your nearest metro stop and take the metro to Union
+ Station . Take the Metro A Line to Memorial Park Station or
+ Del Mar Station, both stations are 0.4 miles away from the
+ convention center and about a ten minute walk.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/2026/robots.txt b/2026/robots.txt
new file mode 100644
index 0000000..609ff3b
--- /dev/null
+++ b/2026/robots.txt
@@ -0,0 +1,4 @@
+User-agent: *
+Disallow:
+Allow: /
+Sitemap: https://planetnix.com/2026/sitemap.xml
diff --git a/2026/site.webmanifest b/2026/site.webmanifest
new file mode 100644
index 0000000..ec37a3d
--- /dev/null
+++ b/2026/site.webmanifest
@@ -0,0 +1,19 @@
+{
+ "name": "PlanetNix 2026",
+ "short_name": "PlanetNix 2026",
+ "icons": [
+ {
+ "src": "assets/images/generated/android-chrome-192x192.png",
+ "sizes": "192x192",
+ "type": "image/png"
+ },
+ {
+ "src": "assets/images/generated/android-chrome-512x512.png",
+ "sizes": "512x512",
+ "type": "image/png"
+ }
+ ],
+ "theme_color": "#1B1B1B",
+ "background_color": "#1B1B1B",
+ "display": "standalone"
+}
diff --git a/2026/sitemap.xml b/2026/sitemap.xml
new file mode 100644
index 0000000..b1d02ea
--- /dev/null
+++ b/2026/sitemap.xml
@@ -0,0 +1,6 @@
+
+
+
+ https://planetnix.com/2026/
+
+
diff --git a/2026/speakers.html b/2026/speakers.html
new file mode 100644
index 0000000..6a44062
--- /dev/null
+++ b/2026/speakers.html
@@ -0,0 +1,360 @@
+
+
+
+
+
+
+
+ Speakers - PlanetNix 2026
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Where Nix Builders Come Together
+
March 5th-6th, 2026 @ Pasadena, CA
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/agenda.html b/agenda.html
index 2c53d3c..98bd832 100644
--- a/agenda.html
+++ b/agenda.html
@@ -5,8 +5,8 @@
- Agenda - PlanetNix 2026
-
+ Agenda - PlanetNix 2027
+
@@ -276,14 +276,13 @@
-
- -->
@@ -300,36 +299,43 @@
Where Nix Builders Come Together
- March 5th-6th, 2026 @ Pasadena, CA
+ April 1st-2nd, 2027 @ Pasadena, CA
-
+
-
+
Agenda
+
The 2027 agenda will be published once the schedule is set. Stay tuned!
+
@@ -349,7 +355,7 @@
Agenda
diff --git a/index.html b/index.html
index b1f5595..db79ad9 100644
--- a/index.html
+++ b/index.html
@@ -5,8 +5,8 @@
- PlanetNix 2026
-
+ PlanetNix 2027
+
@@ -801,14 +801,13 @@
-
- -->
@@ -823,122 +822,56 @@
Where Nix Builders Come Together
- March 5th-6th, 2026 @ Pasadena, CA
+ April 1st-2nd, 2027 @ Pasadena, CA
-
+
-
+
Speakers
-
-
-
-
-
-
-
Kelsey Hightower
-
Distinguished Engineer
-
-
-
-
-
-
-
Ron Efroni
-
CEO at Flox
-
-
-
-
-
-
-
Priya Ananthasankar
-
Principal Software Engineer at Microsoft
-
-
-
-
-
-
-
Stormy Peters
-
Head of Open Source Strategy & Marketing at AWS
-
-
-
-
-
-
-
Rok Garbas
-
Nix Ecosystem Lead at Flox
-
-
-
-
See All Speakers
+
+
Our 2027 speaker line-up will be announced soon. Stay tuned!
-
+
diff --git a/site.webmanifest b/site.webmanifest
index ffc3318..1ef4436 100644
--- a/site.webmanifest
+++ b/site.webmanifest
@@ -1,6 +1,6 @@
{
- "name": "",
- "short_name": "",
+ "name": "PlanetNix 2027",
+ "short_name": "PlanetNix 2027",
"icons": [
{
"src": "/assets/images/generated/android-chrome-192x192.png",
diff --git a/sitemap.xml b/sitemap.xml
index 0ff2aad..94f1b96 100644
--- a/sitemap.xml
+++ b/sitemap.xml
@@ -3,6 +3,9 @@
https://planetnix.com/sitemap-current.xml
+
+ https://planetnix.com/2026/sitemap.xml
+
https://planetnix.com/2025/sitemap.xml
diff --git a/speakers.html b/speakers.html
index 6a44062..40defb0 100644
--- a/speakers.html
+++ b/speakers.html
@@ -5,8 +5,8 @@
- Speakers - PlanetNix 2026
-
+ Speakers - PlanetNix 2027
+
@@ -276,14 +276,13 @@
-
- -->
Where Nix Builders Come Together
- March 5th-6th, 2026 @ Pasadena, CA
+ April 1st-2nd, 2027 @ Pasadena, CA
-
+
-
+
Speakers
+
Our 2027 speaker line-up will be announced soon. Stay tuned!
+
@@ -349,7 +355,7 @@
Speakers