:root{--bg: #0e0e0e;--bg-elevated: #141414;--surface: #1a1a1a;--surface-hover: #222222;--text: #ece9e4;--text-muted: #a8a39d;--text-subtle: #6b6660;--accent: #d6d1ca;--border: #232323;--border-strong: #2e2e2e;--font-sans: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 2rem;--text-4xl: 2.5rem;--text-5xl: 3.25rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-pill: 999px;--transition: .2s ease;--content-max: 960px}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--text-base);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}img{max-width:100%;display:block}section{scroll-margin-top:80px;background-color:var(--bg)}section:nth-of-type(2n){background-color:var(--bg-elevated);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.about{padding:var(--space-24) var(--space-6)}.about h2{max-width:var(--content-max);margin:0 auto var(--space-12);font-size:var(--text-3xl);font-weight:600;letter-spacing:-.02em;color:var(--text)}.about .content{max-width:var(--content-max);margin:0 auto;display:grid;grid-template-columns:1fr 280px;gap:var(--space-16);align-items:center}.about .contentBox{display:flex;flex-direction:column;gap:var(--space-5)}.about .contentBox p{width:100%;font-size:var(--text-base);line-height:1.75;color:var(--text-muted);margin:0;text-align:justify;-webkit-hyphens:auto;hyphens:auto}.about .self_image img{width:100%;max-width:280px;aspect-ratio:1 / 1;object-fit:cover;border-radius:var(--radius-lg);border:1px solid var(--border);filter:grayscale(.2)}@media screen and (max-width:1024px){.about .content{grid-template-columns:1fr 220px;gap:var(--space-12)}}@media screen and (max-width:768px){.about{padding:var(--space-16) var(--space-5)}.about h2{font-size:var(--text-2xl);margin-bottom:var(--space-8)}.about .content{grid-template-columns:1fr;gap:var(--space-8);justify-items:center;text-align:center}.about .self_image{order:-1}.about .self_image img{max-width:200px}}@media screen and (max-width:480px){.about{padding:var(--space-12) var(--space-4)}.about h2{font-size:var(--text-xl);margin-bottom:var(--space-6)}.about .contentBox p{font-size:var(--text-sm);line-height:1.7}.about .self_image img{max-width:160px}}.banner{min-height:calc(100vh - 60px);padding:var(--space-20) var(--space-6);display:flex;justify-content:center;align-items:center;text-align:left}.banner .text-container{width:100%;max-width:var(--content-max);display:flex;flex-direction:column;gap:var(--space-6)}.banner #constantly-updating{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:400;color:var(--text-subtle);letter-spacing:.02em}.banner .text-container>div{display:flex;flex-direction:column;gap:var(--space-3)}.banner .text-container>div p:first-child{font-size:var(--text-lg);color:var(--text-muted);font-weight:300}.banner #name-text{font-size:var(--text-5xl);font-weight:600;letter-spacing:-.02em;line-height:1.1;color:var(--text)}.banner .text-container>div p:last-child{font-family:var(--font-mono);font-size:var(--text-base);color:var(--text-muted);font-style:normal}.banner .text-container>div p:last-child i{font-style:normal}.banner .action-buttons-container{margin-top:var(--space-4);display:inline-flex;align-self:flex-start;gap:var(--space-3);flex-wrap:wrap}.banner .btn{display:inline-flex;align-items:center;gap:var(--space-2);width:fit-content;padding:var(--space-3) var(--space-5);font-size:var(--text-sm);font-weight:500;letter-spacing:.01em;color:var(--text);background-color:transparent;border:1px solid var(--border-strong);border-radius:var(--radius-md);transition:background-color var(--transition),border-color var(--transition),color var(--transition),transform var(--transition)}.banner .btn:after{content:"→";font-family:var(--font-mono);color:var(--text-subtle);transition:transform var(--transition),color var(--transition)}.banner .btn:hover{background-color:var(--surface);border-color:var(--text-muted);color:var(--text)}.banner .btn:hover:after{transform:translate(2px);color:var(--text)}@media screen and (max-width:768px){.banner{padding:var(--space-16) var(--space-5);min-height:calc(100vh - 56px)}.banner #name-text{font-size:var(--text-4xl)}.banner .text-container>div p:first-child{font-size:var(--text-base)}.banner .action-buttons-container{flex-direction:row}}@media screen and (max-width:480px){.banner{padding:var(--space-12) var(--space-4)}.banner #name-text{font-size:var(--text-3xl)}.banner #constantly-updating{font-size:var(--text-xs)}.banner .text-container>div p:last-child{font-size:var(--text-sm)}.banner .btn{padding:var(--space-2) var(--space-4);font-size:var(--text-xs)}}.contact{padding:var(--space-24) var(--space-6);display:flex;flex-direction:column;align-items:center;gap:var(--space-6);text-align:center}.contact__heading{font-size:var(--text-3xl);font-weight:600;letter-spacing:-.02em;color:var(--text)}.contact__email{font-family:var(--font-mono);font-size:var(--text-base);color:var(--text-muted);border-bottom:1px solid var(--border-strong);padding-bottom:2px;transition:color var(--transition),border-color var(--transition)}.contact__email:hover{color:var(--text);border-bottom-color:var(--text)}.contact__socials{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;justify-content:center;margin-top:var(--space-4)}.contact__icon{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1);width:64px;height:64px;background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-muted);transition:background-color var(--transition),border-color var(--transition),color var(--transition),transform var(--transition)}.contact__icon:hover{background-color:var(--surface-hover);border-color:var(--border-strong);color:var(--text);transform:translateY(-2px)}.contact-icon{font-size:var(--text-xl)}.contact__leetcode img{width:1.4rem;height:1.4rem;object-fit:contain;filter:grayscale(1) brightness(1.2);opacity:.7;transition:opacity var(--transition)}.contact__leetcode:hover img{opacity:1}.contact__leetcode span{font-size:.65rem;font-weight:500;letter-spacing:.02em}.contact__location{font-size:var(--text-xs);color:var(--text-subtle);margin-top:var(--space-4)}@media screen and (max-width:768px){.contact{padding:var(--space-16) var(--space-5)}.contact__heading{font-size:var(--text-2xl)}}@media screen and (max-width:480px){.contact{padding:var(--space-12) var(--space-4);gap:var(--space-4)}.contact__heading{font-size:var(--text-xl)}.contact__email{font-size:var(--text-sm)}.contact__icon{width:56px;height:56px}.contact__socials{gap:var(--space-2)}}.education{max-width:var(--content-max);margin:0 auto;padding:var(--space-24) var(--space-6)}.education h2{font-size:var(--text-3xl);font-weight:600;letter-spacing:-.02em;margin-bottom:var(--space-12);color:var(--text)}.education__list{list-style:none;display:flex;flex-direction:column}.education__item{display:grid;grid-template-columns:200px 1fr;gap:var(--space-8);padding:var(--space-6) 0;border-top:1px solid var(--border)}.education__item:last-child{border-bottom:1px solid var(--border)}.education__date{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-subtle);padding-top:.3rem;letter-spacing:.02em}.education__body{display:flex;flex-direction:column;gap:var(--space-1)}.education__degree{font-size:var(--text-base);font-weight:500;color:var(--text);line-height:1.4;margin:0}.education__school{font-size:var(--text-sm);color:var(--text-muted);margin:0}.education__location{font-size:var(--text-xs);color:var(--text-subtle);margin:0}@media screen and (max-width:768px){.education{padding:var(--space-16) var(--space-5)}.education h2{font-size:var(--text-2xl);margin-bottom:var(--space-8)}.education__item{grid-template-columns:1fr;gap:var(--space-2);padding:var(--space-5) 0}.education__date{padding-top:0}}@media screen and (max-width:480px){.education{padding:var(--space-12) var(--space-4)}.education h2{font-size:var(--text-xl);margin-bottom:var(--space-6)}.education__degree{font-size:var(--text-sm)}.education__school{font-size:var(--text-xs)}}.experience{max-width:var(--content-max);margin:0 auto;padding:var(--space-24) var(--space-6)}.experience h2{font-size:var(--text-3xl);font-weight:600;letter-spacing:-.02em;margin-bottom:var(--space-12);color:var(--text)}.experience .accordion{display:flex;flex-direction:column;gap:var(--space-2)}.accordion-item{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;background-color:var(--surface);transition:border-color var(--transition)}.accordion-item:hover,.accordion-item.active{border-color:var(--border-strong)}.accordion-header{width:100%;background:transparent;border:none;text-align:left;padding:var(--space-5) var(--space-6);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);color:var(--text);transition:background-color var(--transition)}.accordion-header:hover{background-color:var(--surface-hover)}.accordion-header>div{display:flex;flex-direction:column;gap:var(--space-1)}.accordion-header>div>p:first-child{font-size:var(--text-base);font-weight:500;color:var(--text)}.experience-company-name{font-size:var(--text-sm);color:var(--text-muted)}.duration{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--text-subtle);text-align:right;white-space:nowrap}.accordion-body{display:none;padding:0 var(--space-6) var(--space-6);border-top:1px solid var(--border);background:transparent}.accordion-item.active .accordion-body{display:block;padding-top:var(--space-5)}.accordion-body ul{padding-left:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3)}.accordion-body li{font-size:var(--text-sm);line-height:1.7;color:var(--text-muted);list-style:disc;text-align:justify;-webkit-hyphens:auto;hyphens:auto}.accordion-body li::marker{color:var(--text-subtle)}@media screen and (max-width:768px){.experience{padding:var(--space-16) var(--space-5)}.experience h2{font-size:var(--text-2xl);margin-bottom:var(--space-8)}.accordion-header{padding:var(--space-4);gap:var(--space-3);flex-wrap:wrap}.accordion-header>div>p:first-child{font-size:var(--text-sm)}.experience-company-name{font-size:var(--text-xs)}.duration{font-size:.7rem}.accordion-body{padding:0 var(--space-4) var(--space-4)}.accordion-item.active .accordion-body{padding-top:var(--space-4)}.accordion-body li{font-size:var(--text-xs);line-height:1.6}}@media screen and (max-width:480px){.experience{padding:var(--space-12) var(--space-4)}.experience h2{font-size:var(--text-xl);margin-bottom:var(--space-6)}.accordion-header{padding:var(--space-3)}.accordion-header>div{flex:1 1 100%}.duration{flex:1 1 100%;text-align:left;margin-top:var(--space-1)}.accordion-body{padding:0 var(--space-3) var(--space-3)}.accordion-body ul{padding-left:var(--space-4);gap:var(--space-2)}}#more{padding:var(--space-24) var(--space-6)}#more>h2{max-width:var(--content-max);margin:0 auto var(--space-12);font-size:var(--text-3xl);font-weight:600;letter-spacing:-.02em;color:var(--text)}#more>ul{max-width:var(--content-max);margin:0 auto;display:flex;flex-direction:column;gap:var(--space-5);list-style:none;padding-left:var(--space-5)}.more-item{position:relative;font-size:var(--text-sm);line-height:1.7;color:var(--text-muted);list-style:none;text-align:justify;-webkit-hyphens:auto;hyphens:auto}.more-item:before{content:"";position:absolute;left:calc(var(--space-5) * -1);top:.7rem;width:4px;height:4px;border-radius:50%;background-color:var(--text-subtle)}.more-item b{color:var(--text);font-weight:500}#more ul li a{color:var(--text);font-weight:500;border-bottom:1px solid var(--text-subtle);text-decoration:none;transition:border-color var(--transition)}#more ul li a:hover{border-bottom-color:var(--text)}.custom-list{list-style:none;margin-top:var(--space-4)}.custom-list>p{font-size:var(--text-base);font-weight:500;color:var(--text);margin-bottom:var(--space-3)}.custom-list ul{padding-left:var(--space-6);display:flex;flex-direction:column;gap:var(--space-2);list-style:none}.custom-list-item{position:relative;font-size:var(--text-sm);line-height:1.6;color:var(--text-muted);list-style:none}.custom-list-item:before{content:"—";position:absolute;left:calc(var(--space-5) * -1);color:var(--text-subtle)}@media screen and (max-width:768px){#more{padding:var(--space-16) var(--space-5)}#more>h2{font-size:var(--text-2xl);margin-bottom:var(--space-8)}.more-item,.custom-list-item{font-size:var(--text-xs)}}@media screen and (max-width:480px){#more{padding:var(--space-12) var(--space-4)}#more>h2{font-size:var(--text-xl);margin-bottom:var(--space-6)}#more>ul{gap:var(--space-4)}}nav,#nav{position:sticky;top:0;z-index:100;width:100%;background-color:#0e0e0ed9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}nav ul{max-width:var(--content-max);margin:0 auto;padding:var(--space-4) var(--space-6);display:flex;justify-content:center;gap:var(--space-2);flex-wrap:wrap}nav ul li{list-style:none}nav ul li a{display:inline-block;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:400;color:var(--text-muted);letter-spacing:.01em;transition:color var(--transition)}nav ul li a:hover{color:var(--text)}.toggle{display:none}.toggle .menu{cursor:pointer;font-size:var(--text-xl);color:var(--text)}@media screen and (max-width:768px){nav,#nav{padding:0}.toggle{display:flex;justify-content:flex-end;padding:var(--space-4) var(--space-6)}nav ul{display:none;flex-direction:column;padding:0 var(--space-6) var(--space-4);gap:0}nav ul.active{display:flex}nav ul li{border-top:1px solid var(--border)}nav ul li a{display:block;padding:var(--space-3) 0;font-size:var(--text-sm)}}.projects{padding:var(--space-24) var(--space-6)}.projects .section-header{max-width:var(--content-max);margin:0 auto var(--space-12);font-size:var(--text-3xl);font-weight:600;letter-spacing:-.02em;color:var(--text)}.projects .grid-container{max-width:var(--content-max);margin:0 auto;display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}.projects .project{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3);transition:border-color var(--transition),background-color var(--transition),transform var(--transition)}.projects .project:hover{border-color:var(--border-strong);background-color:var(--surface-hover);transform:translateY(-2px)}.projects .project h2{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-lg);font-weight:500;color:var(--text);letter-spacing:-.01em;margin:0}.projects .project h2 span{font-size:var(--text-base);color:var(--text-muted)}.projects .project p{font-size:var(--text-sm);line-height:1.6;color:var(--text-muted);margin:0;text-align:justify;-webkit-hyphens:auto;hyphens:auto}.projects .project p:has(i){text-align:left}.projects .project p i{font-style:normal;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-subtle)}.projects .project .github-links{margin-top:auto;align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-xs);font-weight:500;letter-spacing:.02em;color:var(--text);background-color:transparent;border:1px solid var(--border-strong);border-radius:var(--radius-md);transition:background-color var(--transition),border-color var(--transition)}.projects .project .github-links:hover{background-color:var(--bg);border-color:var(--text-muted)}@media screen and (max-width:900px){.projects .grid-container{grid-template-columns:1fr}}@media screen and (max-width:768px){.projects{padding:var(--space-16) var(--space-5)}.projects .section-header{font-size:var(--text-2xl);margin-bottom:var(--space-8)}.projects .project{padding:var(--space-5)}}@media screen and (max-width:480px){.projects{padding:var(--space-12) var(--space-4)}.projects .section-header{font-size:var(--text-xl);margin-bottom:var(--space-6)}.projects .project{padding:var(--space-4);gap:var(--space-2)}.projects .project h2{font-size:var(--text-base)}.projects .project p{font-size:var(--text-xs)}}.skills{padding:var(--space-24) var(--space-6)}.skills h2{max-width:var(--content-max);margin:0 auto var(--space-12);font-size:var(--text-3xl);font-weight:600;letter-spacing:-.02em;color:var(--text)}.skills h2 strong{font-weight:600}.skills .content{max-width:var(--content-max);margin:0 auto;display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}.skills .skill{padding:var(--space-6);background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:var(--space-2);transition:border-color var(--transition),background-color var(--transition)}.skills .skill:hover{border-color:var(--border-strong);background-color:var(--surface-hover)}.skills .skill h2{font-size:var(--text-xs);font-weight:500;font-style:normal;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0 0 var(--space-2);text-align:left}.skills .skill p{font-size:var(--text-sm);line-height:1.6;color:var(--text);margin:0}@media screen and (max-width:768px){.skills{padding:var(--space-16) var(--space-5)}.skills h2{font-size:var(--text-2xl);margin-bottom:var(--space-8)}.skills .content{grid-template-columns:1fr}}@media screen and (max-width:480px){.skills{padding:var(--space-12) var(--space-4)}.skills h2{font-size:var(--text-xl);margin-bottom:var(--space-6)}.skills .skill{padding:var(--space-5)}.skills .skill p{font-size:var(--text-xs)}}.error-boundary{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-12) var(--space-6);background-color:var(--bg)}.error-boundary__inner{max-width:480px;width:100%;display:flex;flex-direction:column;gap:var(--space-4);text-align:left}.error-boundary__code{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-subtle);letter-spacing:.02em}.error-boundary__title{font-size:var(--text-3xl);font-weight:600;letter-spacing:-.02em;color:var(--text);line-height:1.2}.error-boundary__message{font-size:var(--text-base);line-height:1.6;color:var(--text-muted)}.error-boundary__actions{margin-top:var(--space-4);display:flex;gap:var(--space-3);flex-wrap:wrap}.error-boundary__btn{display:inline-flex;align-items:center;padding:var(--space-3) var(--space-5);font-family:inherit;font-size:var(--text-sm);font-weight:500;letter-spacing:.01em;color:var(--text);background-color:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--transition),border-color var(--transition)}.error-boundary__btn:hover{background-color:var(--surface-hover);border-color:var(--text-muted)}.error-boundary__btn--ghost{background-color:transparent}@media screen and (max-width:480px){.error-boundary{padding:var(--space-8) var(--space-4)}.error-boundary__title{font-size:var(--text-2xl)}}
