@font-face{font-family:Fraunces;font-style:italic;font-weight:400;font-display:swap;src:url(../media/50a3f1070da3c6cc-s.0xr8au8udm.h9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:italic;font-weight:400;font-display:swap;src:url(../media/b887d91685b8c137-s.0z~ry.rim0raw.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:italic;font-weight:400;font-display:swap;src:url(../media/3c7c6164b2587822-s.p.0duriy8536ewt.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:italic;font-weight:600;font-display:swap;src:url(../media/50a3f1070da3c6cc-s.0xr8au8udm.h9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:italic;font-weight:600;font-display:swap;src:url(../media/b887d91685b8c137-s.0z~ry.rim0raw.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:italic;font-weight:600;font-display:swap;src:url(../media/3c7c6164b2587822-s.p.0duriy8536ewt.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:italic;font-weight:900;font-display:swap;src:url(../media/50a3f1070da3c6cc-s.0xr8au8udm.h9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:italic;font-weight:900;font-display:swap;src:url(../media/b887d91685b8c137-s.0z~ry.rim0raw.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:italic;font-weight:900;font-display:swap;src:url(../media/3c7c6164b2587822-s.p.0duriy8536ewt.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1e219c03c996efbd-s.0vlx5hthn2t7i.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.0fu677rwbv-.g.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/03bda585a99c6450-s.p.0zzh68k1~whtc.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1e219c03c996efbd-s.0vlx5hthn2t7i.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.0fu677rwbv-.g.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/03bda585a99c6450-s.p.0zzh68k1~whtc.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:900;font-display:swap;src:url(../media/1e219c03c996efbd-s.0vlx5hthn2t7i.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:900;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.0fu677rwbv-.g.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:900;font-display:swap;src:url(../media/03bda585a99c6450-s.p.0zzh68k1~whtc.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_8b4e3ed9-module__PzP1yG__className{font-family:Fraunces,Fraunces Fallback}.fraunces_8b4e3ed9-module__PzP1yG__variable{--font-display:"Fraunces", "Fraunces Fallback"}
@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/c3cb240f9c892514-s.163v2i5cux7-c.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/c3cb240f9c892514-s.163v2i5cux7-c.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/c3cb240f9c892514-s.163v2i5cux7-c.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/c3cb240f9c892514-s.163v2i5cux7-c.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/c3cb240f9c892514-s.163v2i5cux7-c.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans Fallback;src:local(Arial);ascent-override:94.9%;descent-override:29.66%;line-gap-override:0.0%;size-adjust:104.53%}.dm_sans_c44f255c-module__OaDEMa__className{font-family:DM Sans,DM Sans Fallback;font-style:normal}.dm_sans_c44f255c-module__OaDEMa__variable{--font-body:"DM Sans", "DM Sans Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/04c5164763c40239-s.0h-nw9_c8d~-_.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/26f284dcc38c84c0-s.10hk62x1-0d9n.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/7e7f32a39836f228-s.0bmyfaahigzds.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fa39153a3fc630ba-s.0-0ft90hthv3~.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/6a5386fd6038edbe-s.16fk0g~ypa53a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/051742360c26797e-s.p.0f97p8c3305p~.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/04c5164763c40239-s.0h-nw9_c8d~-_.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/26f284dcc38c84c0-s.10hk62x1-0d9n.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/7e7f32a39836f228-s.0bmyfaahigzds.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/fa39153a3fc630ba-s.0-0ft90hthv3~.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/6a5386fd6038edbe-s.16fk0g~ypa53a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/051742360c26797e-s.p.0f97p8c3305p~.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/04c5164763c40239-s.0h-nw9_c8d~-_.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/26f284dcc38c84c0-s.10hk62x1-0d9n.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/7e7f32a39836f228-s.0bmyfaahigzds.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/fa39153a3fc630ba-s.0-0ft90hthv3~.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/6a5386fd6038edbe-s.16fk0g~ypa53a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/051742360c26797e-s.p.0f97p8c3305p~.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_572feda9-module__lBkgzq__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_572feda9-module__lBkgzq__variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
:root{--s-bg:#fef9ef;--s-ink:#1d1830;--s-accent:#ff7a59;--s-accent-2:#3aa6ff;--s-accent-3:#1cc97c;--s-accent-4:#ffd166;--s-accent-5:#a55cff;--s-surface:#fff;--s-surface-warm:#ffe5d4;--s-surface-cool:#d4f0ff;--s-surface-purple:#e5e0ff;--s-surface-green:#d4ffd9;--s-surface-yellow:#fff5b0;--s-radius-lg:24px;--s-radius-md:16px;--s-radius-pill:99px;--s-shadow:6px 6px 0 var(--s-ink);--s-shadow-lg:8px 8px 0 var(--s-ink);--s-shadow-sm:3px 3px 0 var(--s-ink);--s-border:2.5px solid var(--s-ink);--s-border-thin:2px solid var(--s-ink);--s-display:var(--font-display), "Fraunces", Georgia, serif;--s-body:var(--font-body), "DM Sans", system-ui, sans-serif;--s-mono:var(--font-mono), "JetBrains Mono", ui-monospace, monospace;--s-density:1}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--s-bg);color:var(--s-ink);font-family:var(--s-body);background-image:radial-gradient(circle at 15% 12%,#ffe5d4 0,#0000 28%),radial-gradient(circle at 85% 6%,#d4f0ff 0,#0000 30%),radial-gradient(circle at 75% 65%,#e5e0ff 0,#0000 26%),radial-gradient(circle at 10% 80%,#fff0d4 0,#0000 22%);min-height:100vh;font-size:16px;line-height:1.5;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;background-image:radial-gradient(#1d183012 1.1px,#0000 1.1px);background-size:22px 22px;position:fixed;inset:0}a{color:inherit}.s-display{font-family:var(--s-display);letter-spacing:-.025em;font-weight:800}.s-mono{font-family:var(--s-mono)}.s-shell{z-index:1;max-width:1280px;margin:0 auto;padding:0 32px;position:relative}.s-nav{justify-content:space-between;align-items:center;padding:24px 0 8px;display:flex}.s-logo{align-items:center;gap:14px;text-decoration:none;display:flex}.s-logomark{background:var(--s-accent);border:var(--s-border);width:48px;height:48px;box-shadow:4px 4px 0 var(--s-ink);border-radius:14px;place-items:center;transition:transform .3s cubic-bezier(.4,1.8,.4,1);display:grid;transform:rotate(-6deg)}.s-logo:hover .s-logomark{transform:rotate(6deg)scale(1.05)}.s-logomark svg{width:28px;height:28px}.s-brand-name{font-family:var(--s-display);letter-spacing:-.025em;font-size:24px;font-weight:900;line-height:1}.s-brand-sub{color:#1d18308c;font-size:12px;font-family:var(--s-mono);margin-top:2px}.s-navlinks{gap:4px;display:flex}.s-navlinks a,.s-navlinks button{font:inherit;border-radius:var(--s-radius-pill);cursor:pointer;color:var(--s-ink);background:0 0;border:0;padding:9px 16px;font-size:13px;font-weight:600;text-decoration:none;display:inline-block}.s-navlinks a.active,.s-navlinks button.active{background:var(--s-ink);color:var(--s-bg)}.s-navlinks a:hover:not(.active),.s-navlinks button:hover:not(.active){background:#1d183014}.s-nav-right{align-items:center;gap:10px;display:flex}.s-bm-count{background:var(--s-surface);border:var(--s-border-thin);width:38px;height:38px;box-shadow:3px 3px 0 var(--s-ink);cursor:pointer;border-radius:50%;place-items:center;font-size:14px;font-weight:700;display:grid;position:relative}.s-bm-count.has:after{content:"";background:var(--s-accent);border:1.5px solid var(--s-ink);border-radius:50%;width:8px;height:8px;position:absolute;top:4px;right:4px}.s-cta{border-radius:var(--s-radius-pill);background:var(--s-ink);color:var(--s-bg);border:var(--s-border);box-shadow:4px 4px 0 var(--s-accent);font:inherit;cursor:pointer;align-items:center;gap:8px;padding:12px 22px;font-size:13px;font-weight:700;text-decoration:none;transition:transform .12s,box-shadow .12s;display:flex}.s-cta:hover{box-shadow:5px 5px 0 var(--s-accent);transform:translate(-1px,-1px)}.s-cta:active{box-shadow:1px 1px 0 var(--s-accent);transform:translate(2px,2px)}.s-hero{grid-template-columns:1.05fr 1fr;align-items:center;gap:60px;padding:60px 0 40px;display:grid}.s-tag{border-radius:var(--s-radius-pill);background:var(--s-surface);border:var(--s-border);box-shadow:3px 3px 0 var(--s-ink);align-items:center;gap:9px;margin-bottom:28px;padding:8px 16px;font-size:12px;font-weight:700;display:inline-flex;transform:rotate(-1deg)}.s-tag .dot{background:var(--s-accent-3);border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite s-pulse;box-shadow:0 0 0 3px #1cc97c2e}@keyframes s-pulse{0%,to{box-shadow:0 0 0 3px #1cc97c2e}50%{box-shadow:0 0 0 6px #1cc97c00}}.s-headline{font-family:var(--s-display);letter-spacing:-.035em;margin:0 0 24px;font-size:clamp(56px,9.5vw,116px);font-weight:900;line-height:.9}.s-headline .scribble{color:var(--s-accent);display:inline-block;position:relative}.s-sub{color:#1d1830b8;max-width:480px;margin:0 0 32px;font-size:18px;line-height:1.55}.s-hero-cta{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.s-btn-pri,.s-btn-sec{border-radius:var(--s-radius-pill);font:inherit;cursor:pointer;align-items:center;gap:10px;padding:16px 26px;font-size:15px;font-weight:800;text-decoration:none;transition:transform .12s,box-shadow .12s;display:inline-flex}.s-btn-pri{background:var(--s-accent);color:var(--s-ink);border:var(--s-border);box-shadow:var(--s-shadow)}.s-btn-sec{color:var(--s-ink);border:var(--s-border);background:0 0}.s-btn-pri:hover,.s-btn-sec:hover{transform:translate(-2px,-2px)}.s-btn-pri:hover{box-shadow:8px 8px 0 var(--s-ink)}.s-btn-sec:hover{background:var(--s-surface);box-shadow:3px 3px 0 var(--s-ink)}.s-btn-pri:active,.s-btn-sec:active{transform:translate(2px,2px);box-shadow:0 0 0 var(--s-ink)!important}.s-stickers{height:520px;position:relative}.s-sticker{border:var(--s-border);border-radius:var(--s-radius-lg);box-shadow:var(--s-shadow);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:14px;padding:18px 22px;transition:transform .25s cubic-bezier(.4,1.6,.4,1);display:flex;position:absolute}.s-sticker:hover{box-shadow:9px 9px 0 var(--s-ink);z-index:10;transform:rotate(0)translate(-3px,-3px)scale(1.04)!important}.s-sticker .emoji{flex-shrink:0;font-size:44px;line-height:1}.s-sticker .lbl{font-size:15px;font-weight:800}.s-sticker .num{font-family:var(--s-mono);color:#1d183099;margin-top:2px;font-size:11px}@keyframes s-bob1{0%,to{transform:rotate(-4deg)translateY(0)}50%{transform:rotate(-4deg)translateY(-6px)}}@keyframes s-bob2{0%,to{transform:rotate(3deg)translateY(0)}50%{transform:rotate(3deg)translateY(-8px)}}@keyframes s-bob3{0%,to{transform:rotate(2deg)translateY(0)}50%{transform:rotate(2deg)translateY(-5px)}}@keyframes s-bob4{0%,to{transform:rotate(-2deg)translateY(0)}50%{transform:rotate(-2deg)translateY(-7px)}}@keyframes s-bob5{0%,to{transform:rotate(4deg)translateY(0)}50%{transform:rotate(4deg)translateY(-6px)}}.s-stats{background:var(--s-ink);border-radius:var(--s-radius-lg);color:var(--s-bg);border:var(--s-border);box-shadow:var(--s-shadow-lg);grid-template-columns:repeat(4,1fr);gap:0;margin-top:30px;padding:28px;display:grid}.s-stat{text-align:center;border-right:1.5px dashed #fef9ef38;padding:8px 0}.s-stat:last-child{border-right:0}.s-stat-n{font-family:var(--s-display);color:var(--s-accent);font-size:clamp(36px,4vw,52px);font-weight:900;line-height:1}.s-stat-l{letter-spacing:.14em;text-transform:uppercase;color:#fef9efbf;margin-top:6px;font-size:11px}.s-section{margin-top:80px}.s-section-h{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px;display:flex}.s-section-title{font-family:var(--s-display);letter-spacing:-.03em;margin:0;font-size:clamp(40px,5vw,64px);font-weight:900;line-height:.95}.s-section-title em{color:var(--s-accent);font-style:italic}.s-section-side{color:#1d183099;text-align:right;max-width:360px;font-size:14px}.s-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:22px;display:flex}.s-search{border-radius:var(--s-radius-pill);background:var(--s-surface);border:var(--s-border);min-width:280px;box-shadow:4px 4px 0 var(--s-ink);flex:1;align-items:center;gap:12px;padding:14px 22px;transition:box-shadow .12s,transform .12s;display:flex}.s-search:focus-within{box-shadow:5px 5px 0 var(--s-ink);transform:translate(-1px,-1px)}.s-search input{color:var(--s-ink);font:inherit;background:0 0;border:0;outline:0;flex:1;font-size:16px;font-weight:500}.s-search input::placeholder{color:#1d183066}.s-search-icon{font-size:18px}.s-search-key{font-family:var(--s-mono);background:var(--s-bg);border:1.5px solid var(--s-ink);border-radius:5px;padding:3px 7px;font-size:11px}.s-sort{border-radius:var(--s-radius-pill);background:var(--s-surface);border:var(--s-border);box-shadow:3px 3px 0 var(--s-ink);font:inherit;cursor:pointer;align-items:center;gap:8px;padding:12px 18px;font-size:13px;font-weight:600;display:flex}.s-chips{flex-wrap:wrap;gap:10px;margin-bottom:24px;display:flex}.s-chip{border-radius:var(--s-radius-pill);background:var(--s-surface);border:var(--s-border-thin);font:inherit;cursor:pointer;align-items:center;gap:8px;padding:9px 18px;font-size:13px;font-weight:600;transition:transform .12s,box-shadow .12s;display:flex}.s-chip:hover{box-shadow:2px 2px 0 var(--s-ink);transform:translate(-1px,-1px)}.s-chip.active{background:var(--s-accent);box-shadow:3px 3px 0 var(--s-ink)}.s-chip.active.bm{background:var(--s-accent-4)}.s-chip .ct{font-family:var(--s-mono);opacity:.7;font-size:11px;font-weight:700}.s-chip .ic{font-size:14px}.s-gallery.grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.s-gallery.list{flex-direction:column;gap:12px;display:flex}.s-gallery.masonry{columns:3;column-gap:22px}.s-gallery.masonry .s-card{break-inside:avoid;margin-bottom:22px}.s-card{background:var(--s-surface);border:var(--s-border);border-radius:var(--s-radius-lg);box-shadow:var(--s-shadow);cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;padding:24px;transition:transform .15s,box-shadow .15s;display:block;position:relative}.s-card:hover{box-shadow:9px 9px 0 var(--s-ink);z-index:2;transform:translate(-3px,-3px)}.s-card:active{box-shadow:2px 2px 0 var(--s-ink);transform:translate(2px,2px)}.s-gallery .s-card:nth-child(5n+1){background:var(--s-surface-warm)}.s-gallery .s-card:nth-child(5n+2){background:var(--s-surface-cool)}.s-gallery .s-card:nth-child(5n+3){background:var(--s-surface-purple)}.s-gallery .s-card:nth-child(5n+4){background:var(--s-surface-yellow)}.s-gallery .s-card:nth-child(5n+5){background:var(--s-surface-green)}.s-card-emoji{margin-bottom:14px;font-size:44px;line-height:1;transition:transform .25s cubic-bezier(.4,1.6,.4,1);display:inline-block}.s-card:hover .s-card-emoji{transform:rotate(-8deg)scale(1.1)}.s-card-h{justify-content:space-between;align-items:start;gap:10px;margin-bottom:8px;display:flex}.s-card-name{font-family:var(--s-display);letter-spacing:-.015em;margin:0;font-size:22px;font-weight:800;line-height:1.1}.s-card-blurb{color:#1d1830b8;margin:0 0 16px;font-size:14px;line-height:1.5}.s-card-meta{flex-wrap:wrap;gap:8px;display:flex}.s-meta-pill{border-radius:var(--s-radius-pill);background:var(--s-ink);color:var(--s-bg);font-family:var(--s-mono);letter-spacing:.02em;padding:4px 11px;font-size:10px;font-weight:700}.s-meta-pill.dep{color:var(--s-ink);border:1.5px solid var(--s-ink);background:#1d183014}.s-card-bm{background:var(--s-surface);border:var(--s-border-thin);cursor:pointer;width:34px;height:34px;color:var(--s-ink);border-radius:50%;flex-shrink:0;place-items:center;font-size:15px;line-height:1;transition:transform .12s,background .12s;display:grid}.s-card-bm:hover{transform:scale(1.08)rotate(-6deg)}.s-card-bm.on{background:var(--s-accent);transform:rotate(-6deg)}.s-card.minimal{padding:16px 20px}.s-card.minimal .s-card-emoji,.s-card.minimal .s-card-blurb{display:none}.s-card.minimal .s-card-h{margin-bottom:10px}.s-card.image{padding-top:12px}.s-card.image .s-img{border-radius:var(--s-radius-md);border:var(--s-border-thin);background-image:repeating-linear-gradient(135deg,#1d18300d 0 6px,#0000 6px 12px);place-items:center;height:140px;margin:0 0 18px;font-size:60px;display:grid;position:relative;overflow:hidden}.s-gallery .s-card:nth-child(5n+1) .s-img{background-color:#ff7a5940}.s-gallery .s-card:nth-child(5n+2) .s-img{background-color:#3aa6ff38}.s-gallery .s-card:nth-child(5n+3) .s-img{background-color:#a55cff38}.s-gallery .s-card:nth-child(5n+4) .s-img{background-color:#ffd1664d}.s-gallery .s-card:nth-child(5n+5) .s-img{background-color:#1cc97c38}.s-gallery.list .s-card{grid-template-columns:56px 1fr auto auto auto;align-items:center;gap:20px;padding:14px 22px;display:grid}.s-gallery.list .s-card-emoji{margin:0;font-size:30px}.s-gallery.list .s-card-h{margin:0;display:contents}.s-gallery.list .s-card-name{font-size:18px}.s-gallery.list .s-card-blurb{display:none}.s-gallery.list .s-card-meta{gap:6px}.s-gallery.list .s-card-bm{margin-left:4px}.s-empty{text-align:center;border-radius:var(--s-radius-lg);border:2.5px dashed #1d183040;padding:60px 32px}.s-empty .em{font-size:56px}.s-empty h3{font-family:var(--s-display);margin:16px 0 6px;font-size:24px;font-weight:800}.s-empty p{color:#1d1830a6;margin:0}.s-paths{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.s-path{border:var(--s-border);box-shadow:var(--s-shadow);background:var(--s-surface);border-radius:28px;padding:30px;transition:transform .15s,box-shadow .15s;position:relative;overflow:hidden}.s-path:hover{box-shadow:8px 8px 0 var(--s-ink);transform:translate(-2px,-2px)}.s-path:first-child{background:var(--s-surface-warm)}.s-path:nth-child(2){background:var(--s-surface-cool)}.s-path:nth-child(3){background:var(--s-surface-purple)}.s-path-head{justify-content:space-between;align-items:start;gap:14px;margin-bottom:14px;display:flex}.s-path-tag{border-radius:var(--s-radius-pill);background:var(--s-ink);color:var(--s-bg);font-family:var(--s-mono);letter-spacing:.1em;text-transform:uppercase;padding:5px 13px;font-size:10px;font-weight:700;display:inline-block}.s-path-num{font-family:var(--s-display);color:#1d18302e;font-size:64px;font-weight:900;line-height:.8}.s-path-name{font-family:var(--s-display);letter-spacing:-.025em;margin:0 0 12px;font-size:34px;font-weight:900;line-height:1}.s-path-desc{color:#1d1830bf;margin:0 0 22px;font-size:14px;line-height:1.55}.s-path-list{flex-direction:column;gap:8px;display:flex}.s-path-item{border:1.5px solid var(--s-ink);cursor:pointer;width:100%;color:inherit;text-align:left;background:#ffffffb3;border-radius:14px;align-items:center;gap:12px;padding:10px 14px;font-family:inherit;font-size:14px;font-weight:600;transition:background .12s;display:flex}.s-path-item:hover{background:#fff}.s-path-item i{font-family:var(--s-mono);color:#1d183080;width:16px;font-size:11px;font-style:normal}.s-path-item .em{margin-left:auto;font-size:18px}.s-contributors{grid-template-columns:repeat(6,1fr);gap:14px;display:grid}.s-contrib{text-align:center;background:var(--s-surface);border:var(--s-border-thin);box-shadow:4px 4px 0 var(--s-ink);border-radius:18px;padding:16px 12px;transition:transform .25s cubic-bezier(.4,1.6,.4,1)}.s-contrib:nth-child(7n+2){transform:rotate(-1.5deg)}.s-contrib:nth-child(7n+3){transform:rotate(1.5deg)}.s-contrib:nth-child(7n+4){transform:rotate(-1deg)}.s-contrib:nth-child(7n+5){transform:rotate(1deg)}.s-contrib:nth-child(7n+6){transform:rotate(-2deg)}.s-contrib:nth-child(7n){transform:rotate(.5deg)}.s-contrib:hover{box-shadow:6px 6px 0 var(--s-ink);z-index:5;transform:rotate(0)translate(-2px,-2px)scale(1.04)}.s-contrib.lead{text-align:left;background:var(--s-accent);box-shadow:var(--s-shadow-lg);border:var(--s-border);grid-area:span 2/span 3;padding:36px;transform:rotate(-1.5deg)}.s-contrib.lead:hover{box-shadow:11px 11px 0 var(--s-ink);transform:rotate(0)translate(-3px,-3px)}.s-avatar{background:linear-gradient(135deg, #ffd4b0, var(--s-accent));border:var(--s-border-thin);width:56px;height:56px;color:var(--s-ink);border-radius:50%;place-items:center;margin:0 auto 10px;font-size:20px;font-weight:900;display:grid}.s-contrib:nth-child(7n+2) .s-avatar{background:linear-gradient(135deg, #d4f0ff, var(--s-accent-2))}.s-contrib:nth-child(7n+3) .s-avatar{background:linear-gradient(135deg, #e5d4ff, var(--s-accent-5))}.s-contrib:nth-child(7n+4) .s-avatar{background:linear-gradient(135deg, #d4ffd9, var(--s-accent-3))}.s-contrib:nth-child(7n+5) .s-avatar{background:linear-gradient(135deg, #fff5b0, var(--s-accent-4))}.s-contrib.lead .s-avatar{background:var(--s-bg);width:84px;height:84px;margin:0 0 20px;font-size:32px}.s-cname{font-size:13px;font-weight:800;line-height:1.2}.s-chandle{font-family:var(--s-mono);color:#1d18308c;margin-top:3px;font-size:10px}.s-commits{font-family:var(--s-mono);color:var(--s-ink);border-radius:var(--s-radius-pill);background:#1d18300f;margin-top:6px;padding:3px 8px;font-size:10px;font-weight:700;display:inline-block}.s-contrib.lead .s-cname{font-size:32px;font-family:var(--s-display);letter-spacing:-.025em;margin-bottom:4px;font-weight:900;line-height:1}.s-contrib.lead .s-chandle{font-size:14px}.s-contrib.lead .s-quote{margin-top:20px;font-size:16px;font-weight:500;line-height:1.5}.s-contrib.lead .s-badge{background:var(--s-ink);color:var(--s-bg);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--s-radius-pill);margin-top:18px;padding:7px 16px;font-size:11px;font-weight:800;display:inline-block}.s-more{justify-content:center;margin-top:28px;display:flex}.s-more button,.s-more a{border-radius:var(--s-radius-pill);background:var(--s-surface);border:var(--s-border);box-shadow:var(--s-shadow);font:inherit;cursor:pointer;color:var(--s-ink);padding:14px 28px;font-size:14px;font-weight:700;text-decoration:none;transition:transform .12s,box-shadow .12s}.s-more button:hover,.s-more a:hover{box-shadow:8px 8px 0 var(--s-ink);transform:translate(-2px,-2px)}.s-cta-banner{background:var(--s-ink);color:var(--s-bg);border:var(--s-border);box-shadow:var(--s-shadow-lg);border-radius:28px;grid-template-columns:1.4fr 1fr;align-items:center;gap:40px;margin-top:80px;padding:50px 56px;display:grid;position:relative;overflow:hidden}.s-cta-banner:before{content:"";background:var(--s-accent);opacity:.18;border-radius:50%;width:200px;height:200px;position:absolute;bottom:-40px;right:-40px}.s-cta-banner h2{font-family:var(--s-display);letter-spacing:-.025em;margin:0 0 12px;font-size:44px;font-weight:900;line-height:1}.s-cta-banner h2 em{color:var(--s-accent);font-style:italic}.s-cta-banner p{color:#fef9efc7;max-width:480px;margin:0 0 22px;font-size:16px;line-height:1.55}.s-cta-banner-codes{font-family:var(--s-mono);flex-direction:column;gap:10px;font-size:13px;display:flex}.s-cta-banner-code{color:var(--s-bg);background:#fef9ef14;border:1.5px dashed #fef9ef40;border-radius:10px;align-items:center;gap:12px;padding:12px 16px;display:flex}.s-cta-banner-code span:first-child{color:var(--s-accent)}.s-cta-banner-code .copy{cursor:pointer;opacity:.6;margin-left:auto;font-size:12px}.s-footer{color:#1d183099;border-top:2px dashed #1d18304d;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:60px 0 0;padding:32px 0;font-size:13px;display:flex}.s-heart{color:var(--s-accent)}.s-footer-links{gap:18px;display:flex}.s-footer a{color:inherit;text-decoration:none}.s-footer a:hover{color:var(--s-ink);text-decoration:underline}.s-modal-bg{z-index:1000;background:#1d183080;place-items:center;padding:24px;animation:.15s s-fade;display:grid;position:fixed;inset:0;overflow-y:auto}@keyframes s-fade{0%{opacity:0}}.s-modal{background:var(--s-surface);border:var(--s-border);box-shadow:12px 12px 0 var(--s-accent);border-radius:28px;width:100%;max-width:560px;margin:auto;padding:36px;animation:.25s cubic-bezier(.4,1.6,.4,1) s-pop;position:relative}@keyframes s-pop{0%{opacity:0;transform:translateY(20px)scale(.96)}}.s-modal-emoji{margin-bottom:18px;font-size:72px}.s-modal h2{font-family:var(--s-display);letter-spacing:-.025em;margin:0 0 8px;font-size:40px;font-weight:900;line-height:1}.s-modal-blurb{color:#1d1830bf;margin:0 0 22px;font-size:16px;line-height:1.55}.s-modal-meta{flex-wrap:wrap;gap:8px;margin-bottom:24px;display:flex}.s-modal-code{font-family:var(--s-mono);background:var(--s-ink);color:var(--s-bg);border-radius:12px;margin-bottom:20px;padding:16px;font-size:13px}.s-modal-actions{flex-wrap:wrap;gap:12px;display:flex}.s-modal-x{background:var(--s-bg);border:var(--s-border-thin);cursor:pointer;width:36px;height:36px;box-shadow:2px 2px 0 var(--s-ink);border-radius:50%;place-items:center;font-size:18px;font-weight:700;display:grid;position:absolute;top:16px;right:16px}@media (max-width:960px){.s-hero{grid-template-columns:1fr}.s-stickers{height:420px}.s-gallery.grid,.s-gallery.masonry{columns:2;grid-template-columns:repeat(2,1fr)!important}.s-paths{grid-template-columns:1fr}.s-contributors{grid-template-columns:repeat(3,1fr)}.s-contrib.lead{grid-area:span 1/span 3}.s-cta-banner{grid-template-columns:1fr;padding:36px}}@media (max-width:640px){.s-shell{padding:0 18px}.s-navlinks{display:none}.s-stats{grid-template-columns:repeat(2,1fr);gap:14px}.s-stat{padding:12px 0;border-right:0!important}.s-gallery.grid,.s-gallery.masonry{columns:1;grid-template-columns:1fr!important}.s-contributors{grid-template-columns:repeat(2,1fr)}.s-contrib.lead{grid-column:span 2}}.s-meta-pill.run{background:var(--s-accent);color:var(--s-ink);border-color:var(--s-ink);font-weight:700}.s-meta-pill.play{background:var(--s-accent-3);color:var(--s-ink);font-weight:700}.s-try{border:var(--s-border-thin);background:var(--s-bg);box-shadow:var(--s-shadow-sm);font-family:var(--s-body);border-radius:16px;margin-top:4px;margin-bottom:22px;padding:20px}.s-try-h{font-family:var(--s-display);color:var(--s-ink);margin-bottom:14px;font-size:18px;font-weight:800}.s-try-form{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px 14px;margin-bottom:14px;display:grid}.s-try-field{color:var(--s-ink);flex-direction:column;gap:4px;font-size:13px;display:flex}.s-try-field>span{font-weight:700}.s-try-field input,.s-try-field select{border:var(--s-border-thin);color:var(--s-ink);font:inherit;background:#fff;border-radius:10px;padding:9px 12px;font-size:14px}.s-try-field input:focus,.s-try-field select:focus{box-shadow:0 0 0 3px var(--s-accent);outline:none}.s-try-run{margin-bottom:12px}.s-try-run:disabled{opacity:.55;cursor:wait}.s-try-error{border:var(--s-border-thin);color:#6e1414;background:#ffe1e1;border-color:#b34d4d;border-radius:10px;margin:0 0 12px;padding:10px 14px;font-size:13px}.s-try-out{background:var(--s-surface-warm);border:var(--s-border-thin);color:var(--s-ink);border-radius:12px;margin-top:6px;padding:14px 16px}.s-try-out pre,.s-try-story pre{white-space:pre-wrap;font:14px/1.55 var(--s-body);color:var(--s-ink);margin:0}.s-ttt-grid{grid-template-rows:repeat(3,78px);grid-template-columns:repeat(3,78px);justify-content:center;gap:8px;margin:6px auto 4px;display:grid}.s-ttt-cell{border:var(--s-border-thin);font:800 38px/1 var(--s-display);color:var(--s-ink);cursor:pointer;box-shadow:var(--s-shadow-sm);background:#fff;border-radius:14px;transition:transform 80ms}.s-ttt-cell:not(:disabled):hover{box-shadow:5px 5px 0 var(--s-ink);transform:translate(-2px,-2px)}.s-ttt-cell:disabled{cursor:default}.s-ttt-cell [data-mark=X]{color:var(--s-accent)}.s-ttt-cell [data-mark=O]{color:#2f7a4f}.s-hg-row{align-items:flex-end;gap:14px;margin-bottom:14px;display:flex}.s-hg-word{flex-wrap:wrap;justify-content:center;gap:8px;margin:6px 0 10px;display:flex}.s-hg-slot{border-bottom:3px solid var(--s-ink);min-width:28px;font:800 26px/1 var(--s-display);color:var(--s-ink);justify-content:center;align-items:center;padding:6px 4px;display:inline-flex}.s-hg-meta{color:var(--s-ink);justify-content:space-between;margin-bottom:10px;font-size:13px;display:flex}.s-hg-wrong{color:#b34d4d;letter-spacing:2px;font-weight:700}.s-hg-keys{grid-template-columns:repeat(13,1fr);gap:5px;display:grid}.s-hg-key{border:var(--s-border-thin);color:var(--s-ink);font:700 13px/1 var(--s-body);cursor:pointer;background:#fff;border-radius:8px;padding:8px 0;transition:transform 80ms}.s-hg-key:not(:disabled):hover{transform:translateY(-1px)}.s-hg-key.used{cursor:default;opacity:.55}.s-hg-key.hit{opacity:1;background:#c9f3d4}.s-hg-key.miss{background:#ffd4d4}@media (max-width:640px){.s-hg-keys{grid-template-columns:repeat(9,1fr)}.s-ttt-grid{grid-template-rows:repeat(3,64px);grid-template-columns:repeat(3,64px)}.s-ttt-cell{font-size:30px}}.s-proj{grid-template-columns:1.3fr 1fr;align-items:start;gap:48px;padding:40px 0 20px;display:grid}.s-proj-emoji{margin-bottom:12px;font-size:84px;line-height:1}.s-proj h1{font-family:var(--s-display);letter-spacing:-.03em;margin:0 0 14px;font-size:clamp(40px,6vw,72px);font-weight:900;line-height:.95}.s-proj-blurb{color:#1d1830bf;max-width:520px;margin:0 0 22px;font-size:19px;line-height:1.55}.s-proj-meta{flex-wrap:wrap;gap:8px;margin-bottom:26px;display:flex}.s-proj-actions{flex-wrap:wrap;gap:12px;display:flex}.s-proj-side{background:var(--s-surface);border:var(--s-border);border-radius:var(--s-radius-lg);box-shadow:var(--s-shadow);padding:26px}.s-proj-side h3{font-family:var(--s-display);margin:0 0 14px;font-size:20px;font-weight:800}.s-proj-code{font-family:var(--s-mono);background:var(--s-ink);color:var(--s-bg);border-radius:12px;padding:16px;font-size:13px;line-height:1.7}.s-proj-code .c-accent{color:var(--s-accent)}.s-proj-code .c-dim{color:#fef9ef99}.s-crumb{font-family:var(--s-mono);color:#1d18308c;padding-top:20px;font-size:12px}.s-crumb a{color:inherit}@media (max-width:760px){.s-proj{grid-template-columns:1fr;gap:28px}}.s-credit{font-size:13px;font-family:var(--s-body);color:#1d1830b8;background:var(--s-surface);border:var(--s-border-thin);border-radius:var(--s-radius-pill);box-shadow:var(--s-shadow-sm);align-items:center;gap:6px;padding:7px 14px;display:inline-flex}.s-credit a{color:var(--s-ink);font-weight:800;text-decoration:none}.s-credit a:hover{color:var(--s-accent);text-decoration:underline}.s-modal .s-credit{margin-bottom:18px}.pg-app{--pg-bg:#fef9ef;--pg-ink:#1d1830;--pg-accent:#ff7a59;--pg-paper:#fff;--pg-paper-warm:#ffe5d4;--pg-paper-cool:#d4f0ff;--pg-paper-yellow:#fff5b0;--pg-dark:#fbf3e0;--pg-muted:#1d18308c;--pg-shadow:5px 5px 0 var(--pg-ink);--pg-border:2.5px solid var(--pg-ink);--pg-border-thin:2px solid var(--pg-ink);--pg-radius:18px;--pg-radius-pill:99px;--pg-display:var(--font-display), "Fraunces", Georgia, serif;--pg-body:var(--font-body), "DM Sans", system-ui, sans-serif;--pg-mono:var(--font-mono), "JetBrains Mono", ui-monospace, monospace;--tok-line:#bcaa92;z-index:1;height:100vh;font-family:var(--pg-body);flex-direction:column;font-size:14px;display:flex;position:relative}.pg-app button{font:inherit;cursor:pointer}.pg-nav{flex-shrink:0;justify-content:space-between;align-items:center;height:64px;padding:0 24px;display:flex}.pg-nav-left{color:var(--pg-ink);align-items:center;gap:14px;text-decoration:none;display:flex}.pg-logomark{background:var(--pg-accent);border:var(--pg-border-thin);width:38px;height:38px;box-shadow:3px 3px 0 var(--pg-ink);border-radius:11px;place-items:center;transition:transform .25s cubic-bezier(.4,1.8,.4,1);display:grid;transform:rotate(-5deg)}.pg-nav-left:hover .pg-logomark{transform:rotate(5deg)scale(1.05)}.pg-logomark svg{width:22px;height:22px}.pg-brand-name{font-family:var(--pg-display);letter-spacing:-.025em;font-size:19px;font-weight:900;line-height:1}.pg-brand-sub{font-family:var(--pg-mono);color:var(--pg-muted);margin-top:2px;font-size:10px}.pg-nav-mid{gap:2px;display:flex}.pg-nav-mid a{border-radius:var(--pg-radius-pill);color:var(--pg-ink);padding:8px 16px;font-size:13px;font-weight:600;text-decoration:none}.pg-nav-mid a.active{background:var(--pg-ink);color:var(--pg-bg)}.pg-nav-mid a:hover:not(.active){background:#1d183014}.pg-star-btn{border-radius:var(--pg-radius-pill);background:var(--pg-ink);color:var(--pg-bg);border:var(--pg-border-thin);box-shadow:3px 3px 0 var(--pg-accent);padding:9px 18px;font-size:12px;font-weight:700;text-decoration:none}.pg-main{flex:1;min-height:0;display:flex}.pg-side{background:#ffffff73;flex-direction:column;flex-shrink:0;width:280px;display:flex}.pg-side-head{padding:18px 18px 12px}.pg-side-title{font-family:var(--pg-display);letter-spacing:-.02em;font-size:22px;font-weight:900;line-height:1}.pg-side-sub{color:var(--pg-muted);margin-top:4px;font-size:12px}.pg-side-search{border-radius:var(--pg-radius-pill);background:var(--pg-paper);border:var(--pg-border-thin);box-shadow:3px 3px 0 var(--pg-ink);align-items:center;gap:8px;margin:0 14px 12px;padding:10px 14px;display:flex}.pg-side-search input{color:var(--pg-ink);background:0 0;border:0;outline:0;flex:1;font-family:inherit;font-size:13px}.pg-side-search input::placeholder{color:#1d183066}.pg-side-list{flex:1;padding:4px 14px 24px;overflow-y:auto}.pg-group{margin-top:14px}.pg-group-h{font-family:var(--pg-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--pg-muted);text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:6px;width:100%;padding:6px 8px;font-size:10px;font-weight:700;display:flex}.pg-group-h:hover{color:var(--pg-ink);background:#1d18300f}.pg-group-h .chev{flex-shrink:0;width:12px;height:12px;transition:transform .18s cubic-bezier(.4,1.4,.4,1)}.pg-group.collapsed .pg-group-h .chev{transform:rotate(-90deg)}.pg-group-h .label{flex:1}.pg-group-h .ct{background:#1d183014;border-radius:99px;padding:2px 7px;font-size:9px}.pg-group-items{padding-top:4px;transition:max-height .25s,opacity .2s;overflow:hidden}.pg-group.collapsed .pg-group-items{opacity:0;pointer-events:none;padding-top:0}.pg-item{width:100%;color:var(--pg-ink);text-align:left;background:0 0;border:2px solid #0000;border-radius:11px;align-items:center;gap:10px;margin-bottom:4px;padding:9px 12px;font-size:13px;font-weight:600;text-decoration:none;transition:background .12s,transform .12s,box-shadow .12s,border-color .12s;display:flex}.pg-item:hover:not(.active){background:#ffffffb3}.pg-item.active{background:var(--pg-accent);border-color:var(--pg-ink);box-shadow:3px 3px 0 var(--pg-ink);transform:translate(-1px,-1px)}.pg-item .em{text-align:center;flex-shrink:0;width:22px;font-size:17px;line-height:1}.pg-item .nm{flex:1}.pg-item .ln{font-family:var(--pg-mono);color:#1d183080;font-size:10px}.pg-item.active .ln{color:#1d1830b3}.pg-side-foot{font-family:var(--pg-mono);color:var(--pg-muted);align-items:center;gap:8px;padding:14px 18px 18px;font-size:11px;display:flex}.pg-side-foot .dot{background:#1cc97c;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 3px #1cc97c33}.pg-work{flex-direction:column;flex:1;gap:14px;min-width:0;padding:20px;display:flex}.pg-toolbar{border-radius:var(--pg-radius);background:var(--pg-paper);border:var(--pg-border);box-shadow:var(--pg-shadow);flex-shrink:0;align-items:center;gap:18px;padding:14px 20px;display:flex}.pg-toolbar-left{flex:1;align-items:center;gap:14px;min-width:0;display:flex}.pg-proj-emoji{background:var(--pg-paper-warm);border:var(--pg-border-thin);border-radius:13px;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:26px;display:grid;transform:rotate(-3deg)}.pg-proj-name{font-family:var(--pg-display);letter-spacing:-.02em;margin:0;font-size:22px;font-weight:900;line-height:1}.pg-proj-meta{align-items:center;gap:8px;margin-top:6px;display:flex}.pg-proj-meta .pill{font-family:var(--pg-mono);background:#1d183014;border-radius:99px;padding:3px 9px;font-size:10px;font-weight:700}.pg-proj-meta .pill.lang{background:var(--pg-ink);color:var(--pg-bg)}.pg-proj-blurb{color:var(--pg-muted);white-space:nowrap;text-overflow:ellipsis;margin-left:4px;font-size:12px;overflow:hidden}.pg-toolbar-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.pg-status{border-radius:var(--pg-radius-pill);font-family:var(--pg-mono);background:#1d18300f;align-items:center;gap:8px;padding:8px 14px;font-size:11px;font-weight:600;display:flex}.pg-status .d{background:#1cc97c;border-radius:50%;width:7px;height:7px}.pg-status.running .d{background:#ffd166;animation:1s ease-in-out infinite pg-pulse}.pg-status.waiting .d{background:#3aa6ff;animation:1s ease-in-out infinite pg-pulse}.pg-status.done .d{background:#1cc97c}.pg-status.error{background:#ffe5e0}.pg-status.error .d{background:#ff4d3d}@keyframes pg-pulse{0%,to{opacity:1}50%{opacity:.3}}.pg-btn{border-radius:var(--pg-radius-pill);border:var(--pg-border-thin);background:var(--pg-paper);color:var(--pg-ink);box-shadow:3px 3px 0 var(--pg-ink);align-items:center;gap:8px;padding:10px 18px;font-size:13px;font-weight:700;transition:transform .1s,box-shadow .1s;display:inline-flex}.pg-btn:hover{box-shadow:4px 4px 0 var(--pg-ink);transform:translate(-1px,-1px)}.pg-btn:active{box-shadow:0 0 0 var(--pg-ink);transform:translate(2px,2px)}.pg-btn.run{background:#4ade80;padding:11px 22px;font-size:14px}.pg-btn.stop{background:#ffb4a8}.pg-btn .ic{font-size:13px}.pg-split{flex:1;gap:14px;min-height:0;display:flex}.pg-split.row{flex-direction:row}.pg-window{background:var(--pg-dark);border:var(--pg-border);border-radius:var(--pg-radius);min-height:0;box-shadow:var(--pg-shadow);flex-direction:column;display:flex;overflow:hidden}.pg-winbar{border-bottom:var(--pg-border-thin);flex-shrink:0;align-items:center;gap:14px;padding:10px 16px;display:flex}.pg-editor .pg-winbar{background:var(--pg-paper-warm)}.pg-console .pg-winbar{background:var(--pg-paper-cool)}.pg-winbar .dots{gap:6px;display:flex}.pg-winbar .dots i{border:1.5px solid var(--pg-ink);border-radius:50%;width:11px;height:11px;display:block}.pg-winbar .dots i:first-child{background:#ff7a7a}.pg-winbar .dots i:nth-child(2){background:#ffd166}.pg-winbar .dots i:nth-child(3){background:#4ade80}.pg-winbar .filename{font-family:var(--pg-mono);font-size:12px;font-weight:700}.pg-winbar .filename .dim{color:var(--pg-muted);margin-left:6px;font-weight:500}.pg-winbar .spacer{flex:1}.pg-winbar .pill{font-family:var(--pg-mono);background:#1d18301a;border-radius:99px;padding:3px 9px;font-size:10px;font-weight:700}.pg-winbar .iconbtn{width:28px;height:28px;color:var(--pg-ink);background:0 0;border:1.5px solid #0000;border-radius:8px;place-items:center;font-size:13px;display:grid}.pg-winbar .iconbtn:hover{border-color:var(--pg-ink);background:#1d18301a}.pg-editor{flex:1.55 1 0;min-width:0}.pg-editor-body{flex:1;min-width:0;min-height:0;display:flex}.pg-editor-body>*{flex:1;min-width:0;height:100%}.pg-editor-body .cm-editor{height:100%}.pg-editor-body .cm-scroller{padding:6px 0;font-size:13.5px}.pg-console{flex:1 1 0;min-width:280px}.pg-console-body{background:var(--pg-dark);flex:1;min-height:0;display:flex}.pg-term{flex:1;min-width:0;min-height:0;padding:10px 6px 10px 12px}.pg-term .xterm{height:100%}@media (max-width:1200px){.pg-split.row{flex-direction:column}.pg-split.row .pg-editor{flex:1.4 1 0}.pg-split.row .pg-console{flex:1 1 0;min-width:0;min-height:200px}}@media (max-width:1100px){.pg-side{width:240px}}@media (max-width:880px){.pg-app{height:auto;min-height:100vh}.pg-main{flex-direction:column}.pg-side{width:100%}.pg-nav-mid{display:none}.pg-split.row{min-height:70vh}}@media (max-width:640px){.pg-toolbar{flex-direction:column;align-items:stretch;gap:12px}.pg-toolbar-right{justify-content:flex-end}}
