@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/f4b234103afdc32a-s.11x_mcju407z-.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:Bricolage Grotesque;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/0b60d5f95c5f3f76-s.456c9vb2_utt8.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/8056169c9d560660-s.p.2fl0vhx7oyatw.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:Bricolage Grotesque;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/f4b234103afdc32a-s.11x_mcju407z-.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:Bricolage Grotesque;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/0b60d5f95c5f3f76-s.456c9vb2_utt8.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/8056169c9d560660-s.p.2fl0vhx7oyatw.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:Bricolage Grotesque;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(../media/f4b234103afdc32a-s.11x_mcju407z-.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:Bricolage Grotesque;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(../media/0b60d5f95c5f3f76-s.456c9vb2_utt8.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(../media/8056169c9d560660-s.p.2fl0vhx7oyatw.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:Bricolage Grotesque Fallback;src:local(Arial);ascent-override:88.21%;descent-override:25.61%;line-gap-override:0.0%;size-adjust:105.43%}.Ks7K-W_className{font-family:Bricolage Grotesque,Bricolage Grotesque Fallback;font-style:normal}.Ks7K-W_variable{--font-display:"Bricolage Grotesque", "Bricolage Grotesque Fallback"}
@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/44ed10da57ebfb0e-s.2e4y-bhazgt_v.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 Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/73263b2957b73100-s.3o0_l_yqebdng.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/ab664c0e419cc841-s.2mglm451ism6l.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:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/6fca7e74603dd412-s.3bjsqkuy1d2v8.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 Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/c1b11b726b36a5e5-s.0xluf1kzv7x5w.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/48eea41d8317494f-s.p.45487z7p3r8wm.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 Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/44ed10da57ebfb0e-s.2e4y-bhazgt_v.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 Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/73263b2957b73100-s.3o0_l_yqebdng.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/ab664c0e419cc841-s.2mglm451ism6l.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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/6fca7e74603dd412-s.3bjsqkuy1d2v8.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 Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/c1b11b726b36a5e5-s.0xluf1kzv7x5w.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/48eea41d8317494f-s.p.45487z7p3r8wm.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 Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/44ed10da57ebfb0e-s.2e4y-bhazgt_v.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 Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/73263b2957b73100-s.3o0_l_yqebdng.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/ab664c0e419cc841-s.2mglm451ism6l.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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/6fca7e74603dd412-s.3bjsqkuy1d2v8.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 Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/c1b11b726b36a5e5-s.0xluf1kzv7x5w.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/48eea41d8317494f-s.p.45487z7p3r8wm.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 Sans Fallback;src:local(Arial);ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.0%;size-adjust:101.17%}.v7m39G_className{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.v7m39G_variable{--font-body:"IBM Plex Sans", "IBM Plex Sans Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/c64053b510252f55-s.1zakzi6q17d4o.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/733da6bd8dac84c8-s.2htf8h-pf57mm.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/784318cea1dfcfa4-s.3skwie1wjplzh.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/7e114457660b62ed-s.3zhbgtelpa5ua.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/9fecbd3e5ea9bccb-s.3vf5yzuqk3fsd.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-20C4,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/9a321a2c78eff0b5-s.p.1wmoa0e_blxrz.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/c64053b510252f55-s.1zakzi6q17d4o.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/733da6bd8dac84c8-s.2htf8h-pf57mm.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/784318cea1dfcfa4-s.3skwie1wjplzh.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/7e114457660b62ed-s.3zhbgtelpa5ua.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/9fecbd3e5ea9bccb-s.3vf5yzuqk3fsd.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-20C4,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/9a321a2c78eff0b5-s.p.1wmoa0e_blxrz.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:600;font-display:swap;src:url(../media/c64053b510252f55-s.1zakzi6q17d4o.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:600;font-display:swap;src:url(../media/733da6bd8dac84c8-s.2htf8h-pf57mm.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:600;font-display:swap;src:url(../media/784318cea1dfcfa4-s.3skwie1wjplzh.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:600;font-display:swap;src:url(../media/7e114457660b62ed-s.3zhbgtelpa5ua.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:600;font-display:swap;src:url(../media/9fecbd3e5ea9bccb-s.3vf5yzuqk3fsd.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9a321a2c78eff0b5-s.p.1wmoa0e_blxrz.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%}.D0raua_className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.D0raua_variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-text-size-adjust:100%}:root{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}body{margin:0}img{max-width:100%}[hidden]{display:none!important}:root{--bg:#eef1f6;--surface:#fff;--ink:#111827;--muted:#5b6578;--line:#d6dce6;--accent:#2747f5;--accent-ink:#fff;--pulse:#e5484d;--ok:#13834f;--ship:#b86e00;--f-display:var(--font-display), ui-sans-serif, system-ui, sans-serif;--f-body:var(--font-body), ui-sans-serif, system-ui, sans-serif;--f-mono:var(--font-mono), ui-monospace, Menlo, monospace;--ease:cubic-bezier(.2,.8,.2,1)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0b0f1a;--surface:#121827;--ink:#e8ecf4;--muted:#98a2b6;--line:#232c40;--accent:#7b93ff;--accent-ink:#0b0f1a;--pulse:#ff6b6f;--ok:#4cc98a;--ship:#f2a93b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0b0f1a;--surface:#121827;--ink:#e8ecf4;--muted:#98a2b6;--line:#232c40;--accent:#7b93ff;--accent-ink:#0b0f1a;--pulse:#ff6b6f;--ok:#4cc98a;--ship:#f2a93b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:var(--bg);color:var(--ink);font:16px/1.6 var(--f-body);overflow-x:hidden}.wrap{max-width:1080px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));margin:0 auto}a{color:var(--accent)}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}h1,h2,h3{font-family:var(--f-display);text-wrap:balance;margin:0;line-height:1.05}p{margin:0}.label{font:600 12px/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.draft{font:600 11px/1 var(--f-mono);color:var(--ship);border:1px dashed var(--ship);letter-spacing:.04em;border-radius:4px;padding:4px 7px;display:inline-block}.chip{font:500 12px/1 var(--f-mono);border:1px solid var(--line);color:var(--muted);background:var(--surface);white-space:nowrap;border-radius:999px;padding:7px 10px}.btn{font:600 15px/1 var(--f-body);border:1px solid var(--line);color:var(--ink);background:var(--surface);cursor:pointer;transition:transform .25s var(--ease),box-shadow .25s var(--ease);border-radius:12px;padding:14px 20px;text-decoration:none;display:inline-block}.btn:hover{box-shadow:0 10px 24px -14px var(--accent);transform:translateY(-2px)}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.ph{border:1px dashed var(--line);text-align:center;color:var(--muted);font:500 12px/1.4 var(--f-mono);background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--accent) 9%,transparent) 0 10px,transparent 10px 20px),var(--surface);border-radius:18px;place-items:center;max-width:100%;padding:12px;display:grid;position:relative;overflow:hidden}.ph.warm{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--pulse) 10%,transparent) 0 10px,transparent 10px 20px),var(--surface)}body:before{content:"";height:env(safe-area-inset-top,0px);z-index:10;background:var(--bg);position:fixed;inset:0 0 auto}.top{top:env(safe-area-inset-top,0px);z-index:6;background:color-mix(in srgb,var(--bg) 85%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);position:sticky}.top .wrap{justify-content:space-between;align-items:center;gap:16px;padding-block:12px;display:flex}.logo{font:800 20px/1 var(--f-display);color:var(--ink);text-decoration:none}.logo span{color:var(--accent)}.tabs{background:var(--surface);border:1px solid var(--line);border-radius:999px;gap:4px;padding:4px;display:flex;position:relative}.tabs a{z-index:1;color:var(--muted);font:500 14px/1 var(--f-body);border-radius:999px;padding:8px 16px;text-decoration:none;transition:color .3s;position:relative}.tabs a[aria-current=page]{color:var(--accent-ink)}.tabs .ind{z-index:0;background:var(--accent);width:0;transition:left .45s var(--ease),width .45s var(--ease);border-radius:999px;position:absolute;top:4px;bottom:4px;left:0}.tabs .ic{display:none}.view{padding-block:48px 72px}.view.enter .rv{animation:rise .7s var(--ease) both;animation-delay:calc(var(--i,0) * 70ms)}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}section+section{margin-top:64px}.hero+section{margin-top:72px}@media (max-width:820px){.hero+section{margin-top:56px}}.head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;margin-bottom:24px;display:flex}.head h2{letter-spacing:-.02em;margin-top:8px;font-size:clamp(28px,4vw,40px);font-weight:800}.hero{grid-template-columns:1.2fr .8fr;align-items:center;gap:48px;display:grid}.hero>*{min-width:0}.status{font:500 13px/1.3 var(--f-mono);color:var(--ok);align-items:center;gap:8px;margin-bottom:20px;display:inline-flex}.status i{background:var(--ok);border-radius:50%;flex:none;width:8px;height:8px;animation:2s infinite ping}@keyframes ping{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--ok) 50%,transparent)}to{box-shadow:0 0 0 10px #0000}}.hero h1{letter-spacing:-.035em;font-size:clamp(42px,7.5vw,84px);font-weight:800}.rot{color:var(--accent);vertical-align:bottom;display:inline-grid}.rot span{opacity:0;grid-area:1/1;animation:9s infinite swap}.rot span:first-child{opacity:1;animation-delay:0s}.rot span:nth-child(2){animation-delay:3s}.rot span:nth-child(3){animation-delay:6s}@keyframes swap{0%{opacity:0;transform:translateY(.4em)}5%,30%{opacity:1;transform:none}36%,to{opacity:0;transform:translateY(-.4em)}}.lede{color:var(--muted);max-width:34em;margin:22px 0 28px;font-size:19px}.ctas{flex-wrap:wrap;gap:12px;display:flex}.portrait{aspect-ratio:4/5;justify-self:center;width:100%;max-width:340px;position:relative}.blob{background:conic-gradient(from 0deg,var(--accent),var(--pulse),var(--accent));filter:blur(28px);opacity:.35;animation:morph 12s var(--ease) infinite alternate;border-radius:42% 58% 55% 45%/48% 42% 58% 52%;position:absolute;inset:-8%}@keyframes morph{to{border-radius:58% 42% 40% 60%/40% 60%;transform:rotate(40deg)}}.photo{border-radius:28px;height:100%;margin:0;position:relative;overflow:hidden;box-shadow:0 30px 60px -30px #11182799}.photo img{object-fit:cover;width:100%;height:100%;animation:14s ease-in-out infinite alternate kb;display:block;transform:scale(1.04)}.photo:after{content:"";pointer-events:none;background:linear-gradient(#0000 60%,#0b0f1a59);position:absolute;inset:0}@keyframes kb{to{transform:scale(1.1)translate(-2%,-1%)}}.avatar{object-fit:cover;width:112px;height:112px;box-shadow:0 0 0 4px var(--bg),0 0 0 6px var(--accent),0 0 32px -4px var(--pulse);border-radius:50%;margin:0 auto 16px;display:block}.badge{background:var(--surface);border:1px solid var(--line);font:500 13px/1.3 var(--f-body);border-radius:14px;padding:10px 12px;animation:5s ease-in-out infinite float;position:absolute;box-shadow:0 14px 30px -18px #11182780}.badge b{font:800 18px/1 var(--f-display);display:block}.badge.b1{top:16%;left:-18px}.badge.b2{animation-delay:-2.5s;bottom:12%;right:-14px}.badge.b2 b{color:var(--pulse)}@keyframes float{50%{transform:translateY(-8px)}}.about{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.about>div{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:22px}.about h3{margin:10px 0 6px;font-size:20px;font-weight:600}.about p{color:var(--muted);font-size:15px}.marquee{border-block:1px solid var(--line);padding-block:14px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.marquee div{width:max-content;font:600 22px/1 var(--f-display);color:var(--muted);gap:28px;animation:30s linear infinite slide;display:flex}.marquee em{color:var(--pulse);font-style:normal}@keyframes slide{to{transform:translate(-50%)}}.timeline{gap:18px;padding-left:28px;display:grid;position:relative}.timeline:before{content:"";background:linear-gradient(var(--accent),var(--line));width:2px;position:absolute;top:8px;bottom:8px;left:7px}.job{background:var(--surface);border:1px solid var(--line);transition:transform .3s var(--ease),border-color .3s;border-radius:16px;padding:22px;position:relative}.job:hover{border-color:var(--accent);transform:translate(4px)}.job:before{content:"";background:var(--bg);border:3px solid var(--accent);border-radius:50%;width:12px;height:12px;position:absolute;top:26px;left:-27px}.job .row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.job h3{font-size:22px;font-weight:600}.job time{font:500 13px/1 var(--f-mono);color:var(--muted);font-variant-numeric:tabular-nums}.job .sub{font:500 12px/1 var(--f-mono);letter-spacing:.04em;color:var(--muted);opacity:.8;margin-top:6px}.job .co{color:var(--accent);margin:4px 0 10px;font-weight:500}.job ul{color:var(--muted);margin:0 0 14px;padding-left:18px}.tags{flex-wrap:wrap;gap:6px;display:flex}.projects{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.proj{background:var(--surface);border:1px solid var(--line);border-radius:16px;align-content:start;gap:12px;padding:14px;display:grid}.proj .ph{aspect-ratio:4/3}.proj h3{font-size:19px;font-weight:600}.proj p{color:var(--muted);font-size:14px}.pimg{aspect-ratio:4/3;object-fit:cover;border-radius:12px;width:100%;max-width:100%;height:auto;display:block}.felt{aspect-ratio:4/3;background:radial-gradient(circle at 50% 40%,#1f7a55,#0e3b2a 75%);border-radius:12px;justify-content:center;align-items:center;max-width:100%;display:flex;overflow:hidden}.pc{aspect-ratio:5/7;color:#14161c;width:22%;font:800 clamp(16px,3vw,24px)/1 var(--f-display);transition:transform .45s var(--ease);background:#fafaf7;border-radius:8px;place-items:center;margin-inline:-3%;display:grid;position:relative;box-shadow:0 8px 18px -6px #0009}.pc i{font-size:.8em;font-style:normal}.pc.r{color:#c8323a}.pc:first-child{transform:rotate(-14deg)translateY(8px)}.pc:nth-child(2){transform:rotate(-5deg)}.pc:nth-child(3){transform:rotate(5deg)}.pc:nth-child(4){transform:rotate(14deg)translateY(8px)}.proj:hover .pc:first-child{transform:rotate(-22deg)translate(-10px,6px)}.proj:hover .pc:nth-child(2){transform:rotate(-8deg)translate(-4px,-6px)}.proj:hover .pc:nth-child(3){transform:rotate(8deg)translate(4px,-6px)}.proj:hover .pc:nth-child(4){transform:rotate(22deg)translate(10px,6px)}.fb{aspect-ratio:4/3;background:#f6f4ff;border-radius:12px;place-items:center;max-width:100%;display:grid;position:relative;overflow:hidden;container-type:inline-size}.fb-bg{width:100%;height:100%;position:absolute;inset:0}.fb-mark{transition:transform .5s cubic-bezier(.2,.9,.3,1.3);position:relative;transform:rotate(-6deg)}.proj:hover .fb-mark{transform:rotate(-2deg)scale(1.06)}.fb-bro{font:800 28cqw/1.05 var(--f-display);letter-spacing:-.06em;color:#d4ff3f;background:#0e0b1f;border:max(3px,1.5cqw) solid #fff;border-radius:9cqw;padding:0 7cqw 3cqw;box-shadow:0 10px 24px #0e0b1f3d}.fb-pill{color:#0e0b1f;font:700 4.6cqw/1 var(--f-body);background:#d4ff3f;border:max(2px,.8cqw) solid #fff;border-radius:999px;padding:1.6cqw 3.6cqw;position:absolute;top:-6cqw;left:-6cqw;transform:rotate(-2deg);box-shadow:0 4px 10px #0e0b1f2e}.fb-star{width:12cqw;height:12cqw;position:absolute;top:-7cqw;right:-6cqw}.fb-phone{aspect-ratio:9/16;color:#d7deec;width:52%;max-height:92%;font:500 8px/1.3 var(--f-mono);background:#0a0f1c;border:2px solid #2a3350;border-radius:16px;align-content:start;gap:8px;padding:10px 8px;display:grid}.fb-sms{animation:smsin 3.2s var(--ease) infinite;background:#1e2638;border-radius:8px;padding:5px 6px}@keyframes smsin{0%,10%{opacity:0;transform:translateY(-6px)}20%,85%{opacity:1;transform:none}to{opacity:0}}.fb-donut{aspect-ratio:1;background:conic-gradient(#f2a93b 0 91%,#2a3350 91% 100%);border-radius:50%;justify-self:center;place-items:center;width:58%;display:grid;-webkit-mask:radial-gradient(circle,#0000 52%,#000 53%);mask:radial-gradient(circle,#0000 52%,#000 53%)}.fb-donut b{display:none}.fb-row{align-items:center;gap:5px;display:flex}.fb-row i{border-radius:50%;width:7px;height:7px}.fb-row span{margin-left:auto;font-weight:600}.ptitle{align-items:center;gap:10px;display:flex}.ptitle img{border-radius:9px;flex:none;width:36px;height:36px;box-shadow:0 6px 14px -8px #00000080}.pnote{color:var(--muted);font:500 12px/1.4 var(--f-mono)!important}.plinks{font:600 13px/1 var(--f-mono);flex-wrap:wrap;gap:14px;display:flex}.plinks a{border-bottom:1px solid;padding-bottom:2px;text-decoration:none}.quotes{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.quotes blockquote{background:var(--surface);border:1px solid var(--line);border-radius:18px;align-content:space-between;gap:18px;margin:0;padding:24px;display:grid;position:relative;overflow:hidden}.quotes blockquote:before{content:"“";font:800 120px/1 var(--f-display);color:color-mix(in srgb,var(--accent) 16%,transparent);position:absolute;top:-18px;right:14px}.quotes p{font:600 20px/1.3 var(--f-display);text-wrap:pretty;position:relative}.quotes footer{color:var(--muted);font-size:13px}.quotes footer b{color:var(--ink);font-size:14px;font-weight:600;display:block}.car{position:relative}.shots{scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-x:contain;gap:16px;padding:6px 2px 18px;display:flex;overflow-x:auto}.shots::-webkit-scrollbar{display:none}.shot{scroll-snap-align:start;border:1px solid var(--line);background:var(--surface);cursor:zoom-in;text-align:left;transition:transform .35s var(--ease),box-shadow .35s var(--ease),opacity .35s;border-radius:16px;flex:0 0 min(560px,82vw);grid-template-rows:auto 1fr;padding:10px;display:grid}.shot:hover{box-shadow:0 20px 40px -24px var(--accent);transform:translateY(-4px)}.shot .frame{background:color-mix(in srgb,var(--ink) 6%,var(--bg));border-radius:10px;place-items:center;height:clamp(220px,40vw,360px);padding:0;display:grid;overflow:hidden}.shot img{object-fit:contain;max-width:100%;max-height:100%;display:block}.shot span{font:500 12px/1.4 var(--f-mono);color:var(--muted);padding:10px 4px 2px;display:block}.carbar{justify-content:space-between;align-items:center;gap:12px;margin-top:6px;display:flex}.dots{flex-wrap:wrap;gap:6px;display:flex}.dots button{background:var(--line);cursor:pointer;width:8px;height:8px;transition:width .35s var(--ease),background .35s;border:0;border-radius:99px;padding:0}.dots button[aria-current=true]{background:var(--accent);width:24px}.arrows{font:500 13px/1 var(--f-mono);color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:10px;display:flex}.arw{border:1px solid var(--line);background:var(--surface);width:44px;height:44px;color:var(--ink);cursor:pointer;transition:transform .25s var(--ease),background .25s,color .25s,opacity .25s;border-radius:50%;place-items:center;font-size:18px;display:grid}.arw:hover:not(:disabled){background:var(--accent);color:var(--accent-ink);transform:scale(1.06)}.arw:disabled{opacity:.35;cursor:default}.lb .nav{width:44px;height:44px;font-size:20px;position:absolute;top:50%;transform:translateY(-50%)}.lb .nav.p{left:max(14px,env(safe-area-inset-left,0px))}.lb .nav.n{right:max(14px,env(safe-area-inset-right,0px));top:50%;left:auto}.lb{z-index:20;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:calc(24px + env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));animation:fade .3s var(--ease);background:#05080fd1;place-items:center;display:grid;position:fixed;inset:0}.lb img{max-width:min(1100px,100%);max-height:100%;animation:zoom .4s var(--ease);border-radius:12px}.lb button{top:calc(14px + env(safe-area-inset-top,0px));right:max(14px,env(safe-area-inset-right,0px));color:#111;cursor:pointer;background:#fff;border:0;border-radius:50%;width:40px;height:40px;font-size:20px;position:absolute}@keyframes fade{0%{opacity:0}}@keyframes zoom{0%{opacity:0;transform:scale(.94)}}.lab{grid-template-columns:1fr 1fr;align-items:center;gap:32px;display:grid}.lab>*{min-width:0}.ba{aspect-ratio:4/5;border:1px solid var(--line);-webkit-user-select:none;user-select:none;border-radius:22px;max-width:100%;position:relative;overflow:hidden}.ba .side{font:600 14px/1.4 var(--f-mono);text-align:center;place-items:center;display:grid;position:absolute;inset:0}.ba .before{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--muted) 14%,transparent) 0 10px,transparent 10px 20px),var(--surface);color:var(--muted)}.ba .after{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--pulse) 16%,transparent) 0 10px,transparent 10px 20px),var(--surface);color:var(--pulse);clip-path:inset(0 0 0 var(--x,50%))}.ba .before img,.ba .after img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.ba .bar{top:0;bottom:0;left:var(--x,50%);background:var(--ink);pointer-events:none;width:3px;position:absolute;transform:translate(-50%)}.ba .bar:after{content:"⇆";background:var(--ink);width:38px;height:38px;color:var(--bg);border-radius:50%;place-items:center;font-size:16px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ba .tagL,.ba .tagR{font:600 11px/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;background:var(--ink);color:var(--bg);border-radius:6px;padding:6px 8px;position:absolute;top:14px}.ba .tagL{left:14px}.ba .tagR{background:var(--pulse);right:14px}.ba input{opacity:0;cursor:ew-resize;width:100%;height:100%;margin:0;position:absolute;inset:0}.stats{background:var(--line);border:1px solid var(--line);border-radius:14px;grid-template-columns:repeat(3,1fr);gap:1px;margin:22px 0;display:grid;overflow:hidden}.stats div{background:var(--surface);padding:16px}.stats strong{font:800 28px/1 var(--f-display);font-variant-numeric:tabular-nums;color:var(--pulse);display:block}.stats span{color:var(--muted);font-size:13px}.notes{border-top:1px solid var(--line);gap:0;display:grid}.note{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr;gap:14px;padding-block:14px;display:grid}.note b{font:600 12px/1.6 var(--f-mono);color:var(--pulse)}.note p{font-weight:500}.note small{color:var(--muted);font-weight:400;display:block}.hob{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.card{background:var(--surface);border:1px solid var(--line);transition:transform .4s var(--ease),box-shadow .4s var(--ease);border-radius:18px;align-content:start;gap:12px;padding:14px;display:grid;position:relative}.card:hover{box-shadow:0 22px 40px -26px var(--accent);transform:translateY(-6px)}.card .ph{aspect-ratio:1}.cimg{aspect-ratio:1;object-fit:cover;width:100%;max-width:100%;height:auto;transition:transform .5s var(--ease);border-radius:18px;display:block}.card:hover .cimg{transform:scale(1.03)}.card h3{font-size:20px;font-weight:600}.card p{color:var(--muted);font-size:14px}.card .icon{font:800 28px/1 var(--f-display);color:var(--accent)}.also{flex-wrap:wrap;align-items:center;gap:8px;margin-top:20px;display:flex}.links{text-align:center;max-width:520px;margin:0 auto}.links .ph{border-radius:50%;width:112px;height:112px;margin:0 auto 16px;font-size:11px}.links h1{letter-spacing:-.02em;font-size:clamp(34px,6vw,48px);font-weight:800}.links>p{color:var(--muted);margin:8px 0 28px}.lt{gap:12px;display:grid}.lt a{text-align:left;background:var(--surface);border:1px solid var(--line);color:var(--ink);transition:transform .3s var(--ease),border-color .3s;border-radius:16px;grid-template-columns:44px 1fr auto;align-items:center;gap:14px;padding:14px 16px;text-decoration:none;display:grid;position:relative;overflow:hidden}.lt a:before{content:"";background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--accent) 14%,transparent),transparent);transition:transform .6s var(--ease);position:absolute;inset:0;transform:translate(-100%)}.lt a:hover{border-color:var(--accent);transform:scale(1.02)}.lt a:hover:before{transform:translate(100%)}.lt .g{width:44px;height:44px;font:800 16px/1 var(--f-display);background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);border-radius:12px;place-items:center;display:grid}.lt b{font-weight:600;display:block}.lt small{color:var(--muted)}.lt .arr{color:var(--muted);transition:transform .3s}.lt a:hover .arr{transform:translate(4px)}.mail{align-items:stretch;gap:8px;margin-top:20px;display:flex}.mail code{min-width:0;font:500 14px/1.3 var(--f-mono);background:var(--surface);border:1px solid var(--line);word-break:break-all;-webkit-user-select:all;user-select:all;text-align:left;border-radius:12px;flex:1;padding:14px}footer.site{color:var(--muted);font:13px/1.5 var(--f-mono);border-top:1px solid var(--line);padding-block:24px 40px}.stack-daily{border:1px solid var(--line);background:var(--surface);border-radius:16px;margin-top:20px;padding:18px}.stack-daily ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0 10px;padding:0;list-style:none;display:grid}.stack-daily li{background:color-mix(in srgb,var(--pulse) 8%,var(--bg));transition:transform .3s var(--ease);border-radius:12px;gap:2px;padding:10px 12px;display:grid}.stack-daily li:hover{transform:translateY(-2px)}.stack-daily li b{font:600 15px/1.2 var(--f-display);color:var(--ink)}.stack-daily li span{font:500 12px/1.3 var(--f-mono);color:var(--muted)}.stack-daily small{color:var(--muted);font-size:13px}@media (max-width:400px){.stack-daily ul{grid-template-columns:1fr}}@media (max-width:900px){.quotes{grid-template-columns:1fr}.hob{grid-template-columns:repeat(2,1fr)}.projects{grid-template-columns:1fr 1fr}}@media (max-width:820px){.hero,.lab{grid-template-columns:1fr}.portrait{max-width:280px;margin-top:8px}.about{grid-template-columns:1fr}.top .tabs{display:none}.view{padding-block:32px 120px}footer.site{padding-bottom:110px}.bottom{z-index:8;padding:8px max(12px,env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);position:fixed;bottom:0;left:0;right:0}.bottom .tabs{border-radius:18px;grid-template-columns:repeat(4,1fr);display:grid}.bottom .tabs a{border-radius:14px;justify-items:center;gap:4px;padding:8px 4px;font-size:11px;display:grid}.bottom .tabs .ind{border-radius:14px}.bottom .tabs .ic{font-size:18px;line-height:1;display:block}}@media (min-width:821px){.bottom{display:none}}@media (max-width:520px){.projects{grid-template-columns:1fr}.badge.b1{left:-6px}.badge.b2{right:-6px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.rot span{opacity:0}.rot span:first-child{opacity:1}}
