@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.2a48534a.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.18a48cbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.7a40eb73.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.c995e352.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.76dcb0b2.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.7cd81963.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.3a6ba036.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_5f861bbd-module__aU91IG__className{font-family:Inter,Inter Fallback;font-style:normal}
:root{--bg:#000;--bg-elev:#0a0a0a;--surface:#141414;--surface-hover:#1c1c1c;--text:#fff;--text-secondary:#a3a3a3;--text-muted:#737373;--border:#262626;--border-strong:#404040;--link:#fff;--dock-bg:#141414cc;--primary-hover:#e5e5e5;--contribution-0:#161b22;--contribution-1:#0e4429;--contribution-2:#006d32;--contribution-3:#26a641;--contribution-4:#39d353;--container-width:672px;--transition:.2s ease}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fff;--bg-elev:#f8fafc;--surface:#f4f4f5;--surface-hover:#e4e4e7;--text:#18181b;--text-secondary:#52525b;--text-muted:#71717a;--border:#e4e4e7;--border-strong:#a1a1aa;--link:#18181b;--dock-bg:#ffffffe0;--primary-hover:#3f3f46;--contribution-0:#ebedf0;--contribution-1:#9be9a8;--contribution-2:#40c463;--contribution-3:#30a14e;--contribution-4:#216e39}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:32px}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;transition:background-color var(--transition),color var(--transition);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6}a{color:inherit;transition:color var(--transition);text-decoration:none}a:hover{color:var(--text-secondary)}ul{list-style:none}img{max-width:100%;display:block}strong{color:var(--text);font-weight:600}.page{justify-content:center;padding:32px 16px 140px;display:flex}.container{width:100%;max-width:var(--container-width);padding-top:32px}@media (min-width:640px){.container{padding-top:64px}}.hero{flex-direction:column;gap:16px;margin-bottom:40px;display:flex}@media (min-width:640px){.hero{flex-direction:row;align-items:center;gap:24px}}.heroMain{flex:1;align-items:center;gap:16px;display:flex}@media (min-width:640px){.heroMain{gap:24px}}.heroAvatar{background:var(--surface);border:1px solid var(--border);width:64px;height:64px;transition:transform var(--transition);border-radius:50%;flex-shrink:0;align-self:flex-start;margin-top:3px;position:relative;overflow:hidden}.heroAvatar img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.heroAvatarLight,:root[data-theme=light] .heroAvatarPhoto{display:none!important}:root[data-theme=light] .heroAvatarLight{display:block!important}.heroAvatar:hover{transform:scale(1.05)}@media (min-width:640px){.heroAvatar{width:75px;height:75px;font-size:1.6rem}}.heroText{flex:1;min-width:0}.heroEyebrow{color:var(--text-secondary);letter-spacing:.09em;text-transform:uppercase;background:linear-gradient(100deg,#22d3ee1a,#22d3ee06);border:1px solid #22d3ee3d;border-radius:8px 999px 999px 8px;align-items:center;gap:8px;margin-bottom:10px;padding:6px 11px 6px 8px;font-size:.68rem;font-weight:650;line-height:1.2;display:inline-flex}.heroEyebrowCursor{color:#22d3ee;background:#22d3ee24;border-radius:50%;justify-content:center;align-items:center;width:19px;height:19px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8rem;font-weight:700;animation:2.4s ease-in-out infinite heroPromptPulse;display:inline-flex}@keyframes heroPromptPulse{50%{box-shadow:0 0 12px #22d3ee59}}@media (prefers-reduced-motion:reduce){.heroEyebrowCursor{animation:none}}.heroName{letter-spacing:-.01em;margin-bottom:4px;font-size:1.5rem;font-weight:700}@media (min-width:640px){.heroName{margin-bottom:8px;font-size:2.25rem}}.heroTagline{color:var(--text-secondary);font-size:.875rem;line-height:1.5}@media (min-width:640px){.heroTagline{font-size:1rem}}.heroActions{align-self:flex-end;align-items:center;gap:4px;display:inline-flex}@media (max-width:480px){.hero{gap:12px;margin-bottom:32px}.heroMain{flex-direction:column;align-items:flex-start;gap:16px}.heroAvatar{width:104px;height:104px;margin-top:0}.heroText{width:100%}.heroActions{align-self:flex-start;gap:8px}}.heroResume{color:var(--text-secondary);cursor:pointer;width:40px;height:40px;transition:color var(--transition),background var(--transition);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.heroResume:hover{color:var(--text);background:var(--surface)}@media (min-width:640px){.heroActions{align-self:auto}}.blogModalOverlay{z-index:200;-webkit-backdrop-filter:blur(14px);background:#0000008c;justify-content:center;align-items:center;padding:24px 16px;animation:.25s both blogOverlayIn;display:flex;position:fixed;inset:0}.blogModal{width:100%;max-width:var(--container-width);background:var(--bg-elev);border-radius:16px;flex-direction:column;max-height:85vh;animation:.3s cubic-bezier(.16,1,.3,1) both blogModalIn;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 80px #0009}@keyframes blogOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes blogModalIn{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.blogModalOverlay,.blogModal{animation:none}}.blogProgressTrack{z-index:2;background:0 0;height:3px;position:absolute;top:0;left:0;right:0}.blogProgressBar{background:var(--text);opacity:.9;border-radius:0 2px 2px 0;width:0%;height:100%;transition:width .1s linear}.blogModalClose{z-index:1;background:var(--surface);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:color var(--transition),background var(--transition);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;display:inline-flex;position:absolute;top:12px;right:12px}.blogModalClose:hover{color:var(--text);background:var(--surface-hover)}.blogModalBody{scrollbar-width:none;-ms-overflow-style:none;padding:28px 24px;overflow-y:auto}.blogModalBody::-webkit-scrollbar{display:none}@media (max-width:640px){.blogModalOverlay{padding:12px 8px}.blogModal{max-height:92vh}.blogModalBody{padding:24px 16px}}.section{margin-bottom:48px}.sectionTitle{letter-spacing:-.01em;margin-bottom:16px;font-size:1.25rem;font-weight:700}.sectionLead{color:var(--text-secondary);font-size:.95rem;line-height:1.7}.sectionLead p+p{margin-top:12px}.sectionLead .aboutHighlight{color:var(--text);font-weight:700}.contributionCalendar{border:1px solid var(--border-strong);border-radius:7px;width:100%;margin-top:16px;padding:10px;overflow:hidden}.contributionHeader{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.contributionSummary{color:var(--text);font-size:.9rem;font-weight:600}.contributionSettings{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:7px;font-size:.8rem;text-decoration:none;display:inline-flex}.contributionSettings:hover,.contributionLearnMore:hover{color:var(--text);text-decoration:underline}.contributionGridWrap{grid-template-columns:26px minmax(0,1fr);gap:6px;display:grid}.contributionWeekdays{color:var(--text-muted);flex-direction:column;justify-content:flex-end;gap:2px;padding-bottom:1px;font-size:.62rem;display:flex}.contributionWeekdays span,.contributionDay{height:var(--contribution-cell-size)}.contributionCalendarBody{min-width:0;container-type:inline-size}.contributionMonths{height:16px;color:var(--text-muted);grid-template-columns:repeat(53,minmax(0,1fr));gap:2px;margin-bottom:6px;font-size:.66rem;line-height:1;display:grid}.contributionWeek{grid-template-rows:repeat(7,var(--contribution-cell-size));height:calc(7*var(--contribution-cell-size) + 12px);align-self:start;gap:2px;display:grid}.contributionMonths span{white-space:nowrap}.contributionWeeks{--contribution-cell-size:calc((100cqi - 104px)/53);grid-template-columns:repeat(53,minmax(0,1fr));gap:0 2px;display:grid}.contributionDay{width:100%;min-width:0;height:var(--contribution-cell-size);background:var(--contribution-0);border-radius:2px}.contributionDay[data-level="1"]{background:var(--contribution-1)}.contributionDay[data-level="2"]{background:var(--contribution-2)}.contributionDay[data-level="3"]{background:var(--contribution-3)}.contributionDay[data-level="4"]{background:var(--contribution-4)}.contributionDayEmpty{background:0 0}.contributionFooter{justify-content:space-between;align-items:center;gap:16px;margin-top:8px;display:flex}.contributionLearnMore{color:var(--text-secondary);white-space:nowrap;font-size:.68rem;text-decoration:none}.contributionLegend{color:var(--text-muted);white-space:nowrap;align-items:center;gap:4px;font-size:.8rem;display:flex}.contributionLegend>span:first-child{margin-right:2px}.contributionLegend>span:last-child{margin-left:2px}.contributionLegend .contributionDay{width:10px;min-width:10px;height:10px}.contributionMessage{color:var(--text-muted);font-size:.8rem}.credLine{flex-wrap:wrap;align-items:center;gap:10px;display:flex}@media (max-width:640px){.credLine{flex-direction:column;align-items:flex-start;gap:8px}.credLine .credDot{display:none}}.cred{color:inherit;align-items:center;gap:6px;text-decoration:none;transition:color .15s;display:inline-flex}a.cred:hover{color:var(--accent)}.credLink{color:var(--accent);border-bottom:1px solid #0000;text-decoration:none;transition:border-color .15s}.credLink:hover{border-bottom-color:var(--accent)}.cred img{object-fit:contain;border-radius:3px;width:16px;height:16px}.credDot{color:var(--text-secondary);opacity:.6}.eduCard{border:1px solid var(--border);transition:border-color var(--transition);border-radius:10px;align-items:flex-start;gap:16px;margin-top:24px;padding:16px;display:flex}.eduCard:hover{border-color:var(--border-strong)}.eduIcon{background:var(--surface);border:1px solid var(--border);width:40px;height:40px;color:var(--text-secondary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;display:flex}.eduBody{flex:1;min-width:0}.eduInstitution{color:var(--text);margin-bottom:2px;font-size:.95rem;font-weight:600}.eduDegree{color:var(--text-secondary);margin-bottom:4px;font-size:.82rem}.eduMeta{color:var(--text-muted);font-size:.76rem}.eduCgpa{color:var(--text);border:1px solid var(--border);background:var(--surface);border-radius:999px;margin-top:8px;padding:3px 10px;font-size:.72rem;font-weight:600;display:inline-block}.aboutStats{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:24px;display:grid}.statCard{border:1px solid var(--border);text-align:center;transition:border-color var(--transition);border-radius:10px;padding:16px 12px}.statCard:hover{border-color:var(--border-strong)}.statNumber{color:var(--text);letter-spacing:-.02em;font-size:1.5rem;font-weight:700;display:block}.statLabel{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-top:4px;font-size:.7rem;display:block}@media (max-width:480px){.aboutStats{grid-template-columns:1fr}}.codingProfiles{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px;display:grid}.profileLink{border:1px solid var(--border);text-align:center;transition:border-color var(--transition),color var(--transition);color:var(--text);border-radius:10px;flex-direction:column;gap:4px;padding:12px;display:flex}.profileLink:hover{border-color:var(--border-strong);color:var(--text)}.profilePlatform{letter-spacing:-.01em;font-size:.85rem;font-weight:600}.profileRating{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.7rem}@media (max-width:480px){.codingProfiles{grid-template-columns:1fr}}.expSectionHeader{justify-content:space-between;align-items:baseline;display:flex}.expSectionHeader .sectionTitle{margin-bottom:16px}.experienceBack{color:var(--text-secondary);transition:color var(--transition);align-items:center;gap:8px;margin-bottom:28px;font-size:.85rem;display:inline-flex}.experienceBack:hover{color:var(--text)}.caseStudy{margin-bottom:48px}.caseStudyHeader{border-bottom:1px solid var(--border);padding-bottom:24px}.caseStudyEyebrow{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.caseStudyTitle{letter-spacing:-.03em;margin-top:6px;font-size:clamp(1.8rem,6vw,2.5rem);line-height:1.2}.caseStudyLead{max-width:600px;color:var(--text-secondary);margin-top:12px;font-size:1rem;line-height:1.65}.caseStudyLinks{flex-wrap:wrap;gap:16px;margin-top:18px;display:flex}.caseStudyLinks a{color:var(--text-secondary);align-items:center;gap:6px;font-size:.85rem;display:inline-flex}.caseStudyLinks a:hover{color:var(--text)}.caseStudySection{margin-top:28px}.caseStudySection h2{margin-bottom:10px;font-size:1.1rem;font-weight:650}.caseStudySection>p,.caseStudyFeature p{color:var(--text-secondary);font-size:.9rem;line-height:1.7}.caseStudyFeatureList{gap:14px;display:grid}.caseStudyPerformanceGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.caseStudyPerformanceGrid article{border:1px solid var(--border);background:var(--surface);border-radius:9px;min-width:0;padding:14px}.caseStudyFeature h3{margin-bottom:3px;font-size:.9rem;font-weight:600}.caseStudyTech{flex-wrap:wrap;gap:8px;display:flex}.caseStudyTech span{border:1px solid var(--border);color:var(--text-secondary);border-radius:999px;padding:4px 10px;font-size:.76rem}.caseStudyAvailability{color:var(--text-muted);margin-top:14px;font-size:.76rem;line-height:1.55}.caseStudyScreenshot{border:1px solid var(--border);background:var(--surface);border-radius:12px;margin-top:24px;overflow:hidden}.caseStudyScreenshot img{width:100%;height:auto;display:block}.caseStudyScreenshot figcaption{color:var(--text-muted);padding:8px 12px;font-size:.72rem}.caseStudyScreenshot img{object-fit:cover;object-position:center;max-height:380px}.caseStudyFacts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.caseStudyFacts div,.caseStudyIntegrationGrid>div,.caseStudyEngineeringGrid article{border:1px solid var(--border);background:var(--surface);border-radius:9px;min-width:0;padding:14px}.caseStudyFacts span,.caseStudyFacts strong{display:block}.caseStudyFacts span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;font-size:.7rem}.caseStudyFacts strong{overflow-wrap:anywhere;color:var(--text);font-size:.82rem;font-weight:600}.caseStudyArchitectureMap{gap:14px;margin-top:18px;display:grid}.caseStudyArchitectureTier{border:1px solid var(--border);background:var(--bg-elev);border-radius:10px;overflow:hidden}.caseStudyArchitectureTierHeading{border-bottom:1px solid var(--border);background:var(--surface);align-items:center;gap:10px;padding:12px 14px;display:flex}.caseStudyArchitectureTierHeading>span{color:#22d3ee;background:#22d3ee1f;border-radius:7px;flex:0 0 26px;justify-content:center;align-items:center;width:26px;height:26px;font-size:.68rem;font-weight:700;display:inline-flex}.caseStudyArchitectureTierHeading strong,.caseStudyArchitectureTierHeading small{display:block}.caseStudyArchitectureTierHeading strong{color:var(--text);font-size:.83rem;font-weight:650}.caseStudyArchitectureTierHeading small{color:var(--text-muted);margin-top:2px;font-size:.7rem}.caseStudyArchitecturePath{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:7px;padding:14px;display:grid}.caseStudyArchitectureNode{border:1px solid var(--border);background:var(--surface);border-radius:8px;min-width:0;padding:10px}.caseStudyArchitectureNode>span{color:var(--text-muted);letter-spacing:.06em;margin-bottom:5px;font-size:.57rem;font-weight:650;display:block}.caseStudyArchitectureNode strong{color:var(--text);font-size:.74rem;font-weight:650;line-height:1.35;display:block}.caseStudyArchitectureNode small{color:var(--text-secondary);overflow-wrap:anywhere;margin-top:5px;font-size:.65rem;line-height:1.45;display:block}.caseStudyArchitectureArrow{max-width:62px;color:var(--text-muted);text-align:center;flex-direction:column;align-items:center;gap:4px;display:flex}.caseStudyArchitectureArrow i{color:#22d3ee;font-size:.72rem}.caseStudyArchitectureArrow small{font-size:.58rem;line-height:1.35}.caseStudyArchitectureBranches{gap:8px;padding:12px;display:grid}.caseStudyArchitectureBranch{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:minmax(112px,.7fr) minmax(0,2fr);align-items:center;gap:12px;padding:10px;display:grid}.caseStudyArchitectureBranchLabel{color:var(--text);font-size:.7rem;font-weight:650;line-height:1.4}.caseStudyArchitectureBranchPath{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;display:grid}.caseStudyArchitectureBranchPath span{color:var(--text-secondary);font-size:.66rem;line-height:1.45}.caseStudyArchitectureBranchPath i{color:#22d3ee;font-size:.65rem}.caseStudyIntegrationGrid,.caseStudyEngineeringGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.caseStudyIntegrationGrid h3,.caseStudyEngineeringGrid h3,.caseStudyPerformanceGrid h3{color:var(--text);margin-bottom:6px;font-size:.82rem;font-weight:650}.caseStudyIntegrationGrid p,.caseStudyEngineeringGrid p,.caseStudyPerformanceGrid p{color:var(--text-secondary);font-size:.78rem;line-height:1.65}.caseStudyFlow{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.caseStudyFlowStep{border:1px solid var(--border);background:var(--surface);border-radius:9px;min-width:0;padding:13px}.caseStudyFlowStep>span{background:var(--surface-hover);width:24px;height:24px;color:var(--text);border-radius:50%;justify-content:center;align-items:center;margin-bottom:10px;font-size:.68rem;font-weight:700;display:flex}.caseStudyFlowStep strong{color:var(--text);font-size:.8rem}.caseStudyFlowStep p{color:var(--text-secondary);margin-top:4px;font-size:.72rem;line-height:1.55}.caseStudyLifecycle{align-items:stretch;gap:8px;margin-top:16px;display:flex}.caseStudyLifecycleStep{border:1px solid var(--border);background:var(--surface);border-radius:9px;flex:1;align-items:flex-start;gap:8px;min-width:0;padding:12px;display:flex;position:relative}.caseStudyLifecycleStep>div{min-width:0}.caseStudyLifecycleMarker{background:var(--surface-hover);width:22px;height:22px;color:var(--text);border-radius:50%;flex:0 0 22px;justify-content:center;align-items:center;font-size:.65rem;font-weight:700;display:inline-flex}.caseStudyLifecycleStep strong{color:var(--text);text-transform:uppercase;letter-spacing:.035em;margin:2px 0 5px;font-size:.78rem;display:block}.caseStudyLifecycleStep p{color:var(--text-secondary);font-size:.7rem;line-height:1.5}.caseStudyLifecycleStep>i{z-index:1;background:var(--bg);color:var(--text-muted);padding:4px;font-size:.65rem;position:absolute;top:50%;right:-12px;transform:translate(50%,-50%)}.caseStudyLifecycleNote{color:var(--text-muted);margin-top:9px;font-size:.75rem;line-height:1.6}.caseStudyTableWrap{border:1px solid var(--border);border-radius:9px;width:100%;margin-top:14px;overflow-x:auto}.caseStudyTable{border-collapse:collapse;text-align:left;width:100%;min-width:560px;font-size:.76rem}.caseStudyTable th,.caseStudyTable td{border-bottom:1px solid var(--border);color:var(--text-secondary);vertical-align:top;padding:10px 12px}.caseStudyTable thead th{background:var(--surface);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;font-size:.67rem;font-weight:600}.caseStudyTable tbody th{color:var(--text);white-space:nowrap;font-weight:600}.caseStudyTable tr:last-child th,.caseStudyTable tr:last-child td{border-bottom:0}.caseStudyTable code{white-space:nowrap}.caseStudyApiGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px;display:grid}.caseStudyApiCard{border:1px solid var(--border);background:var(--surface);border-radius:8px;min-width:0;padding:12px}.caseStudyApiCard h3{color:var(--text);margin-bottom:6px;font-size:.78rem;font-weight:650}.caseStudyApiCard p{overflow-wrap:anywhere;color:var(--text-secondary);font-family:var(--font-mono,monospace);font-size:.68rem;line-height:1.65}.caseStudyImplementationNotes{border:1px solid var(--border-strong);background:var(--surface);border-radius:10px;padding:16px}.caseStudyImplementationNotes>p{color:var(--text-secondary);font-size:.8rem;line-height:1.6}.caseStudyDetailList{gap:6px;margin:6px 0 0;padding-left:18px;display:grid}.caseStudyDetailList li{color:var(--text-secondary);padding-left:2px;font-size:.84rem;line-height:1.65}.caseStudyDetailList li::marker{color:var(--text-muted)}.caseStudyDetailList code,.caseStudyOpsNote code,.caseStudySection code{background:var(--bg-elev);color:var(--text);font-family:var(--font-mono,monospace);border-radius:4px;padding:1px 4px;font-size:.92em}.caseStudyOpsNote{border-left:2px solid var(--border-strong);background:var(--surface);color:var(--text-secondary);margin-top:12px;padding:12px 14px;font-size:.78rem;line-height:1.65}.caseStudyDataDiagram{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.caseStudyDataDomain{border:1px solid var(--border);background:var(--surface);border-radius:10px;flex-direction:column;gap:8px;min-width:0;padding:14px;display:flex}.caseStudyDataDomain h3{color:var(--text);margin-bottom:2px;font-size:.88rem;font-weight:650}.caseStudyEntityRow{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.caseStudyEntity{border:1px solid var(--border);background:var(--bg-elev);border-radius:7px;flex-direction:column;gap:3px;min-width:0;padding:9px 10px;display:flex}.caseStudyEntityPrimary{border-color:var(--border-strong)}.caseStudyEntity strong{overflow-wrap:anywhere;color:var(--text);font-size:.74rem;font-weight:650}.caseStudyEntity span{color:var(--text-muted);font-size:.68rem;line-height:1.45}.caseStudyRelation{color:var(--text-secondary);margin-top:2px;font-size:.7rem;line-height:1.6}.caseStudyClosing{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:18px}.caseStudyRepositoryLink{color:var(--text);flex-wrap:wrap;align-items:center;gap:9px;margin-top:14px;font-size:.84rem;font-weight:600;display:inline-flex}.caseStudyRepositoryLink:hover{text-decoration:underline}@media (max-width:640px){.caseStudyFacts,.caseStudyIntegrationGrid,.caseStudyEngineeringGrid,.caseStudyDataDiagram,.caseStudyApiGrid,.caseStudyPerformanceGrid{grid-template-columns:1fr}.caseStudyArchitecturePath{grid-template-columns:minmax(0,1fr);gap:6px}.caseStudyArchitectureArrow{flex-direction:row;justify-content:center;max-width:none}.caseStudyArchitectureArrow i,.caseStudyArchitectureBranchPath i{transform:rotate(90deg)}.caseStudyArchitectureBranch{grid-template-columns:minmax(0,1fr);gap:8px}.caseStudyArchitectureBranchPath{grid-template-columns:minmax(0,1fr);justify-items:stretch;gap:5px}.caseStudyArchitectureBranchPath span{background:var(--bg-elev);border-radius:6px;padding:7px 8px}.caseStudyArchitectureBranchPath i{justify-self:center}.caseStudyFlow{grid-template-columns:repeat(2,minmax(0,1fr))}.caseStudyLifecycle{flex-direction:column}.caseStudyLifecycleStep{align-items:flex-start}.caseStudyLifecycleStep>i{top:auto;bottom:-12px;right:50%;transform:translate(50%,50%)rotate(90deg)}.caseStudyScreenshot{margin-top:18px}}.expList{flex-direction:column;gap:24px;display:flex}.expItem{align-items:flex-start;gap:16px;display:flex}.expBadge{background:var(--surface);border:1px solid var(--border);width:48px;height:48px;color:var(--text-secondary);text-align:center;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:4px;font-size:.7rem;font-weight:600;line-height:1.1;display:flex;overflow:hidden}.expBadge img{object-fit:cover;width:32px;height:32px;transition:filter var(--transition);border-radius:50%}:root[data-theme=light] .expBadge img.expLogoInvertLight,:root[data-theme=light] .expBadge img[src*=r0-logo]{filter:invert()}.expBody{flex:1;min-width:0}.expHeader{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.expCompany{color:var(--text);margin-bottom:2px;font-size:1rem;font-weight:600}.expRole{color:var(--text-secondary);font-size:.85rem}.expDuration{color:var(--text-muted);white-space:nowrap;font-size:.8rem}.expType{color:var(--text-muted);margin-top:4px;font-size:.78rem}.expTech{color:var(--text-secondary);margin-top:4px;font-size:.78rem}.expPoints{flex-direction:column;gap:6px;margin-top:10px;display:flex}.expPoints li{color:var(--text-secondary);padding-left:14px;font-size:.85rem;line-height:1.55;position:relative}.expPoints li:before{content:"";background:var(--text-muted);border-radius:50%;width:4px;height:4px;position:absolute;top:9px;left:0}.expPoints a{color:var(--text);text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:2px}.expPoints a:hover{-webkit-text-decoration-color:var(--text);text-decoration-color:var(--text)}.expLinks{flex-wrap:nowrap;align-items:center;gap:12px;margin-top:10px;font-size:.78rem;display:flex}.expLinks a{color:var(--text-secondary);white-space:nowrap;flex:none;align-items:center;gap:4px;display:inline-flex}.expLinks a:hover{color:var(--text)}.expShowAll{color:var(--text-secondary);font:inherit;transition:color var(--transition);background:0 0;border:0;flex-shrink:0;margin:0 0 16px 12px;padding:2px 0 2px 8px;line-height:1.2}.expShowAll:hover{color:var(--text)}.projectList{flex-direction:column;gap:16px;display:flex}.projectItem{border:1px solid var(--border);transition:border-color var(--transition),background var(--transition);border-radius:10px;padding:16px}.projectItem:hover{border-color:var(--border-strong);background:var(--bg-elev)}.projectTitle{color:var(--text);justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;font-size:.95rem;font-weight:600;display:flex}.projectLinks{color:var(--text-muted);gap:12px;font-size:.85rem;display:inline-flex}.projectLinks a:hover{color:var(--text)}.projectDesc{color:var(--text-secondary);margin-bottom:10px;font-size:.85rem;line-height:1.55}.projectTech{flex-wrap:wrap;gap:6px;display:flex}.projectTech span{color:var(--text-muted);border:1px solid var(--border);border-radius:999px;padding:2px 8px;font-size:.7rem}.achList{flex-direction:column;gap:12px;display:flex}.achItem{border-bottom:1px solid var(--border);align-items:flex-start;gap:16px;padding:12px 0;display:flex}.achItem:last-child{border-bottom:none}.achRank{color:var(--text);background:var(--surface);border:1px solid var(--border);text-align:center;letter-spacing:.02em;border-radius:6px;flex-shrink:0;min-width:72px;padding:4px 10px;font-size:.7rem;font-weight:600}.achBody{flex:1;min-width:0}.achTitle{color:var(--text);margin-bottom:2px;font-size:.9rem;font-weight:600}.achDesc{color:var(--text-muted);margin-bottom:4px;font-size:.8rem}.achLink{color:var(--text-secondary);text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:2px;font-size:.78rem}.achLink:hover{-webkit-text-decoration-color:var(--text);text-decoration-color:var(--text);color:var(--text)}@media (max-width:480px){.achItem{flex-direction:column;gap:8px}.achRank{align-self:flex-start}.achBody{width:100%}.achDesc{line-height:1.55}.achLink{margin-top:2px;display:inline-block}}.skillsList{flex-direction:column;gap:16px;display:flex}.skillRow{grid-template-columns:160px 1fr;align-items:start;gap:16px;display:grid}.skillRowTitle{color:var(--text);font-size:.85rem;font-weight:600}.skillTags{flex-wrap:wrap;gap:6px;display:flex}.skillTags span{color:var(--text-secondary);border:1px solid var(--border);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.75rem;display:inline-flex}.skillIcon{object-fit:contain;width:12px;height:12px}:root[data-theme=light] .skillIcon{filter:brightness(0)}@media (max-width:640px){.section{margin-bottom:36px}.sectionTitle{margin-bottom:12px}.skillRow{grid-template-columns:minmax(0,1fr);gap:6px;min-width:0}.skillTags{justify-content:flex-start;width:100%;min-width:0}.skillTags span{max-width:100%}}.contactList{flex-direction:column;gap:8px;margin-top:16px;display:flex}.bookCallLead{text-align:center}.bookCallRow{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:16px;display:flex}.bookCallRow .btn{cursor:pointer;transition:transform var(--transition),background var(--transition),border-color var(--transition);border-radius:10px;align-items:center;gap:8px;padding:10px 18px;font-family:inherit;font-size:.85rem;font-weight:500;display:inline-flex}.bookCallRow .btn:hover{transform:translateY(-1px)}.bookCallRow .btnGhost{background:var(--surface);color:var(--text);border:1px solid var(--border)}.bookCallRow .btnGhost:hover{background:var(--surface-hover);border-color:var(--border-strong)}.bookCallRow .btnPrimary{background:var(--text);color:var(--bg);border:1px solid var(--text)}.bookCallRow .btnPrimary:hover{background:var(--primary-hover)}@media (max-width:640px){.bookCallRow{flex-direction:column}.bookCallRow .btn{justify-content:center;width:100%}}.contactRow{border:1px solid var(--border);color:var(--text-secondary);transition:border-color var(--transition),color var(--transition),background var(--transition);border-radius:10px;align-items:center;gap:12px;padding:12px 16px;font-size:.85rem;display:inline-flex}.contactRow:hover{border-color:var(--border-strong);color:var(--text);background:var(--bg-elev)}.contactIcon{color:var(--text-muted);font-size:.9rem}.footer{border-top:1px solid var(--border);color:var(--text-muted);text-align:center;margin-top:32px;padding-top:24px;font-size:.78rem}.dock{background:var(--dock-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);z-index:100;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}.dockHighlight{pointer-events:none;z-index:0;background:#22d3ee1f;border-radius:999px;transition:left .3s,top .3s,width .3s,height .3s,opacity .2s;position:absolute}.dockItem{z-index:1;background:var(--surface);border:1px solid var(--border);width:40px;height:40px;color:var(--text-secondary);transition:transform var(--transition),color var(--transition);border-radius:50%;justify-content:center;align-items:center;font-size:.95rem;display:inline-flex;position:relative}.dock button.dockItem{cursor:pointer;padding:0;font-family:inherit}.dockItem:hover,.dockItem.isActive{transform:translateY(-3px)}.dockItem.isActive{border-color:currentColor}.dockItemText{letter-spacing:.04em;font-size:.7rem;font-weight:700}.dockSep{background:var(--border);width:1px;height:24px;margin:0 4px}@media (max-width:480px){.dock{gap:3px;padding:5px 6px}.dockItem{width:32px;height:32px;font-size:.78rem}.dockItemText{font-size:.62rem}.dockSep{height:20px;margin:0 2px}}@media (max-width:360px){.dock{gap:2px;padding:4px 5px}.dockItem{width:28px;height:28px;font-size:.7rem}.dockSep{margin:0 1px}}.reveal,.reveal.active{opacity:1;transform:none}
