*,:before,:after{box-sizing:border-box}body,h1,h2,h3,p,dl,dd,figure,ul{margin:0}ul{padding:0;list-style:none}a{color:inherit;text-decoration:none}button,select{font:inherit}[hidden]{display:none!important}:root{color-scheme:light;--bg:#fff;--surface:#f6f8fa;--text:#1a1a1a;--text-muted:#57606a;--border:#d8dee4;--accent:#2563eb;--card-bg:#fff;--surface-hover:#eef2f7;--icon-bg:#eef3fc;--brand-codechef:#5b4638;--button-bg:var(--text);--button-text:var(--bg);--font-sans:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Consolas, monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg:#111318;--surface:#1b1f27;--text:#eef0f4;--text-muted:#a9b0bd;--border:#343b48;--accent:#8fb5ff;--card-bg:#1b1f27;--surface-hover:#222834;--icon-bg:#272e3b;--brand-codechef:#fff;--button-bg:#8fb5ff;--button-text:#111318}}:root[data-theme=dark]{color-scheme:dark;--bg:#111318;--surface:#1b1f27;--text:#eef0f4;--text-muted:#a9b0bd;--border:#343b48;--accent:#8fb5ff;--card-bg:#1b1f27;--surface-hover:#222834;--icon-bg:#272e3b;--brand-codechef:#fff;--button-bg:#8fb5ff;--button-text:#111318}html{background:var(--bg)}body{background:var(--bg);min-height:100svh;color:var(--text);font-family:var(--font-sans);overflow-wrap:anywhere;-webkit-font-smoothing:antialiased;flex-direction:column;font-size:clamp(1.0625rem,1rem + .2vw,1.125rem);line-height:1.75;display:flex}.container{width:min(100% - 3rem,68.75rem);margin-inline:auto}.site-header{border-bottom:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) auto;justify-content:space-between;align-items:center;gap:1rem 1.5rem;min-height:6rem;padding-block:1rem;display:grid}.site-header a,.link-list a,.text-link{align-items:center;min-height:2.75rem;display:inline-flex}.site-brand{font-family:var(--font-sans);letter-spacing:-.025em;font-size:1.125rem;font-weight:650}.site-navigation,.link-list,.hero-actions{flex-wrap:wrap;align-items:center;gap:.5rem 1.5rem;display:flex}.site-navigation{justify-content:flex-end;justify-self:end;font-size:1rem}.theme-control{justify-self:end;min-width:7.5rem}.theme-picker{border:1px solid var(--border);background:var(--surface);border-radius:.5rem;align-items:center;gap:.25rem;min-height:2.75rem;padding-inline:.5rem;font-size:.875rem;display:inline-flex}.theme-picker svg{flex-shrink:0}.theme-picker select{width:5rem;min-height:2.75rem;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;padding-inline:.25rem}.theme-picker option{background:var(--surface);color:var(--text)}.theme-notice{border-left:2px solid var(--accent);background:var(--surface);grid-column:1/-1;width:100%;padding:.75rem 1rem;font-size:.875rem}.site-navigation [aria-current=page]{color:var(--accent);text-decoration:underline}main{flex:1}.hero{grid-template-columns:minmax(0,1.6fr) minmax(0,.8fr);align-items:center;gap:4rem;padding-block:5rem;display:grid}.hero h1{max-width:18ch;font-size:clamp(2.5rem,5vw,3.5rem);line-height:1.08}.hero-portrait{justify-self:center;width:100%;max-width:16rem}.portrait-frame{border:1px solid var(--border);background:var(--surface);aspect-ratio:1;border-radius:50%;padding:.375rem;display:block;overflow:hidden;box-shadow:0 8px 28px -22px #00000059}.portrait-frame img{object-fit:cover;object-position:center;border-radius:50%;width:100%;height:100%;display:block}.intro,.prose{max-width:45rem}.eyebrow,.meta,.tag-list{font-size:.875rem}.eyebrow{color:var(--text-muted);font-family:var(--font-mono);margin-bottom:1rem}.meta,.location{color:var(--text-muted)}h1,h2,h3{overflow-wrap:anywhere}h1{letter-spacing:-.035em;font-size:clamp(2.25rem,5vw,2.75rem);font-weight:700;line-height:1.1}h2{letter-spacing:-.025em;font-size:clamp(1.625rem,3vw,1.875rem);font-weight:600;line-height:1.25}h3{font-size:1.25rem;font-weight:600;line-height:1.4}.lead{margin-top:1.5rem;font-size:1.125rem}.intro .lead,.page-header>p:not(.eyebrow){max-width:65ch}.location{margin-top:1rem;font-size:1rem}.hero-actions{margin-top:2rem}.button-link{border:1px solid var(--button-bg);background:var(--button-bg);min-height:2.75rem;color:var(--button-text);text-align:center;cursor:pointer;border-radius:.375rem;justify-content:center;align-items:center;padding:.5rem 1.25rem;font-size:1rem;font-weight:500;display:inline-flex}.button-link:hover{text-decoration:none}.profile-background{border-top:1px solid var(--border);padding-block:2rem}.current-work{border:1px solid var(--border);background:var(--card-bg);border-radius:.75rem;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);align-items:center;gap:2rem 3rem;padding:2rem;display:grid}.current-work .eyebrow{margin-bottom:.5rem}.current-work .role-title,.current-work .text-link{margin-top:.75rem}.current-work .work-link{margin-top:1rem}.action-icon{color:var(--accent);flex-shrink:0;display:block}.action-icon--github{color:var(--text)}.brand-icon{box-sizing:border-box}.brand-icon.action-icon--github{color:var(--text)}.brand-icon.action-icon--linkedin{color:#0a66c2}.brand-icon.action-icon--x,.brand-icon.action-icon--medium{color:var(--text)}.brand-icon.action-icon--instagram{color:#ff0069}.brand-icon.action-icon--codechef{color:var(--brand-codechef)}.brand-icon.action-icon--leetcode{color:#ffa116}.brand-icon.action-icon--hackerrank{color:#00ea64}.brand-icon.action-icon--substack{color:#ff6719}.button-link .action-icon{color:inherit}.icon-link,.social-action{align-items:center;gap:.625rem;min-height:2.75rem;display:inline-flex}.social-action{border:1px solid var(--border);background:var(--card-bg);color:var(--text);cursor:pointer;border-radius:.5rem;padding:.5rem .875rem;font-size:1rem;font-weight:500}.social-action:hover{border-color:var(--accent);background:var(--surface-hover);text-decoration:none}.home-section,.contact-strip{border-top:1px solid var(--border);padding-block:4rem}.section-heading,.contact-strip{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.section-heading{margin-bottom:2rem}.section-heading .eyebrow,.contact-strip .eyebrow{margin-bottom:.5rem}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;display:grid}.project-card{border:1px solid var(--border);background:var(--card-bg);border-radius:.5rem;flex-direction:column;align-items:flex-start;gap:1rem;padding:1.5rem;font-size:1rem;display:flex}.project-card h3 a{text-decoration-thickness:1px}.tag-list{color:var(--text-muted);flex-wrap:wrap;gap:.5rem;display:flex}.tag-list li{border:1px solid var(--border);background:var(--surface);border-radius:.25rem;padding:.125rem .5rem}.project-card .card-link{gap:.5rem;margin-top:auto}.contact-strip p:not(.eyebrow){margin-top:.75rem}.about-header{grid-template-columns:minmax(0,1.6fr) minmax(0,.8fr);align-items:center;gap:3rem;display:grid}.highlights-list{margin-top:1.5rem;padding:0;list-style:none}.highlights-list>li{gap:.375rem;padding:0 0 2.5rem 2.25rem;display:grid;position:relative}.highlights-list>li:before{background:var(--text-muted);content:"";width:2px;position:absolute;top:.9375rem;bottom:-.9375rem;left:calc(.4375rem - 1px)}.highlights-list>li:last-child:before{display:none}.highlights-list>li:last-child{padding-bottom:0}.highlights-list>li:after{border:2px solid var(--accent);background:var(--bg);content:"";border-radius:50%;width:.875rem;height:.875rem;position:absolute;top:.5rem;left:0}.milestone-details{color:var(--text-muted);font-size:1rem}.milestone-details li+li{margin-top:.25rem}.post-list{margin-top:1.5rem}.post-card{border:1px solid var(--border);background:var(--card-bg);border-radius:.75rem;gap:1rem;padding:1.5rem;display:grid}.post-card+.post-card{margin-top:1.5rem}.article-content{max-width:48rem;margin-inline:auto}.post-body>*+*{margin-top:1.25rem}.post-body h2:not(:first-child){margin-top:2.5rem}.post-body li+li,.post-body li>ul{margin-top:.5rem}.post-body ul,.post-body ol{padding-left:1.5rem}.post-body ul{list-style:outside}.post-body ol{list-style:decimal}.post-body a{color:var(--accent);text-decoration:underline}.post-body pre{background:var(--surface);padding:1rem;overflow-x:auto}.post-body img{max-width:100%;height:auto}.post-body blockquote{border-left:2px solid var(--border);margin-inline:0;padding-left:1rem}.page{padding-block:4rem}.page-header{margin-bottom:3rem}.page-header>p:not(.eyebrow)+p{margin-top:1rem}.content-section{border-top:1px solid var(--border);padding-block:3rem}.content-section>h2{margin-bottom:2rem}.experience-list{gap:3rem;display:grid}.work-meta{flex-wrap:wrap;gap:.25rem .75rem;margin-top:.5rem;display:flex}.education-list{gap:3rem;display:grid}.education-results{margin-top:0}.education-coursework{margin-top:1.5rem}.experience-row,.education-row,.project-detail{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:3rem;display:grid}.experience-row .meta,.education-row .meta{margin-top:.5rem}.role-title,.skill-groups dt{margin-bottom:.5rem;font-weight:600}.bullet-list{gap:.5rem;margin-top:1rem;padding-left:1.25rem;list-style:outside;display:grid}.skill-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 3rem;display:grid}.skill-groups dd{max-width:50ch;color:var(--text-muted)}.project-detail{border-top:1px solid var(--border);padding-block:3rem;scroll-margin-top:2rem}.project-detail-heading .eyebrow{margin-bottom:.75rem}.project-detail-heading .meta{margin-top:1rem}.project-summary{font-weight:500}.project-subheading,.project-purpose h3{margin-top:1.5rem;margin-bottom:.5rem;font-size:1rem}.project-note{border-left:2px solid var(--border);margin-top:1.5rem;padding-left:1rem}.project-detail-body .tag-list{margin-top:1.5rem}.project-links,.page-end-link{margin-top:1rem}.contact-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;padding-bottom:3rem;display:grid}.contact-action-card{border:1px solid var(--border);background:var(--card-bg);border-radius:.875rem;flex-wrap:wrap;align-items:flex-start;gap:1.25rem;padding:2rem;display:flex}.contact-action-card>div{flex:12rem;min-width:0}.contact-action-card:hover{text-decoration:none}.contact-action-card h2{margin-bottom:.75rem;font-size:1.5rem}.contact-action-card p{color:var(--text-muted);font-size:1rem}.contact-address{overflow-wrap:anywhere}.action-badge{background:var(--icon-bg);border-radius:.75rem;flex-shrink:0;place-items:center;width:3rem;height:3rem;display:grid}.contact-action-label{color:var(--accent);align-items:center;gap:.5rem;margin-top:1rem;font-size:1rem;display:flex}.contact-resume-links{flex-wrap:wrap;align-items:center;gap:.25rem 1rem;margin-top:.75rem;display:flex}.profile-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.profile-grid li{border:1px solid var(--border);background:var(--card-bg);border-radius:.625rem}.profile-grid a{overflow-wrap:anywhere;flex-direction:column;align-items:flex-start;gap:.5rem;height:100%;padding:1.25rem;display:flex}.profile-name{color:var(--text);font-weight:500}.profile-card-heading{align-items:center;gap:.625rem;width:100%;display:flex}.profile-card-heading .action-icon--external{margin-left:auto}.profile-grid a:hover{background:var(--surface-hover);border-radius:inherit;text-decoration:none}.profile-grid a:hover .profile-name{text-decoration:underline}.not-found-page{align-items:center;padding-block:6rem;display:flex}.not-found-page .intro>p:not(.eyebrow){margin-top:1.5rem}a{text-underline-offset:.25em}a:hover{text-decoration:underline}.text-link{color:var(--accent);font-size:1rem;text-decoration:underline}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.skip-link{z-index:1;background:var(--bg);padding:.75rem 1rem;position:absolute;top:1rem;left:1.5rem;transform:translateY(calc(-100% - 2rem))}.skip-link:focus{transform:none}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.site-footer{border-top:1px solid var(--border);padding-block:2rem;font-size:.875rem}.footer-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 2rem;display:flex}.footer-name{font-size:1rem;font-weight:600}.footer-social{font-size:.875rem}.resume-page{max-width:56rem}.resume-contact,.resume-actions,.resume-entry-heading{flex-wrap:wrap;align-items:baseline;gap:.5rem 1.5rem;display:flex}.resume-contact,.resume-actions{margin-top:1.5rem}.resume-contact{color:var(--text-muted);overflow-wrap:anywhere;font-size:1rem}.resume-contact a{color:var(--accent)}.resume-section{border-top:1px solid var(--border);margin-top:3rem;padding-top:2rem}.resume-section>h2{margin-bottom:1.5rem}.resume-entry+.resume-entry{margin-top:2rem}.resume-entry-heading{justify-content:space-between}.resume-entry-heading .role-title{margin-block:.5rem 0}.resume-stack,.resume-coursework{margin-top:.75rem}.resume-skills{gap:1rem;display:grid}.resume-skills dt{font-weight:600}@media (width<=56rem){.hero{grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr);gap:2rem;padding-block:4rem}.project-grid,.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=40rem){.site-header{flex-wrap:wrap;gap:.5rem 1.5rem;display:flex}.theme-control{margin-left:auto}.site-navigation{order:2;justify-content:space-between;column-gap:.5rem;width:100%}.theme-notice{order:3}.hero,.about-header,.current-work,.contact-actions,.project-grid,.profile-grid,.skill-groups,.experience-row,.education-row,.project-detail{grid-template-columns:minmax(0,1fr)}.hero{gap:1.5rem;padding-block:3rem}.hero-portrait{order:-1;justify-self:start;max-width:8rem}.about-header .hero-portrait{order:0}.hero h1{max-width:100%}.contact-action-card,.current-work{padding:1.25rem}.experience-row,.education-row,.project-detail{gap:1.5rem}.home-section,.contact-strip,.page{padding-block:3rem}}@page{size:A4;margin:14mm}@media print{:root,:root[data-theme]{color-scheme:light;--bg:#fff;--surface:#fff;--card-bg:#fff;--text:#111;--text-muted:#333;--border:#ccc;--accent:#111}html,body{background:#fff;min-height:0}body{display:block}.site-header,.site-footer,.skip-link,.resume-actions{display:none!important}.resume-page{width:100%;max-width:none;padding:0;font-size:10.5pt;line-height:1.4}.resume-heading h1{font-size:24pt}.resume-section{margin-top:1rem;padding-top:.75rem}.resume-section h2{break-after:avoid;margin-bottom:.5rem;font-size:15pt}.resume-entry h3{font-size:11pt}.resume-entry+.resume-entry{margin-top:1rem}.resume-entry-heading,.resume-heading{break-after:avoid}.resume-contact,.resume-actions,.resume-skills,.resume-page .bullet-list{gap:.25rem .75rem;margin-top:.5rem}.resume-page .social-action{background:0 0;border:0;gap:.25rem;min-height:0;padding:0;font-size:9.5pt}.resume-page .social-action .action-icon{color:#111;background:0 0;width:1em;height:1em;padding:0}.resume-page .meta,.resume-page .text-link,.resume-contact{font-size:9.5pt}}
