.ProjectDetail_page__qiqac{min-height:100vh;background-color:var(--bg);padding-top:8rem;padding-bottom:5rem}.ProjectDetail_container__ssjTr{max-width:1200px;margin:0 auto;padding:0 1.5rem}.ProjectDetail_showcaseHeader__JIQ7T{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1.25rem 2rem;margin-bottom:2.5rem}.ProjectDetail_headerText__TWvoY{flex:1 1 28rem;min-width:0;max-width:44rem}.ProjectDetail_showcaseEyebrow__BybpH{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}.ProjectDetail_eyebrowDot__9wOGP{width:3px;height:3px;border-radius:9999px;background-color:var(--border)}.ProjectDetail_badgeAI__3yMZG,.ProjectDetail_badgeDAP___GI3j{padding:.25rem .7rem;border-radius:9999px;border:none;font-family:var(--font-roboto-mono);font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.ProjectDetail_badgeDAP___GI3j{background-color:var(--mint-soft);color:var(--emerald)}.ProjectDetail_badgeAI__3yMZG{background-color:var(--amber-soft);color:var(--gold-deep)}.ProjectDetail_category__YeCBq{color:var(--ink-faint);font-size:.8125rem;font-weight:500;letter-spacing:.02em;font-family:var(--font-inter)}.ProjectDetail_actionBtnPrimary__3EHVy{display:inline-flex;align-items:center;gap:.4rem;padding:.7rem 1.4rem;border-radius:var(--radius-pill);background-color:var(--emerald);border:1px solid var(--emerald);color:#fff;font-size:.9375rem;font-weight:600;text-decoration:none;transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease;font-family:var(--font-inter)}.ProjectDetail_actionBtnPrimary__3EHVy:hover{background-color:var(--emerald-strong);transform:translateY(-2px);box-shadow:var(--shadow-md);color:#fff}.ProjectDetail_teamCredit__uBcHd{max-width:44rem;margin:3.5rem auto 0}.ProjectDetail_creditList__J_aqP{list-style:none;padding:0;margin:1.5rem 0 0;display:flex;flex-wrap:wrap;gap:1.5rem 2.5rem}.ProjectDetail_header__XfHh1{margin-bottom:3rem}.ProjectDetail_headerTop__9zkzS{display:flex;flex-direction:column;gap:1.5rem}@media (min-width:768px){.ProjectDetail_headerTop__9zkzS{flex-direction:row;align-items:flex-end;justify-content:space-between}}.ProjectDetail_headerLeft__DHYPf{flex:1}.ProjectDetail_breadcrumb__M_NTO{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--ink-faint);margin-bottom:1rem;font-family:var(--font-inter)}.ProjectDetail_breadcrumbLink__aVorR{color:var(--ink-faint);text-decoration:none;transition:color .2s}.ProjectDetail_breadcrumbLink__aVorR:hover{color:var(--emerald)}.ProjectDetail_breadcrumbSep__oaiGW{color:var(--border)}.ProjectDetail_breadcrumbCurrent__OrCir{color:var(--emerald)}.ProjectDetail_title__pLVQ5{font-size:clamp(2rem,4vw,3rem);font-weight:800;color:var(--ink);letter-spacing:-.025em;line-height:1.15;margin-bottom:1rem;font-family:var(--font-display)}.ProjectDetail_description__nnXwg{color:var(--ink-soft);font-size:1.0625rem;line-height:1.65;max-width:40rem;font-family:var(--font-inter)}.ProjectDetail_actions__ixGrl{display:flex;gap:.75rem;flex-shrink:0;flex-wrap:wrap;margin-top:0}.ProjectDetail_actionBtn___gxP9{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;border-radius:var(--radius-pill);background-color:var(--surface);border:1px solid var(--border);color:var(--ink);font-size:.875rem;font-weight:500;text-decoration:none;transition:border-color .2s ease,color .2s ease,box-shadow .2s ease;font-family:var(--font-inter)}.ProjectDetail_actionBtn___gxP9:hover{border-color:var(--emerald);color:var(--emerald);box-shadow:var(--shadow-sm)}.ProjectDetail_actionIcon__7lFHT{font-size:1rem}.ProjectDetail_githubIcon__fLwFc{width:1rem;height:1rem}.ProjectDetail_carouselSection__p9_dI{margin-bottom:4rem}.ProjectDetail_carouselWrapper__0YKxp{position:relative;width:100%;aspect-ratio:16/9;border-radius:var(--radius-lg);overflow:hidden;background-color:var(--surface-muted);border:1px solid var(--border);box-shadow:var(--shadow-lg)}.ProjectDetail_carousel__RUKFf{display:flex;height:100%;width:100%;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-ms-overflow-style:none;scrollbar-width:none}.ProjectDetail_carousel__RUKFf::-webkit-scrollbar{display:none}.ProjectDetail_carouselItem__COul_{position:relative;flex:0 0 100%;scroll-snap-align:start;height:100%}.ProjectDetail_carouselImage__XfXz2{object-fit:cover}.ProjectDetail_carouselBtn__GD__z{position:absolute;top:50%;transform:translateY(-50%);z-index:20;width:2.5rem;height:2.5rem;border-radius:9999px;background-color:hsla(0,0%,100%,.9);border:1px solid var(--border);color:var(--ink);font-size:1.5rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s,color .2s;line-height:1}.ProjectDetail_carouselBtn__GD__z:hover{background-color:#fff;color:var(--emerald)}.ProjectDetail_carouselBtnLeft__5mAcv{left:1rem}.ProjectDetail_carouselBtnRight__JecCz{right:1rem}.ProjectDetail_contentGrid__5GB2y{display:grid;grid-template-columns:1fr;gap:3rem}@media (min-width:1024px){.ProjectDetail_contentGrid__5GB2y{grid-template-columns:2fr 1fr;gap:3rem}}.ProjectDetail_mainContent__Qv98K{display:flex;flex-direction:column;gap:4rem}.ProjectDetail_sectionDivider__9Fgw4{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.ProjectDetail_dividerLine__kwzxU{height:1px;flex:1;background-color:var(--border)}.ProjectDetail_dividerLineShort__50rZL{height:1px;width:3rem;background-color:var(--border)}.ProjectDetail_sectionLabel__3Q8SR{font-size:.75rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--emerald);white-space:nowrap;font-family:var(--font-roboto-mono)}.ProjectDetail_cardsGrid__SH2Iv{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}.ProjectDetail_card__2uZPV{display:flex;flex-direction:column;gap:.85rem;background-color:var(--surface);border-radius:var(--radius-lg);padding:1.75rem;border:1px solid var(--border);box-shadow:var(--shadow-sm)}.ProjectDetail_cardHead__j4S4u{display:flex;align-items:center;gap:.75rem}.ProjectDetail_cardIcon__7foT1{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;flex-shrink:0;border-radius:9999px;color:var(--emerald);background-color:var(--mint-soft);border:1px solid rgba(14,124,91,.18)}.ProjectDetail_cardTitle__Emh6S{font-size:1rem;font-weight:700;color:var(--ink);font-family:var(--font-inter)}.ProjectDetail_sidebar__PRVnd{position:relative}@media (min-width:1024px){.ProjectDetail_sidebar__PRVnd{position:sticky;top:8rem;align-self:start}}.ProjectDetail_sidebarCard__rLylC{background-color:var(--surface);border-radius:var(--radius-lg);padding:2rem;border:1px solid var(--border);box-shadow:var(--shadow-sm)}.ProjectDetail_sidebarLabel__J1B1X{font-size:.75rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--emerald);margin-bottom:2rem;font-family:var(--font-roboto-mono)}.ProjectDetail_teamList__TKYfb{list-style:none;padding:0;margin:0 0 2rem;display:flex;flex-direction:column;gap:1.25rem}.ProjectDetail_teamMember__XVDGC{display:flex;align-items:flex-start;gap:1rem}.ProjectDetail_memberInfo__l_ej1{display:flex;flex-direction:column;gap:.15rem;min-width:0}.ProjectDetail_avatarWrapper__P22ns{position:relative;width:3rem;height:3rem;border-radius:9999px;overflow:hidden;background-color:var(--surface-muted);border:1px solid var(--border);flex-shrink:0;transition:border-color .2s}.ProjectDetail_teamMember__XVDGC:hover .ProjectDetail_avatarWrapper__P22ns{border-color:var(--emerald)}.ProjectDetail_avatar__FJ1_6{object-fit:cover}.ProjectDetail_avatarPlaceholder__7_2Ud{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem;color:var(--emerald);background-color:var(--mint-soft)}.ProjectDetail_memberName__mr3nV{font-weight:700;color:var(--ink);font-size:.9375rem;font-family:var(--font-inter)}.ProjectDetail_memberRole__zbzye{font-size:.75rem;color:var(--ink-faint);font-family:var(--font-inter)}.ProjectDetail_memberSocials__lAcjr{display:flex;align-items:center;gap:.4rem;margin-top:.4rem}.ProjectDetail_memberSocialLink__O1HSO{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border-radius:9999px;color:var(--ink-faint);background-color:var(--surface-muted);border:1px solid var(--border);transition:color .2s ease,border-color .2s ease,background-color .2s ease}.ProjectDetail_memberSocialLink__O1HSO:hover{color:var(--emerald);border-color:var(--emerald);background-color:var(--mint-soft)}.ProjectDetail_metaSection___VyrC{padding-top:2rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:1rem}.ProjectDetail_metaSection___VyrC:first-child{padding-top:0;border-top:none}.ProjectDetail_metaRow__mHqq_{display:flex;justify-content:space-between;align-items:center;font-size:.875rem;font-family:var(--font-inter)}.ProjectDetail_metaLabel__GWBgY{color:var(--ink-faint)}.ProjectDetail_metaValue___uK0s{color:var(--ink);font-weight:500}.ProjectDetail_sidebarTech__3zGhI{display:flex;flex-wrap:wrap;gap:.5rem}.ProjectDetail_techTag__AMc79{padding:.25rem .75rem;border-radius:9999px;background-color:rgba(123,209,250,.22);color:var(--ink);font-size:.75rem;font-family:var(--font-inter)}.Markdown_prose__SITLk{color:var(--ink-soft);font-family:var(--font-inter);font-size:1.0625rem;line-height:1.75}.Markdown_prose__SITLk>:first-child{margin-top:0}.Markdown_prose__SITLk>:last-child{margin-bottom:0}.Markdown_prose__SITLk p{margin:0 0 1.35rem}.Markdown_prose__SITLk strong{color:var(--ink);font-weight:700}.Markdown_prose__SITLk em{font-style:italic}.Markdown_prose__SITLk del{color:var(--ink-muted,var(--ink-soft));text-decoration:line-through}.Markdown_prose__SITLk h1,.Markdown_prose__SITLk h2,.Markdown_prose__SITLk h3,.Markdown_prose__SITLk h4{color:var(--ink);font-family:var(--font-display);font-weight:700;line-height:1.25;margin:2rem 0 1rem}.Markdown_prose__SITLk h1{font-size:1.75rem}.Markdown_prose__SITLk h2{font-size:1.5rem}.Markdown_prose__SITLk h3{font-size:1.25rem}.Markdown_prose__SITLk h4{font-size:1.0625rem}.Markdown_prose__SITLk ol,.Markdown_prose__SITLk ul{margin:0 0 1.5rem;padding:0;display:flex;flex-direction:column;gap:.6rem}.Markdown_prose__SITLk ul{list-style:none}.Markdown_prose__SITLk ul>li{position:relative;padding-left:1.5rem;line-height:1.6}.Markdown_prose__SITLk ul>li:before{content:"";position:absolute;left:.15rem;top:.65rem;width:.45rem;height:.45rem;border-radius:9999px;background-color:var(--emerald)}.Markdown_prose__SITLk ol{list-style:decimal;padding-left:1.4rem}.Markdown_prose__SITLk ol>li{padding-left:.35rem;line-height:1.6}.Markdown_prose__SITLk li input[type=checkbox]{margin-right:.5rem;accent-color:var(--emerald)}.Markdown_prose__SITLk ul>li:has(input[type=checkbox]){padding-left:0}.Markdown_prose__SITLk ul>li:has(input[type=checkbox]):before{display:none}.Markdown_prose__SITLk code{font-family:var(--font-roboto-mono);font-size:.9em;background-color:var(--mint-soft);color:var(--emerald);padding:.12em .45em;border-radius:var(--radius-sm);border:1px solid rgba(14,124,91,.18)}.Markdown_prose__SITLk pre{margin:0 0 1.5rem;padding:1rem 1.25rem;background-color:var(--pine-deep);border-radius:var(--radius-md);overflow-x:auto}.Markdown_prose__SITLk pre code{background:none;border:none;color:#e6f4ef;padding:0;white-space:pre}.Markdown_prose__SITLk a{color:var(--emerald);text-decoration:underline;text-underline-offset:2px;transition:color .2s ease}.Markdown_prose__SITLk a:hover{color:var(--emerald-strong)}.Markdown_prose__SITLk blockquote{margin:0 0 1.5rem;padding:.35rem 0 .35rem 1.15rem;border-left:3px solid var(--emerald);color:var(--ink-soft);font-style:italic}.Markdown_prose__SITLk hr{border:none;border-top:1px solid var(--border);margin:2rem 0}.Markdown_prose__SITLk table{width:100%;border-collapse:collapse;margin:0 0 1.5rem;font-size:.9375rem}.Markdown_prose__SITLk td,.Markdown_prose__SITLk th{border:1px solid var(--border);padding:.5rem .75rem;text-align:left}.Markdown_prose__SITLk th{background-color:var(--mint-soft);color:var(--ink);font-weight:700}.Markdown_prose__SITLk.Markdown_compact__TApWn{font-size:.875rem;line-height:1.65}.Markdown_prose__SITLk.Markdown_compact__TApWn ol,.Markdown_prose__SITLk.Markdown_compact__TApWn p,.Markdown_prose__SITLk.Markdown_compact__TApWn ul{margin-bottom:.75rem}