@keyframes ProjectSlug_drift__hhrc6{0%,to{transform:translate(0) scale(1)}50%{transform:translate(30px,20px) scale(1.05)}}.ProjectSlug_page__Sto7L{--bg:#f5f5f0;--surface:#fffefa;--surface2:#efeee7;--border:rgba(15,15,20,.11);--accent:#8cb300;--accent2:#7c3aed;--text:#111116;--muted:#51515c;--tag-bg:rgba(77,102,0,.08);--tag-border:rgba(77,102,0,.24);--cb-surface:var(--surface);--cb-surface2:var(--surface2);--cb-border:var(--border);--cb-border-accent:rgba(77,102,0,.26);--cb-accent:#4d6600;--cb-muted:var(--muted);--cb-text:var(--text);--cb-code-purple:#7c3aed;--cb-code-blue:#1d4ed8;--cb-code-green:#166534;--cb-code-orange:#c2410c;--cb-code-gray:#5f6570;background:transparent;color:var(--text);font-family:var(--font-dm-sans),sans-serif;width:100%;min-width:0;overflow-x:hidden;box-sizing:border-box}.ProjectSlug_page__Sto7L:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E");pointer-events:none;z-index:1;opacity:.58}body.dark .ProjectSlug_page__Sto7L{--bg:#0a0a0f;--surface:#111118;--surface2:#18181f;--border:hsla(0,0%,100%,.07);--accent:#d4ff00;--accent2:#7c3aed;--text:#f0f0f5;--muted:#6b6b80;--tag-bg:rgba(212,255,0,.08);--tag-border:rgba(212,255,0,.2);--cb-border-accent:rgba(212,255,0,.2);--cb-accent:#d4ff00;--cb-code-purple:#c084fc;--cb-code-blue:#60a5fa;--cb-code-green:#a3e635;--cb-code-orange:#fb923c;--cb-code-gray:#6b7280}body:not(.dark) .ProjectSlug_page__Sto7L:before{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");opacity:.24;mix-blend-mode:multiply}.ProjectSlug_page__Sto7L .ProjectSlug_projectShowcase__6AAgL{min-height:100vh;display:flex;flex-direction:column;justify-content:flex-end;padding:60px 48px;position:relative;overflow:hidden}.ProjectSlug_page__Sto7L .ProjectSlug_projectShowcaseGlow__L5t6v{display:none;position:absolute;border-radius:50%;filter:blur(120px);animation:ProjectSlug_drift__hhrc6 9s ease-in-out infinite;pointer-events:none}.ProjectSlug_page__Sto7L .ProjectSlug_glow1__Q7SyK{width:500px;height:500px;background:var(--accent);opacity:.09;top:-120px;right:10%}.ProjectSlug_page__Sto7L .ProjectSlug_glow2__wbiYK{width:400px;height:400px;background:var(--accent2);opacity:.11;bottom:-60px;left:15%;animation-delay:-5s}body:not(.dark) .ProjectSlug_page__Sto7L .ProjectSlug_glow1__Q7SyK{width:560px;height:560px;background:#c6e830;opacity:.28;top:-140px;left:-100px;right:auto}body:not(.dark) .ProjectSlug_page__Sto7L .ProjectSlug_glow2__wbiYK{width:420px;height:420px;background:#b0b8a0;opacity:.35;bottom:-80px;right:-60px;left:auto;animation-delay:-4.5s}.ProjectSlug_page__Sto7L .ProjectSlug_projectShowcaseGrid__6pHOJ{display:none;position:absolute;inset:0;background-image:linear-gradient(hsla(0,0%,100%,.02) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.02) 1px,transparent 0);background-size:60px 60px;-webkit-mask-image:radial-gradient(ellipse 80% 70% at 50% 50%,#000,transparent);mask-image:radial-gradient(ellipse 80% 70% at 50% 50%,#000,transparent)}body:not(.dark) .ProjectSlug_page__Sto7L .ProjectSlug_projectShowcaseGrid__6pHOJ{background-image:radial-gradient(circle,rgba(0,0,0,.1) 1px,transparent 0);background-size:28px 28px;-webkit-mask-image:radial-gradient(ellipse 75% 75% at 40% 50%,#000 40%,transparent 100%);mask-image:radial-gradient(ellipse 75% 75% at 40% 50%,#000 40%,transparent 100%)}.ProjectSlug_page__Sto7L .ProjectSlug_projectShowcaseFade__2nPhj{position:absolute;left:0;right:0;bottom:0;height:220px;background:linear-gradient(to bottom,rgba(10,10,15,0),var(--bg));z-index:1;pointer-events:none}.ProjectSlug_page__Sto7L .ProjectSlug_mainWrap__briSs,.ProjectSlug_page__Sto7L .ProjectSlug_projectShowcaseContent__8jV1s{position:relative;z-index:2}.ProjectSlug_page__Sto7L .ProjectSlug_contentArea___hI_P{display:flex;flex-direction:column;min-width:0}.ProjectSlug_page__Sto7L .ProjectSlug_projectShowcaseContent__8jV1s{max-width:1200px;margin:30px auto;width:100%}.ProjectSlug_page__Sto7L .ProjectSlug_projectShowcaseTags__iuFfV{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.ProjectSlug_page__Sto7L .ProjectSlug_projectShowcaseTitle__WdvTu{font-family:var(--font-syne),sans-serif;font-size:clamp(44px,6.5vw,88px);font-weight:800;line-height:1;letter-spacing:-3px;margin-bottom:20px}.ProjectSlug_page__Sto7L .ProjectSlug_projectShowcaseTitle__WdvTu .ProjectSlug_titleAccent__02619{color:var(--accent)}.ProjectSlug_page__Sto7L .ProjectSlug_projectShowcaseTitle__WdvTu .ProjectSlug_titleOutline__myg1c{color:transparent;-webkit-text-stroke:1.5px rgba(212,255,0,.5)}body:not(.dark) .ProjectSlug_page__Sto7L .ProjectSlug_projectShowcaseTitle__WdvTu .ProjectSlug_titleOutline__myg1c{-webkit-text-stroke:1.5px rgba(100,130,0,.45)}.ProjectSlug_page__Sto7L .ProjectSlug_projectShowcaseDesc__Vl1w2{max-width:560px;color:var(--muted);font-size:16px;line-height:1.75;font-weight:300;margin-bottom:40px}.ProjectSlug_page__Sto7L .ProjectSlug_projectShowcaseActions__ecDMp{display:flex;gap:12px;flex-wrap:wrap}.ProjectSlug_page__Sto7L .ProjectSlug_mainWrap__briSs{max-width:1200px;margin:0 auto;padding:72px 48px 100px;display:grid;grid-template-columns:1fr 300px;grid-gap:56px;gap:56px;align-items:start}.ProjectSlug_page__Sto7L .ProjectSlug_gallery__k1mDg{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px;margin-bottom:56px}.ProjectSlug_page__Sto7L .ProjectSlug_galleryItem__9HpS6{aspect-ratio:16/10;border-radius:12px;overflow:hidden;border:1px solid var(--border);background:var(--surface2);position:relative;cursor:zoom-in}.ProjectSlug_page__Sto7L .ProjectSlug_galleryItem__9HpS6.ProjectSlug_galleryItemLarge___12NM{grid-column:span 2;aspect-ratio:16/9}.ProjectSlug_page__Sto7L .ProjectSlug_galleryItem__9HpS6 img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease,filter .35s ease}.ProjectSlug_page__Sto7L .ProjectSlug_galleryItem__9HpS6:hover img{transform:scale(1.035);filter:brightness(1.03)}.ProjectSlug_page__Sto7L .ProjectSlug_galleryExpand__3CN1W{position:absolute;right:10px;top:10px;width:26px;height:26px;border-radius:7px;border:1px solid var(--border);background:rgba(15,15,20,.62);color:#fff;display:grid;place-items:center;opacity:0;transform:translateY(4px);transition:opacity .24s ease,transform .24s ease}.ProjectSlug_page__Sto7L .ProjectSlug_galleryItem__9HpS6:hover .ProjectSlug_galleryExpand__3CN1W{opacity:1;transform:translateY(0)}.ProjectSlug_page__Sto7L .ProjectSlug_descTitle__4oFIb{font-family:var(--font-syne),sans-serif;font-weight:800;font-size:clamp(28px,3.5vw,42px);letter-spacing:-1.5px;margin-bottom:10px;line-height:1.05}.ProjectSlug_page__Sto7L .ProjectSlug_descTitle__4oFIb:after{content:"";display:block;height:2px;background:var(--accent);width:52px;margin-top:14px}.ProjectSlug_page__Sto7L .ProjectSlug_descText__oDpaj{color:var(--muted);font-size:15px;line-height:1.85;margin-top:20px;font-weight:300;white-space:pre-line}.ProjectSlug_page__Sto7L .ProjectSlug_descBlock__7gss9{margin-bottom:52px}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudySection__HWrPg{margin-bottom:58px}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyFlow___SMoW{display:grid;grid-template-columns:repeat(var(--case-study-columns,3),minmax(0,1fr));overflow:hidden;border:1px solid var(--border);border-radius:22px;background:linear-gradient(180deg,hsla(0,0%,100%,.025),transparent),var(--surface)}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyStep__C_xXT{--case-accent:var(--accent);--case-bg:var(--tag-bg);position:relative;min-width:0;min-height:228px;padding:26px 24px 22px;display:grid;align-content:start;grid-gap:12px;gap:12px;overflow-wrap:anywhere}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyStep__C_xXT:not(:last-child){border-right:1px solid var(--border)}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyStep__C_xXT:not(:last-child):after{content:"->";position:absolute;top:50%;right:-14px;z-index:2;width:28px;height:28px;display:grid;place-items:center;transform:translateY(-50%);border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);font-family:var(--font-dm-mono),monospace;font-size:12px}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyStepHeader__MNAd9{display:flex;align-items:center;gap:10px;min-width:0}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyIcon__gPqvR{width:36px;height:36px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--case-accent) 32%,transparent);border-radius:10px;background:var(--case-bg);color:var(--case-accent);flex:0 0 auto}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyIcon__gPqvR svg{width:16px;height:16px}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyNumber__PNw8E{color:var(--muted);font-family:var(--font-dm-mono),monospace;font-size:11px;font-weight:800;letter-spacing:1px}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyLabel__eRJkR{color:var(--case-accent);font-family:var(--font-dm-mono),monospace;font-size:10px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyStep__C_xXT h5{margin:0;color:var(--text);font-family:var(--font-syne),sans-serif;font-size:clamp(15px,1.35vw,19px);font-weight:800;line-height:1.18;letter-spacing:0;overflow-wrap:anywhere}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyStep__C_xXT p{margin:0;color:var(--muted);font-size:12.5px;line-height:1.62;white-space:pre-line;overflow-wrap:anywhere;word-break:break-word}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyProblem__7y3tw{--case-accent:#fb8f67;--case-bg:hsla(16,95%,69%,.12)}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudySolution__h0_Yz{--case-accent:#5bd8b2;--case-bg:rgba(91,216,178,.12)}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyResult__HEreE{--case-accent:#a998ff;--case-bg:rgba(169,152,255,.13)}body:not(.dark) .ProjectSlug_page__Sto7L .ProjectSlug_caseStudyProblem__7y3tw{--case-accent:#a64216;--case-bg:rgba(166,66,22,.08)}body:not(.dark) .ProjectSlug_page__Sto7L .ProjectSlug_caseStudySolution__h0_Yz{--case-accent:#24755f;--case-bg:rgba(36,117,95,.08)}body:not(.dark) .ProjectSlug_page__Sto7L .ProjectSlug_caseStudyResult__HEreE{--case-accent:#5b45b8;--case-bg:rgba(91,69,184,.08)}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyMetricsBar__VSasf{display:grid;grid-template-columns:repeat(var(--case-study-metrics,3),minmax(0,1fr));overflow:hidden;margin-top:18px;border:1px solid var(--border);border-radius:20px;background:var(--surface)}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyMetricCell__nSKve{min-width:0;min-height:78px;padding:18px 22px;display:flex;align-items:center;gap:12px;overflow-wrap:anywhere}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyMetricCell__nSKve:not(:last-child){border-right:1px solid var(--border)}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyMetricCell__nSKve strong{display:block;color:var(--text);font-family:var(--font-syne),sans-serif;font-size:clamp(22px,2.8vw,34px);font-weight:800;line-height:1;letter-spacing:0;white-space:nowrap}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyMetricCell__nSKve span{display:block;color:var(--text);font-family:var(--font-syne),sans-serif;font-size:12.5px;font-weight:800;letter-spacing:0;line-height:1.2}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyMetricCell__nSKve p{margin:4px 0 0;color:var(--accent);font-family:var(--font-dm-mono),monospace;font-size:10.5px;line-height:1.35;overflow-wrap:anywhere}body:not(.dark) .ProjectSlug_page__Sto7L .ProjectSlug_caseStudyStep__C_xXT p{color:#393941}body.dark .ProjectSlug_page__Sto7L .ProjectSlug_caseStudyStep__C_xXT p{color:rgba(240,240,245,.74)}body:not(.dark) .ProjectSlug_page__Sto7L .ProjectSlug_caseStudyMetricCell__nSKve p{color:#4d6600}.ProjectSlug_page__Sto7L .ProjectSlug_architectureSection__1N1DL{margin-bottom:58px}.ProjectSlug_page__Sto7L .ProjectSlug_architectureGrid__Vk6N5{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;grid-gap:16px;gap:16px}.ProjectSlug_page__Sto7L .ProjectSlug_architectureCard__odBxv{--architecture-accent:var(--accent);--architecture-accent-soft:var(--tag-bg);position:relative;display:grid;align-self:start;align-content:start;grid-gap:12px;gap:12px;width:100%;padding:0;overflow:hidden;border-color:color-mix(in srgb,var(--border) 78%,var(--architecture-accent))}.ProjectSlug_page__Sto7L .ProjectSlug_architectureFrontend__68QL8{--architecture-accent:#4f9cff;--architecture-accent-soft:rgba(79,156,255,.12)}.ProjectSlug_page__Sto7L .ProjectSlug_architectureBackend__VwYwR{--architecture-accent:#fb923c;--architecture-accent-soft:rgba(251,146,60,.13)}.ProjectSlug_page__Sto7L .ProjectSlug_architectureDatabase__qjTw8{--architecture-accent:#22c55e;--architecture-accent-soft:rgba(34,197,94,.13)}.ProjectSlug_page__Sto7L .ProjectSlug_architectureServices__gWcWR{--architecture-accent:#a78bfa;--architecture-accent-soft:rgba(167,139,250,.13)}.ProjectSlug_page__Sto7L .ProjectSlug_architectureCard__odBxv:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--architecture-accent-soft),transparent 36%),radial-gradient(circle at top right,rgba(124,58,237,.14),transparent 34%);opacity:.7;pointer-events:none}body.dark .ProjectSlug_page__Sto7L .ProjectSlug_architectureCard__odBxv:before{background:linear-gradient(135deg,var(--architecture-accent-soft),transparent 38%),radial-gradient(circle at top right,rgba(124,58,237,.15),transparent 34%)}.ProjectSlug_page__Sto7L .ProjectSlug_architectureCard__odBxv>*{position:relative;z-index:1}.ProjectSlug_page__Sto7L .ProjectSlug_architectureCardHead__MHBuJ{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px 12px;border-bottom:1px solid var(--border)}.ProjectSlug_page__Sto7L .ProjectSlug_architectureNumber__kC5XU{color:var(--architecture-accent);font-family:var(--font-dm-mono),monospace;font-size:11px;font-weight:700;letter-spacing:1px;opacity:.95}.ProjectSlug_page__Sto7L .ProjectSlug_architectureLayerTitle__u0G7p{flex:1 1;min-width:0;color:var(--architecture-accent);font-family:var(--font-dm-mono),monospace;font-size:11px;font-weight:800;letter-spacing:.8px;text-transform:uppercase}.ProjectSlug_page__Sto7L .ProjectSlug_architectureIcon__Jt0ih{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;color:var(--architecture-accent);border:1px solid color-mix(in srgb,var(--architecture-accent) 34%,transparent);background:var(--architecture-accent-soft)}.ProjectSlug_page__Sto7L .ProjectSlug_architectureIcon__Jt0ih svg{width:18px;height:18px}.ProjectSlug_page__Sto7L .ProjectSlug_architectureContent__A1kOT{display:grid;grid-gap:10px;gap:10px;padding:0 16px 16px}.ProjectSlug_page__Sto7L .ProjectSlug_architectureContent__A1kOT:has(+.ProjectSlug_architectureLinks__J4_fJ){padding-bottom:0}.ProjectSlug_page__Sto7L .ProjectSlug_architectureLinks__J4_fJ{display:flex;flex-wrap:wrap;gap:8px;align-self:end;padding:0 16px 16px;margin-top:0}.ProjectSlug_page__Sto7L .ProjectSlug_architectureLinks__J4_fJ a{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface2);color:var(--text);text-decoration:none;font-family:var(--font-dm-mono),monospace;font-size:10px;text-transform:uppercase;letter-spacing:.5px;transition:transform .22s ease,border-color .22s ease,background .22s ease}.ProjectSlug_page__Sto7L .ProjectSlug_architectureLinks__J4_fJ a:hover{transform:translateY(-2px);border-color:var(--tag-border);background:var(--tag-bg)}.ProjectSlug_page__Sto7L .ProjectSlug_architectureLinks__J4_fJ svg{width:12px;height:12px}.ProjectSlug_page__Sto7L .ProjectSlug_technicalBuildSection__0a8jg{margin-bottom:58px}.ProjectSlug_page__Sto7L .ProjectSlug_technicalCodeList__ixsLk{display:grid;grid-gap:16px;gap:16px}.ProjectSlug_page__Sto7L .ProjectSlug_technicalCodeItem__wo2kQ{display:grid;grid-gap:0;gap:0;min-width:0}.ProjectSlug_page__Sto7L .ProjectSlug_featuresGrid__eyYIa{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;margin-bottom:52px}.ProjectSlug_page__Sto7L .ProjectSlug_featureCard__wnSRE{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;grid-column-gap:12px;column-gap:12px;grid-row-gap:8px;row-gap:8px;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:20px}.ProjectSlug_page__Sto7L .ProjectSlug_featureIcon__jEyRL{width:36px;height:36px;border-radius:8px;background:var(--tag-bg);border:1px solid var(--tag-border);display:flex;align-items:center;justify-content:center;font-size:16px}.ProjectSlug_page__Sto7L .ProjectSlug_featureName__t1L7j{font-family:var(--font-syne),sans-serif;font-weight:700;font-size:14px;margin:0}.ProjectSlug_page__Sto7L .ProjectSlug_featureDesc__0dMTG{grid-column:1/-1;color:var(--muted);font-size:13px;line-height:1.6}body:not(.dark) .ProjectSlug_page__Sto7L .ProjectSlug_descText__oDpaj,body:not(.dark) .ProjectSlug_page__Sto7L .ProjectSlug_featureDesc__0dMTG,body:not(.dark) .ProjectSlug_page__Sto7L .ProjectSlug_projectShowcaseDesc__Vl1w2{color:#393941;font-weight:400}body.dark .ProjectSlug_page__Sto7L .ProjectSlug_challengeDesc__yDpl4,body.dark .ProjectSlug_page__Sto7L .ProjectSlug_descText__oDpaj,body.dark .ProjectSlug_page__Sto7L .ProjectSlug_featureDesc__0dMTG,body.dark .ProjectSlug_page__Sto7L .ProjectSlug_projectShowcaseDesc__Vl1w2{color:rgba(240,240,245,.74);font-weight:400}.ProjectSlug_page__Sto7L .ProjectSlug_challengeList__ndnNR{display:flex;flex-direction:column;gap:10px;margin-bottom:52px}.ProjectSlug_page__Sto7L .ProjectSlug_challengeItem__AaCVY{display:flex;gap:28px;align-items:flex-start;padding:18px;border-radius:12px;background:var(--surface);border:1px solid var(--border)}.ProjectSlug_page__Sto7L .ProjectSlug_challengeNum__vBtuy{font-family:var(--font-syne),sans-serif;font-weight:800;font-size:22px;color:var(--accent);opacity:.25;min-width:42px;padding-right:12px;border-right:1px solid var(--border);text-align:right}.ProjectSlug_page__Sto7L .ProjectSlug_challengeTitle__nDdCr{font-family:var(--font-syne),sans-serif;font-weight:700;font-size:14px;margin-bottom:5px}.ProjectSlug_page__Sto7L .ProjectSlug_challengeDesc__yDpl4{color:var(--muted);font-size:13px;line-height:1.65}.ProjectSlug_page__Sto7L .ProjectSlug_sidebar__tVr2j{display:flex;flex-direction:column;gap:10px;position:-webkit-sticky;position:sticky;top:24px}.ProjectSlug_page__Sto7L .ProjectSlug_sidebarCard__csJPV{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:0;overflow:hidden}.ProjectSlug_page__Sto7L .ProjectSlug_sidebarCardHeader__sQLJE{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--surface2);border-bottom:1px solid var(--border)}.ProjectSlug_page__Sto7L .ProjectSlug_sidebarTraffic__LiMGy{display:flex;align-items:center;gap:6px;flex-shrink:0}.ProjectSlug_page__Sto7L .ProjectSlug_sidebarTl__lEXNT{width:8px;height:8px;border-radius:999px;display:block}.ProjectSlug_page__Sto7L .ProjectSlug_sidebarTlRed__18Oue{background:#ff5f57}.ProjectSlug_page__Sto7L .ProjectSlug_sidebarTlYellow__zmHhv{background:#ffbd2e}.ProjectSlug_page__Sto7L .ProjectSlug_sidebarTlGreen__kgf_M{background:#28c840}.ProjectSlug_page__Sto7L .ProjectSlug_sidebarCardLabel__ogunZ{font-family:var(--font-dm-mono),monospace;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:1px}.ProjectSlug_page__Sto7L .ProjectSlug_sidebarCardBody__ELkP_{padding:18px}.ProjectSlug_page__Sto7L .ProjectSlug_metaGrid__7QcO6{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px 12px;gap:18px 12px}.ProjectSlug_page__Sto7L .ProjectSlug_metaLabel__FHywi{font-family:var(--font-dm-mono),monospace;font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-bottom:5px}.ProjectSlug_page__Sto7L .ProjectSlug_metaValue__6yqOm{font-family:var(--font-syne),sans-serif;font-weight:700;font-size:16px}.ProjectSlug_page__Sto7L .ProjectSlug_metaValue__6yqOm.ProjectSlug_metaSm__FaUxX{font-size:13px;font-weight:600;font-family:var(--font-dm-sans),sans-serif}.ProjectSlug_page__Sto7L .ProjectSlug_metaGridRowFull__sDhlQ{grid-column:span 2}.ProjectSlug_page__Sto7L .ProjectSlug_linkItem__djPdC{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;grid-gap:10px;gap:10px;padding:11px 14px;border-radius:10px;border:1px solid var(--border);background:var(--surface2);color:var(--text);text-decoration:none;font-size:13px;font-weight:500;margin-bottom:8px;transition:transform .22s ease,border-color .22s ease,background .22s ease,box-shadow .22s ease}.ProjectSlug_page__Sto7L .ProjectSlug_linkItem__djPdC:hover{transform:translateX(4px);border-color:var(--tag-border);background:var(--tag-bg);box-shadow:0 10px 26px rgba(0,0,0,.08)}body.dark .ProjectSlug_page__Sto7L .ProjectSlug_linkItem__djPdC:hover{box-shadow:0 14px 34px rgba(0,0,0,.28)}.ProjectSlug_page__Sto7L .ProjectSlug_linkItem__djPdC:last-child{margin-bottom:0}.ProjectSlug_page__Sto7L .ProjectSlug_linkIcon__Zm5fE{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--tag-bg);border:1px solid var(--tag-border);color:var(--accent);transition:transform .22s ease,background .22s ease}.ProjectSlug_page__Sto7L .ProjectSlug_linkItem__djPdC:hover .ProjectSlug_linkIcon__Zm5fE{transform:rotate(-6deg) scale(1.06);background:var(--surface)}.ProjectSlug_page__Sto7L .ProjectSlug_relatedList__cUcIE{padding:8px 0}.ProjectSlug_page__Sto7L .ProjectSlug_relatedItem__JfbZZ{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-width:0;padding:10px 16px;text-decoration:none;color:var(--text);font-size:13px;font-weight:500;transition:background .15s}.ProjectSlug_page__Sto7L .ProjectSlug_relatedItem__JfbZZ:after{content:"";position:absolute;left:50%;bottom:0;width:85%;height:1px;transform:translateX(-50%);background:hsla(240,4%,49%,.24)}body.dark .ProjectSlug_page__Sto7L .ProjectSlug_relatedItem__JfbZZ:after{background:hsla(0,0%,100%,.08)}.ProjectSlug_page__Sto7L .ProjectSlug_relatedItem__JfbZZ:hover{background:var(--surface2)}.ProjectSlug_page__Sto7L .ProjectSlug_relatedItem__JfbZZ:last-child:after{display:none}.ProjectSlug_page__Sto7L .ProjectSlug_relatedThumb__x7nBI{width:44px;height:44px;border-radius:8px;border:1px solid var(--border);background:var(--surface2);overflow:hidden;display:grid;place-items:center;color:var(--accent);font-family:var(--font-dm-mono),monospace;font-size:8px;text-transform:uppercase;flex-shrink:0}.ProjectSlug_page__Sto7L .ProjectSlug_relatedThumb__x7nBI img{width:100%;height:100%;object-fit:cover}.ProjectSlug_page__Sto7L .ProjectSlug_relatedInfo__wAJzD{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:4px}.ProjectSlug_page__Sto7L .ProjectSlug_relatedTitle__cyuAE{color:var(--text);font-family:var(--font-syne),sans-serif;font-size:12px;font-weight:700;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ProjectSlug_page__Sto7L .ProjectSlug_relatedTag__U7Rxg{font-family:var(--font-dm-mono),monospace;font-size:10px;color:var(--accent);text-transform:uppercase;letter-spacing:.5px}.ProjectSlug_page__Sto7L .ProjectSlug_relatedMeta__2LiAd{display:flex;align-items:center;gap:7px;color:var(--muted);font-family:var(--font-dm-mono),monospace;font-size:10px;line-height:1.2}@media (max-width:960px){.ProjectSlug_page__Sto7L .ProjectSlug_mainWrap__briSs{grid-template-columns:1fr;padding:48px 24px 80px;gap:40px}.ProjectSlug_page__Sto7L .ProjectSlug_sidebar__tVr2j{position:static}.ProjectSlug_page__Sto7L .ProjectSlug_projectShowcase__6AAgL{padding:48px 24px 52px}.ProjectSlug_page__Sto7L .ProjectSlug_architectureGrid__Vk6N5,.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyFlow___SMoW,.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyMetricsBar__VSasf,.ProjectSlug_page__Sto7L .ProjectSlug_featuresGrid__eyYIa{grid-template-columns:1fr}.ProjectSlug_page__Sto7L .ProjectSlug_architectureCard__odBxv{width:100%}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyStep__C_xXT{min-height:auto;padding:22px 20px}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyStep__C_xXT:not(:last-child){border-right:0;border-bottom:1px solid var(--border)}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyStep__C_xXT:not(:last-child):after{content:"v";top:auto;right:26px;bottom:-14px;transform:none}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyMetricCell__nSKve:not(:last-child){border-right:0;border-bottom:1px solid var(--border)}.ProjectSlug_page__Sto7L .ProjectSlug_gallery__k1mDg{grid-template-columns:1fr 1fr}.ProjectSlug_page__Sto7L .ProjectSlug_galleryItem__9HpS6.ProjectSlug_galleryItemLarge___12NM{grid-column:span 2}.ProjectSlug_page__Sto7L .ProjectSlug_contentArea___hI_P,.ProjectSlug_page__Sto7L .ProjectSlug_projectShowcaseContent__8jV1s{min-width:0}}@media (max-width:560px){.ProjectSlug_page__Sto7L .ProjectSlug_gallery__k1mDg{grid-template-columns:1fr}.ProjectSlug_page__Sto7L .ProjectSlug_galleryItem__9HpS6.ProjectSlug_galleryItemLarge___12NM{grid-column:span 1}.ProjectSlug_page__Sto7L .ProjectSlug_metaGrid__7QcO6{grid-template-columns:1fr}.ProjectSlug_page__Sto7L .ProjectSlug_metaGridRowFull__sDhlQ{grid-column:span 1}.ProjectSlug_page__Sto7L .ProjectSlug_projectShowcaseActions__ecDMp{flex-direction:column;align-items:stretch}.ProjectSlug_page__Sto7L .ProjectSlug_mainWrap__briSs{padding:32px 16px 64px;gap:32px}.ProjectSlug_page__Sto7L .ProjectSlug_projectShowcase__6AAgL{padding:40px 16px 44px}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyStep__C_xXT{padding:20px 16px;gap:11px}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyIcon__gPqvR{width:34px;height:34px;border-radius:10px}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyIcon__gPqvR svg{width:15px;height:15px}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyStep__C_xXT h5{font-size:15px}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyStep__C_xXT p{font-size:12px}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyMetricCell__nSKve{min-height:70px;padding:16px;gap:10px}.ProjectSlug_page__Sto7L .ProjectSlug_caseStudyMetricCell__nSKve strong{font-size:24px}.ProjectSlug_page__Sto7L .ProjectSlug_projectShowcaseTitle__WdvTu{font-size:2.7rem;letter-spacing:-.06em}}@media (max-width:410px){.ProjectSlug_page__Sto7L .ProjectSlug_projectShowcaseTitle__WdvTu{font-size:2.2rem}}.ReadingProgress_progress__JHsRx{position:fixed;left:0;top:var(--progress-top,64px);width:100%;height:3px;z-index:1400;background:hsla(0,0%,100%,.06);pointer-events:none}.ReadingProgress_progress__JHsRx>span{display:block;height:100%;width:var(--progress,0);background:linear-gradient(90deg,var(--accent),#7c3aed);box-shadow:0 0 16px rgba(212,255,0,.45);transition:width .12s linear}body:not(.dark) .ReadingProgress_progress__JHsRx{background:rgba(15,15,20,.08)}body:not(.dark) .ReadingProgress_progress__JHsRx>span{background:linear-gradient(90deg,#4d6600,#6d28d9);box-shadow:0 0 12px rgba(77,102,0,.18)}@media (max-width:768px){.ReadingProgress_progress__JHsRx{top:var(--progress-mobile-top,56px)}}.Breadcrumbs_breadcrumbs__lBKBz{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:18px;flex-wrap:wrap}.Breadcrumbs_segment__P25w4{display:inline-flex;align-items:center;gap:8px}.Breadcrumbs_breadcrumbs__lBKBz a{color:var(--muted);text-decoration:none;transition:color .2s}.Breadcrumbs_breadcrumbs__lBKBz a:focus-visible,.Breadcrumbs_breadcrumbs__lBKBz a:hover{color:var(--accent)}.Breadcrumbs_separator__3XSIr{color:var(--border)}body:not(.dark) .Breadcrumbs_separator__3XSIr{color:rgba(0,0,0,.15)}.Breadcrumbs_current__wtn5P{color:var(--accent)}.SectionLabel_label__wHgNA{font-family:var(--mono);font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:2px;margin-bottom:28px;display:flex;align-items:center;gap:10px}.SectionLabel_label__wHgNA:before{content:"//";color:var(--accent);font-size:10px}.SectionLabel_label__wHgNA:after{content:"";flex:1 1;height:1px;background:var(--border)}.ImageGalleryModal_modal__KW2WZ{position:fixed;inset:0;z-index:1200;background:rgba(5,5,8,.84);display:flex;align-items:center;justify-content:center;padding:24px;cursor:zoom-out;outline:none}.ImageGalleryModal_modal__KW2WZ img{display:block;max-width:min(1200px,96vw);max-height:92vh;border-radius:14px;border:1px solid var(--border);background:var(--surface2);box-shadow:0 24px 70px rgba(0,0,0,.45);cursor:default}.ImageGalleryModal_close__VqmAM{position:absolute;top:18px;right:18px;border:1px solid hsla(0,0%,100%,.25);background:rgba(0,0,0,.5);color:#fff;border-radius:10px;padding:8px 12px;cursor:pointer;font-family:var(--mono);font-size:11px;transition:border-color .2s,color .2s,box-shadow .2s}.ImageGalleryModal_nav__ODqrS{position:absolute;top:50%;width:44px;height:44px;border-radius:999px;border:1px solid hsla(0,0%,100%,.25);background:rgba(0,0,0,.5);color:#fff;display:grid;place-items:center;cursor:pointer;font-size:28px;line-height:1;transform:translateY(-50%);transition:border-color .2s,color .2s,box-shadow .2s}.ImageGalleryModal_close__VqmAM:hover,.ImageGalleryModal_nav__ODqrS:hover{border-color:rgba(212,255,0,.45);color:var(--accent)}.ImageGalleryModal_close__VqmAM:focus-visible,.ImageGalleryModal_nav__ODqrS:focus-visible{outline:2px solid var(--accent);outline-offset:3px;box-shadow:0 0 0 3px rgba(212,255,0,.18)}.ImageGalleryModal_prev__UwJ1i{left:18px}.ImageGalleryModal_next__dwZgI{right:18px}.ImageGalleryModal_count__qKM1G{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);border:1px solid hsla(0,0%,100%,.18);border-radius:999px;padding:6px 12px;background:rgba(0,0,0,.48);color:#fff;font-family:var(--mono);font-size:11px}.CodeSnippetBlock_block__0hUZP{background:var(--cb-surface,var(--surface));border:1px solid var(--cb-border,var(--border));border-radius:16px;overflow:hidden;margin:0 0 28px;box-shadow:0 10px 28px rgba(0,0,0,.38),0 0 0 1px hsla(0,0%,100%,.04)}body:not(.dark) .CodeSnippetBlock_block__0hUZP{box-shadow:0 8px 20px rgba(0,0,0,.08),0 1px 4px rgba(0,0,0,.05)}.CodeSnippetBlock_header__KAkeB{padding:12px 16px;background:var(--cb-surface2,var(--surface2));border-bottom:1px solid var(--cb-border,var(--border));display:flex;align-items:center;justify-content:space-between;gap:12px}.CodeSnippetBlock_dots__LQuT8{display:flex;gap:6px;flex-shrink:0}.CodeSnippetBlock_dots__LQuT8 span{width:10px;height:10px;border-radius:50%}.CodeSnippetBlock_dots__LQuT8 span:first-child{background:#ff5f57}.CodeSnippetBlock_dots__LQuT8 span:nth-child(2){background:#ffbd2e}.CodeSnippetBlock_dots__LQuT8 span:nth-child(3){background:#28c840}.CodeSnippetBlock_body__zMHXC,.CodeSnippetBlock_copy__XVIx7,.CodeSnippetBlock_filename__NYTCF{font-family:var(--code-font);font-variant-ligatures:contextual common-ligatures;font-feature-settings:"liga" 1,"calt" 1,contextual common-ligatures}.CodeSnippetBlock_filename__NYTCF{font-size:11px;color:var(--cb-muted,var(--muted));min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.CodeSnippetBlock_copy__XVIx7{border:1px solid var(--cb-border,var(--border));background:transparent;color:var(--cb-muted,var(--muted));border-radius:8px;padding:6px 10px;font-size:10px;cursor:pointer;transition:border-color .2s,color .2s,background .2s;flex-shrink:0}.CodeSnippetBlock_copy__XVIx7:focus-visible,.CodeSnippetBlock_copy__XVIx7:hover{border-color:var(--accent);color:var(--accent)}.CodeSnippetBlock_body__zMHXC{padding:20px 24px;font-size:12.5px;line-height:1.7;overflow-x:auto}body:not(.dark) .CodeSnippetBlock_body__zMHXC{background:#fafaf6}.CodeSnippetBlock_line__sioge{display:block;white-space:pre;-moz-tab-size:2;tab-size:2}.CodeSnippetBlock_lineNumber__j2gvK{color:#2e2e40;-webkit-user-select:none;-moz-user-select:none;user-select:none;margin-right:16px;display:inline-block;width:16px;text-align:right;font-size:11px}body.dark .CodeSnippetBlock_lineNumber__j2gvK{color:hsla(0,0%,100%,.35)}.CodeSnippetBlock_body__zMHXC .kw{color:var(--cb-code-purple,#7c3aed)}.CodeSnippetBlock_body__zMHXC .fn{color:var(--cb-code-blue,#1d4ed8)}.CodeSnippetBlock_body__zMHXC .str{color:var(--cb-code-green,#166534)}.CodeSnippetBlock_body__zMHXC .num{color:var(--cb-code-orange,#c2410c)}.CodeSnippetBlock_body__zMHXC .cm{color:var(--cb-code-gray,#5f6570);font-style:italic}.CodeSnippetBlock_body__zMHXC .op{color:var(--cb-muted,var(--muted))}.CodeSnippetBlock_body__zMHXC .nm{color:var(--cb-text,var(--text))}.ActionLink_root__hW6KS{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:100px;font-family:var(--font-syne),sans-serif;font-weight:700;font-size:13px;text-decoration:none;transition:transform .24s ease,box-shadow .24s ease,background-color .24s ease,border-color .24s ease}.ActionLink_root__hW6KS:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.ActionLink_root__hW6KS:hover{transform:translateY(-2px)}.ActionLink_primary__XJbvh{background:var(--accent);color:#000}.ActionLink_primary__XJbvh:hover{box-shadow:0 16px 34px rgba(212,255,0,.25)}.ActionLink_secondary__qW2cP{background:transparent;color:var(--text);border:1px solid var(--border)}.ActionLink_secondary__qW2cP:hover{border-color:rgba(212,255,0,.35);box-shadow:0 12px 28px rgba(0,0,0,.22)}.PillBadge_root__0IjNU{display:inline-flex;align-items:center;border-radius:100px;padding:4px 12px;font-family:var(--font-dm-mono),monospace;font-size:11px}.PillBadge_default__mAjo1{background:var(--tag-bg,rgba(212,255,0,.08));border:1px solid var(--tag-border,rgba(212,255,0,.2));color:var(--accent)}.PillBadge_purple__YU_0K{background:rgba(124,58,237,.08);border:1px solid rgba(124,58,237,.2);color:#a78bfa}.PillBadge_orange__FNC0L{background:rgba(255,107,53,.08);border:1px solid rgba(255,107,53,.2);color:#ff8c66}.StatusBadge_root__bMUFW{display:inline-flex;align-items:center;gap:6px;background:rgba(212,255,0,.1);border:1px solid rgba(212,255,0,.25);color:var(--accent);padding:4px 11px;border-radius:100px;font-family:var(--font-dm-mono),monospace;font-size:11px}.StatusBadge_dot__9wnmO{width:6px;height:6px;background:var(--accent);border-radius:50%}