.page_main__nw1Wk{margin-top:80px;margin-left:10px;margin-right:10px;background-color:var(--bg-main);color:var(--primary);font-family:var(--font-body),sans-serif}.Gallery2Vflex_container__nFSrN{margin:0;display:grid;place-content:center;background:#557c75}.Gallery2Vflex_gallery__U_qPS{display:flex;flex-wrap:wrap;margin-left:100px}.Gallery2Vflex_gallery__U_qPS>img{flex-basis:calc(33.33% - 20px);height:200px;width:200px;margin:var(--space-sm);background-color:#ccc;aspect-ratio:1;object-fit:cover;transition:var(--transition-normal);filter:grayscale();cursor:pointer}.Gallery2Vflex_gallery__U_qPS>img:hover{filter:grayscale(0)}.Gallery2Vflex_gallery__U_qPS img:nth-child(2n){-webkit-clip-path:polygon(0 0,100% 0,50% 100%);clip-path:polygon(0 0,100% 0,50% 100%);margin-left:-15%}.Gallery2Vflex_gallery__U_qPS img:nth-child(odd){-webkit-clip-path:polygon(50% 0,100% 100%,0 100%);clip-path:polygon(50% 0,100% 100%,0 100%);margin-left:-15%}.icons_verified__1eJnA{margin-left:.125rem;max-width:20px;max-height:20px;height:1.25em;fill:currentColor;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:text-bottom}.quoted-tweet-container_root__92393{width:100%;overflow:hidden;border:var(--tweet-border);border-radius:12px;margin:var(--tweet-quoted-container-margin);transition-property:background-color,box-shadow;transition-duration:.2s;cursor:pointer}.quoted-tweet-container_root__92393:hover{background-color:var(--tweet-quoted-bg-color-hover)}.quoted-tweet-container_article__FoJQN{position:relative;box-sizing:inherit}.tweet-actions_actions__UDw7H{display:flex;align-items:center;color:var(--tweet-font-color-secondary);padding-top:.25rem;margin-top:.25rem;border-top:var(--tweet-border);overflow-wrap:break-word;white-space:nowrap;text-overflow:ellipsis}.tweet-actions_copy__Tbdg_,.tweet-actions_like__H1xYv,.tweet-actions_reply__S4rFc{text-decoration:none;color:inherit;display:flex;align-items:center;margin-right:1.25rem}.tweet-actions_copy__Tbdg_:hover,.tweet-actions_like__H1xYv:hover,.tweet-actions_reply__S4rFc:hover{background-color:transparent}.tweet-actions_like__H1xYv:hover>.tweet-actions_likeIconWrapper__JQkhp{background-color:var(--tweet-color-red-primary-hover)}.tweet-actions_like__H1xYv:hover>.tweet-actions_likeCount__MyxBd{color:var(--tweet-color-red-primary);-webkit-text-decoration-line:underline;text-decoration-line:underline}.tweet-actions_copyIconWrapper__toM2y,.tweet-actions_likeIconWrapper__JQkhp,.tweet-actions_replyIconWrapper__NVdGa{width:var(--tweet-actions-icon-wrapper-size);height:var(--tweet-actions-icon-wrapper-size);display:flex;justify-content:center;align-items:center;margin-left:-.25rem;border-radius:9999px}.tweet-actions_copyIcon__SEaWw,.tweet-actions_likeIcon__fhDng,.tweet-actions_replyIcon__MI2tG{height:var(--tweet-actions-icon-size);fill:currentColor;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tweet-actions_likeIcon__fhDng{color:var(--tweet-color-red-primary)}.tweet-actions_copyText__fEqBx,.tweet-actions_likeCount__MyxBd,.tweet-actions_replyText__doQct{font-size:var(--tweet-actions-font-size);font-weight:var(--tweet-actions-font-weight);line-height:var(--tweet-actions-line-height);margin-left:.25rem}.tweet-actions_reply__S4rFc:hover>.tweet-actions_replyIconWrapper__NVdGa{background-color:var(--tweet-color-blue-secondary-hover)}.tweet-actions_reply__S4rFc:hover>.tweet-actions_replyText__doQct{color:var(--tweet-color-blue-secondary);-webkit-text-decoration-line:underline;text-decoration-line:underline}.tweet-actions_replyIcon__MI2tG{color:var(--tweet-color-blue-primary)}.tweet-actions_copy__Tbdg_{font:inherit;background:none;border:none;cursor:pointer}.tweet-actions_copy__Tbdg_:hover>.tweet-actions_copyIconWrapper__toM2y{background-color:var(--tweet-color-green-primary-hover)}.tweet-actions_copy__Tbdg_:hover .tweet-actions_copyIcon__SEaWw{color:var(--tweet-color-green-primary)}.tweet-actions_copy__Tbdg_:hover>.tweet-actions_copyText__fEqBx{color:var(--tweet-color-green-primary);-webkit-text-decoration-line:underline;text-decoration-line:underline}.tweet-container_root__0rJLq{width:100%;min-width:250px;max-width:550px;overflow:hidden;color:var(--tweet-font-color);font-family:var(--tweet-font-family);font-weight:400;box-sizing:border-box;border:var(--tweet-border);border-radius:12px;margin:var(--tweet-container-margin);background-color:var(--tweet-bg-color);transition-property:background-color,box-shadow;transition-duration:.2s}.tweet-container_root__0rJLq:hover{background-color:var(--tweet-bg-color-hover)}.tweet-container_article__0ERPK{position:relative;box-sizing:inherit;padding:.75rem 1rem}.tweet-header_header__CXzdi{display:flex;padding-bottom:.75rem;line-height:var(--tweet-header-line-height);font-size:var(--tweet-header-font-size);white-space:nowrap;overflow-wrap:break-word;overflow:hidden}.tweet-header_avatar__0Wi9G{position:relative;height:48px;width:48px}.tweet-header_avatarOverflow__E2gxj{height:100%;width:100%;position:absolute;overflow:hidden;border-radius:9999px}.tweet-header_avatarSquare__uIUBO{border-radius:4px}.tweet-header_avatarShadow__CB9Zo{height:100%;width:100%;transition-property:background-color;transition-duration:.2s;box-shadow:inset 0 0 2px rgb(0 0 0/3%)}.tweet-header_avatarShadow__CB9Zo:hover{background-color:rgba(26,26,26,.15)}.tweet-header_author___jWoR{max-width:calc(100% - 84px);display:flex;flex-direction:column;justify-content:center;margin:0 .5rem}.tweet-header_authorLink__qj5Sm{text-decoration:none;color:inherit;display:flex;align-items:center}.tweet-header_authorLink__qj5Sm:hover{-webkit-text-decoration-line:underline;text-decoration-line:underline}.tweet-header_authorVerified__OFYo2{display:inline-flex}.tweet-header_authorLinkText__y6HdU{font-weight:700;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.tweet-header_authorFollow__w_j4h,.tweet-header_authorMeta__gIC3U{display:flex}.tweet-header_username__UebZb{color:var(--tweet-font-color-secondary);text-decoration:none;text-overflow:ellipsis}.tweet-header_follow__Fi7bf{color:var(--tweet-color-blue-secondary);text-decoration:none;font-weight:700}.tweet-header_follow__Fi7bf:hover{-webkit-text-decoration-line:underline;text-decoration-line:underline}.tweet-header_separator__d4pqe{padding:0 .25rem}.tweet-header_brand__0FLQl{-webkit-margin-start:auto;margin-inline-start:auto}.tweet-header_twitterIcon__m0Rzu{width:23.75px;height:23.75px;color:var(--tweet-twitter-icon-color);fill:currentColor;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tweet-link_root__4EzRS{font-weight:inherit;color:var(--tweet-color-blue-secondary);text-decoration:none;cursor:pointer}.tweet-link_root__4EzRS:hover{text-decoration-thickness:1px;-webkit-text-decoration-line:underline;text-decoration-line:underline}.tweet-body_root__ChzUj{font-size:var(--tweet-body-font-size);font-weight:var(--tweet-body-font-weight);line-height:var(--tweet-body-line-height);margin:var(--tweet-body-margin);overflow-wrap:break-word;white-space:pre-wrap}.tweet-info-created-at_root__KaxZi{color:inherit;text-decoration:none;font-size:var(--tweet-info-font-size);line-height:var(--tweet-info-line-height)}.tweet-info-created-at_root__KaxZi:hover{text-decoration-thickness:1px;-webkit-text-decoration-line:underline;text-decoration-line:underline}.tweet-info_info__ll_kH{display:flex;align-items:center;color:var(--tweet-font-color-secondary);margin-top:.125rem;overflow-wrap:break-word;white-space:nowrap;text-overflow:ellipsis}.tweet-info_infoLink__xdgYO{color:inherit;text-decoration:none;height:var(--tweet-actions-icon-wrapper-size);width:var(--tweet-actions-icon-wrapper-size);font:inherit;margin-left:auto;display:flex;justify-content:center;align-items:center;margin-right:-4px;border-radius:9999px;transition-property:background-color;transition-duration:.2s}.tweet-info_infoLink__xdgYO:hover{background-color:var(--tweet-color-blue-secondary-hover)}.tweet-info_infoIcon__S8lzA{color:inherit;fill:currentColor;height:var(--tweet-actions-icon-size);-webkit-user-select:none;-moz-user-select:none;user-select:none}.tweet-info_infoLink__xdgYO:hover>.tweet-info_infoIcon__S8lzA{color:var(--tweet-color-blue-secondary)}.quoted-tweet-header_header___qrcQ{display:flex;padding:.75rem .75rem 0;line-height:var(--tweet-header-line-height);font-size:var(--tweet-header-font-size);white-space:nowrap;overflow-wrap:break-word;overflow:hidden}.quoted-tweet-header_avatar__lGzrW{position:relative;height:20px;width:20px}.quoted-tweet-header_avatarSquare__l_eYT{border-radius:4px}.quoted-tweet-header_author__k48VI{display:flex;margin:0 .5rem}.quoted-tweet-header_authorText__FULly{font-weight:700;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.quoted-tweet-header_username__YLPXR{color:var(--tweet-font-color-secondary);text-decoration:none;text-overflow:ellipsis;margin-left:.125rem}.quoted-tweet-body_root__szSfI{font-size:var(--tweet-quoted-body-font-size);font-weight:var(--tweet-quoted-body-font-weight);line-height:var(--tweet-quoted-body-line-height);margin:var(--tweet-quoted-body-margin);overflow-wrap:break-word;white-space:pre-wrap;padding:0 .75rem}.skeleton_skeleton__gUMqh{display:block;width:100%;border-radius:5px;background-image:var(--tweet-skeleton-gradient);background-size:400% 100%;animation:skeleton_loading__XZoZ6 8s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.skeleton_skeleton__gUMqh{animation:none;background-position:200% 0}}@keyframes skeleton_loading__XZoZ6{0%{background-position:200% 0}to{background-position:-200% 0}}.tweet-media_root__k6gQ2{margin-top:.75rem;overflow:hidden;position:relative}.tweet-media_rounded__LgwFx{border:var(--tweet-border);border-radius:12px}.tweet-media_mediaWrapper__6rfqr{display:grid;grid-auto-rows:1fr;grid-gap:2px;gap:2px;height:100%;width:100%}.tweet-media_grid2Columns__tO2Ea{grid-template-columns:repeat(2,1fr)}.tweet-media_grid3__XbH4s>a:first-child{grid-row:span 2}.tweet-media_grid2x2__Wiunq{grid-template-rows:repeat(2,1fr)}.tweet-media_mediaContainer__rjXGp{position:relative;height:100%;width:100%;display:flex;align-items:center;justify-content:center}.tweet-media_mediaLink__vFkZL{text-decoration:none;outline-style:none}.tweet-media_skeleton__qZmSS{padding-bottom:56.25%;width:100%;display:block}.tweet-media_image__yoPJg{position:absolute;top:0;left:0;bottom:0;height:100%;width:100%;margin:0;object-fit:cover;object-position:center}.tweet-media-video_anchor__EMqq1{display:flex;align-items:center;color:#fff;padding:0 1rem;border:1px solid transparent;border-radius:9999px;font-weight:700;transition:background-color .2s;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;outline-style:none;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.tweet-media-video_videoButton__P9iF2{position:relative;height:67px;width:67px;display:flex;align-items:center;justify-content:center;background-color:var(--tweet-color-blue-primary);transition-property:background-color;transition-duration:.2s;border:4px solid #fff;border-radius:9999px;cursor:pointer}.tweet-media-video_videoButton__P9iF2:focus-visible,.tweet-media-video_videoButton__P9iF2:hover{background-color:var(--tweet-color-blue-primary-hover)}.tweet-media-video_videoButtonIcon__7gRo1{margin-left:3px;width:calc(50% + 4px);height:calc(50% + 4px);max-width:100%;color:#fff;fill:currentColor;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tweet-media-video_watchOnTwitter__2ucCU{position:absolute;top:12px;right:8px}.tweet-media-video_watchOnTwitter__2ucCU>a{min-width:2rem;min-height:2rem;font-size:.875rem;line-height:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:rgba(15,20,25,.75)}.tweet-media-video_watchOnTwitter__2ucCU>a:hover{background-color:rgba(39,44,48,.75)}.tweet-media-video_viewReplies__dp8G_{position:relative;min-height:2rem;background-color:var(--tweet-color-blue-primary);border-color:var(--tweet-color-blue-primary);font-size:.9375rem;line-height:1.25rem}.tweet-media-video_viewReplies__dp8G_:hover{background-color:var(--tweet-color-blue-primary-hover)}.tweet-in-reply-to_root__o784R{text-decoration:none;color:var(--tweet-font-color-secondary);font-size:.9375rem;line-height:1.25rem;margin-bottom:.25rem;overflow-wrap:break-word;white-space:pre-wrap}.tweet-in-reply-to_root__o784R:hover{text-decoration-thickness:1px;-webkit-text-decoration-line:underline;text-decoration-line:underline}.Blogpost_main__eXEHt{margin-top:var(--space-4xl);margin-left:auto;margin-right:auto;max-width:800px;font-size:112.5%;padding-left:var(--space-xl);padding-right:var(--space-xl)}.Blogpost_link__Zbdiv{text-decoration:underline}.Blogpost_post_meta__bewBd{color:var(--color-text-muted);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-wide);line-height:var(--line-height-normal);margin-bottom:var(--space-sm);text-transform:uppercase}.Blogpost_post_title__eteYX{font-size:2.66667em;margin:0 0 var(--space-lg)}.Blogpost_post_title__eteYX a{border:0;color:inherit}.Blogpost_post_title__eteYX a &:hover{color:var(--color-text-primary)}.Playground_container__yPAHn{padding:0 var(--space-xl);margin-top:var(--space-4xl);width:100%}.Playground_main_closed___YHqm{background:#ffe0e0}.Playground_main__3w3td,.Playground_main_closed___YHqm{min-height:100vh;padding:var(--space-4xl) 0;flex:1 1;display:flex;flex-direction:column;justify-content:center;align-items:center}.Playground_centered__aZG_C{justify-content:center;align-items:center}.Playground_title__0cbms a{color:#0070f3;text-decoration:none}.Playground_title__0cbms a:active,.Playground_title__0cbms a:focus,.Playground_title__0cbms a:hover{text-decoration:underline}.Playground_title__0cbms{margin:0;line-height:1.15;font-size:2.5rem}.Playground_subtitle__2yfS3{margin:0;line-height:1.15;font-size:3rem}.Playground_description__Z2cEY,.Playground_subtitle__2yfS3,.Playground_title__0cbms{text-align:center}.Playground_description__Z2cEY{margin:var(--space-xl) auto var(--space-3xl) auto;line-height:var(--line-height-relaxed);font-size:var(--font-size-lg);max-width:65ch;color:var(--color-text-muted);text-align:left}.Playground_description__Z2cEY a{color:#0070f3;text-decoration:none}.Playground_code__SKjKs{background:var(--color-bg-tertiary);border-radius:var(--radius-sm);padding:var(--space-sm);font-size:var(--font-size-lg);font-family:var(--font-family-mono)}.Playground_grid__7jnPa{display:flex;align-items:stretch;justify-content:center;flex-wrap:wrap;max-width:900px;gap:var(--space-lg)}.Playground_card__4gppA{padding:var(--space-lg);text-align:left;color:inherit;text-decoration:none;background-color:var(--color-bg-secondary);border:1px solid var(--color-border-secondary);border-radius:var(--radius-xl);transition:color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);max-width:300px;display:flex;flex-direction:column;box-shadow:var(--shadow-sm)}.Playground_card__4gppA:active,.Playground_card__4gppA:focus,.Playground_card__4gppA:hover{color:var(--color-accent-blue);border-color:var(--color-accent-blue);transform:translateY(-3px);box-shadow:var(--shadow-lg)}.Playground_card__4gppA h2{margin:0 0 var(--space-sm) 0;font-size:var(--font-size-xl)}.Playground_card__4gppA p{margin:0;font-size:var(--font-size-base);line-height:var(--line-height-normal);flex-grow:1}.Playground_logo__WMsIG{height:1em;margin-left:var(--space-sm)}@media (max-width:600px){.Playground_grid__7jnPa{width:100%;flex-direction:column}}@media (prefers-color-scheme:dark){.Playground_card__4gppA,.Playground_footer__vjUeG{border-color:#222}.Playground_code__SKjKs{background:#111}.Playground_logo__WMsIG img{filter:invert(1)}}.tweet-replies_replies__PUxl8{padding:.25rem 0}.tweet-replies_link__roxYQ{text-decoration:none;color:var(--tweet-color-blue-secondary);display:flex;align-items:center;justify-content:center;min-width:32px;min-height:32px;-webkit-user-select:none;-moz-user-select:none;user-select:none;outline-style:none;transition-property:background-color;transition-duration:.2s;padding:0 1rem;border:var(--tweet-border);border-radius:9999px}.tweet-replies_link__roxYQ:hover{background-color:var(--tweet-color-blue-secondary-hover)}.tweet-replies_text__o0Naf{font-weight:var(--tweet-replies-font-weight);font-size:var(--tweet-replies-font-size);line-height:var(--tweet-replies-line-height);overflow-wrap:break-word;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tweet-not-found_root__KQedq{display:flex;flex-direction:column;align-items:center;padding-bottom:.75rem}.tweet-not-found_root__KQedq>h3{font-size:1.25rem;margin-bottom:.5rem}.tweet-skeleton_root__1sn43{pointer-events:none;padding-bottom:.25rem}.ProjectsPage_main__6kW_V{margin-top:var(--space-4xl);margin-left:auto;margin-right:auto;width:100%;max-width:none;font-size:112.5%}.ProjectsPage_pageTitle__POwia{max-width:750px;margin-left:auto;margin-right:auto}