:root{color-scheme:light dark;--ink: light-dark(#000000, #f2f2f2);--paper: light-dark(#ffffff, #161616);--desktop: light-dark(#ffffff, #000000);--desktop-dot: light-dark(#000000, #2e2e2e);--muted: light-dark(#5a5a5a, #a8a8a8);--disabled: light-dark(#8a8a8a, #6a6a6a);--term-bg: #000000;--term-fg: #00ff00;--term-dim: #00a800;--term-bright: #ffffff;--neon-magenta: #ff00ff;--neon-cyan: #00ffff;--neon-yellow: #ffff00;--neon-coral: #ff6b6b;--desktop-pattern: conic-gradient(var(--desktop-dot) 25%, transparent 0);--checker-pattern: conic-gradient(var(--ink) 25%, transparent 0 50%, var(--ink) 0 75%, transparent 0);--px: 2px;--line: var(--px) solid var(--ink);--shadow-window: var(--px) var(--px) 0 0 var(--ink);--shadow-menu: var(--px) var(--px) 0 0 var(--ink);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--font-system: "Pixelify Sans", "Chicago", ui-monospace, monospace;--font-body: "Atkinson Hyperlegible", "Geneva", system-ui, sans-serif;--font-terminal: "VT323", ui-monospace, "Courier New", monospace;--text-xs: .8125rem;--text-sm: .9375rem;--text-base: 1.0625rem;--text-lg: 1.25rem;--text-xl: 1.5rem;--text-2xl: 2rem;--text-3xl: 2.75rem;--text-hero: clamp(3rem, 8vw, 5.25rem);--text-terminal: 1.375rem;--leading-terminal: 1.25;--container: 72rem;--menubar-height: 2.75rem}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}:root[data-term-font=plex]{--font-terminal: "IBM Plex Mono", ui-monospace, monospace;--text-terminal: 1rem;--leading-terminal: 1.55}:root[data-term-font=jetbrains]{--font-terminal: "JetBrains Mono", ui-monospace, monospace;--text-terminal: .975rem;--leading-terminal: 1.55}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(/_astro/pixelify-sans-cyrillic-400-normal.DfOZNMlW.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/pixelify-sans-latin-ext-400-normal.DdH6zlBQ.woff2) format("woff2"),url(/_astro/pixelify-sans-latin-ext-400-normal.BkfTUL4s.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/pixelify-sans-latin-400-normal.DLrIX9QE.woff2) format("woff2"),url(/_astro/pixelify-sans-latin-400-normal.JapMNN6Z.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:700;src:url(data:font/woff2;base64,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) format("woff2"),url(/_astro/pixelify-sans-cyrillic-700-normal.BrZTw8tu.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/pixelify-sans-latin-ext-700-normal.ClyJstAh.woff2) format("woff2"),url(/_astro/pixelify-sans-latin-ext-700-normal.BadXkHzZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Pixelify Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/pixelify-sans-latin-700-normal.D3Xxx3QE.woff2) format("woff2"),url(/_astro/pixelify-sans-latin-700-normal.BctWAS0u.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/atkinson-hyperlegible-latin-ext-400-normal.DRk46D-x.woff2) format("woff2"),url(/_astro/atkinson-hyperlegible-latin-ext-400-normal.Bbz-b3yf.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/atkinson-hyperlegible-latin-400-normal.BrHNak5F.woff2) format("woff2"),url(/_astro/atkinson-hyperlegible-latin-400-normal.BbWidj28.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/atkinson-hyperlegible-latin-ext-700-normal.BoVPHkS0.woff2) format("woff2"),url(/_astro/atkinson-hyperlegible-latin-ext-700-normal.CKkU2Dpt.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/atkinson-hyperlegible-latin-700-normal.GZI4o3u0.woff2) format("woff2"),url(/_astro/atkinson-hyperlegible-latin-700-normal.BK6Glc0m.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:VT323;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/vt323-vietnamese-400-normal.D0VnvwZ9.woff2) format("woff2"),url(/_astro/vt323-vietnamese-400-normal.D_5Q7Vcv.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:VT323;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/vt323-latin-ext-400-normal.iUdYUaX4.woff2) format("woff2"),url(/_astro/vt323-latin-ext-400-normal.DqOq58ri.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:VT323;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/vt323-latin-400-normal.wDgJuOC9.woff2) format("woff2"),url(/_astro/vt323-latin-400-normal.Dqn9ZSPj.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2) format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,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-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2) format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-400-normal.CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2) format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-400-normal.DDuiU_S-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2) format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2) format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAASIABAAAAAACQQAAAQuAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVF4AdBEICoRkhAALIAABNgIkAzoEIAWFAAeBFAwHG2oHKJ6DceNW4lJEFHn9tEOE37LNsvkjHr7f739rn3u+OSrSxLQytE91Dw2PYtNVq3Qaw/vJ7fUBMdOj/u2ImB98cT5WUx9F13ZKt06mU7tG1sAYcM26yCRX4f/0904bmwq8hwkUUMTRX61pa9C3xlpAGYw1vOu8C2SBZZFlld7DAW82RJWmwYMI1AJCKBNCIASqdZGFmtPSNQRhMpR0EKjWTwm6z6sJ+4jqhxjovTinVdRpZaQjaQzAYjI8NgAKDJCokgunCn9oUQE8VZd/F//+v6P4F1U9gLr58yNI/dJX9BAshEoJbTDogz7ocKoUsPvES8UK/aQIUQgpGgECBVLkOEV6iASTYgNAPKdNXayhDPL7IJuAZnEYSZ0eOLc9i5Rv5/+lEi3sW/kfnCf/+fTe0sxS7CKLx5erRJkKOixEqQaoqrvx5HN4iz4VhX0gS6DjFIWUzn/fIXJRVFY1NFRVNVeFt+SYmrK6vCU6eJsnKnJj5HTESMTQZOTI3Y/tzr3rUcOsiRy/ciP50s3Mycgxmhz9GMXhjzVH30ut796NHP0UUa31/Zoa6vCH6iPvdIM0IRANaT60FablmZlZd+UKNFy9NrvnFGxb5NC2CRxR0/rIyF/WNn+35sv9r+tHVhkseuWGKkCPPh96+GXt8Lc/Sh24ujfjf+tNw1lZWreiPuHb/PSpyjdv2rf/++ZE5TSKjFdZxYsBvr1sEHl5STuHZqYR7jGYGvGBBdjcaB5bODY1GAxMjsd0wDMIzXAXODRd74DxNMtO4YuYHclgLQRzp9KlUmxptCwv9bYgvWGD2xBW7r9413fdJu+mxzvzAUYeeONQvZP4kgfqZle4jhH/MWh+UbxgtJdrLdXLymNL53PRU0D3Q6FcXTfGqGcul6vrqhgLGAVSv+IVIfZOHpu+mlLqSlnj903j8mazXDsba/wbxhS/4Oubh1c5/uXDgt4j5KtnGEy5BIJHo0ur+jD+r2qCkuP1aRVM8EpUoRYSJyqNRA38uwDvHBNo0AejO2Z+ZYLLal1QiFyFh1EDQOgSCSCpjwwKU8yDbIjroEwne0G5Qca49cYp4AlqtQNZfWTQoFb1tRpFYAmRD+HXTkV4uQhG2bg4OKmyoypAsUGtWgQXyFxYrkpODeUxvGqIZA61erXo0sFG1UBGuPgpuon8RNUG2DhovAjZCBuZwtXrU3mQGki9+pm0eVZAXoWxLWTQoYHBPrJR4WunNxIFbCHfkTyPK+sqxjxDmGArZvf79JGJ3GwEqjwc7a7NIrl/7bJ7Nzu4+n1Ow6shEPnUrtVo7cnd5Wi5qCUbBIQbNKCP95FMCSZylEV5VCiiMqqiOmrKZ/I/C0gI1fyuulVcM2E1r4MhtcV/fbCD+HwEvVzH1dGNAzFE0FTbKzyQz3gootrNbN2a4PuG0j0JOgE=) format("woff2"),url(data:font/woff;base64,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) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/jetbrains-mono-cyrillic-400-normal.BEIGL1Tu.woff2) format("woff2"),url(/_astro/jetbrains-mono-cyrillic-400-normal.ugxPyKxw.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/jetbrains-mono-greek-400-normal.C190GLew.woff2) format("woff2"),url(/_astro/jetbrains-mono-greek-400-normal.B9oWc5Lo.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(/_astro/jetbrains-mono-vietnamese-400-normal.CqNFfHCs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/jetbrains-mono-latin-ext-400-normal.Bc8Ftmh3.woff2) format("woff2"),url(/_astro/jetbrains-mono-latin-ext-400-normal.fXTG6kC5.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/jetbrains-mono-latin-400-normal.V6pRDFza.woff2) format("woff2"),url(/_astro/jetbrains-mono-latin-400-normal.6-qcROiO.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--menubar-height) + var(--space-4))}body{margin:0;min-height:100vh;background-color:var(--desktop);color:var(--ink);font-family:var(--font-body);font-size:var(--text-base);line-height:1.55}body:before{content:"";position:fixed;inset:0;z-index:-1;background:var(--desktop-pattern) 0 0 / 4px 4px;transform:translateZ(0);pointer-events:none}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}h1,h2,h3,h4,h5,h6,p,ul,ol,dl,dd,figure{margin:0;padding:0}h1,h2,h3,h4{font-family:var(--font-system);font-weight:700;line-height:1.15}ul,ol{list-style:none}[hidden]{display:none!important}a{color:inherit}img,svg,video{display:block;max-width:100%}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:none;border:none;padding:0}::selection{background-color:var(--ink);color:var(--paper)}:where(a,button,input,textarea,select,summary):focus-visible{outline:var(--px) dashed currentColor;outline-offset:3px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--space-4)}.section{padding-block:var(--space-10)}@media(min-width:48rem){.section{padding-block:var(--space-16) var(--space-6)}}.window{background-color:var(--paper);border:var(--line);box-shadow:var(--shadow-window)}.window__titlebar{position:relative;display:flex;align-items:center;justify-content:center;min-height:2.25rem;padding:0 var(--space-10);border-bottom:var(--line);background:repeating-linear-gradient(to bottom,var(--ink) 0 2px,var(--paper) 2px 4px) center / calc(100% - 8px) 22px no-repeat,var(--paper)}.window__title{background-color:var(--paper);padding-inline:var(--space-3);font-family:var(--font-system);font-size:var(--text-lg);font-weight:700;line-height:1.3;text-align:center}.window__box{position:absolute;top:50%;width:1.25rem;height:1.25rem;transform:translateY(-50%);background-color:var(--paper);border:var(--line);box-shadow:0 0 0 4px var(--paper)}.window__box--close{left:var(--space-3)}button.window__box--close{cursor:pointer;padding:0}button.window__box--close:active{background-color:var(--ink)}.window__box--zoom{right:var(--space-3)}.window__box--zoom:after{content:"";position:absolute;inset:0 5px 5px 0;border-right:var(--line);border-bottom:var(--line)}.window__info{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-1) var(--space-6);padding:var(--space-1) var(--space-4);border-bottom:var(--line);box-shadow:0 4px 0 0 var(--paper),0 6px 0 0 var(--ink);margin-bottom:6px;font-family:var(--font-system);font-size:var(--text-sm)}.window__body{padding:var(--space-6)}@media(min-width:48rem){.window__body{padding:var(--space-8)}}.window--terminal .window__body{background-color:var(--term-bg);color:var(--term-fg);font-family:var(--font-terminal);font-size:var(--text-terminal);line-height:var(--leading-terminal);text-shadow:0 0 6px rgb(0 255 0 / .35);padding:var(--space-5)}.window--terminal ::selection{background-color:var(--term-fg);color:var(--term-bg)}.window--terminal a{color:var(--term-fg);text-underline-offset:3px}.window--terminal a:hover{background-color:var(--term-fg);color:var(--term-bg);text-shadow:none}.term-line{white-space:pre-wrap;overflow-wrap:anywhere}.term-prompt{color:var(--term-bright)}.term-dim{color:var(--term-dim)}.term-cursor{display:inline-block;width:.6em;height:1em;vertical-align:-.12em;background-color:var(--term-fg);animation:term-blink 1.1s steps(1) infinite}@keyframes term-blink{50%{opacity:0}}.tui-box{position:relative;border:4px double var(--term-fg);padding:var(--space-5) var(--space-4) var(--space-3)}.tui-box__title{position:absolute;top:-.7em;left:1ch;padding-inline:1ch;background-color:var(--term-bg);color:var(--term-bright);font:inherit;line-height:1.25}.dialog{background-color:var(--paper);color:var(--ink);border:var(--line);box-shadow:inset 0 0 0 4px var(--paper),inset 0 0 0 10px var(--ink),var(--shadow-window);padding:var(--space-8)}@media(min-width:48rem){.dialog{padding:var(--space-10)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:2.5rem;padding:var(--space-1) var(--space-5);border:var(--line);border-radius:.75rem;background-color:var(--paper);color:var(--ink);font-family:var(--font-system);font-size:var(--text-base);line-height:1.2;text-decoration:none;white-space:nowrap}.btn:hover,.btn:active{background-color:var(--ink);color:var(--paper)}.btn--default{margin:5px;box-shadow:0 0 0 3px var(--paper),0 0 0 6px var(--ink)}.btn[disabled],.btn[aria-disabled=true]{color:var(--disabled);border-color:var(--disabled);background-color:var(--paper);cursor:not-allowed}.btn--default[disabled],.btn--default[aria-disabled=true]{box-shadow:0 0 0 3px var(--paper),0 0 0 6px var(--disabled)}a.btn[aria-disabled=true]{pointer-events:none}.tag{display:inline-block;padding:0 var(--space-2);border:var(--line);font-family:var(--font-system);font-size:var(--text-xs);line-height:1.6;background-color:var(--paper)}.px-ink{fill:var(--ink)}.px-paper{fill:var(--paper)}.desk-icon{display:inline-flex;flex-direction:column;align-items:center;gap:var(--space-1);width:6.5rem;color:var(--ink);text-decoration:none;font-family:var(--font-system);font-size:var(--text-sm);text-align:center}.desk-icon__label{background-color:var(--paper);padding:0 var(--space-1);line-height:1.35}.desk-icon:hover .desk-icon__label,.desk-icon:focus-visible .desk-icon__label{background-color:var(--ink);color:var(--paper)}.desk-icon:hover svg,.desk-icon:focus-visible svg{filter:invert(1)}.desk-icon:focus-visible{outline-offset:2px}.banner{display:flex;align-items:center;gap:var(--space-3);border:var(--line);padding:var(--space-3) var(--space-4);font-family:var(--font-system)}.banner:before{flex-shrink:0;display:grid;place-items:center;width:1.75rem;height:1.75rem;border:var(--line);font-weight:700}.banner[data-kind=success]:before{content:"✓"}.banner[data-kind=cooldown]:before{content:"…"}.banner[data-kind=error],.banner[data-kind=limit]{background-color:var(--ink);color:var(--paper)}.banner[data-kind=error]:before,.banner[data-kind=limit]:before{content:"!";border-color:var(--paper)}.field{display:block}.field__label{display:flex;justify-content:space-between;gap:var(--space-2);font-family:var(--font-system);margin-bottom:var(--space-1)}.field__hint{color:var(--muted)}.field__input{width:100%;border:var(--line);border-radius:0;padding:var(--space-2) var(--space-3);background-color:var(--paper);font-family:var(--font-body)}.field__input::placeholder{color:var(--muted)}.field__input:focus{outline:none;box-shadow:inset 0 0 0 var(--px) var(--ink)}textarea.field__input{resize:vertical}.radio{display:flex;align-items:center;gap:var(--space-3);cursor:pointer}.radio input{appearance:none;flex-shrink:0;width:1.15rem;height:1.15rem;margin:0;border:var(--line);border-radius:50%;background-color:var(--paper);cursor:pointer}.radio input:checked{background-image:radial-gradient(circle,var(--ink) 0 38%,transparent 42%)}.radio input:focus-visible{outline:var(--px) dashed var(--ink);outline-offset:3px}:root[data-motion] [data-zoom]:not(.is-open){visibility:hidden}.is-pending{visibility:hidden}.zoom-rect{position:fixed;z-index:100;border:var(--px) solid var(--ink);pointer-events:none;opacity:0;animation-name:zoom-flash;animation-timing-function:steps(1,end)}@keyframes zoom-flash{0%{opacity:1}to{opacity:0}}.desk-icon.is-selected .desk-icon__label{background-color:var(--ink);color:var(--paper)}.desk-icon.is-selected svg{filter:invert(1)}.btn:active:not([disabled]):not([aria-disabled=true]){transform:translate(1px,1px)}.flex-1{flex:1}@media(min-width:48rem){.sm-only{display:none!important}}@media(max-width:47.99rem){.md-only{display:none!important}}@media(min-width:64rem)and (min-height:40rem){:root[data-desktops]{scroll-snap-type:y mandatory;scroll-padding-top:var(--menubar-height)}:root[data-desktops] main>section{box-sizing:border-box;height:calc(100dvh - var(--menubar-height));min-height:0;display:flex;align-items:center;padding-block:var(--space-8);scroll-snap-align:start;scroll-snap-stop:always}:root[data-desktops] .site-footer{scroll-snap-align:end}:root[data-desktops] .section>.container:not(.contact__grid){display:flex;flex-direction:column;max-height:100%}:root[data-desktops] .section>.container>.window{display:flex;flex-direction:column;min-height:0}:root[data-desktops] .section>.container>.window>.window__body{flex:1;min-height:0;overflow:auto}:root[data-desktops] .section>.contact__grid{max-height:100%}:root[data-desktops] .contact__grid>.dialog,:root[data-desktops] .contact__grid>.window{max-height:100%;overflow:auto}:root[data-desktops] .window__body,:root[data-desktops] .contact__grid>.dialog{scrollbar-color:var(--ink) var(--paper)}:root[data-desktops] .window--terminal .window__body{scrollbar-color:var(--term-fg) var(--term-bg)}:root[data-desktops] .window__body::-webkit-scrollbar{width:18px}:root[data-desktops] .window__body::-webkit-scrollbar-track{border-left:var(--line);background:var(--checker-pattern) 0 0 / 4px 4px,var(--paper)}:root[data-desktops] .window__body::-webkit-scrollbar-thumb{border:var(--line);background-color:var(--paper)}@supports (animation-timeline: view()){@media(prefers-reduced-motion:no-preference){:root[data-desktops] main>section>.container{animation:desktop-arrive steps(5,end) both,desktop-leave steps(5,end) both;animation-timeline:view(),view();animation-range:entry 15% entry 100%,exit 0% exit 85%}}}}@keyframes desktop-arrive{0%{opacity:0;transform:translateY(10%) scale(.96)}to{opacity:1;transform:none}}@keyframes desktop-leave{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(-6%) scale(.94)}}.desktop-osd{position:fixed;top:calc(var(--menubar-height) + var(--space-4));left:50%;z-index:90;display:grid;justify-items:center;gap:var(--space-1);padding:var(--space-3) var(--space-5);background-color:var(--paper);border:var(--line);box-shadow:var(--shadow-menu);font-family:var(--font-system);pointer-events:none;transform:translate(-50%);visibility:hidden}.desktop-osd.is-visible{visibility:visible}.desktop-osd__pager{display:flex;gap:var(--space-1);margin-bottom:var(--space-1)}.desktop-osd__pager span{width:1.5rem;height:1rem;border:var(--line)}.desktop-osd__pager span.is-current{background-color:var(--ink)}.desktop-osd__number{font-size:var(--text-sm)}.desktop-osd__name{font-size:var(--text-lg);font-weight:700}.menubar[data-astro-cid-pux6a34n]{position:sticky;top:0;z-index:50;background-color:var(--paper);border-bottom:var(--line);font-family:var(--font-system);font-size:var(--text-base)}.menubar__inner[data-astro-cid-pux6a34n]{display:flex;align-items:stretch;height:var(--menubar-height);padding-inline:var(--space-2)}.menubar__apple[data-astro-cid-pux6a34n]{position:relative;display:flex}.menubar__titles[data-astro-cid-pux6a34n]{display:flex}.menubar__item[data-astro-cid-pux6a34n]{display:flex;align-items:center;gap:var(--space-2);height:100%;padding-inline:var(--space-3);text-decoration:none}.menubar__item[data-astro-cid-pux6a34n]:hover,.menubar__duck[data-astro-cid-pux6a34n][aria-expanded=true]{background-color:var(--ink);color:var(--paper)}.menubar__item[data-astro-cid-pux6a34n]:hover svg,.menubar__duck[data-astro-cid-pux6a34n][aria-expanded=true] svg{filter:invert(1)}.menubar__item[data-astro-cid-pux6a34n]:focus-visible{outline-offset:-4px}.menubar__app[data-astro-cid-pux6a34n]{font-weight:700}.menubar__extras[data-astro-cid-pux6a34n]{display:flex;align-items:stretch;margin-left:auto}.menubar__pager[data-astro-cid-pux6a34n]{display:none;align-items:center;gap:var(--space-1);padding-inline:var(--space-3)}@media(min-width:64rem)and (min-height:40rem){:root[data-desktops] .menubar__pager[data-astro-cid-pux6a34n]{display:flex}}.menubar__desk[data-astro-cid-pux6a34n]{width:1.5rem;height:1rem;border:var(--line);background-color:var(--paper)}.menubar__desk[data-astro-cid-pux6a34n]:hover{background-image:var(--checker-pattern);background-size:4px 4px}.menubar__desk[data-astro-cid-pux6a34n][aria-current=true]{background-color:var(--ink);background-image:none}.menubar__lang[data-astro-cid-pux6a34n]{font-weight:700}.menubar__theme[data-astro-cid-pux6a34n] .menubar__sun{display:none}:root[data-theme=dark] .menubar__theme[data-astro-cid-pux6a34n] .menubar__sun{display:block}:root[data-theme=dark] .menubar__theme[data-astro-cid-pux6a34n] .menubar__moon{display:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .menubar__theme[data-astro-cid-pux6a34n] .menubar__sun{display:block}:root:not([data-theme=light]) .menubar__theme[data-astro-cid-pux6a34n] .menubar__moon{display:none}}.menubar__clock[data-astro-cid-pux6a34n]{display:flex;align-items:center;padding-inline:var(--space-3)}.menubar__dropdown[data-astro-cid-pux6a34n]{position:absolute;top:100%;left:0;min-width:15rem;margin-top:var(--px);padding-block:var(--space-1);background-color:var(--paper);border:var(--line);box-shadow:var(--shadow-menu)}.menubar__dropdown[data-astro-cid-pux6a34n]:not([hidden]){display:flex;flex-direction:column}.menubar__entry[data-astro-cid-pux6a34n]{padding:var(--space-1) var(--space-6);text-align:left;text-decoration:none}.menubar__entry[data-astro-cid-pux6a34n]:hover,.menubar__entry[data-astro-cid-pux6a34n]:focus-visible{background-color:var(--ink);color:var(--paper);outline:none}.menubar__entry[data-astro-cid-pux6a34n].is-blinking{animation:menu-blink .18s steps(1,end)}@keyframes menu-blink{0%,50%{background-color:var(--ink);color:var(--paper)}25%,75%{background-color:var(--paper);color:var(--ink)}}.menubar__sep[data-astro-cid-pux6a34n]{margin:var(--space-1) 0;border:0;border-top:var(--px) dotted var(--ink)}.trash__icon[data-astro-cid-qvwlrvyn]{cursor:default}.trash__icon[data-astro-cid-qvwlrvyn] .trash__glyph--empty{display:none}:root[data-trash=empty] .trash__icon[data-astro-cid-qvwlrvyn] .trash__glyph--empty{display:block}:root[data-trash=empty] .trash__icon[data-astro-cid-qvwlrvyn] .trash__glyph--full{display:none}.trash[data-astro-cid-qvwlrvyn]{width:min(40rem,calc(100% - 2rem));padding:0;border:0;background:transparent;overflow:visible;color:var(--ink)}.trash[data-astro-cid-qvwlrvyn]::backdrop,.trash-alert[data-astro-cid-qvwlrvyn]::backdrop{background:transparent}.trash[data-astro-cid-qvwlrvyn].is-zooming{visibility:hidden}.trash__files[data-astro-cid-qvwlrvyn]{display:flex;flex-wrap:wrap;gap:var(--space-4) var(--space-2);min-height:7.5rem}.trash__file[data-astro-cid-qvwlrvyn]{width:7rem}.trash__file[data-astro-cid-qvwlrvyn] .desk-icon__label{overflow-wrap:anywhere}.trash__file[data-astro-cid-qvwlrvyn][aria-pressed=true] .desk-icon__label{background-color:var(--ink);color:var(--paper)}.trash__file[data-astro-cid-qvwlrvyn][aria-pressed=true] svg{filter:invert(1)}.trash__file[data-astro-cid-qvwlrvyn].is-trashed{animation:trash-out .16s steps(3,end) forwards}@keyframes trash-out{to{opacity:0;transform:scale(.3) translateY(1rem)}}.trash__empty[data-astro-cid-qvwlrvyn]{min-height:7.5rem;display:grid;place-items:center;font-family:var(--font-system);text-align:center}.trash__footer[data-astro-cid-qvwlrvyn]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-4);margin-top:var(--space-6);padding-top:var(--space-4);border-top:var(--px) dotted var(--ink)}.trash__status[data-astro-cid-qvwlrvyn]{flex:1;min-width:14rem;font-size:var(--text-sm)}.trash-alert[data-astro-cid-qvwlrvyn]{width:min(28rem,calc(100% - 2rem))}.trash-alert__body[data-astro-cid-qvwlrvyn]{display:grid;grid-template-columns:auto 1fr;gap:var(--space-4) var(--space-5)}.trash-alert__mark[data-astro-cid-qvwlrvyn]{display:grid;place-items:center;width:2.75rem;height:2.75rem;border:var(--line);font-family:var(--font-system);font-size:var(--text-xl);font-weight:700}.trash-alert__title[data-astro-cid-qvwlrvyn]{font-size:var(--text-lg);margin-bottom:var(--space-2)}.trash-alert__actions[data-astro-cid-qvwlrvyn]{grid-column:1 / -1;display:flex;justify-content:flex-end;align-items:center;gap:var(--space-4)}.hero[data-astro-cid-bbe6dxrz]{padding-block:var(--space-8) var(--space-10)}.hero__desktop[data-astro-cid-bbe6dxrz]{display:grid;gap:var(--space-8)}@media(min-width:64rem){.hero[data-astro-cid-bbe6dxrz]{min-height:calc(100vh - var(--menubar-height));display:flex;align-items:center}.hero__desktop[data-astro-cid-bbe6dxrz]{grid-template-columns:1fr auto;align-items:stretch}}.hero__windows[data-astro-cid-bbe6dxrz]{display:flex;flex-direction:column;gap:var(--space-6)}.hero__readme[data-astro-cid-bbe6dxrz]{position:relative;max-width:44rem}@media(min-width:64rem)and (pointer:fine){.hero__windows[data-astro-cid-bbe6dxrz] .window__titlebar{cursor:grab}.hero__windows[data-astro-cid-bbe6dxrz] .window__titlebar.is-dragging{cursor:grabbing}}@media(min-width:64rem){.hero__windows[data-astro-cid-bbe6dxrz]{gap:0}.hero__terminal[data-astro-cid-bbe6dxrz]{position:relative;z-index:1;width:min(36rem,70%);margin-left:auto;margin-top:calc(-1 * var(--space-12))}}.hero__heading[data-astro-cid-bbe6dxrz]{font-size:var(--text-hero);line-height:.95;margin-bottom:var(--space-5)}.hero__line[data-astro-cid-bbe6dxrz]{display:block}.hero__tagline[data-astro-cid-bbe6dxrz]{font-size:var(--text-lg);max-width:34ch;margin-bottom:var(--space-8)}@media(min-width:48rem){.hero__tagline[data-astro-cid-bbe6dxrz]{font-size:var(--text-xl)}}.hero__actions[data-astro-cid-bbe6dxrz]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.hero__terminal[data-astro-cid-bbe6dxrz] .window__body{min-height:9.5rem}.hero__icons[data-astro-cid-bbe6dxrz]{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-4)}.hero__icons[data-astro-cid-bbe6dxrz] .hero__trash{display:none}@media(min-width:64rem){.hero__icons[data-astro-cid-bbe6dxrz]{flex-direction:column;flex-wrap:nowrap;justify-content:flex-start;gap:var(--space-6)}.hero__icons[data-astro-cid-bbe6dxrz] .hero__trash{display:inline-flex;margin-top:auto}}.about__grid[data-astro-cid-v2cbyr3p]{display:grid;gap:var(--space-8)}@media(min-width:56rem){.about__grid[data-astro-cid-v2cbyr3p]{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:var(--space-12)}}.about__story-title[data-astro-cid-v2cbyr3p]{font-size:var(--text-xl);margin-bottom:var(--space-4)}.about__paragraph[data-astro-cid-v2cbyr3p]{font-size:var(--text-lg);max-width:62ch}.about__paragraph[data-astro-cid-v2cbyr3p]+.about__paragraph[data-astro-cid-v2cbyr3p]{margin-top:var(--space-4)}.about__info[data-astro-cid-v2cbyr3p]{align-self:start;border:var(--line);box-shadow:var(--shadow-window);padding:var(--space-5);font-family:var(--font-system)}.about__info-head[data-astro-cid-v2cbyr3p]{display:flex;align-items:center;gap:var(--space-4);padding-bottom:var(--space-4);margin-bottom:var(--space-4);border-bottom:var(--px) dotted var(--ink)}.about__info-name[data-astro-cid-v2cbyr3p]{font-size:var(--text-xl)}.about__info-kind[data-astro-cid-v2cbyr3p]{font-size:var(--text-sm)}.about__facts[data-astro-cid-v2cbyr3p]{display:grid;gap:var(--space-2)}.about__fact[data-astro-cid-v2cbyr3p]{display:grid;grid-template-columns:7.5rem 1fr;gap:var(--space-3)}.about__fact[data-astro-cid-v2cbyr3p] dt[data-astro-cid-v2cbyr3p]{text-align:right;font-weight:700}.about__meter[data-astro-cid-v2cbyr3p]{height:1.25rem;margin-top:var(--space-2);border:var(--line);background-color:var(--paper)}.about__meter-fill[data-astro-cid-v2cbyr3p]{display:block;height:100%;background-image:var(--checker-pattern);background-size:4px 4px;border-right:var(--line);transition:width .6s steps(10,end) .12s}:root[data-motion] .window:not(.is-open) .about__meter-fill[data-astro-cid-v2cbyr3p]{width:0!important}.about__meter-label[data-astro-cid-v2cbyr3p]{font-size:var(--text-sm)}.about__info-note[data-astro-cid-v2cbyr3p]{margin-top:var(--space-4);padding-top:var(--space-3);border-top:var(--px) dotted var(--ink);font-size:var(--text-sm);text-align:center}.skills__session[data-astro-cid-ab4ihpzs]{display:flex;flex-direction:column;gap:var(--space-4)}@media(min-width:48rem){.skills[data-astro-cid-ab4ihpzs] .window__body{padding:var(--space-8)}}.skills__fetch[data-astro-cid-ab4ihpzs]{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--space-4) var(--space-10);margin-bottom:var(--space-4)}.skills__duck[data-astro-cid-ab4ihpzs]{margin:0;font:inherit;font-size:1.3em;line-height:1.05;color:var(--term-fg)}.skills__host[data-astro-cid-ab4ihpzs]{color:var(--term-bright)}.skills__stats[data-astro-cid-ab4ihpzs]{display:grid;gap:0}.skills__stat[data-astro-cid-ab4ihpzs]{display:grid;grid-template-columns:10ch 1fr}.skills__stat[data-astro-cid-ab4ihpzs] dt[data-astro-cid-ab4ihpzs]{color:var(--term-bright)}.skills__palette[data-astro-cid-ab4ihpzs]{display:flex;gap:0;margin-top:var(--space-3)}.skills__palette[data-astro-cid-ab4ihpzs] span[data-astro-cid-ab4ihpzs]{width:2rem;height:1.1rem}.skills__grid[data-astro-cid-ab4ihpzs]{display:grid;gap:var(--space-6) var(--space-4);margin-top:var(--space-3);margin-bottom:var(--space-4)}@media(min-width:40rem){.skills__grid[data-astro-cid-ab4ihpzs]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:64rem){.skills__grid[data-astro-cid-ab4ihpzs]{grid-template-columns:repeat(4,minmax(0,1fr))}}.skills__list[data-astro-cid-ab4ihpzs]{display:grid;gap:var(--space-1)}.experience[data-astro-cid-xpq65ryk] .window__body{padding:0}.experience__columns[data-astro-cid-xpq65ryk],.experience__summary[data-astro-cid-xpq65ryk]{display:grid;grid-template-columns:1fr;gap:0 var(--space-4);padding-inline:var(--space-5)}@media(min-width:48rem){.experience__columns[data-astro-cid-xpq65ryk],.experience__summary[data-astro-cid-xpq65ryk]{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr)}}.experience__columns[data-astro-cid-xpq65ryk]{padding-block:var(--space-2);border-bottom:var(--line);font-family:var(--font-system);font-size:var(--text-sm)}.experience__row[data-astro-cid-xpq65ryk]{border-bottom:var(--px) dotted var(--ink)}.experience__list[data-astro-cid-xpq65ryk]>li[data-astro-cid-xpq65ryk]:last-child .experience__row[data-astro-cid-xpq65ryk]{border-bottom:0}.experience__summary[data-astro-cid-xpq65ryk]{align-items:center;padding-block:var(--space-3);cursor:pointer;list-style:none;font-family:var(--font-system)}.experience__summary[data-astro-cid-xpq65ryk]::-webkit-details-marker{display:none}.experience__summary[data-astro-cid-xpq65ryk]:hover{background-color:var(--ink);color:var(--paper)}.experience__summary[data-astro-cid-xpq65ryk]:hover svg{filter:invert(1)}.experience__summary[data-astro-cid-xpq65ryk]:focus-visible{outline-offset:-4px}.experience__name[data-astro-cid-xpq65ryk]{display:flex;align-items:center;gap:var(--space-2)}.experience__triangle[data-astro-cid-xpq65ryk]{width:0;height:0;border-block:.4rem solid transparent;border-left:.55rem solid currentColor;transition:transform .12s steps(2);flex-shrink:0}.experience__row[data-astro-cid-xpq65ryk][open] .experience__triangle[data-astro-cid-xpq65ryk]{transform:rotate(90deg)}.experience__title[data-astro-cid-xpq65ryk]{font-size:var(--text-lg)}.experience__company[data-astro-cid-xpq65ryk],.experience__period[data-astro-cid-xpq65ryk]{padding-left:calc(.55rem + 1.25rem + var(--space-4))}@media(min-width:48rem){.experience__company[data-astro-cid-xpq65ryk],.experience__period[data-astro-cid-xpq65ryk]{padding-left:0}}@media(prefers-reduced-motion:no-preference){.experience__row[data-astro-cid-xpq65ryk]{interpolate-size:allow-keywords}.experience__row[data-astro-cid-xpq65ryk]::details-content{block-size:0;overflow:hidden;transition:block-size .13s steps(4,end),content-visibility .13s allow-discrete}.experience__row[data-astro-cid-xpq65ryk][open]::details-content{block-size:auto}}.experience__detail[data-astro-cid-xpq65ryk]{padding:0 var(--space-5) var(--space-5) calc(var(--space-5) + .55rem + 1.25rem + var(--space-4))}.experience__description[data-astro-cid-xpq65ryk]{max-width:65ch;margin-bottom:var(--space-3)}.experience__technologies[data-astro-cid-xpq65ryk]{display:flex;flex-wrap:wrap;gap:var(--space-2)}.projects__grid[data-astro-cid-amng4zvp]{display:grid;gap:var(--space-6)}@media(min-width:40rem){.projects__grid[data-astro-cid-amng4zvp]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:64rem){.projects__grid[data-astro-cid-amng4zvp]{grid-template-columns:repeat(3,minmax(0,1fr))}}.projects__card[data-astro-cid-amng4zvp]{display:flex;flex-direction:column;border:var(--line);box-shadow:var(--shadow-window);background-color:var(--paper)}.projects__head[data-astro-cid-amng4zvp]{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-bottom:var(--line)}.projects__title[data-astro-cid-amng4zvp]{font-size:var(--text-lg)}.projects__status[data-astro-cid-amng4zvp]{flex-shrink:0;font-family:var(--font-system);font-size:var(--text-xs)}.projects__image-wrap[data-astro-cid-amng4zvp]{aspect-ratio:16 / 10;border-bottom:var(--line);overflow:hidden;background-color:var(--paper)}.projects__image[data-astro-cid-amng4zvp]{width:100%;height:100%;object-fit:cover}@media(hover:hover){.projects__image[data-astro-cid-amng4zvp]{filter:grayscale(1) contrast(1.15);transition:filter .2s steps(3)}.projects__card[data-astro-cid-amng4zvp]:hover .projects__image[data-astro-cid-amng4zvp],.projects__card[data-astro-cid-amng4zvp]:focus-within .projects__image[data-astro-cid-amng4zvp]{filter:none}}.projects__body[data-astro-cid-amng4zvp]{display:flex;flex-direction:column;flex:1;padding:var(--space-4)}.projects__description[data-astro-cid-amng4zvp]{font-size:var(--text-sm);margin-bottom:var(--space-4)}.projects__technologies[data-astro-cid-amng4zvp]{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-5)}.projects__links[data-astro-cid-amng4zvp]{display:flex;align-items:center;gap:var(--space-3);margin-top:auto}.contact__grid[data-astro-cid-xmivup5a]{display:grid;gap:var(--space-8);align-items:start}@media(min-width:56rem){.contact__grid[data-astro-cid-xmivup5a]{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:var(--space-10)}.contact__terminal[data-astro-cid-xmivup5a]{margin-top:var(--space-10)}}.contact__head[data-astro-cid-xmivup5a]{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6)}.contact__title[data-astro-cid-xmivup5a]{font-size:var(--text-2xl)}.contact__lead[data-astro-cid-xmivup5a]{margin-top:var(--space-1)}.contact__form[data-astro-cid-xmivup5a]{display:flex;flex-direction:column;gap:var(--space-4)}.contact__actions[data-astro-cid-xmivup5a]{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:var(--space-4);margin-top:var(--space-2)}.contact__session[data-astro-cid-xmivup5a]{display:flex;flex-direction:column;gap:var(--space-2)}.contact__intro[data-astro-cid-xmivup5a]{max-width:48ch;margin-bottom:var(--space-2)}.contact__list[data-astro-cid-xmivup5a]{margin-bottom:var(--space-2)}.contact__list[data-astro-cid-xmivup5a]>div[data-astro-cid-xmivup5a]{display:flex;flex-wrap:wrap;white-space:normal}.contact__list[data-astro-cid-xmivup5a] dt[data-astro-cid-xmivup5a]{color:var(--term-bright);white-space:pre}.contact__status[data-astro-cid-xmivup5a]{display:flex;align-items:center;gap:1ch;margin-bottom:var(--space-2)}.contact__led[data-astro-cid-xmivup5a]{width:.7em;height:.7em;border-radius:50%;background-color:var(--term-fg);box-shadow:0 0 8px var(--term-fg)}.site-footer[data-astro-cid-sz7xmlte]{margin-top:var(--space-10);border-top:var(--line);background-color:var(--paper);padding:var(--space-3) var(--space-4);font-family:var(--font-system);text-align:center}.prefs[data-astro-cid-gveqv4pv]{width:min(34rem,calc(100% - 2rem));max-height:calc(100vh - 2rem);overflow:auto}.prefs[data-astro-cid-gveqv4pv]::backdrop{background:transparent}.prefs__form[data-astro-cid-gveqv4pv]{display:flex;flex-direction:column;gap:var(--space-6)}.prefs__head[data-astro-cid-gveqv4pv]{display:flex;align-items:center;gap:var(--space-4)}.prefs__title[data-astro-cid-gveqv4pv]{font-size:var(--text-xl)}.prefs__lead[data-astro-cid-gveqv4pv]{font-size:var(--text-sm);color:var(--muted)}.prefs__group[data-astro-cid-gveqv4pv]{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:var(--space-4);border:var(--line)}.prefs__legend[data-astro-cid-gveqv4pv]{padding-inline:var(--space-2);font-family:var(--font-system);font-weight:700}.prefs__font[data-astro-cid-gveqv4pv]{flex-wrap:wrap}.prefs__font-name[data-astro-cid-gveqv4pv]{min-width:9rem}.prefs__sample[data-astro-cid-gveqv4pv]{flex:1;min-width:12rem;padding:var(--space-1) var(--space-3);background-color:var(--term-bg);color:var(--term-fg);line-height:1.6;white-space:nowrap}.prefs__hint[data-astro-cid-gveqv4pv]{font-size:var(--text-sm);color:var(--muted)}.prefs__actions[data-astro-cid-gveqv4pv]{display:flex;justify-content:flex-end}
