@font-face{font-family:IBM Plex Mono;font-style:italic;font-weight:300;font-display:swap;src:url(../media/6fcea7c134f77b9c-s.1b_4vv-79e2ok.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:IBM Plex Mono;font-style:italic;font-weight:300;font-display:swap;src:url(../media/fc9ff45e7db276e6-s.21ry847k3t-qr.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:italic;font-weight:300;font-display:swap;src:url(../media/eb0c5870d77757e2-s.20i_4bs815gg2.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:IBM Plex Mono;font-style:italic;font-weight:300;font-display:swap;src:url(../media/b034a21f3b57f1a3-s.206_dyf2v-gav.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:IBM Plex Mono;font-style:italic;font-weight:300;font-display:swap;src:url(../media/53cb5b17add74ab8-s.p.3e0kerqe6_i1i.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:IBM Plex Mono;font-style:italic;font-weight:400;font-display:swap;src:url(../media/3e29d6c8df211d66-s.2fjn5wyoc8c3z.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:IBM Plex Mono;font-style:italic;font-weight:400;font-display:swap;src:url(../media/2956efe007516702-s.24gcppc11gd-i.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:italic;font-weight:400;font-display:swap;src:url(../media/658fb2a9c2a0ea5d-s.169l8ivy4izmr.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:IBM Plex Mono;font-style:italic;font-weight:400;font-display:swap;src:url(../media/7c125d9da13f978a-s.0b4mqo-sfa1f8.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:IBM Plex Mono;font-style:italic;font-weight:400;font-display:swap;src:url(../media/a46a75cfd765634f-s.p.0i_4norqw3xaj.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:IBM Plex Mono;font-style:italic;font-weight:500;font-display:swap;src:url(../media/c752d4f65d3e00e0-s.00kzfh42g81zi.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:IBM Plex Mono;font-style:italic;font-weight:500;font-display:swap;src:url(../media/151f074d78c0031d-s.1ig181_youlyy.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:italic;font-weight:500;font-display:swap;src:url(../media/3ee1b1187b5e60bc-s.22f3ku2r0jx8o.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:IBM Plex Mono;font-style:italic;font-weight:500;font-display:swap;src:url(../media/ecc49aa4bef31f74-s.0zuqn279o6xpm.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:IBM Plex Mono;font-style:italic;font-weight:500;font-display:swap;src:url(../media/21c1dee959b18079-s.p.0oe7mrm8dlntz.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:IBM Plex Mono;font-style:italic;font-weight:600;font-display:swap;src:url(../media/6a793dba767aa497-s.2v37vtbbtis5d.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:IBM Plex Mono;font-style:italic;font-weight:600;font-display:swap;src:url(../media/cf54ce4ee2f7915c-s.3_uvgl0ggvvu4.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:italic;font-weight:600;font-display:swap;src:url(../media/bb1a7daf057744c1-s.3djpqazqz-03q.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:IBM Plex Mono;font-style:italic;font-weight:600;font-display:swap;src:url(../media/eb34f5373173429c-s.1jfq-52wihoz3.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:IBM Plex Mono;font-style:italic;font-weight:600;font-display:swap;src:url(../media/cb74272c1a4b1482-s.p.1k2rfpv6k8j6x.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:IBM Plex Mono;font-style:italic;font-weight:700;font-display:swap;src:url(../media/ad21f0acf5c10a61-s.0h06o1dpw1rov.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:IBM Plex Mono;font-style:italic;font-weight:700;font-display:swap;src:url(../media/bb9b18854658c251-s.1u22uz3mc3ks7.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:italic;font-weight:700;font-display:swap;src:url(../media/397c48bdc865c14c-s.18qfz8wulf236.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:IBM Plex Mono;font-style:italic;font-weight:700;font-display:swap;src:url(../media/e7a7eeb0f3bf0de1-s.1hpzr65mrm31_.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:IBM Plex Mono;font-style:italic;font-weight:700;font-display:swap;src:url(../media/60ec66547305f91a-s.p.00w9pdq4k75rv.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:IBM Plex Mono;font-style:normal;font-weight:300;font-display:swap;src:url(../media/43fa41482cbf5ee5-s.3amgd1kcyepsq.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:IBM Plex Mono;font-style:normal;font-weight:300;font-display:swap;src:url(../media/51430d34a2dfca2f-s.3de9nsjscz49m.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:300;font-display:swap;src:url(../media/3b8d31b6d618cd27-s.0lvwaxusazhvz.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:IBM Plex Mono;font-style:normal;font-weight:300;font-display:swap;src:url(../media/7a2e4ff4560f5ac3-s.12kkb0tcdhpay.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:IBM Plex Mono;font-style:normal;font-weight:300;font-display:swap;src:url(../media/e9d5b069f63ab620-s.p.43bojm9sp3v_v.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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.0rgnxg2b64rzs.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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.2vemzm0itqzfy.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.3cb5lpr2l6xud.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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.1u30mmyq6lnsd.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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.40sczeszzbjw1.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.1yd4_i3e35931.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.1qc6dx89jd2qv.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.29yke99gs9qpn.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.1i-sca43-qwng.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.0oace-s_gkfks.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:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/6ff74e33ebd7bca3-s.352ti9pm7m6qh.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:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1a69062cfe6f77f8-s.0o-3_g79811ob.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9a4838fcda0d1bca-s.0ngr-xkgqz1kf.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:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2e95a7d252b9825a-s.15orukf5wyxb5.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:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/23b7a97ae3b5c134-s.p.226pwps5o-gq_.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:IBM Plex Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/f53f4557ddd9f7a6-s.1u-lvzo58r3-e.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:IBM Plex Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/5256dd17dd2ccf14-s.37c107x1d-cfz.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/fe48c93add1d142c-s.3_gspotjv4tkw.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:IBM Plex Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/5689d89b20a4bd5b-s.0m-w082keobar.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:IBM Plex Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/a7e15459c1805da0-s.p.3y9b8znjr2455.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:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_b508902d-module__AHCSsq__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback}.ibm_plex_mono_b508902d-module__AHCSsq__variable{--font-plex-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
*,: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;line-height:1.5;font-family:var(--font-geist-sans), system-ui, sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}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-family:var(--font-geist-mono), monospace;font-feature-settings:normal;font-variation-settings:normal;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}*{box-sizing:border-box;border-style:solid;border-width:0}html{scroll-behavior:smooth}body{background:var(--paper);min-height:100vh;color:var(--ink);font-family:var(--font-plex-mono), ui-monospace, monospace;font-feature-settings:"ss01", "zero";-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;overflow-x:hidden}::selection{color:#2a2c3b;background:#55587938}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:#f0e8d2}::-webkit-scrollbar-thumb{background:var(--blue);border:3px solid #f0e8d2}::-webkit-scrollbar-thumb:hover{background:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pointer-events-none{pointer-events:none}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.-bottom-28{bottom:-7rem}.-left-24{left:-6rem}.-right-24{right:-6rem}.-top-24{top:-6rem}.bottom-0{bottom:0}.left-4{left:1rem}.top-4{top:1rem}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.mb-6{margin-bottom:1.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.block{display:block}.inline{display:inline}.flex{display:flex}.table{display:table}.contents{display:contents}.hidden{display:none}.aspect-\[16\/9\]{aspect-ratio:16/9}.h-2\.5{height:.625rem}.h-64{height:16rem}.h-72{height:18rem}.min-h-\[100dvh\]{min-height:100dvh}.min-h-\[2rem\]{min-height:2rem}.min-h-\[4rem\]{min-height:4rem}.w-2\.5{width:.625rem}.w-64{width:16rem}.w-72{width:18rem}.w-full{width:100%}.max-w-xl{max-width:36rem}.grow{flex-grow:1}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;user-select:none}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.overflow-hidden{overflow:hidden}.whitespace-pre-line{white-space:pre-line}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.border{border-width:1px}.border-0{border-width:0}.border-\[\#546B41\]\/25{border-color:#546b4140}.border-\[\#99AD7A\]\/40{border-color:#99ad7a66}.bg-\[\#546B41\]\/20{background-color:#546b4133}.bg-\[\#99AD7A\]\/30{background-color:#99ad7a4d}.bg-\[\#DCCCAC\]{--tw-bg-opacity:1;background-color:rgb(220 204 172/var(--tw-bg-opacity,1))}.bg-\[\#FFF8EC\]\/80{background-color:#fff8eccc}.bg-gradient-to-b{background-image:linear-gradient(to bottom, var(--tw-gradient-stops))}.from-\[\#FFF8EC\]{--tw-gradient-from:#fff8ec var(--tw-gradient-from-position);--tw-gradient-to:#fff8ec00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.via-\[\#FFF8EC\]{--tw-gradient-to:#fff8ec00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), #fff8ec var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-\[\#DCCCAC\]{--tw-gradient-to:#dcccac var(--tw-gradient-to-position)}.object-cover{object-fit:cover}.p-0{padding:0}.p-6{padding:1.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.text-left{text-align:left}.text-center{text-align:center}.font-sans{font-family:var(--font-geist-sans), system-ui, sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.lowercase{text-transform:lowercase}.italic{font-style:italic}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.text-\[\#546B41\]{--tw-text-opacity:1;color:rgb(84 107 65/var(--tw-text-opacity,1))}.text-\[\#546B41\]\/50{color:#546b4180}.text-\[\#546B41\]\/70{color:#546b41b3}.shadow-\[0_10px_40px_rgba\(84\,107\,65\,0\.12\)\]{--tw-shadow:0 10px 40px #546b411f;--tw-shadow-colored:0 10px 40px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-\[0_20px_60px_rgba\(84\,107\,65\,0\.25\)\]{--tw-shadow:0 20px 60px #546b4140;--tw-shadow-colored:0 20px 60px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.outline-none{outline-offset:2px;outline:2px solid #0000}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.ring-\[\#99AD7A\]\/50{--tw-ring-color:#99ad7a80}.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)}.blur-3xl{--tw-blur:blur(64px);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)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.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)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--paper:#faf7f0;--paper-2:#f4ebd3;--ink:#2a2c3b;--ink-soft:#2a2c3b9e;--ink-prose:#2a2c3bb8;--ink-faint:#2a2c3b66;--accent:#555879;--accent-deep:#3d3f5c;--blue:#98a1bc;--beige:#ded3c4;--rule:#2a2c3b21;--rule-2:#2a2c3b4d;--green:#3fb27f;--dark-bg:#23242f;--dark-text:#ede7d6;--dark-head:#f4ebd3;--dark-muted:#7e86a6;--dark-accent:#98a1bc;--dark-accent-2:#b9ae97;--dark-rule:#98a1bc33;--topbar-h:54px;--content-max:1200px;--content-pad:40px;--sidebar-w:132px}@keyframes caret-blink{0%,48%{opacity:1}49%,to{opacity:0}}.reveal{opacity:0;transition:opacity .7s cubic-bezier(.2,.6,.2,1),transform .7s cubic-bezier(.2,.6,.2,1);transition-delay:var(--reveal-delay,0s);will-change:opacity, transform;transform:translateY(16px)}.reveal.is-visible{opacity:1;transform:none}.reveal.reveal--left{transform:translate(-14px)}.reveal.reveal--left.is-visible{transform:none}.section{scroll-margin-top:var(--topbar-h);border-bottom:1px solid var(--rule)}.section--warm{background:var(--paper-2)}.section-grid{max-width:var(--content-max);padding:80px var(--content-pad);grid-template-columns:var(--sidebar-w) minmax(0, 1fr);gap:40px;margin:0 auto;display:grid}.section-index{align-self:start;position:sticky;top:86px}.section-index__num{letter-spacing:.2em;color:var(--ink-faint);font-size:11px}.section-index__label{letter-spacing:.2em;color:var(--ink);margin-top:8px;font-size:11px;line-height:1.7}.section-index__cmd{color:var(--ink-faint);margin-top:14px;font-size:11px}.caret{vertical-align:-3px;background:#2a2c3b80;width:.58em;height:1.02em;margin-left:.14em;animation:1.05s step-end infinite caret-blink;display:inline-block}.intro-copy{max-width:60ch;color:var(--ink-prose);margin:0 0 40px;font-size:14px;line-height:1.7}.topbar{z-index:50;background:var(--paper);border-bottom:1px solid var(--rule);animation:.55s cubic-bezier(.2,.6,.2,1) both topbar-in;position:sticky;top:0}@keyframes topbar-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}.topbar__inner{max-width:var(--content-max);padding:0 var(--content-pad);height:var(--topbar-h);justify-content:space-between;align-items:center;gap:24px;margin:0 auto;display:flex}.topbar__brand{color:var(--ink);letter-spacing:.01em;white-space:nowrap;align-items:baseline;gap:8px;font-size:13px;text-decoration:none;display:flex}.topbar__dot{background:var(--green);border-radius:50%;align-self:center;width:7px;height:7px;display:inline-block;box-shadow:0 0 0 3px #3fb27f29}.topbar__name{font-weight:600}.topbar__tld{color:var(--ink-faint)}.topbar__crumb{color:#2a2c3b80;margin-left:2px;font-size:12px}.topbar__nav{letter-spacing:.16em;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:22px;font-size:11px;display:flex}.topbar__link{color:var(--ink-soft);text-transform:uppercase;text-decoration:none;transition:color .2s}.topbar__link:hover{color:var(--ink)}.topbar__link.is-active{color:var(--accent)}.topbar__link--contact{color:var(--ink);border-bottom:1px solid var(--accent);padding-bottom:1px}.topbar__link--contact:hover{color:var(--accent)}.hero__inner{max-width:var(--content-max);padding:76px var(--content-pad) 68px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:48px;margin:0 auto;display:grid}.hero__prompt{color:var(--ink-soft);margin-bottom:34px;font-size:13px}.hero__prompt-sign{color:var(--ink-faint)}.hero__name{letter-spacing:-.045em;color:var(--ink);margin:0;font-size:clamp(56px,10.5vw,132px);font-weight:600;line-height:.9}.hero__title{color:var(--ink);letter-spacing:.01em;margin-top:30px;font-size:clamp(15px,1.6vw,19px);font-weight:500}.hero__title .sep{color:var(--ink-faint);margin:0 .5em}.hero__intro{max-width:56ch;color:var(--ink-prose);margin:22px 0 0;font-size:14.5px;line-height:1.7}.hero__status{color:var(--ink-soft);flex-wrap:wrap;gap:8px 26px;margin-top:26px;font-size:12.5px;display:flex}.hero__status .sep{color:var(--ink-faint)}.hero__status strong{color:var(--ink);font-weight:400}.dot-green{color:var(--green)}.hero__figure{width:clamp(120px,15vw,168px);margin:0}.frame{border:1px solid var(--rule-2);background:var(--paper);padding:6px}.frame__clip{display:block;position:relative;overflow:hidden}.hero__photo{aspect-ratio:4/5;object-fit:cover;object-position:50% 10%;width:100%;height:auto;transition:filter .5s,transform .6s cubic-bezier(.2,.6,.2,1);display:block}.hero__figure:hover .hero__photo{filter:contrast(1.03)saturate(1.06);transform:scale(1.04)}.figcaption{letter-spacing:.16em;color:var(--ink-faint);margin-top:8px;font-size:10px}.metric-strip-wrap{max-width:var(--content-max);padding:0 var(--content-pad) 40px;margin:0 auto}.metric-strip{border-top:1px solid var(--rule-2);grid-template-columns:repeat(4,1fr);display:grid}.metric{border-right:1px solid var(--rule);padding:22px 22px 4px}.metric:first-child{padding-left:0}.metric:last-child{border-right:0;padding-right:0}.metric__num{letter-spacing:-.03em;color:var(--ink);font-size:clamp(24px,2.6vw,32px);font-weight:600}.metric__label{letter-spacing:.16em;color:var(--ink-faint);margin-top:4px;font-size:10.5px}.work-article{border-top:1px solid var(--rule-2);grid-template-columns:minmax(0,1fr) minmax(0,380px);align-items:start;gap:44px;padding:28px 0 44px;display:grid}.work-article:last-child{padding-bottom:4px}.work-article__meta{letter-spacing:.14em;color:var(--ink-faint);flex-wrap:wrap;align-items:baseline;gap:14px;margin-bottom:14px;font-size:11px;display:flex}.work-article__num{color:#2a2c3b8c;font-weight:600}.work-article__status{margin-left:auto}.work-article__status--live{color:var(--green)}.work-article__title{letter-spacing:-.035em;color:var(--ink);margin:0;font-size:clamp(26px,3.4vw,38px);font-weight:600;line-height:1.02}.work-article__body{color:var(--ink-prose);max-width:52ch;margin:16px 0 0;font-size:14px;line-height:1.72}.work-article__tech{color:var(--ink-soft);margin:20px 0 0;font-size:12px;line-height:1.9}.sep-faint{color:var(--ink-faint)}.work-article__links{flex-wrap:wrap;gap:22px;margin:22px 0 0;font-size:12.5px;display:flex}.link-underline{color:var(--accent);border-bottom:1px solid #0000;text-decoration:none;transition:border-color .2s}.link-underline:hover{border-color:var(--accent)}.work-figure{margin:0}.work-figure__frame{border:1px solid var(--rule-2);background:var(--paper);padding:6px;position:relative;overflow:hidden}.work-figure__img{aspect-ratio:16/10;object-fit:cover;width:100%;height:auto;transition:transform .6s cubic-bezier(.2,.6,.2,1),filter .5s;display:block}.work-figure__img--contain{object-fit:contain;background:var(--paper)}.work-figure:hover .work-figure__img{filter:contrast(1.03)saturate(1.04);transform:scale(1.04)}.work-figure__overlay{pointer-events:none;background:linear-gradient(#0000 45%,#2a2c3b6b);justify-content:flex-start;align-items:flex-end;padding:12px;display:flex;position:absolute;inset:6px}.work-figure__overlay span{letter-spacing:.16em;color:var(--dark-head);font-size:10px}.work-figure .figcaption{letter-spacing:.14em}.gitlog__cmd{color:var(--ink-faint);letter-spacing:.06em;margin-bottom:8px;font-size:11px}.gitlog__row{border-top:1px solid var(--rule);grid-template-columns:78px minmax(0,1fr) 128px;align-items:baseline;gap:20px;padding:20px 8px 20px 0;transition:background .2s,padding-left .2s;display:grid}.gitlog__row:first-of-type{border-top:1px solid var(--rule-2)}.gitlog__row:last-of-type{border-bottom:1px solid var(--rule-2)}.gitlog__row:hover{background:#2a2c3b08;padding-left:8px}.gitlog__hash{color:#2a2c3b80;font-size:12px}.gitlog__title{color:var(--ink);letter-spacing:-.01em;font-size:15px;font-weight:600}.gitlog__at{color:var(--ink-faint);font-weight:400}.gitlog__summary{color:var(--ink-prose);max-width:66ch;margin-top:7px;font-size:13px;line-height:1.55}.gitlog__hint{color:var(--ink-faint);margin-top:8px;font-size:11.5px;transition:color .2s}.gitlog__ins{color:var(--green)}.gitlog__row:hover .gitlog__hint{color:var(--accent)}.gitlog__active{color:var(--ink-faint);margin-top:7px;font-size:12px}.gitlog__tech{color:var(--ink-faint);margin-top:8px;font-size:11px}.gitlog__dates{text-align:right;color:var(--ink-soft);font-size:11px;line-height:1.5}.gitlog__toggle{color:var(--accent);white-space:pre}.gitlog__row[data-expandable]{cursor:pointer}.gitlog__row:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.gitlog__show{border-top:1px solid var(--rule-2);grid-column:1/-1;margin-top:18px;padding-top:18px}.gitlog__show-line{color:var(--ink);overflow-wrap:anywhere;font-size:12px}.gitlog__show-hash{color:var(--ink-faint)}.gitlog__show-meta{color:var(--ink-soft);margin-top:4px;font-size:12px}.gitlog__diffstat{color:var(--ink-faint);letter-spacing:.02em;margin-top:11px;font-size:11px}.gitlog__difflist{border:1px solid var(--rule);margin-top:14px}.gitlog__diff{border-bottom:1px solid var(--rule);background:#3fb27f0d;grid-template-columns:36px minmax(0,1fr);display:grid}.gitlog__diff:last-child{border-bottom:none}.gitlog__diff-plus{text-align:center;color:var(--green);background:#3fb27f1a;padding:10px 0}.gitlog__diff-text{color:var(--ink);padding:10px 16px;font-size:13px;line-height:1.6}.row-collapse{opacity:0;grid-column:1/-1;grid-template-rows:0fr;transition:grid-template-rows .3s cubic-bezier(.2,.6,.2,1),opacity .3s;display:grid}.row-collapse.is-open{opacity:1;grid-template-rows:1fr}.row-collapse__inner{min-height:0;overflow:hidden}.proj-row{color:inherit;border-top:1px solid var(--rule);cursor:pointer;grid-template-columns:56px minmax(0,1fr) 120px;align-items:baseline;gap:20px;padding:22px 0;transition:background .2s,padding-left .2s;display:grid}.proj-row:first-of-type{border-top:1px solid var(--rule-2)}.proj-row:last-of-type{border-bottom:1px solid var(--rule-2)}.proj-row:hover{background:#2a2c3b08;padding-left:8px}.proj-row:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.proj-row__num{color:var(--ink-faint);letter-spacing:.1em;white-space:pre;font-size:12px}.proj-row__toggle{color:var(--accent);white-space:pre}.proj-row__name{letter-spacing:-.02em;color:var(--ink);font-size:17px;font-weight:600}.proj-row__tagline{color:var(--ink-prose);margin-top:6px;font-size:13px;line-height:1.5}.proj-row__hint{color:var(--ink-faint);margin-top:8px;font-size:11.5px;transition:color .2s}.proj-row:hover .proj-row__hint{color:var(--accent)}.proj-row__tech{color:var(--ink-faint);margin-top:8px;font-size:11px;line-height:1.8}.proj-row__link-wrap{text-align:right;align-self:center}.proj-row__link{color:var(--accent);font-size:11.5px;text-decoration:none}.proj-row__link:hover{text-decoration:underline}.proj-row__readme{border-top:1px solid var(--rule-2);grid-column:1/-1;margin-top:16px;padding-top:16px}.proj-row__readme-cmd{color:var(--ink-faint);letter-spacing:.04em;margin-bottom:11px;font-size:11px}.proj-row__prompt{color:var(--ink-faint)}.proj-row__readme-body{max-width:82ch}.proj-row__sentence{color:var(--ink-prose);margin-top:9px;padding-left:18px;font-size:13.5px;line-height:1.66;position:relative}.proj-row__marker{color:var(--ink-faint);position:absolute;left:0}.proj-row__open{color:var(--accent);border-bottom:1px solid var(--accent);margin-top:15px;padding-bottom:1px;font-size:12.5px;text-decoration:none;display:inline-block}.tree{font-size:14px;line-height:1.5}.tree__root{color:var(--ink);margin-bottom:18px}.tree__row{align-items:baseline;gap:16px;padding:9px 8px 9px 0;transition:background .2s,padding-left .2s;display:flex}.tree__row:hover{background:#2a2c3b08;padding-left:8px}.tree__glyph{color:var(--ink-faint);white-space:pre}.tree__label{width:130px;color:var(--ink);flex:none;font-weight:500;transition:color .2s}.tree__row:hover .tree__label{color:var(--accent)}.tree__items{color:var(--ink-soft);font-size:13px}.edu-head{border-top:1px solid var(--rule-2);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:24px;padding-top:28px;display:grid}.edu-head__school{letter-spacing:-.03em;color:var(--ink);margin:0;font-size:clamp(24px,3vw,34px);font-weight:600}.edu-head__degree{color:var(--ink);margin-top:12px;font-size:14px}.edu-head__place{color:var(--ink-soft);margin-top:6px;font-size:12.5px}.edu-head__gpa-wrap{text-align:right}.edu-head__gpa{letter-spacing:-.03em;color:var(--ink);font-size:clamp(28px,3.4vw,40px);font-weight:600}.edu-head__gpa small{color:var(--ink-faint);font-size:.5em;font-weight:400}.edu-head__gpa-label{letter-spacing:.16em;color:var(--ink-faint);margin-top:4px;font-size:10.5px}.edu-block{border-top:1px solid var(--rule);margin-top:34px;padding-top:24px}.edu-block+.edu-block{margin-top:28px}.edu-block__label{letter-spacing:.18em;color:var(--ink-faint);margin-bottom:14px;font-size:10.5px}.edu-block__courses{color:var(--ink-soft);font-size:13px;line-height:2}.edu-block__certs{color:var(--ink-soft);font-size:13px;line-height:1.9}.contact{scroll-margin-top:var(--topbar-h);background:var(--dark-bg);color:var(--dark-text)}.contact__inner{max-width:var(--content-max);padding:80px var(--content-pad) 44px;margin:0 auto}.contact__prompt{color:var(--dark-accent);margin-bottom:40px;font-size:13px}.contact__prompt .user{color:var(--dark-muted)}.contact__prompt .tilde{color:var(--dark-accent-2)}.contact__caret{background:var(--dark-accent);vertical-align:-3px;width:.58em;height:1.02em;margin-left:.2em;animation:1.05s step-end infinite caret-blink;display:inline-block}.contact__head{letter-spacing:-.045em;color:var(--dark-head);margin:0;font-size:clamp(40px,7vw,88px);font-weight:600;line-height:.95}.contact__grid{background:var(--dark-rule);border:1px solid var(--dark-rule);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1px;margin-top:44px;display:grid}.contact__cell{background:var(--dark-bg);color:var(--dark-text);padding:22px 20px;text-decoration:none;transition:background .2s}.contact__cell:hover{background:#2c2e3b}.contact__cell-label{letter-spacing:.18em;color:var(--dark-muted);font-size:10px}.contact__cell-value{color:var(--dark-head);margin-top:10px;font-size:14px}.contact__cell-value .arrow{color:var(--dark-accent)}@media (max-width:860px){:root{--content-pad:24px}.section-grid{padding:56px var(--content-pad);grid-template-columns:minmax(0,1fr);gap:24px}.section-index{align-items:baseline;gap:12px;display:flex;position:static}.section-index__label{margin-top:0}.section-index__label br{display:none}.section-index__cmd{margin-top:0;margin-left:auto}.hero__inner{padding:48px var(--content-pad) 40px;grid-template-columns:minmax(0,1fr);gap:32px}.hero__figure{width:clamp(120px,34vw,168px)}.metric-strip{grid-template-columns:repeat(2,1fr)}.metric{padding:18px 18px 4px}.metric:nth-child(odd){padding-left:0}.metric:nth-child(2n){border-right:0;padding-right:0}.metric:first-child,.metric:nth-child(2){border-bottom:1px solid var(--rule)}.work-article{grid-template-columns:minmax(0,1fr);gap:24px}.gitlog__row{grid-template-columns:62px minmax(0,1fr);gap:6px 16px}.gitlog__dates{text-align:left;grid-column:2;margin-top:6px}.proj-row{grid-template-columns:44px minmax(0,1fr);gap:8px 16px}.proj-row__link-wrap{text-align:left;grid-column:2;margin-top:8px}.tree__row{flex-wrap:wrap;gap:4px 12px}.tree__label{width:auto}.edu-head{grid-template-columns:minmax(0,1fr)}.edu-head__gpa-wrap{text-align:left}.link-underline,.proj-row__link,.proj-row__open{padding-top:5px;padding-bottom:5px;display:inline-block}}@media (max-width:700px){.topbar__inner{flex-wrap:wrap;gap:4px 16px;height:auto;padding-top:8px;padding-bottom:8px}.topbar__crumb{display:none}.topbar__nav{justify-content:flex-start;gap:2px 14px;width:100%;font-size:10px}.topbar__link{padding:7px 0;display:inline-block}.topbar__link--contact{text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:3px;border-bottom:0;padding-bottom:7px}.section,.contact{scroll-margin-top:112px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transition:none;transform:none}.caret,.contact__caret,.topbar,.cg-tabpanel{animation:none}.row-collapse,.hero__photo,.work-figure__img{transition:none}}.cg-root{min-height:100vh}.cg-strong{color:var(--ink)}.cg-accent{color:var(--accent)}.cg-pipe-sep{color:var(--ink-faint)}.cg-hero{border-bottom:1px solid var(--rule)}.cg-hero__inner{max-width:var(--content-max);padding:64px var(--content-pad) 52px;margin:0 auto}.cg-hero__prompt{color:var(--ink-soft);margin-bottom:26px;font-size:13px}.cg-hero__h1{letter-spacing:-.045em;color:var(--ink);margin:0;font-size:clamp(40px,7vw,84px);font-weight:600;line-height:.92}.cg-hero__intro{max-width:64ch;color:var(--ink-prose);margin:24px 0 0;font-size:14.5px;line-height:1.72}.cg-hero__meta{color:var(--ink-soft);flex-wrap:wrap;gap:8px 26px;margin-top:24px;font-size:12px;display:flex}.cg-section{border-bottom:1px solid var(--rule)}.cg-section__inner{max-width:var(--content-max);padding:72px var(--content-pad);margin:0 auto}.cg-section__head{align-items:baseline;gap:16px;margin-bottom:22px;display:flex}.cg-section__num{letter-spacing:.2em;color:var(--ink-faint);font-size:11px}.cg-section__label{letter-spacing:.2em;color:var(--ink);font-size:11px}.cg-section__cmd{color:var(--ink-faint);margin-left:auto;font-size:11px}.cg-lead{max-width:70ch;color:var(--ink-soft);margin:0 0 22px;font-size:13px;line-height:1.7}.cg-pipe{border:1px solid var(--rule-2);background:var(--paper);padding:30px 30px 26px;overflow-x:auto}.cg-rail-label{letter-spacing:.18em;color:var(--ink-faint);margin-bottom:12px;font-size:10px}.cg-rail-label--gap{margin-top:26px}.cg-rail{align-items:stretch;gap:0;min-width:640px;display:flex}.cg-node{border:1px solid var(--rule-2);background:var(--paper);min-width:130px;padding:12px 14px;transition:border-color .35s,background .35s,box-shadow .35s}.cg-node--wide{min-width:210px}.cg-node.is-active{border-color:#2a2c3b8c}.cg-node__title{color:var(--ink);font-size:12.5px;font-weight:600;line-height:1.7}.cg-node__sub{color:var(--ink-faint);margin-top:5px;font-size:10px}.cg-node--dark{border-color:var(--ink);background:var(--dark-bg);min-width:260px}.cg-node--dark .cg-node__title{color:var(--dark-head)}.cg-node--dark .cg-node__sub{color:var(--blue)}.cg-node--dark.is-active{border-color:#98a1bc8c}.cg-conn{flex:1;align-items:center;min-width:56px;display:flex;position:relative}.cg-conn--labeled{min-width:132px}.cg-conn__label{text-align:center;letter-spacing:.06em;color:var(--ink-faint);white-space:nowrap;font-size:9.5px;position:absolute;top:calc(50% - 13px);left:0;right:0}.cg-conn__line{background:var(--rule-2);height:1px;position:absolute;top:50%;left:6px;right:8px}.cg-conn__arrow{border-top:3px solid #0000;border-bottom:3px solid #0000;border-left:6px solid var(--rule-2);width:0;height:0;position:absolute;top:50%;right:2px;transform:translateY(-50%)}.cg-packet{background:#2a2c3b47;width:4px;height:4px;animation:3.4s linear infinite cg-flow;position:absolute;top:calc(50% - 2px)}@keyframes cg-flow{0%{opacity:0;left:-3%}15%{opacity:.5}85%{opacity:.5}to{opacity:0;left:103%}}.cg-merge{color:var(--ink-faint);justify-content:center;margin:18px 0 6px;font-size:14px;display:flex}.cg-pipe__console{border-top:1px solid var(--rule);align-items:center;gap:10px;margin-top:24px;padding-top:14px;font-size:12px;display:flex}.cg-pipe__dot{background:var(--green);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #3fb27f29}.cg-pipe__stage-label{color:var(--ink-faint)}.cg-pipe__stage{color:var(--ink-soft)}.cg-auth{border:1px solid var(--rule-2);background:var(--paper-2);flex-wrap:wrap;align-items:center;gap:14px 18px;padding:16px 18px;transition:border-color .2s,background .2s;display:flex}.cg-auth.is-unlocked{background:#3fb27f12;border-color:#3fb27f80}.cg-auth__status{align-items:center;gap:10px;display:flex}.cg-lockdot{background:var(--ink-faint);border-radius:2px;flex:none;width:9px;height:9px}.cg-lockdot.is-on{background:var(--green)}.cg-auth__title{color:var(--ink);font-size:12.5px;font-weight:600}.cg-auth__sub{color:var(--ink-soft);margin-top:2px;font-size:11px}.cg-auth__actions{align-items:center;gap:10px;margin-left:auto;display:flex}.cg-auth__ok{color:var(--green);letter-spacing:.04em;font-size:11px}.cg-auth__ro{color:var(--ink-soft);letter-spacing:.04em;border:1px solid var(--rule-2);white-space:nowrap;padding:8px 12px;font-size:11px}.cg-auth__err{color:#c4553b;width:100%;font-size:11px}.cg-model{border:1px solid var(--rule-2);background:var(--paper);flex-wrap:wrap;align-items:center;gap:12px 16px;margin-top:14px;padding:14px 16px;display:flex}.cg-model__label{letter-spacing:.14em;color:var(--ink);font-size:11px;font-weight:600}.cg-model__sub{color:var(--ink-soft);margin-top:3px;font-size:10.5px}.cg-model__pick{align-items:center;gap:10px;margin-left:auto;display:flex}.cg-model__eq{color:var(--ink-faint);font-size:10.5px}.cg-dropdown{display:inline-block;position:relative}.cg-dropdown__btn{min-width:190px;color:var(--ink);background:var(--paper-2);border:1px solid var(--rule-2);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;font-family:inherit;font-size:12px;transition:border-color .2s;display:inline-flex}.cg-dropdown__btn:hover:not(:disabled){border-color:var(--accent)}.cg-dropdown__btn:disabled{cursor:not-allowed;opacity:.6}.cg-dropdown__caret{color:var(--ink-soft);font-size:10px;transition:transform .18s}.cg-dropdown__caret.is-open{transform:rotate(180deg)}.cg-dropdown__menu{z-index:40;background:var(--paper);border:1px solid var(--rule-2);transform-origin:top;min-width:100%;margin:0;padding:4px;list-style:none;animation:.14s cubic-bezier(.2,.6,.2,1) cg-dd-in;position:absolute;top:calc(100% + 4px);right:0}.cg-dropdown__menu.is-closing{pointer-events:none;animation:.13s ease-in forwards cg-dd-out}@keyframes cg-dd-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes cg-dd-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-6px)}}@media (prefers-reduced-motion:reduce){.cg-dropdown__menu,.cg-dropdown__menu.is-closing{animation:none}}.cg-dropdown__opt{color:var(--ink);cursor:pointer;white-space:nowrap;align-items:center;gap:8px;padding:8px 14px 8px 8px;font-size:12px;display:flex}.cg-dropdown__opt.is-active{background:#55587914}.cg-dropdown__opt.is-selected{color:var(--accent)}.cg-dropdown__check{width:12px;color:var(--accent);flex:none;font-size:11px}.cg-tabs{border-bottom:1px solid var(--rule-2);margin-top:24px;display:flex}.cg-tab{letter-spacing:.04em;color:var(--ink-faint);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:12px 18px;font-family:inherit;font-size:12px;transition:color .2s,border-color .2s}.cg-tab:hover:not(.is-active){color:var(--ink);border-bottom-color:var(--rule-2)}.cg-tab.is-active{color:var(--accent);border-bottom-color:var(--accent)}.cg-btn{letter-spacing:.03em;border:1px solid var(--rule-2);color:var(--ink);cursor:pointer;background:0 0;padding:9px 16px;font-family:inherit;font-size:12px;transition:background .2s,border-color .2s,opacity .2s}.cg-btn--primary{color:var(--paper);background:var(--ink);border-color:var(--ink)}.cg-btn--primary:hover:not(:disabled){opacity:.88}.cg-btn--ghost:hover:not(:disabled){border-color:var(--ink)}.cg-btn--approve{color:var(--paper);background:var(--green);border-color:var(--green)}.cg-btn--approve:hover:not(:disabled){opacity:.88}.cg-btn--lg{white-space:nowrap;padding:11px 18px}.cg-btn:disabled{cursor:not-allowed;color:var(--ink-faint);background:var(--rule-2);border-color:var(--rule-2)}.cg-btn--ghost:disabled{color:var(--ink-faint);background:0 0}.cg-input{box-sizing:border-box;width:100%;color:var(--ink);background:var(--paper-2);border:1px solid var(--rule-2);outline:none;padding:9px 11px;font-family:inherit;font-size:12.5px}.cg-input:focus{border-color:var(--accent)}.cg-input:disabled{cursor:not-allowed;opacity:.7}.cg-input--pw{background:var(--paper);width:240px}.cg-textarea{resize:vertical;height:96px;font-size:12px;line-height:1.6}.cg-code{resize:vertical;box-sizing:border-box;color:#e7e2d2;border:1px solid var(--rule-2);white-space:pre;tab-size:2;background:#23242f;outline:none;width:100%;height:440px;padding:14px 16px;font-family:inherit;font-size:11.5px;line-height:1.65;overflow:auto}.cg-code:focus{border-color:var(--accent)}.cg-code:disabled{cursor:not-allowed}.cg-loading{color:var(--ink-faint);padding:26px 0;font-size:12px}.cg-tabpanel{padding-top:26px;animation:.32s cubic-bezier(.2,.6,.2,1) both cg-tabpanel-in}@keyframes cg-tabpanel-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.cg-tex-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;gap:28px;display:grid}.cg-field-head{justify-content:space-between;align-items:baseline;margin-bottom:10px;display:flex}.cg-field-head__label{letter-spacing:.14em;color:var(--ink-faint);font-size:11px}.cg-mb{margin-bottom:10px;display:block}.cg-dirty{color:var(--green);font-size:10.5px}.cg-dirty.is-dirty{color:var(--accent)}.cg-tex-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.cg-hint{color:var(--ink-faint);font-size:10.5px}.cg-hint__cmd{color:var(--ink-soft)}.cg-preview-card{border:1px solid var(--rule-2);background:var(--paper);padding:18px}.cg-preview-card__body{color:var(--ink-soft);font-size:12.5px;line-height:1.7}.cg-preview-card__link{align-items:center;gap:8px;margin-top:16px;text-decoration:none;display:inline-flex}.cg-preview-card__note{color:var(--ink-faint);margin-top:10px;font-size:10px}.cg-lastparse{border:1px solid var(--rule);background:var(--paper-2);color:var(--ink-soft);margin-top:14px;padding:12px 14px;font-size:11.5px;line-height:1.7}.cg-lastparse__label{color:var(--ink-faint);letter-spacing:.14em;margin-bottom:6px;font-size:10px}.cg-lastparse__hint{color:var(--ink-faint);margin-top:4px}.cg-config{margin-top:34px}.cg-config__lead{color:var(--ink-soft);margin:4px 0 14px;font-size:11px}.cg-config__row{border-top:1px solid var(--rule);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:18px;padding:16px 0;display:grid}.cg-config__title{color:var(--ink);font-size:13px;font-weight:600}.cg-config__title.is-hidden{color:var(--ink-faint)}.cg-config__meta{color:var(--ink-faint);margin-top:4px;font-size:10.5px}.cg-config__toggles{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.cg-chips{flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;display:flex}.cg-chips__label{color:var(--ink-faint);margin-right:2px;font-size:10px}.cg-chip{color:var(--ink-soft);border:1px solid var(--rule-2);cursor:pointer;background:0 0;padding:3px 8px;font-family:inherit;font-size:10.5px}.cg-chip.is-on{color:var(--paper);background:var(--accent);border-color:var(--accent)}.cg-chip:disabled{cursor:not-allowed}.cg-toggle{letter-spacing:.03em;color:var(--ink);border:1px solid var(--rule-2);cursor:pointer;background:0 0;padding:6px 11px;font-family:inherit;font-size:10.5px}.cg-toggle.is-on{color:var(--paper);background:var(--accent);border-color:var(--accent)}.cg-toggle.is-on-dark{color:var(--paper);background:var(--ink);border-color:var(--ink)}.cg-toggle:disabled{cursor:not-allowed}.cg-genbar{border:1px solid var(--rule);background:var(--paper-2);flex-wrap:wrap;align-items:center;gap:12px 16px;padding:14px 16px;display:flex}.cg-genbar__cmd{color:var(--ink-soft);font-size:11px}.cg-genbar__count{color:var(--ink-faint);font-size:11px}.cg-genbar__running{color:var(--accent);letter-spacing:.02em;font-size:11px}.cg-genbar__actions{gap:8px;margin-left:auto;display:flex}.cg-genbar .cg-btn{padding:8px 14px;font-size:11.5px}.cg-card{border:1px solid var(--rule-2);background:var(--paper);border-top:0;grid-template-columns:minmax(0,1fr) minmax(0,420px);align-items:start;gap:30px;padding:20px 20px 22px;display:grid}.cg-card__head{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:14px;display:flex}.cg-card__key{color:var(--ink);font-size:13px;font-weight:600}.cg-card__meta{color:var(--ink-faint);font-size:10px}.cg-badge{color:var(--accent);border:1px solid var(--rule-2);margin-left:auto;padding:2px 8px;font-size:10.5px}.cg-badge.is-approved{color:var(--green);border-color:#3fb27f80}.cg-warn{color:#b26b2e;margin-bottom:12px;font-size:10.5px}.cg-lbl{letter-spacing:.12em;color:var(--ink-faint);margin-bottom:6px;font-size:10px}.cg-lbl--gap{margin-top:14px}.cg-lbl__dim{color:var(--ink-faint)}.cg-nodesc{color:var(--ink-faint);margin-top:14px;font-size:10.5px}.cg-subhint{color:var(--ink-faint);margin-top:8px;font-size:10px}.cg-card__actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.cg-card__actions .cg-btn{padding:7px 13px;font-size:11px}.cg-card__preview{border-left:1px solid var(--rule);padding-left:26px}.cg-preview__label{letter-spacing:.14em;color:var(--ink-faint);margin-bottom:12px;font-size:10px}.cg-prev-exp{grid-template-columns:64px minmax(0,1fr);align-items:baseline;gap:12px;display:grid}.cg-prev-exp__hash{color:var(--ink-faint);font-size:11px}.cg-prev-exp__title{color:var(--ink);letter-spacing:-.01em;font-size:13px;font-weight:600}.cg-prev-exp__at{color:var(--ink-faint);font-weight:400}.cg-prev-exp__summary{color:var(--ink-soft);margin-top:5px;font-size:12px;line-height:1.5}.cg-prev-exp__hint{color:var(--ink-faint);margin-top:5px;font-size:10.5px}.cg-ins{color:var(--green)}.cg-prev-exp__active{color:var(--ink-faint);margin-top:5px;font-size:11px}.cg-prev-exp__tech{color:var(--ink-faint);margin-top:6px;font-size:10.5px}.cg-prev-work{border-top:1px solid var(--rule-2);margin-top:18px;padding-top:16px}.cg-prev-work__meta{letter-spacing:.14em;color:var(--ink-faint);align-items:baseline;gap:12px;margin-bottom:10px;font-size:10px;display:flex}.cg-prev-work__num{color:#2a2c3b8c;font-weight:600}.cg-prev-work__live{color:var(--green);margin-left:auto}.cg-prev-work__title{letter-spacing:-.03em;color:var(--ink);font-size:20px;font-weight:600;line-height:1.05}.cg-prev-work__body{color:var(--ink-soft);margin-top:10px;font-size:12.5px;line-height:1.65}.cg-prev-work__tech{color:var(--ink-faint);margin-top:12px;font-size:11px;line-height:1.7}.cg-prev-proj{grid-template-columns:38px minmax(0,1fr) 20px;align-items:baseline;gap:12px;display:grid}.cg-prev-proj__num{color:var(--ink-faint);font-size:10.5px}.cg-prev-proj__title{color:var(--ink);letter-spacing:-.02em;font-size:15px;font-weight:600}.cg-prev-proj__tagline{color:var(--ink-soft);margin-top:5px;font-size:12px}.cg-prev-proj__tech{color:var(--ink-faint);margin-top:6px;font-size:10.5px}.cg-prev-proj__link{color:var(--accent);text-align:right}.cg-genall{border:1px solid var(--rule-2);background:var(--paper-2);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;margin-top:30px;padding:20px;display:grid}.cg-genall__label{letter-spacing:.14em;color:var(--ink-faint);margin-bottom:8px;font-size:11px}.cg-genall__body{color:var(--ink-soft);font-size:12.5px;line-height:1.65}.cg-genall__count{color:var(--ink-faint);margin-top:10px;font-size:11px}.cg-term{border:1px solid var(--ink);background:var(--dark-bg);margin-top:16px}.cg-term__bar{border-bottom:1px solid #98a1bc2e;align-items:center;gap:8px;padding:10px 14px;display:flex}.cg-term__dot{border-radius:50%;width:8px;height:8px;display:inline-block}.cg-term__dot--r{background:#e06c5b}.cg-term__dot--y{background:#e0b85b}.cg-term__dot--g{background:#5bb27f}.cg-term__title{color:var(--dark-muted);letter-spacing:.1em;margin-left:6px;font-size:10.5px}.cg-term__body{max-height:200px;padding:14px 16px;font-size:11.5px;line-height:1.85;overflow:auto}.cg-term__line{white-space:pre-wrap}.cg-note{color:var(--ink-faint);max-width:80ch;margin-top:22px;font-size:10.5px;line-height:1.7}.site-footer{background:var(--dark-bg);color:var(--dark-muted);border-top:1px solid var(--dark-rule)}.site-footer__inner{max-width:var(--content-max);padding:22px var(--content-pad);flex-wrap:wrap;gap:10px 24px;margin:0 auto;font-size:11.5px;display:flex}.site-footer__pipe{color:#575e76}.site-footer__link{color:var(--blue);padding:5px 0;text-decoration:none;display:inline-block}.site-footer__link:hover{color:var(--dark-head)}.site-footer__clock{color:var(--dark-accent)}.site-footer__copy{color:#575e76;margin-left:auto}.cg-toast{z-index:60;background:var(--dark-bg);border:1px solid var(--ink);max-width:min(420px,100vw - 48px);color:var(--dark-text);cursor:pointer;border-left-width:3px;align-items:center;gap:10px;padding:13px 15px;font-size:12px;line-height:1.5;animation:.28s cubic-bezier(.2,.6,.2,1) cg-toast-in;display:flex;position:fixed;bottom:24px;right:24px}.cg-toast--success{border-left-color:var(--green)}.cg-toast--error{border-left-color:#e0806b}.cg-toast--busy{border-left-color:var(--dark-accent)}.cg-toast--busy .cg-toast__dot{background:var(--dark-accent)}.cg-toast__dot--pulse{animation:1.1s ease-in-out infinite cg-pulse}@keyframes cg-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.65)}}.cg-toast__dot{border-radius:50%;flex:none;width:8px;height:8px}.cg-toast--success .cg-toast__dot{background:var(--green);box-shadow:0 0 0 3px #3fb27f29}.cg-toast--error .cg-toast__dot{background:#e0806b;box-shadow:0 0 0 3px #e0806b29}.cg-toast__text{flex:1;min-width:0}.cg-toast--success .cg-toast__text{color:var(--dark-head)}.cg-toast__close{color:var(--dark-muted);flex:none;font-size:11px}.cg-toast:hover .cg-toast__close{color:var(--dark-text)}.cg-toast.is-leaving{animation:.28s cubic-bezier(.4,0,.6,1) forwards cg-toast-out}@keyframes cg-toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes cg-toast-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(10px)}}@media (prefers-reduced-motion:reduce){.cg-toast,.cg-toast.is-leaving,.cg-toast__dot--pulse{animation:none}}.hero__pipeline-link{color:var(--ink-soft);border:1px solid var(--rule-2);align-items:center;gap:10px;margin-top:26px;padding:11px 16px;font-size:12.5px;text-decoration:none;transition:border-color .2s,background .2s,color .2s;display:inline-flex}.hero__pipeline-link .sign,.hero__pipeline-link .arrow{color:var(--ink-faint)}.hero__pipeline-link:hover{border-color:var(--accent);color:var(--ink);background:#5558790d}@media (max-width:860px){.cg-section__inner{padding:56px var(--content-pad)}.cg-tex-grid,.cg-card,.cg-genall{grid-template-columns:minmax(0,1fr);gap:24px}.cg-card__preview{border-left:0;border-top:1px solid var(--rule);padding-top:20px;padding-left:0}.cg-tabs{flex-wrap:wrap}.cg-input--pw{width:100%}.cg-config__row{grid-template-columns:minmax(0,1fr);gap:12px}.cg-config__toggles{justify-content:flex-start}.cg-toggle{text-align:center;flex:auto}}@media (max-width:480px){.cg-model__pick{width:100%;margin-left:0}.cg-model__pick .cg-dropdown{flex:auto;min-width:0}.cg-model__pick .cg-dropdown__btn{width:100%;min-width:0}}@media (prefers-reduced-motion:reduce){.cg-packet{opacity:0;animation:none}.cg-node{transition:none}}.hover\:bg-\[\#FFF8EC\]:hover{--tw-bg-opacity:1;background-color:rgb(255 248 236/var(--tw-bg-opacity,1))}.focus-visible\:ring-4:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}@media (min-width:640px){.sm\:h-80{height:20rem}.sm\:h-96{height:24rem}.sm\:w-80{width:20rem}.sm\:w-96{width:24rem}.sm\:p-8{padding:2rem}.sm\:py-12{padding-top:3rem;padding-bottom:3rem}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}}
