@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(../media/62492e45f348cf87-s.0nej_lxd5q~2o.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:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(../media/8f9704ed0c18c9e0-s.0kr5766.tjsv_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(../media/c73d4b34880585a8-s.0xzjw9gd~3oqw.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:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(../media/f00b8cc54454926d-s.0r2x4jit4v-hc.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:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(../media/741805f5bd1ef272-s.0bsrhmc7ksh9o.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:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(../media/ea3421846039b7f3-s.p.0ohrq615g_kqa.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:"Source Serif 4";font-style:italic;font-weight:500;font-display:swap;src:url(../media/62492e45f348cf87-s.0nej_lxd5q~2o.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:"Source Serif 4";font-style:italic;font-weight:500;font-display:swap;src:url(../media/8f9704ed0c18c9e0-s.0kr5766.tjsv_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:500;font-display:swap;src:url(../media/c73d4b34880585a8-s.0xzjw9gd~3oqw.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:"Source Serif 4";font-style:italic;font-weight:500;font-display:swap;src:url(../media/f00b8cc54454926d-s.0r2x4jit4v-hc.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:"Source Serif 4";font-style:italic;font-weight:500;font-display:swap;src:url(../media/741805f5bd1ef272-s.0bsrhmc7ksh9o.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:"Source Serif 4";font-style:italic;font-weight:500;font-display:swap;src:url(../media/ea3421846039b7f3-s.p.0ohrq615g_kqa.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:"Source Serif 4";font-style:italic;font-weight:600;font-display:swap;src:url(../media/62492e45f348cf87-s.0nej_lxd5q~2o.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:"Source Serif 4";font-style:italic;font-weight:600;font-display:swap;src:url(../media/8f9704ed0c18c9e0-s.0kr5766.tjsv_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:600;font-display:swap;src:url(../media/c73d4b34880585a8-s.0xzjw9gd~3oqw.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:"Source Serif 4";font-style:italic;font-weight:600;font-display:swap;src:url(../media/f00b8cc54454926d-s.0r2x4jit4v-hc.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:"Source Serif 4";font-style:italic;font-weight:600;font-display:swap;src:url(../media/741805f5bd1ef272-s.0bsrhmc7ksh9o.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:"Source Serif 4";font-style:italic;font-weight:600;font-display:swap;src:url(../media/ea3421846039b7f3-s.p.0ohrq615g_kqa.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:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(../media/20aee433927f7d4b-s.157oer57eo50s.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:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(../media/256e1f7f180674ba-s.0lzyohd.mq-zj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(../media/be3bf58b83159894-s.0k50~bcr4_n6n.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:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(../media/753b6407f468151f-s.0ld551rg41h9m.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:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(../media/292081311a6a8abc-s.0kzsaos0rt4.l.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:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(../media/68d403cf9f2c68c5-s.p.0nhx~dwif.9~q.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:"Source Serif 4";font-style:normal;font-weight:500;font-display:swap;src:url(../media/20aee433927f7d4b-s.157oer57eo50s.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:"Source Serif 4";font-style:normal;font-weight:500;font-display:swap;src:url(../media/256e1f7f180674ba-s.0lzyohd.mq-zj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:500;font-display:swap;src:url(../media/be3bf58b83159894-s.0k50~bcr4_n6n.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:"Source Serif 4";font-style:normal;font-weight:500;font-display:swap;src:url(../media/753b6407f468151f-s.0ld551rg41h9m.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:"Source Serif 4";font-style:normal;font-weight:500;font-display:swap;src:url(../media/292081311a6a8abc-s.0kzsaos0rt4.l.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:"Source Serif 4";font-style:normal;font-weight:500;font-display:swap;src:url(../media/68d403cf9f2c68c5-s.p.0nhx~dwif.9~q.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:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/20aee433927f7d4b-s.157oer57eo50s.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:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/256e1f7f180674ba-s.0lzyohd.mq-zj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/be3bf58b83159894-s.0k50~bcr4_n6n.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:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/753b6407f468151f-s.0ld551rg41h9m.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:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/292081311a6a8abc-s.0kzsaos0rt4.l.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:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/68d403cf9f2c68c5-s.p.0nhx~dwif.9~q.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:"Source Serif 4 Fallback";src:local(Times New Roman);ascent-override:87.87%;descent-override:28.41%;line-gap-override:0.0%;size-adjust:117.91%}.source_serif_4_440a5d8-module__U5EQmW__className{font-family:"Source Serif 4","Source Serif 4 Fallback"}.source_serif_4_440a5d8-module__U5EQmW__variable{--font-source-serif:"Source Serif 4", "Source Serif 4 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 Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_8e1b1c2a-module__OyRuAW__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_8e1b1c2a-module__OyRuAW__variable{--font-jetbrains:"JetBrains Mono", "JetBrains Mono Fallback"}
.KeyboardShortcuts-module__DR4hrq__overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.KeyboardShortcuts-module__DR4hrq__modal{background:var(--card);border:1px solid var(--border);border-radius:12px;width:90%;max-width:320px;padding:1.5rem 2rem;box-shadow:0 8px 32px #0000004d}.KeyboardShortcuts-module__DR4hrq__modal h3{color:var(--foreground);margin:0 0 1rem;font-size:1.1rem}.KeyboardShortcuts-module__DR4hrq__list{margin:0;padding:0}.KeyboardShortcuts-module__DR4hrq__list>div{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.5rem 0;display:flex}.KeyboardShortcuts-module__DR4hrq__list>div:last-child{border-bottom:none}.KeyboardShortcuts-module__DR4hrq__list dt{font-weight:400}.KeyboardShortcuts-module__DR4hrq__list dd{color:var(--muted-foreground);margin:0;font-size:.9rem}.KeyboardShortcuts-module__DR4hrq__footer{color:var(--muted-foreground);text-align:center;margin:1rem 0 0;font-size:.8rem}
*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.\!visible{visibility:visible!important}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.border{border-width:1px}.text-xl{font-size:1.25rem;line-height:1.75rem}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.underline{text-decoration-line:underline}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--background:#1f1f1f;--foreground:#e6e6e6;--card:#242424;--muted:#333;--muted-foreground:#949494;--muted-secondary:#999;--accent:#6aaf8c;--accent-foreground:#1f1f1f;--border:#383838;--font-serif:var(--font-source-serif), Georgia, serif;--font-mono:var(--font-jetbrains), monospace}.light{--background:#fafafa;--foreground:#262626;--card:#fff;--muted:#ebebeb;--muted-foreground:#737373;--muted-secondary:#666;--accent:#3d8f66;--accent-foreground:#fff;--border:#d1d1d1}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{font-family:var(--font-serif);background:var(--background);color:var(--foreground);font-variant-numeric:tabular-nums;flex-direction:column;min-height:100vh;font-size:1.1rem;line-height:1.7;display:flex}.skip-to-content{z-index:9999;background:var(--accent);color:var(--background);padding:.75rem 1.5rem;font-weight:600;text-decoration:none;position:absolute;top:0;left:-9999px}.skip-to-content:focus-visible{outline:2px solid var(--foreground);outline-offset:2px;left:0}.site-header{border-bottom:1px solid var(--border)}.site-header-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;max-width:768px;margin:0 auto;padding:1rem;display:flex;position:relative}.site-logo{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:-.02em;color:var(--foreground);font-size:.875rem;font-weight:500;text-decoration:none}.site-logo:hover{color:var(--foreground);text-decoration:none}.site-nav{align-items:center;gap:1rem;display:flex}.site-nav a,.site-nav button{font-family:var(--font-mono);color:var(--muted-foreground);font-size:.8rem;text-decoration:none;transition:color .15s}.site-nav a:hover,.site-nav button:hover{color:var(--accent)}.site-nav a.active{color:var(--foreground)}.nav-more{position:relative}.nav-more-btn{cursor:pointer;font-family:var(--font-mono);background:0 0;border:none;padding:.5rem;font-size:.8rem}.nav-dropdown{z-index:50;padding-top:.5rem;display:none;position:absolute;top:100%;right:0}.nav-dropdown-inner{background:var(--card);border:1px solid var(--border);border-radius:6px;min-width:140px;padding:.5rem 0}.nav-more:hover .nav-dropdown{display:block}.nav-dropdown a{font-family:var(--font-mono);padding:.375rem 1rem;font-size:.8rem;display:block}main{flex:1;width:100%;max-width:768px;margin:0 auto;padding:4rem 1rem}.site-footer{border-top:1px solid var(--border);margin-top:auto}.footer-content{grid-template-columns:repeat(3,1fr);gap:2rem;max-width:768px;margin:0 auto;padding:2rem 1rem;display:grid}.footer-section h4,.footer-section .footer-heading{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted-secondary);margin-bottom:.75rem;font-size:.7rem;display:block}.footer-section nav{flex-direction:column;gap:.5rem;display:flex}.footer-section a{color:var(--foreground);font-size:.875rem;text-decoration:none;transition:color .15s}.footer-section a:hover{color:var(--accent)}.footer-bottom{border-top:1px solid var(--border);max-width:768px;font-family:var(--font-mono);color:var(--muted-foreground);justify-content:space-between;margin:0 auto;padding:1rem;font-size:.75rem;display:flex}.footer-tagline{color:var(--muted-secondary)}.footer-cta{text-align:center;max-width:768px;margin:0 auto;padding:1rem}.footer-hire-link{color:var(--accent);align-items:center;gap:.5rem;font-size:.9rem;text-decoration:none;transition:opacity .2s;display:inline-flex}.footer-hire-link:hover{opacity:.8}.footer-hire-link .availability-dot{background:var(--accent);border-radius:50%;width:8px;height:8px;animation:2s infinite pulse}@media (max-width:640px){.footer-content{grid-template-columns:1fr 1fr}.footer-section:last-child{grid-column:span 2}}.site-footer a{color:var(--muted-foreground);text-decoration:none}.site-footer a:hover{color:var(--accent)}h1,h2,h3,h4,h5,h6{font-family:var(--font-mono);letter-spacing:-.02em;line-height:1.3}h1{text-transform:uppercase;margin-bottom:.5rem;font-size:1.5rem}h2,h3,h4{text-transform:uppercase}h2{color:var(--muted-foreground);letter-spacing:.05em;margin-bottom:1rem;font-size:.75rem}p{margin-bottom:1rem}a{color:var(--accent);text-underline-offset:4px;text-decoration:none;transition:color .15s}a:hover{text-decoration:underline}code{font-family:var(--font-mono)}.text-muted{color:var(--muted-foreground)}.text-meta{font-family:var(--font-mono);color:var(--muted-foreground);font-size:.8rem}.page-intro{color:var(--muted-foreground);margin-bottom:2rem}.section{margin-bottom:3rem}.card{border:1px solid var(--border);padding:1rem;text-decoration:none;transition:border-color .15s;display:block}.card:hover{border-color:var(--accent);text-decoration:none}.post-list{list-style:none}.post-list li{align-items:baseline;gap:1rem;padding:.5rem 0;display:flex}.post-list .date{font-family:var(--font-mono);color:var(--muted-foreground);flex-shrink:0;font-size:.8rem}.post-list .reading-time{font-family:var(--font-mono);color:var(--muted-secondary);flex-shrink:0;font-size:.7rem}.post-list a{color:var(--foreground)}.post-list a:hover{color:var(--accent)}.post-list .read-indicator{color:var(--muted-foreground);opacity:.5;flex-shrink:0;margin-left:auto;font-size:.7rem}.principles-list{list-style:none}.principles-list li{border-bottom:1px solid var(--border);padding:1rem 0}.principles-list li:last-child{border-bottom:none}.principles-list .title{font-family:var(--font-mono);color:var(--accent);font-size:.875rem}.principles-list .desc{color:var(--muted-foreground);margin-top:.25rem}.project-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.prose{width:100%}.prose h2{color:var(--foreground);margin-top:2rem;margin-bottom:.75rem;font-size:1rem}.prose h3{color:var(--foreground);margin-top:1.5rem;margin-bottom:.5rem;font-size:.875rem}.prose ul,.prose ol{margin-bottom:1rem;padding-left:1.5rem}.prose li{margin-bottom:.25rem}.prose blockquote{border-left:2px solid var(--border);color:var(--muted-foreground);margin:1rem 0;padding-left:1rem;font-style:italic}.prose img{max-width:100%;height:auto}.prose hr{border:none;border-top:1px solid var(--border);margin:2rem 0}.prose pre{border:1px solid var(--border);tab-size:2;background:#0d1117;border-radius:8px;margin:1.5rem 0;padding:1rem 1.25rem;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:.875rem;line-height:1.6;position:relative;overflow-x:auto}.prose pre code{font-size:inherit;color:#e6edf3;background:0 0;border-radius:0;padding:0;font-family:inherit;display:block}.prose pre code[data-theme*=\ ],.prose pre code[data-theme*=\ ] span,.light .prose pre code[data-theme*=\ ],.light .prose pre code[data-theme*=\ ] span{color:var(--shiki-light);background-color:var(--shiki-light-bg)}:root:not(.light) .prose pre code[data-theme*=\ ],:root:not(.light) .prose pre code[data-theme*=\ ] span{color:var(--shiki-dark);background-color:var(--shiki-dark-bg)}.light .prose pre{background:#f6f8fa;border:1px solid #d0d7de}.light .prose pre code{color:#24292f}.prose pre[data-language]:before{content:attr(data-language);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--muted-foreground);background:#6e768126;border-top-right-radius:7px;border-bottom-left-radius:6px;padding:.25rem .75rem;font-size:.65rem;font-weight:500;position:absolute;top:0;right:0}.light .prose pre[data-language]:before{color:#57606a;background:#afb8c14d}.prose figure[data-rehype-pretty-code-figure]{margin:1.5rem 0;position:relative}.prose figure[data-rehype-pretty-code-figure] figcaption{border:1px solid var(--border);font-family:var(--font-mono);color:var(--muted-foreground);background:#0000004d;border-bottom:none;border-radius:8px 8px 0 0;padding:.5rem 1rem;font-size:.75rem;display:block}.prose figure[data-rehype-pretty-code-figure] figcaption+pre{border-top-left-radius:0;border-top-right-radius:0;margin-top:0}.light .prose figure[data-rehype-pretty-code-figure] figcaption{background:#afb8c133}.prose pre[data-line-numbers]{padding-left:3.5rem}.prose pre[data-line-numbers]>code{counter-reset:line}.prose pre[data-line-numbers] [data-line]:before{counter-increment:line;content:counter(line);text-align:right;color:#6e7681;width:1.5rem;margin-left:-3rem;margin-right:1.5rem;font-size:.8em;display:inline-block}.light .prose pre[data-line-numbers] [data-line]:before{color:#8c959f}.prose pre [data-highlighted-line],.prose pre .highlighted-line{border-left:3px solid var(--accent);background:#4ade801a;margin:0 -1.25rem;padding:0 1rem 0 1.25rem;display:block}.light .prose pre [data-highlighted-line],.light .prose pre .highlighted-line{background:#4ade8026}.prose pre [data-highlighted-chars],.prose pre .highlighted-chars{background:#4ade8040;border-radius:3px;padding:.125rem .25rem}.prose pre [data-line][data-line-diff=\+]{background:#2ea04333}.prose pre [data-line][data-line-diff=\-]{background:#f8514933}.prose pre [data-line]:hover{background:#6e76811a}.light .prose pre [data-line]:hover{background:#afb8c126}.prose :not(pre)>code{background:var(--muted);color:#c9d1d9;border-radius:4px;padding:.2rem .4rem;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:.875em}.light .prose :not(pre)>code{color:#24292f;background:#afb8c133}.prose a code{color:var(--accent)}.prose pre .code-copy-btn,.code-copy-btn{font-size:.7rem;font-family:var(--font-mono);color:#8b949e;cursor:pointer;opacity:0;background:#6e768133;border:1px solid #6e76814d;border-radius:5px;padding:.35rem .6rem;transition:opacity .15s,background .15s;position:absolute;top:.5rem;right:.5rem}.prose pre[data-language] .code-copy-btn,.prose pre[data-language]+.code-copy-btn{top:2rem}.prose pre:hover .code-copy-btn,pre:hover .code-copy-btn{opacity:1}.prose pre .code-copy-btn:hover,.code-copy-btn:hover{background:var(--accent);border-color:var(--accent);color:var(--accent-foreground)}.prose pre .code-copy-btn.copied,.code-copy-btn.copied{background:var(--accent);border-color:var(--accent);color:var(--accent-foreground);opacity:1}.light .prose pre .code-copy-btn,.light .code-copy-btn{color:#57606a;background:#afb8c14d;border-color:#afb8c166}.prose pre::-webkit-scrollbar{height:8px}.prose pre::-webkit-scrollbar-track{background:0 0}.prose pre::-webkit-scrollbar-thumb{background:#6e768166;border-radius:4px}.prose pre::-webkit-scrollbar-thumb:hover{background:#6e768199}.light .prose pre::-webkit-scrollbar-thumb{background:#afb8c180}.light .prose pre::-webkit-scrollbar-thumb:hover{background:#afb8c1b3}@media print{.prose pre{white-space:pre-wrap;word-wrap:break-word;page-break-inside:avoid;border:1px solid #ddd;padding:.75rem;font-size:9pt;background:#f5f5f5!important}.prose pre code{color:#333!important}.prose pre[data-language]:before{color:#666;background:#eee}.prose pre .code-copy-btn,.code-copy-btn{display:none!important}}::selection{background:#6aaf8c40}.tag{font-family:var(--font-mono);color:var(--muted-foreground);background:var(--muted);border-radius:2px;padding:.125rem .5rem;font-size:.75rem}.post-header{margin-bottom:2rem}.post-header h1{margin-bottom:.5rem}.post-meta{font-family:var(--font-mono);color:var(--muted-foreground);flex-wrap:wrap;gap:1rem;font-size:.8rem;display:flex}.post-meta .updated-date{color:var(--accent);font-style:italic}.post-meta .history-link{color:var(--muted-foreground);opacity:.8;font-size:.85em;text-decoration:none}.post-meta .history-link:hover{color:var(--accent);opacity:1}.back-link{font-family:var(--font-mono);margin-bottom:2rem;font-size:.8rem;display:inline-block}input,textarea,select{font-family:var(--font-serif);background:var(--card);border:1px solid var(--border);color:var(--foreground);width:100%;padding:.5rem;font-size:1rem}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent)}button,.btn{font-family:var(--font-mono);background:var(--accent);color:var(--accent-foreground);cursor:pointer;border:none;padding:.5rem 1rem;font-size:.875rem;text-decoration:none;display:inline-block}button:hover,.btn:hover{opacity:.9;text-decoration:none}.stats-section{margin:2rem 0}.stats-grid{flex-wrap:wrap;justify-content:center;gap:3rem;display:flex}.stat{text-align:center}.stat-value{color:var(--accent);font-size:2rem;font-weight:700;display:block}.stat-label{color:var(--muted-foreground);margin-top:.25rem;font-size:.875rem;display:block}@media (max-width:640px){main{padding:2rem 1rem}.site-header-inner{flex-direction:column;align-items:flex-start}.site-nav{flex-wrap:wrap;justify-content:flex-start;width:100%;margin-top:.5rem}h1{font-size:1.25rem}.stats-grid{gap:2rem}.stat-value{font-size:1.5rem}}.theme-toggle{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:.5rem;font-size:1.25rem;transition:background .2s,border-color .2s;display:inline-flex}.theme-toggle:hover{border-color:var(--accent);background:#ffffff1a}.share-bar{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1rem;display:flex}.share-label{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em;margin-right:.25rem;font-size:.75rem}.share-btn{border:1px solid var(--border);height:32px;color:var(--foreground);cursor:pointer;background:#ffffff05;border-radius:9999px;justify-content:center;align-items:center;padding:0 .75rem;font-size:.85rem;text-decoration:none;transition:border-color .2s,background .2s;display:inline-flex}.share-btn:hover{background:#4ade8014;border-color:#4ade8099;text-decoration:none}.series-nav{background:var(--card);border:1px solid var(--border);border-radius:8px;margin-bottom:2rem;padding:1rem 1.25rem}.series-header{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.series-label{color:var(--muted-foreground);font-size:.875rem}.series-name{color:var(--accent);font-weight:600}.series-position{color:var(--muted-foreground);font-size:.875rem}.series-progress{background:var(--muted);border-radius:2px;height:4px;margin:.75rem 0;overflow:hidden}.series-progress-bar{background:var(--accent);border-radius:2px;height:100%;transition:width .3s}.series-links{flex-wrap:wrap;gap:1rem;display:flex}.series-link{background:#4ade800d;border-radius:6px;flex:1;min-width:200px;padding:.75rem;text-decoration:none;transition:background .2s}.light .series-link{background:#4ade801a}.series-link:hover{background:#4ade801a;text-decoration:none}.light .series-link:hover{background:#4ade8026}.series-link .direction{color:var(--muted-foreground);margin-bottom:.25rem;font-size:.75rem;display:block}.series-link .title{color:var(--foreground);font-size:.9rem;line-height:1.3;display:block}.related-posts{border-top:1px solid var(--border);margin-top:3rem;padding-top:2rem}.related-posts h3{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em;margin:0 0 1rem;font-size:.875rem}.related-posts-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.related-post-card{background:var(--card);border:1px solid var(--border);border-radius:8px;flex-direction:column;padding:1rem;text-decoration:none;transition:border-color .15s,transform .15s;display:flex}.related-post-card:hover{border-color:var(--accent);text-decoration:none;transform:translateY(-2px)}.related-post-title{color:var(--foreground);margin-bottom:.5rem;font-size:.9rem;line-height:1.4}.related-post-meta{font-family:var(--font-mono);color:var(--muted-foreground);font-size:.75rem}.hire-badge{color:var(--accent);white-space:nowrap;background:#4ade801a;border:1px solid #4ade804d;border-radius:9999px;padding:.2rem .6rem;font-size:.75rem;text-decoration:none;transition:all .2s;display:inline-block}.hire-badge:hover{background:#4ade8033;border-color:#4ade8080;text-decoration:none}.code-copy-btn{background:var(--muted);border:1px solid var(--border);cursor:pointer;opacity:0;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;transition:opacity .2s;position:absolute;top:.5rem;right:.5rem}.prose pre:hover .code-copy-btn{opacity:1}.code-copy-btn:hover{background:var(--accent);color:var(--accent-foreground)}.code-copy-btn.copied{background:var(--accent);color:var(--accent-foreground);opacity:1}.blog-subscribe{border:1px solid var(--border);background:var(--card);border-radius:8px;margin-top:3rem;padding:1.5rem}.blog-subscribe h3{color:var(--foreground);margin:0 0 .5rem;font-size:1rem}.blog-subscribe p{color:var(--muted-foreground);margin:0 0 1rem;font-size:.9rem}.blog-subscribe form{gap:.5rem;display:flex}.blog-subscribe input{flex:1}@media (max-width:500px){.blog-subscribe form{flex-direction:column}}.post-body{width:100%;position:relative}.post-content{width:100%;min-width:0}.post-toc{width:200px;max-height:calc(100vh - 8rem);position:fixed;top:6rem;left:max(1rem,50vw - 34ch - 220px - 2rem);overflow-y:auto}@media (max-width:1200px){.post-toc{display:none}}.toc{border:1px solid var(--border);background:var(--card);border-radius:8px;margin:0;padding:1rem}.toc h4{color:var(--muted-foreground);text-transform:uppercase;margin:0 0 .75rem;font-size:.8rem}.toc ul{margin:0;padding:0;list-style:none}.toc li{margin-bottom:.25rem}.toc a{color:var(--muted-foreground);font-size:.9rem}.toc a:hover{color:var(--accent)}.toc li.active a{color:var(--accent);font-weight:500}.toc li.active{position:relative}.toc li.active:before{content:"";background:var(--accent);border-radius:2px;width:3px;height:1rem;position:absolute;top:.25rem;left:-.75rem}.search-container{position:relative}.search-input{background:var(--card);border:1px solid var(--border);border-radius:8px;width:100%;padding:.75rem 1rem;font-size:1rem}.search-results{margin-top:1rem;padding:0;list-style:none}.search-results li{border-bottom:1px solid var(--border);padding:.75rem 0}.search-results li:last-child{border-bottom:none}.breadcrumbs{font-family:var(--font-mono);margin-bottom:1.5rem;font-size:.8rem}.breadcrumbs ol{flex-wrap:wrap;align-items:center;gap:0;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li{align-items:center;display:inline-flex}.breadcrumbs a{color:var(--muted-foreground);text-decoration:none;transition:color .15s}.breadcrumbs a:hover{color:var(--accent)}.breadcrumb-separator{color:var(--muted-foreground);opacity:.5;margin:0 .5rem}.breadcrumb-current{color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}@media (max-width:640px){.breadcrumb-current{max-width:150px}}.mobile-menu-btn{cursor:pointer;z-index:1001;background:0 0;border:none;padding:.5rem;display:none}.hamburger{flex-direction:column;justify-content:space-between;width:24px;height:18px;display:flex}.hamburger span{background:var(--foreground);border-radius:1px;width:100%;height:2px;transition:all .3s;display:block}.hamburger.open span:first-child{transform:translateY(8px)rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-8px)rotate(-45deg)}.mobile-menu-overlay{z-index:999;background:#00000080;display:none;position:fixed;inset:0}.mobile-nav{background:var(--background);border-left:1px solid var(--border);z-index:1000;width:280px;max-width:80vw;height:100vh;padding:5rem 1.5rem 2rem;transition:right .3s;display:none;position:fixed;top:0;right:-100%;overflow-y:auto}.mobile-nav.open{right:0}.mobile-nav a{font-family:var(--font-mono);color:var(--muted-foreground);border-bottom:1px solid var(--border);padding:.75rem 0;font-size:1rem;text-decoration:none;transition:color .15s;display:block}.mobile-nav a:hover,.mobile-nav a.active{color:var(--accent)}.mobile-nav-footer{border-top:1px solid var(--border);margin-top:2rem;padding-top:1rem}@media (max-width:768px){.desktop-nav{display:none}.mobile-menu-btn,.mobile-nav,.mobile-menu-overlay{display:block}.site-header-inner{flex-flow:row;justify-content:space-between}}.command-overlay{z-index:9999;background:#00000080;justify-content:center;align-items:flex-start;padding-top:20vh;display:flex;position:fixed;inset:0}.command-palette{background:var(--background);border:1px solid var(--border);border-radius:12px;width:100%;max-width:500px;overflow:hidden;box-shadow:0 20px 50px #0000004d}.command-input{border:none;border-bottom:1px solid var(--border);width:100%;color:var(--foreground);background:0 0;outline:none;padding:1rem 1.25rem;font-size:1rem}.command-input::placeholder{color:var(--muted-foreground)}.command-list{max-height:300px;padding:.5rem;overflow-y:auto}.command-section{margin-bottom:.5rem}.command-section-title{font-family:var(--font-mono);color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em;padding:.5rem .75rem .25rem;font-size:.7rem}.command-item{text-align:left;width:100%;color:var(--foreground);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.625rem .75rem;font-size:.9rem;transition:background .1s}.command-item:hover,.command-item.selected{background:var(--muted)}.command-item.selected{background:#4ade8026}.command-empty{text-align:center;color:var(--muted-foreground);padding:2rem}.command-footer{border-top:1px solid var(--border);font-family:var(--font-mono);color:var(--muted-foreground);gap:1.5rem;padding:.75rem 1rem;font-size:.75rem;display:flex}.command-footer kbd{background:var(--muted);border-radius:4px;padding:.125rem .375rem;font-size:.7rem}:focus-visible,a:focus-visible,button:focus-visible,.btn:focus-visible,[role=button]:focus-visible,[tabindex]:focus-visible,.theme-toggle:focus-visible,.share-btn:focus-visible,.reaction-btn:focus-visible,.command-item:focus-visible,.search-filter-chip:focus-visible,.tag-cloud-item:focus-visible,.mobile-menu-btn:focus-visible,.nav-more-btn:focus-visible,.code-copy-btn:focus-visible,.lightbox-close:focus-visible,.lightbox-nav:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.card:focus-visible,.series-card:focus-visible,.series-link:focus-visible,.series-post-item:focus-visible,.related-post-card:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}:focus:not(:focus-visible){outline:none}.text-muted,.text-meta,.post-meta{color:var(--muted-foreground)}.prose a{text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.prose a:hover{text-decoration-thickness:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.search-highlight{color:inherit;background:#4ade804d;border-radius:2px;padding:0 2px}.search-results li{border-radius:6px;margin:0 -1rem;padding:1rem;transition:background .1s}.search-results li.selected,.search-results li:hover{background:var(--muted)}.search-result-meta{font-family:var(--font-mono);color:var(--muted-foreground);gap:1rem;margin-top:.25rem;font-size:.75rem;display:flex}.search-empty{text-align:center;color:var(--muted-foreground);padding:3rem 1rem}.search-suggestions,.search-hint{color:var(--muted-foreground);margin-top:1rem;font-size:.9rem}.search-suggestion-btn{color:var(--accent);cursor:pointer;font-size:inherit;text-underline-offset:2px;background:0 0;border:none;padding:0;text-decoration:underline}.search-suggestion-btn:hover{opacity:.8}.search-hint{text-align:center;padding:2rem 0}.search-filters{background:var(--muted);border-radius:8px;flex-direction:column;gap:1rem;margin-top:1.5rem;padding:1rem;display:flex}.search-filter-section{flex-wrap:wrap;align-items:flex-start;gap:.75rem;display:flex}.search-filter-label{font-family:var(--font-mono);color:var(--muted-foreground);min-width:3rem;padding-top:.25rem;font-size:.75rem}.search-filter-chips{flex-wrap:wrap;gap:.5rem;display:flex}.search-filter-chip{font-family:var(--font-mono);color:var(--muted-foreground);background:var(--card);border:1px solid var(--border);cursor:pointer;border-radius:999px;padding:.25rem .75rem;font-size:.75rem;transition:all .15s}.search-filter-chip:hover{border-color:var(--accent);color:var(--foreground)}.search-filter-chip.active{background:var(--accent);border-color:var(--accent);color:var(--accent-foreground)}.search-clear-filters{color:var(--muted-foreground);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;align-self:flex-start;padding:0;font-size:.8rem;text-decoration:underline}.search-clear-filters:hover{color:var(--accent)}.tag-active{background:var(--accent);color:var(--accent-foreground)}@media print{.site-header,.site-footer,.mobile-menu-btn,.mobile-nav,.mobile-menu-overlay,.theme-toggle,.share-bar,.blog-subscribe,.toc,.back-link,.breadcrumbs,.related-posts,.command-palette,.command-overlay,.skip-to-content,.reading-progress,.back-to-top,.code-copy-btn,.hire-badge{display:none!important}body{font-size:12pt;line-height:1.5;color:#000!important;background:#fff!important}main{max-width:100%!important;margin:0!important;padding:0!important}h1{margin-bottom:.5em;font-size:18pt}h2{margin-top:1.5em;font-size:14pt}h3{font-size:12pt}.prose a[href^=http]:after{content:" (" attr(href) ")";color:#666;font-size:.8em}.prose pre{white-space:pre-wrap;word-wrap:break-word;border:1px solid #ddd;padding:.5em;font-size:9pt;background:#f5f5f5!important}h1,h2,h3,h4,h5,h6{page-break-after:avoid}pre,blockquote,img{page-break-inside:avoid}.post-meta{font-size:10pt;color:#666!important}a{text-decoration:underline;color:#000!important}}.series-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;display:grid}.series-card{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:1.5rem;text-decoration:none;transition:border-color .15s,transform .15s;display:block}.series-card:hover{border-color:var(--accent);text-decoration:none;transform:translateY(-2px)}.series-card h3{color:var(--foreground);text-transform:none;margin-bottom:.5rem;font-size:1rem}.series-card p{color:var(--muted-foreground);margin-bottom:.75rem;font-size:.875rem;line-height:1.5}.series-count{font-family:var(--font-mono);color:var(--accent);font-size:.75rem}.series-post-list{counter-reset:none;margin:0;padding:0;list-style:none}.series-post-list li{margin-bottom:1rem}.series-post-item{background:var(--card);border:1px solid var(--border);border-radius:8px;gap:1rem;padding:1rem;text-decoration:none;transition:border-color .15s;display:flex}.series-post-item:hover{border-color:var(--accent);text-decoration:none}.series-post-number{background:var(--muted);width:2rem;height:2rem;font-family:var(--font-mono);color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.875rem;display:flex}.series-post-item strong{color:var(--foreground);display:block}.post-reactions{background:var(--card);border:1px solid var(--border);text-align:center;border-radius:8px;margin-top:2rem;padding:1.5rem}.reactions-label{font-family:var(--font-mono);color:var(--muted-foreground);margin-bottom:1rem;font-size:.8rem;display:block}.reactions-buttons{justify-content:center;gap:.75rem;display:flex}.reaction-btn{background:var(--muted);cursor:pointer;border:2px solid #0000;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:transform .15s,border-color .15s,background .15s;display:flex}.reaction-btn:hover{background:#4ade801a;transform:scale(1.1)}.reaction-btn.selected{border-color:var(--accent);background:#4ade8026}.reaction-btn.animate{animation:.3s reaction-pop}@keyframes reaction-pop{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.reaction-emoji{font-size:1.5rem}.reactions-thanks{color:var(--accent);margin-top:1rem;font-size:.875rem;display:block}.stats-dashboard{margin-bottom:3rem}.stats-dashboard h2{margin-bottom:1.5rem}.stats-grid-large{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem;display:grid}.stat-card{background:var(--card);border:1px solid var(--border);text-align:center;border-radius:8px;padding:1.25rem;transition:border-color .15s}.stat-card:hover{border-color:var(--accent)}.stat-card-value{color:var(--accent);font-size:1.75rem;font-weight:700;line-height:1;display:block}.stat-card-label{font-family:var(--font-mono);color:var(--foreground);margin-top:.5rem;font-size:.8rem;display:block}.stat-card-desc{color:var(--muted-foreground);margin-top:.25rem;font-size:.75rem;display:block}.activity-chart{background:var(--card);border:1px solid var(--border);border-radius:8px;justify-content:center;align-items:flex-end;gap:.75rem;height:120px;padding:1rem;display:flex}.activity-bar-container{flex-direction:column;align-items:center;gap:.5rem;height:100%;display:flex}.activity-bar{background:var(--accent);border-radius:4px 4px 0 0;width:2rem;min-height:4px;transition:height .3s}.activity-label{font-family:var(--font-mono);color:var(--muted-foreground);font-size:.7rem}.tag-cloud{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;padding:1rem 0;display:flex}.tag-cloud-item{background:var(--card);border:1px solid var(--border);color:var(--foreground);white-space:nowrap;border-radius:9999px;align-items:center;gap:.25rem;padding:.4em .8em;text-decoration:none;transition:all .2s;display:inline-flex}.tag-cloud-item:hover{border-color:var(--accent);background:#4ade801a;text-decoration:none;transform:scale(1.05)}.tag-count{color:var(--muted-foreground);opacity:.7;font-size:.75em}.reading-position-prompt{background:var(--card);border:1px solid var(--border);z-index:1000;border-radius:9999px;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.875rem;display:flex;position:fixed;bottom:1rem;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #0003}.reading-position-prompt button{border-radius:9999px;padding:.375rem .75rem;font-size:.8rem}.reading-position-prompt button.dismiss{color:var(--muted-foreground);border:1px solid var(--border);background:0 0}.external-link-icon{vertical-align:super;opacity:.6;margin-left:.15em;font-size:.75em;transition:opacity .15s;display:inline-block}a:hover .external-link-icon{opacity:1}h2 a[href^=\#],h3 a[href^=\#],h4 a[href^=\#]{color:inherit;text-decoration:none;position:relative}h2 a[href^=\#]:before,h3 a[href^=\#]:before,h4 a[href^=\#]:before{content:"#";color:var(--muted-foreground);opacity:0;font-weight:400;transition:opacity .15s;position:absolute;left:-1.25em}h2:hover a[href^=\#]:before,h3:hover a[href^=\#]:before,h4:hover a[href^=\#]:before,h2 a[href^=\#]:focus:before,h3 a[href^=\#]:focus:before,h4 a[href^=\#]:focus:before{opacity:.6}h2:hover a[href^=\#]:before:hover,h3:hover a[href^=\#]:before:hover,h4:hover a[href^=\#]:before:hover{opacity:1;color:var(--accent)}.share-buttons{border-top:1px solid var(--border);align-items:center;gap:.5rem;margin:2rem 0;padding:1rem 0;display:flex}.share-label{color:var(--muted-foreground);margin-right:.25rem;font-size:.85rem}.share-btn{border:1px solid var(--border);width:36px;height:36px;color:var(--foreground);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;font-size:1rem;transition:all .15s;display:flex}.share-btn:hover{border-color:var(--accent);background:#4ade801a;transform:scale(1.05)}.share-btn.share-native{background:#4ade801a;border-color:#4ade804d}.gallery-grid{gap:1rem;margin:2rem 0;display:grid}.gallery-grid-2{grid-template-columns:repeat(2,1fr)}.gallery-grid-3{grid-template-columns:repeat(3,1fr)}.gallery-grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width:768px){.gallery-grid-3,.gallery-grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.gallery-grid-2,.gallery-grid-3,.gallery-grid-4{grid-template-columns:1fr}}.gallery-item{border:1px solid var(--border);cursor:pointer;aspect-ratio:4/3;background:0 0;border-radius:8px;padding:0;transition:border-color .15s,transform .15s;position:relative;overflow:hidden}.gallery-item:hover{border-color:var(--accent);transform:scale(1.02)}.gallery-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.gallery-thumbnail{object-fit:cover;width:100%;height:100%;transition:transform .3s}.gallery-item:hover .gallery-thumbnail{transform:scale(1.05)}.gallery-caption{color:#fff;font-family:var(--font-mono);text-align:left;opacity:0;background:linear-gradient(#0000,#000000b3);padding:.75rem;font-size:.75rem;transition:opacity .2s;position:absolute;bottom:0;left:0;right:0}.gallery-item:hover .gallery-caption,.gallery-item:focus-visible .gallery-caption{opacity:1}.lightbox-overlay{z-index:10000;background:#000000f2;justify-content:center;align-items:center;animation:.2s lightbox-fade-in;display:flex;position:fixed;inset:0}@keyframes lightbox-fade-in{0%{opacity:0}to{opacity:1}}.lightbox-close{color:#fff;cursor:pointer;z-index:10001;background:#ffffff1a;border:1px solid #fff3;border-radius:50%;width:44px;height:44px;font-size:1.25rem;transition:background .15s,transform .15s;position:absolute;top:1rem;right:1rem}.lightbox-close:hover{background:#fff3;transform:scale(1.1)}.lightbox-nav{color:#fff;cursor:pointer;z-index:10001;background:#ffffff1a;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.5rem;transition:background .15s,transform .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-nav:hover{background:#fff3;transform:translateY(-50%)scale(1.1)}.lightbox-prev{left:1rem}.lightbox-next{right:1rem}@media (max-width:640px){.lightbox-nav{width:40px;height:40px;font-size:1.25rem}.lightbox-prev{left:.5rem}.lightbox-next{right:.5rem}}.lightbox-content{flex-direction:column;align-items:center;max-width:90vw;max-height:85vh;display:flex;position:relative}.lightbox-image{object-fit:contain;border-radius:4px;max-width:100%;max-height:75vh;animation:.2s lightbox-image-in}@keyframes lightbox-image-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.lightbox-loading{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.lightbox-spinner{border:3px solid #fff3;border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite lightbox-spin}@keyframes lightbox-spin{to{transform:rotate(360deg)}}.lightbox-caption{color:#ffffffe6;text-align:center;max-width:600px;margin-top:1rem;font-size:.9rem}.lightbox-counter{font-family:var(--font-mono);color:#ffffff80;margin-top:.5rem;font-size:.75rem}.lightbox-hints{font-family:var(--font-mono);color:#fff6;gap:1.5rem;font-size:.7rem;display:flex;position:absolute;bottom:1rem;left:50%;transform:translate(-50%)}.lightbox-hints kbd{background:#ffffff1a;border-radius:4px;padding:.2rem .4rem;font-size:.65rem}@media (max-width:640px){.lightbox-hints{display:none}}@media (prefers-reduced-motion:reduce){.lightbox-overlay,.lightbox-image,.gallery-thumbnail,.gallery-item,.lightbox-spinner{animation:none!important}}.prose sup a[data-footnote-ref]{font-family:var(--font-mono);color:var(--accent);vertical-align:super;padding:0 .15em;font-size:.75em;line-height:0;text-decoration:none}.prose sup a[data-footnote-ref]:hover{text-decoration:underline}.prose sup a[data-footnote-ref]:before{content:"["}.prose sup a[data-footnote-ref]:after{content:"]"}.prose section[data-footnotes]{border-top:1px solid var(--border);color:var(--muted-foreground);margin-top:3rem;padding-top:2rem;font-size:.875rem}.prose section[data-footnotes] h2{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem;font-size:.75rem}.prose section[data-footnotes] ol{margin:0;padding-left:1.5rem}.prose section[data-footnotes] li{margin-bottom:.75rem;padding-left:.25rem}.prose section[data-footnotes] li p{margin:0;display:inline}.prose section[data-footnotes] a[data-footnote-backref]{font-family:var(--font-mono);color:var(--accent);margin-left:.25em;font-size:.875em;text-decoration:none}.prose section[data-footnotes] a[data-footnote-backref]:hover{text-decoration:underline}html:has(.prose section[data-footnotes]){scroll-behavior:smooth}.prose section[data-footnotes] li:target{background:#4ade801a;border-radius:4px;margin-left:-.5rem;margin-right:-.5rem;padding:.5rem}.post-tags{flex-wrap:wrap;gap:.5rem;display:inline-flex}.post-tag{color:var(--accent);text-decoration:none}.post-tag:hover{text-decoration:underline}.clear-history-btn{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:4px;padding:.25rem .5rem;font-size:.8rem;transition:all .2s}.clear-history-btn:hover{border-color:var(--accent);color:var(--accent)}
