.home-section{padding-block:var(--space-16) 5rem;border-block-start:1px solid var(--color-border)}.section-index{color:var(--color-accent);margin-block-end:var(--space-6);font-size:.8125rem;font-weight:750}.site-footer{padding-block:var(--space-6) var(--space-16);border-block-start:1px solid var(--color-border);color:var(--color-muted);font-size:.875rem}.home-hero{margin-block:var(--space-12) var(--space-16);border:1px solid var(--color-border);background:var(--color-surface);scroll-margin-top:calc(var(--header-height) + var(--space-6));border-radius:1rem;grid-template:"photo identity""photo intro""contact highlights"1fr/17rem minmax(0,1fr);display:grid;position:relative;overflow:hidden}.home-hero:before{z-index:0;background:var(--color-dark);content:"";width:17rem;position:absolute;inset:0 auto 0 0}.home-hero__accent{z-index:2;background:var(--color-accent);height:.5rem;position:absolute;inset:0 0 auto}.home-hero__watermark{z-index:0;color:#2457d60f;font-size:10rem;font-weight:800;line-height:1;position:absolute;inset-block-start:var(--space-8);inset-inline-end:var(--space-8)}.home-hero>:not(.home-hero__accent,.home-hero__watermark){z-index:1;position:relative}.home-hero__identity{padding:var(--space-12) var(--space-12) 0;grid-area:identity}.home-hero__name-row{align-items:baseline;gap:var(--space-8);display:flex}.home-hero h1{letter-spacing:-.055em;margin:0;font-size:clamp(3rem,4vw,3.5rem)}.home-hero__role{margin:0;font-size:1.5rem;font-weight:700}.home-hero__lede{max-width:40rem;margin:var(--space-6) var(--space-12) 0;grid-area:intro}.profile-photo{width:12rem;margin:var(--space-8) auto 0;grid-area:photo}.profile-photo img{background:var(--color-surface);border-radius:.75rem;width:100%;height:auto;display:block}.contact-list{align-self:end;gap:var(--space-2);padding:var(--space-6) var(--space-8) var(--space-8);color:var(--color-dark-text);grid-area:contact;font-style:normal;display:grid}.contact-list a{align-items:center;gap:0 var(--space-2);grid-template:"label label""value arrow"/minmax(0,1fr) auto;min-width:0;min-height:2.75rem;font-size:.875rem;font-weight:700;display:grid}.contact-list__label{color:var(--color-dark-selected);text-transform:uppercase;grid-area:label;font-size:.75rem}.contact-list__value{white-space:nowrap;grid-area:value;min-width:0}.contact-list__arrow{grid-area:arrow}.home-hero__highlights{margin:var(--space-8);background:var(--color-background);border-radius:.625rem;grid-area:highlights;grid-template-columns:repeat(4,minmax(0,1fr));align-self:end;display:grid;overflow:hidden}.home-hero__highlights>div{padding:var(--space-4);border-inline-start:1px solid var(--color-border)}.home-hero__highlights>div:first-child{border-inline-start:0}.home-hero__highlights dt{color:var(--color-muted);font-size:.8125rem;font-weight:700}.home-hero__highlights dd{margin:var(--space-1) 0 0;font-weight:700;line-height:1.45}.career-overview{gap:var(--space-12);grid-template-columns:minmax(14rem,1fr) 2fr;display:grid}.career-overview__intro{max-width:22rem;color:var(--color-muted)}.career-list{gap:var(--space-8);padding:0 0 0 var(--space-8);margin:0;list-style:none;display:grid;position:relative}.career-list li{gap:var(--space-6);grid-template-columns:9rem 1fr;display:grid;position:relative}.career-list li:before{z-index:1;box-sizing:border-box;border:.1875rem solid var(--color-background);background:var(--color-accent);content:"";border-radius:50%;width:.75rem;height:.75rem;position:absolute;inset-block-start:.55rem;inset-inline-start:-2rem}.career-list li:not(:last-child):after{width:.125rem;height:calc(100% + var(--space-8));content:"";background:#b9c9eb;position:absolute;inset-block-start:.925rem;inset-inline-start:-1.6875rem}.career-list__period{color:var(--color-muted);font-size:.9375rem}.career-list__detail h3,.career-list__detail p{margin:0}.career-list__detail h3{letter-spacing:-.02em;margin-inline-end:var(--space-2);font-size:1.0625rem;display:inline}.career-list__role{display:inline}.career-list__summary{color:var(--color-muted);line-height:1.55;margin-block-start:var(--space-2)!important}.career-list__note{color:var(--color-muted);padding-block-start:var(--space-1);font-size:.875rem}.education-section{display:block}.education-section__heading{margin-block-end:var(--space-8)}.education-section__heading h2,.education-section__heading p{margin-block-end:0}.education-layout{align-items:start;gap:var(--space-8);grid-template-columns:minmax(0,2fr) minmax(15rem,1fr);display:grid}.education-group__title{color:var(--color-accent);letter-spacing:.04em;margin-block-end:var(--space-4);font-size:.875rem}.education-list{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}.education-item{gap:var(--space-6);padding:var(--space-6);border:1px solid var(--color-border);background:var(--color-surface);border-radius:.75rem;grid-template-columns:11.5rem minmax(0,1fr);display:grid}.education-item--current{border-inline-start:.375rem solid var(--color-accent)}.education-item__meta{align-content:start;gap:var(--space-2);display:grid}.education-item__meta span{color:var(--color-accent);font-size:.875rem;font-weight:700}.education-item__meta strong{color:var(--color-muted);font-size:.8125rem}.education-item h4,.education-item p{margin:0}.education-item h4{margin-block-end:var(--space-2);font-size:1.125rem;line-height:1.35}.education-item p{color:var(--color-muted)}.education-item .education-item__institution{color:var(--color-text);margin-block-end:var(--space-1);font-size:.875rem;font-weight:700}.qualification-list{margin:0}.qualification-list>div{padding:var(--space-6);border:1px solid var(--color-border);background:var(--color-surface);border-radius:.75rem}.qualification-list dt{color:var(--color-accent);margin-block-end:var(--space-3);font-size:.875rem;font-weight:700}.qualification-list dd{gap:var(--space-2);margin:0;display:grid}.qualification-list dd span{color:var(--color-muted);font-size:.875rem}.featured-project{border:1px solid var(--color-border);background:var(--color-surface);border-radius:1rem;grid-template-columns:5fr 7fr;display:grid;overflow:hidden}.featured-project__overview{padding:var(--space-8);align-content:center;display:grid}.featured-project h2 a{text-decoration:none}.featured-project .meta{color:var(--color-muted);margin-block-end:var(--space-2)}.featured-project__overview>p:not(.meta){margin-block:0 var(--space-6);color:var(--color-muted)}.project-highlights{margin:0 0 var(--space-6)}.project-highlights>div{padding-block:var(--space-3);border-block-start:1px solid var(--color-border)}.project-highlights dt{color:var(--color-accent);margin-block-end:var(--space-1);font-size:.8125rem;font-weight:750}.project-highlights dd{margin:0;font-weight:700;line-height:1.5}.home-workflow{padding:var(--space-8);background:var(--color-dark);color:var(--color-dark-text);align-content:center;display:grid}.home-workflow__label,.home-workflow__note,.home-workflow p{margin:0}.home-workflow__label{color:var(--color-dark-selected);letter-spacing:.08em;font-size:.8125rem;font-weight:750}.home-workflow__note{color:var(--color-dark-muted);margin-block-start:var(--space-1);font-size:.8125rem}.home-workflow ol{gap:var(--space-3);margin:var(--space-6) 0 var(--space-4);padding:0;list-style:none;display:grid}.home-workflow li,.home-workflow__branches p{border:1px solid var(--color-ui-border);background:var(--color-dark-surface);border-radius:.5rem}.home-workflow li{gap:var(--space-4);padding:var(--space-3) var(--space-4);font-weight:700;display:flex}.home-workflow li span{color:var(--color-dark-selected)}.home-workflow__branches{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.home-workflow__branches p{gap:var(--space-1);padding:var(--space-4);display:grid}.home-workflow__branches span{color:var(--color-dark-muted);font-size:.875rem}.experience-list{gap:var(--space-6);grid-template-columns:1fr 1fr;display:grid}.experience-heading{margin-block-end:var(--space-8)}.experience-heading h2{margin:0}.experience-item{padding:var(--space-8);border:1px solid var(--color-border);background:var(--color-surface);border-radius:.75rem;align-content:start;display:grid}.experience-item h3,.experience-item p{margin:0}.experience-item__number{color:var(--color-accent);margin-block-end:var(--space-6);font-size:.8125rem;font-weight:750}.experience-item h3{letter-spacing:-.025em;margin-block-end:var(--space-3);font-size:1.5rem;line-height:1.35}.experience-item>div>p{color:var(--color-muted)}.experience-item .experience-item__meta{color:var(--color-accent);margin-block-end:var(--space-3);font-size:.8125rem;font-weight:700}.experience-item__contribution{border-block-start:1px solid var(--color-border);margin-block-start:var(--space-6);padding-block-start:var(--space-4)}.experience-item__contribution p{color:var(--color-accent);margin-block-end:var(--space-1);font-size:.8125rem;font-weight:750}.experience-item__contribution ul{gap:var(--space-2);margin:var(--space-3) 0 var(--space-5);color:var(--color-text);padding-inline-start:1.2rem;line-height:1.55;display:grid}.experience-item__contribution strong{color:var(--color-muted);font-size:.875rem;line-height:1.55;display:block}@media (width<=63.9375rem){.home-hero{grid-template-columns:15rem minmax(0,1fr)}.home-hero:before{width:15rem}.profile-photo{width:11rem}.home-hero__identity{padding-inline:var(--space-8)}.home-hero__lede{margin-inline:var(--space-8)}.home-hero__highlights{grid-template-columns:1fr 1fr}.home-hero__highlights>div:nth-child(odd){border-inline-start:0}.home-hero__highlights>div:nth-child(n+3){border-block-start:1px solid var(--color-border)}.career-overview,.featured-project,.education-layout{grid-template-columns:1fr}}@media (width<=47.9375rem){.home-hero{margin-block:var(--space-8) var(--space-12);border-radius:.75rem;grid-template:"photo identity""intro intro""contact contact""highlights highlights"/8.5rem minmax(0,1fr)}.home-hero:before{content:none}.home-hero__accent{height:.375rem}.home-hero__watermark{font-size:5rem;inset-block-start:var(--space-12);inset-inline-end:var(--space-4)}.profile-photo{width:auto;padding:var(--space-6) var(--space-4) 0;background:var(--color-dark);margin:0}.home-hero__identity{padding:var(--space-6) var(--space-4) 0}.home-hero__name-row{display:block}.home-hero h1{font-size:clamp(2.5rem,12vw,2.75rem)}.home-hero__role{margin-block-start:var(--space-2);font-size:1.125rem}.home-hero__lede{margin:var(--space-8) var(--space-4) 0}.contact-list{margin:var(--space-6) var(--space-4) 0;padding:var(--space-4) 0 0;border-block-start:1px solid var(--color-border);color:var(--color-text);grid-template-columns:1fr}.contact-list a{grid-template:"label value arrow"/auto minmax(0,1fr) auto}.contact-list__label{color:var(--color-accent)}.home-hero__highlights{margin:var(--space-6) var(--space-4) var(--space-4)}.home-section{padding-block:var(--space-12) var(--space-16)}.career-overview{gap:var(--space-8)}.career-list li{gap:var(--space-1);grid-template-columns:1fr}.featured-project__overview,.home-workflow,.experience-item{padding:var(--space-6)}.experience-list{grid-template-columns:1fr}.education-item{gap:var(--space-4);padding:var(--space-5);grid-template-columns:1fr}.qualification-list>div{padding:var(--space-5)}}@media (width<=22.4375rem){.home-hero{grid-template-columns:7.75rem minmax(0,1fr)}.home-workflow__branches{grid-template-columns:1fr}}.project-detail{position:relative}.project-intro{padding-block:var(--space-12) var(--space-16);border-block-end:1px solid var(--color-border)}.back-link{align-items:center;gap:var(--space-2);min-width:2.75rem;min-height:2.75rem;padding-inline:var(--space-3);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-accent);border-radius:.5rem;margin-block-end:var(--space-12);font-size:.9375rem;font-weight:700;text-decoration:none;transition:background-color .12s,border-color .12s;display:inline-flex}.back-link:hover{border-color:var(--color-accent);background:var(--color-accent-soft)}.project-intro .eyebrow,.project-intro h1{margin-block-end:var(--space-6)}.project-summary{gap:var(--space-6);margin:var(--space-12) 0 0;grid-template-columns:repeat(3,1fr);display:grid}.project-summary>div{border-block-start:1px solid var(--color-border);padding-block-start:var(--space-4)}.project-summary dt{color:var(--color-accent);margin-block-end:var(--space-2);font-size:.8125rem;font-weight:750}.project-summary dd{color:var(--color-text);margin:0;font-weight:650;line-height:1.55}.project-content-layout{gap:var(--space-16);grid-template-columns:minmax(0,47.5rem) 12.5rem;justify-content:space-between;display:grid}.project-content>section{padding-block:var(--space-12);scroll-margin-top:calc(var(--header-height) + var(--space-6))}.project-content h2{max-width:none;margin-block-end:var(--space-6)}.project-content h2 span{margin-inline-end:var(--space-2)}.project-content section>p{max-width:45rem;color:var(--color-muted)}.project-toc--desktop{width:12.5rem;padding-block-start:var(--space-12)}.project-toc--desktop nav{position:sticky;inset-block-start:calc(var(--header-height) + var(--space-8))}.project-toc--desktop p{margin-block-end:var(--space-4);font-weight:750}.project-toc ul{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}.project-toc a{min-width:2.75rem;min-height:2.75rem;color:var(--color-muted);align-items:center;font-size:.9375rem;text-decoration:none;display:inline-flex}.project-toc a:hover,.project-toc a:focus-visible{color:var(--color-accent)}.project-toc--mobile{display:none}.workflow-explorer{padding:var(--space-8);background:var(--color-dark);color:var(--color-dark-text);border-radius:.75rem;margin-block-start:var(--space-8)}.workflow-explorer__heading p:first-child{color:var(--color-dark-selected);margin-block-end:var(--space-1);font-size:.8125rem;font-weight:750}.workflow-explorer__heading p:last-child{color:var(--color-dark-muted);margin-block-end:var(--space-6);font-size:.8125rem}.workflow-explorer__main-steps{gap:var(--space-6);margin:0;padding:0;list-style:none;display:grid}.workflow-explorer__main-steps li{position:relative}.workflow-explorer__main-steps li:not(:last-child):after{z-index:2;width:1rem;height:var(--space-6);color:var(--color-dark-selected);content:"↓";place-items:center;font-size:1rem;line-height:1;display:grid;position:absolute;inset-block-start:100%;inset-inline-start:50%;transform:translate(-50%)}.workflow-explorer button{width:100%;min-height:2.75rem;padding:var(--space-3) var(--space-4);border:1px solid var(--color-ui-border);background:var(--color-dark-surface);color:var(--color-dark-text);font:inherit;text-align:start;cursor:pointer;border-radius:.5rem;font-weight:650}.workflow-explorer button:hover{border-color:var(--color-dark-selected)}.workflow-explorer button[aria-pressed=true]{border-color:var(--color-dark-selected);box-shadow:inset 0 0 0 1px var(--color-dark-selected);color:var(--color-dark-selected)}.workflow-explorer button span,.workflow-explorer__branches>div>p{color:var(--color-dark-selected)}.workflow-explorer__branches{gap:var(--space-3);grid-template-columns:1fr 1fr;margin-block-start:var(--space-3);display:grid}.workflow-explorer__branches>div{align-content:start;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-ui-border);border-radius:.5rem;display:grid}.workflow-explorer__branches p,.workflow-explorer__branches span{margin:0;font-size:.8125rem}.workflow-explorer__branches span{color:var(--color-dark-muted)}.workflow-explorer__detail{border-block-start:1px solid var(--color-ui-border);margin-block-start:var(--space-4);padding-block-start:var(--space-4)}.workflow-explorer__detail p{color:var(--color-dark-muted);margin-block-end:var(--space-2)}.workflow-explorer__detail p:first-child,.workflow-explorer__detail strong{color:var(--color-dark-selected)}.decision-list article{padding-block:var(--space-6);border-block-end:1px solid var(--color-border)}.decision-list h3{margin-block-end:var(--space-3);font-size:1.25rem}.decision-list p{color:var(--color-muted);margin:0}.project-content__back{margin-block:var(--space-16) var(--space-24)}@media (width<=63.9375rem){.project-intro{padding-block-end:var(--space-12)}.project-content-layout{display:block}.project-toc--desktop{display:none}.project-toc--mobile{margin-block:var(--space-8) 0;border:1px solid var(--color-ui-border);background:var(--color-surface);border-radius:.5rem;display:block}.project-toc--mobile summary{min-height:2.75rem;padding:var(--space-3) var(--space-4);cursor:pointer;font-weight:700}.project-toc--mobile nav{padding:0 var(--space-4) var(--space-4)}.project-toc--mobile ul{border-block-start:1px solid var(--color-border);padding-block-start:var(--space-4)}}@media (width<=47.9375rem){.project-intro{padding-block:var(--space-8) var(--space-12)}.back-link{margin-block-end:var(--space-8)}.project-summary{grid-template-columns:1fr;gap:0;margin-block-start:var(--space-8)}.project-summary>div{padding-block:var(--space-4)}.project-content>section{padding-block:var(--space-12)}.workflow-explorer{padding:var(--space-6)}.workflow-explorer__branches{grid-template-columns:1fr}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-background:#f7f8fa;--color-surface:#fff;--color-text:#18212f;--color-muted:#526072;--color-accent:#2457d6;--color-accent-hover:#1d46ad;--color-accent-soft:#edf2ff;--color-border:#d8dee8;--color-ui-border:#66758a;--color-dark:#111827;--color-dark-surface:#1f2937;--color-dark-text:#f9fafb;--color-dark-muted:#cbd5e1;--color-dark-selected:#93c5fd;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--space-24:6rem;--header-height:4.5rem;--content-width:70rem;--focus-ring:0 0 0 3px var(--color-background), 0 0 0 5px var(--color-accent)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + var(--space-6))}body{background:var(--color-background);min-width:20rem;color:var(--color-text);text-rendering:optimizelegibility;word-break:keep-all;overflow-wrap:anywhere;margin:0;font-family:Pretendard,Noto Sans KR,Apple SD Gothic Neo,system-ui,sans-serif;font-size:1.0625rem;line-height:1.7}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:.08em}a:hover{color:var(--color-accent-hover)}a:focus-visible,button:focus-visible{box-shadow:var(--focus-ring);outline:none}[tabindex="-1"]:focus{outline:none}h1,h2,h3,p{margin-block-start:0}h1,h2,h3{letter-spacing:-.035em;text-wrap:balance;max-width:18ch;line-height:1.15}p,li,dd{text-wrap:pretty}h1{margin-block-end:var(--space-6);font-size:clamp(2.25rem,6vw,3.5rem)}h2{margin-block-end:var(--space-6);font-size:clamp(1.75rem,4vw,2rem)}.container{width:min(calc(100% - 4rem), var(--content-width));margin-inline:auto}.skip-link{z-index:20;padding:var(--space-3) var(--space-4);background:var(--color-accent);color:#fff;border-radius:.5rem;position:fixed;inset-block-start:var(--space-3);inset-inline-start:var(--space-3);transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:10;height:var(--header-height);border-block-end:1px solid var(--color-border);-webkit-backdrop-filter:blur(.75rem);backdrop-filter:blur(.75rem);background:#f7f8faeb;position:sticky;inset-block-start:0}.site-header__inner,.site-nav,.site-mark{align-items:center;display:flex}.site-header__inner{justify-content:space-between;height:100%}.site-mark{min-width:2.75rem;min-height:2.75rem;color:var(--color-accent);gap:.25rem}.site-mark i{background:currentColor;width:.1875rem;height:1.125rem;transform:skew(-28deg)}.site-nav{gap:var(--space-3);grid-template-columns:repeat(3,4.25rem);margin:0;padding:0;font-size:.9375rem;font-weight:650;list-style:none;display:grid}.site-nav a{width:100%;min-width:2.75rem;min-height:2.75rem;padding-inline:var(--space-1);border-radius:.375rem;justify-content:center;align-items:center;text-decoration:none;transition:background-color .12s,color .12s;display:inline-flex;position:relative}.site-nav a:hover,.site-nav a:focus{background:var(--color-accent-soft);color:var(--color-accent-hover)}.site-nav a:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;box-shadow:none}.offline-status{z-index:9;padding:var(--space-1) var(--space-4);background:var(--color-dark);color:var(--color-dark-text);text-align:center;margin:0;font-size:.8125rem;position:fixed;inset-block-start:var(--header-height);inset-inline:0}.pwa-prompt{z-index:30;width:min(100% - 3rem,22rem);padding:var(--space-6);border:1px solid var(--color-ui-border);background:var(--color-surface);border-radius:.75rem;position:fixed;inset-block-end:var(--space-6);inset-inline-end:var(--space-6)}.pwa-prompt p{margin-block-end:var(--space-4);font-weight:700}.pwa-prompt div{gap:var(--space-2);display:flex}.pwa-prompt button{min-height:2.75rem;padding-inline:var(--space-4);border:1px solid var(--color-ui-border);background:var(--color-surface);color:var(--color-text);font:inherit;cursor:pointer;border-radius:.5rem;font-weight:700}.pwa-prompt button:first-child:not(:last-child){border-color:var(--color-accent);background:var(--color-accent);color:#fff}.page-section{min-height:22rem;padding-block:var(--space-24);scroll-margin-top:calc(var(--header-height) + var(--space-6))}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.hero{min-height:calc(100svh - var(--header-height));align-content:center;display:grid}.eyebrow{color:var(--color-accent);letter-spacing:.12em;margin-block-end:var(--space-4);font-size:.8125rem;font-weight:750}.lede{max-width:38rem;color:var(--color-muted);font-size:1.125rem}.text-link{align-items:center;gap:var(--space-3);width:fit-content;min-height:3rem;padding-inline:var(--space-4);border:1px solid var(--color-accent);background:var(--color-surface);color:var(--color-accent);border-radius:.5rem;grid-template-columns:auto auto;font-weight:700;text-decoration:none;transition:background-color .12s,border-color .12s;display:inline-grid}.text-link:hover{border-color:var(--color-accent-hover);background:var(--color-accent-soft)}.button-link{align-items:center;gap:var(--space-4);width:fit-content;min-height:3rem;padding-inline:var(--space-4);border:1px solid var(--color-accent);background:var(--color-accent);color:#fff;border-radius:.5rem;grid-template-columns:auto auto;font-weight:700;text-decoration:none;transition:background-color .12s,border-color .12s;display:inline-grid}.button-link:hover{background:var(--color-accent-hover);color:#fff}.not-found{min-height:calc(100svh - var(--header-height))}@media (width<=47.9375rem){:root{--header-height:4rem}body{font-size:1rem}.container{width:min(calc(100% - 2.5rem), var(--content-width))}.page-section{padding-block:var(--space-16)}.pwa-prompt{inset-inline:var(--space-4);width:auto;inset-block-end:var(--space-4)}}@media (width<=22.4375rem){.site-nav{font-size:.875rem}.container{width:min(calc(100% - 2rem), var(--content-width))}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
