:root{--cv-ink: #16181d;--cv-ink-soft: #4a5058;--cv-ink-faint: #7d848d;--cv-accent: #c0392b;--cv-rule: #d8dbe0;--cv-paper: #ffffff;--cv-page: #eceef1;--cv-tag-bg: #16181d;--cv-tag-ink: #ffffff;--cv-chip-bg: #f1f3f5}@media (prefers-color-scheme: dark){:root{--cv-ink: #e8eaed;--cv-ink-soft: #b3b9c1;--cv-ink-faint: #868d96;--cv-accent: #ff8b7a;--cv-rule: #383c43;--cv-paper: #1c1f24;--cv-page: #121417;--cv-tag-bg: #e8eaed;--cv-tag-ink: #16181d;--cv-chip-bg: #2a2e35}}:root[data-theme="dark"]{--cv-ink: #e8eaed;--cv-ink-soft: #b3b9c1;--cv-ink-faint: #868d96;--cv-accent: #ff8b7a;--cv-rule: #383c43;--cv-paper: #1c1f24;--cv-page: #121417;--cv-tag-bg: #e8eaed;--cv-tag-ink: #16181d;--cv-chip-bg: #2a2e35}:root[data-theme="light"]{--cv-ink: #16181d;--cv-ink-soft: #4a5058;--cv-ink-faint: #7d848d;--cv-accent: #c0392b;--cv-rule: #d8dbe0;--cv-paper: #ffffff;--cv-page: #eceef1;--cv-tag-bg: #16181d;--cv-tag-ink: #ffffff;--cv-chip-bg: #f1f3f5}.resume-body{background:var(--cv-page)}.resume-toolbar{max-width:60em;margin:1.25em auto 0;padding:0 1em;display:flex;gap:.5em;justify-content:flex-end}.resume-toolbar__btn{font:600 .72em/1 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;letter-spacing:.04em;text-transform:uppercase;color:var(--cv-ink-soft);background:var(--cv-paper);border:1px solid var(--cv-rule);border-radius:4px;padding:.7em 1.1em;cursor:pointer;text-decoration:none}.resume-toolbar__btn:hover{color:var(--cv-ink);border-color:var(--cv-ink-faint)}.resume-sheet{max-width:60em;margin:1em auto 4em;padding:3.2em 3.4em 2.6em;background:var(--cv-paper);border:1px solid var(--cv-rule);border-radius:3px;box-shadow:0 1px 3px rgba(0,0,0,0.06),0 8px 28px rgba(0,0,0,0.05);color:var(--cv-ink);font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", "Apple SD Gothic Neo", "Noto Sans KR", Roboto, sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}.resume-sheet a{color:inherit;text-decoration:none;border-bottom:1px solid var(--cv-rule)}.resume-sheet a:hover{color:var(--cv-accent);border-bottom-color:currentColor}.resume-sheet section{margin-top:2em}.cv-head{display:grid;grid-template-columns:1fr auto auto;gap:0 2.2em;align-items:start;padding-bottom:1.6em}.cv-head__name{margin:0;font-size:2.45em;font-weight:800;letter-spacing:-.022em;line-height:1.05}.cv-head__label{margin:.3em 0 0;font-size:.95em;font-weight:500;color:var(--cv-ink-soft)}.cv-head__contact{list-style:none;margin:.35em 0 0;padding:0;font-size:.78em;line-height:1.35;color:var(--cv-ink-soft)}.cv-head__contact li{display:flex;align-items:baseline;gap:.6em;margin-bottom:.42em}.cv-head__contact i{width:1em;text-align:center;color:var(--cv-ink-faint);flex:none}.cv-head__contact a{border-bottom:none}.cv-head__contact a:hover{border-bottom:1px solid currentColor}.cv-head__photo{width:108px;height:130px;object-fit:cover;border-radius:4px;background:var(--cv-chip-bg)}.cv-h2{display:flex;align-items:center;gap:.9em;margin:0 0 1.05em;font-size:.74em;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--cv-ink)}.cv-h2::before{content:"";display:block;width:.5em;height:.5em;background:var(--cv-tag-bg);flex:none}.cv-h2::after{content:"";flex:1 1 auto;height:1px;background:var(--cv-rule)}.cv-h3{margin:1.6em 0 .9em;font-size:.78em;font-weight:700;letter-spacing:.05em;color:var(--cv-ink-soft)}.cv-h3:first-of-type{margin-top:0}.cv-split{display:grid;grid-template-columns:1.35fr 1fr;gap:2.6em;margin-top:1.4em}.cv-split .cv-split__col{margin-top:0}.cv-summary{margin:0;font-size:.84em;line-height:1.65;color:var(--cv-ink-soft);text-wrap:pretty}.cv-skills{display:block;gap:0;margin:0;font-size:.82em}.cv-skills .cv-skills__row{display:flex;gap:.6em;margin:0 0 .5em;line-height:1.5}.cv-skills dt,.cv-skills dd{margin:0;padding:0;font-size:inherit;line-height:inherit}.cv-skills dt{font-weight:700;flex:none;min-width:6.2em}.cv-skills dd{color:var(--cv-ink-soft)}.cv-row{display:grid;grid-template-columns:11.5em 1fr;gap:1.6em;margin-bottom:1.35em;break-inside:avoid}.cv-row:last-child{margin-bottom:0}.cv-row--pub{margin-bottom:1em}.cv-row__meta{padding-top:.12em}.cv-row__date{display:block;font-size:.82em;font-weight:500;color:var(--cv-ink);font-variant-numeric:tabular-nums}.cv-row__role,.cv-row__kind{display:block;font-size:.72em;line-height:1.35;color:var(--cv-ink-faint)}.cv-row__kind{padding-top:.15em}.cv-row__title{margin:0;font-size:.875em;font-weight:700;line-height:1.35;letter-spacing:-.004em;text-wrap:balance}.cv-row__aside{float:right;margin-left:1em;font-size:.82em;font-weight:600;color:var(--cv-ink-faint)}.cv-row__org{margin:.18em 0 0;font-size:.74em;font-weight:700;color:var(--cv-ink-faint)}.cv-row__sub{margin:.18em 0 0;font-size:.8em;color:var(--cv-ink-soft)}.cv-authors{margin:.3em 0 0;font-size:.78em;color:var(--cv-ink-soft)}.cv-authors strong{color:var(--cv-ink);font-weight:700}.cv-tldr{margin:.38em 0 0;font-size:.795em;line-height:1.5;color:var(--cv-accent);text-wrap:pretty}.cv-tldr__tag{font-weight:700;margin-right:.45em}.cv-tldr__tag::after{content:":"}.cv-links{margin:.4em 0 0;display:flex;gap:.4em;flex-wrap:wrap}.cv-chip{font-size:.7em;font-weight:600;letter-spacing:.03em;padding:.25em .7em;border-radius:3px;background:var(--cv-chip-bg);border:none !important;color:var(--cv-ink-soft) !important}.cv-chip:hover{color:var(--cv-accent) !important}.cv-prize{margin:.22em 0 0;font-size:.78em;font-weight:600}.cv-foot{margin-top:3em;padding-top:1.1em;border-top:1px solid var(--cv-rule);font-size:.7em;color:var(--cv-ink-faint);text-align:center}@media (max-width: 46em){.resume-sheet{padding:2em 1.4em;margin:.5em auto 2em;border-radius:0}.cv-head{grid-template-columns:1fr auto;gap:1.2em}.cv-head__id{grid-column:1}.cv-head__photo{grid-column:2;grid-row:1;width:82px;height:100px}.cv-head__contact{grid-column:1 / -1}.cv-split{grid-template-columns:1fr;gap:1.8em}.cv-row{grid-template-columns:1fr;gap:.35em}.cv-row__meta{display:flex;flex-wrap:wrap;gap:.2em .9em}.cv-row__role,.cv-row__kind{display:inline}.cv-row__aside{float:none;display:block;margin:.15em 0 0}}@media print{:root{--cv-ink: #000;--cv-ink-soft: #333;--cv-ink-faint: #666;--cv-rule: #ccc;--cv-paper: #fff;--cv-page: #fff;--cv-tag-bg: #000;--cv-chip-bg: #f0f0f0;--cv-accent: #c0392b}@page{margin:14mm 12mm}.resume-toolbar,.masthead,.page__footer,.greedy-nav,#skip-link,.browser-upgrade{display:none !important}.resume-body{background:#fff}.resume-sheet{max-width:none;margin:0;padding:0;border:none;box-shadow:none;font-size:10.5pt}.cv-row,.cv-split,section{break-inside:avoid}.cv-h2{break-after:avoid}a{color:inherit !important;border-bottom:none !important}}
