:root{--font-sans:Inter, Pretendard, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"SFMono-Regular", "SF Mono", Consolas, "Liberation Mono", Menlo, monospace;--color-page:#fff;--color-canvas:#fff;--color-text:#1f2937;--color-body:#374151;--color-muted:#6b7280;--color-soft:#9ca3af;--color-line:#e5e7eb;--color-chip-bg:#f3f4f6;--color-chip-text:#374151;--color-link:#1f2937;--color-link-hover:#eab308;--color-accent:#eab308;--profile-photo-bg:#e5a849;--profile-photo-border:#78570b2e;--profile-photo-shadow:#78570b24;--profile-person-shadow:#78570b24;--space-page-x:8px;--space-page-y:40px;--content-width:800px;--text-xs:12px;--text-sm:14px;--text-md:16px;--text-lg:17.6px;--text-xl:20px;--text-display:24px;--leading-body:1.72;--leading-tight:1.45}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--color-canvas);min-width:320px;color:var(--color-text);font-family:var(--font-sans);font-synthesis:none;text-rendering:optimizelegibility;margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}h1,h2,h3,h4,p,ul{margin-top:0}p{color:var(--color-body);font-size:var(--text-md);font-weight:300;line-height:var(--leading-body)}ul{padding-left:0}.site-shell{background:var(--color-page);min-height:100vh;color:var(--color-text)}.site-header,.resume-document,.site-footer{width:min(100%, var(--content-width));margin:0 auto}.site-header{padding:16px var(--space-page-x) 0;justify-content:space-between;align-items:center;gap:24px;display:flex}.site-brand,.top-nav a{min-height:32px;color:var(--color-text);font-size:var(--text-sm);border-radius:6px;align-items:center;font-weight:400;line-height:1;display:inline-flex}.site-brand{padding:0 8px}.site-brand span{font-weight:500}.top-nav{flex-wrap:wrap;justify-content:flex-end;gap:2px;display:flex}.top-nav a{padding:0 10px}.site-brand:hover,.top-nav a:hover{background:var(--color-chip-bg)}.resume-document{min-height:100vh;padding:var(--space-page-y) var(--space-page-x);font-weight:300}.intro-section{margin-bottom:44px}.intro-profile-layout{justify-content:space-between;align-items:flex-start;gap:28px;display:flex}.intro-copy{min-width:0;max-width:820px}.intro-section h1{color:var(--color-text);font-size:var(--text-display);font-weight:300;line-height:var(--leading-tight);letter-spacing:0;margin-bottom:28px}.intro-section h1 strong,strong{color:var(--color-accent);font-weight:500}.headline{color:var(--color-text);font-size:var(--text-md);font-weight:300;line-height:var(--leading-body);margin-bottom:18px}.intro-section p{margin-bottom:16px}.profile-photo{aspect-ratio:4/5;background:var(--profile-photo-bg);width:126px;box-shadow:0 16px 28px var(--profile-photo-shadow), 0 4px 10px #1f293714;border-radius:6px;flex:none;margin:0;position:relative;overflow:hidden}.profile-photo:after{content:"";border:1px solid var(--profile-photo-border);border-radius:inherit;pointer-events:none;position:absolute;inset:0}.profile-photo img{object-fit:cover;object-position:50% 22%;width:100%;height:100%;filter:drop-shadow(0 8px 14px var(--profile-person-shadow));display:block}.intro-highlights{margin:18px 0 22px;padding-left:20px;list-style:"-"}.intro-highlights li,.bullet-list li{color:var(--color-body);font-size:var(--text-sm);margin:.4em 0 .4em .4em;padding-left:.6em;font-weight:300;line-height:1.7}.intro-highlights li::marker{color:var(--color-accent);font-size:1em;font-weight:600}.bullet-list li::marker{color:var(--color-accent);font-size:1em;font-weight:600}.contact-list{flex-wrap:wrap;gap:8px 18px;margin:0;padding:0;list-style:none;display:flex}.contact-list a{color:var(--color-text);font-size:var(--text-sm);text-underline-offset:3px;align-items:center;gap:5px;font-weight:300;text-decoration:underline;display:inline-flex}.contact-list a:hover{color:var(--color-link-hover)}.resume-section{margin-top:32px}.resume-section>h2{border-top:1px solid var(--color-line);color:var(--color-text);font-size:var(--text-xl);margin:32px 0 16px;padding-top:16px;font-weight:500;line-height:1.35}.entry-list{gap:34px;display:grid}.entry+.entry{border-top:1px solid var(--color-line);padding-top:28px}.entry-header{margin-bottom:8px;display:block}.entry-title-row{justify-content:space-between;align-items:baseline;gap:18px;display:flex}.entry-title-row h3{min-width:0}.entry-header h3,.skill-group h3,.education-item h3{color:var(--color-text);font-size:var(--text-lg);margin:0;font-weight:500;line-height:1.4}.entry-header p,.subentry p,.skill-group p{color:var(--color-body);font-size:var(--text-md);font-weight:300;line-height:var(--leading-body);margin:4px 0}.summary-line{align-items:flex-start;gap:7px;display:flex}.summary-line:before{content:"";background:var(--color-accent);border-radius:1px;flex:0 0 3px;width:3px;height:1.15em;margin-top:.36em}time{color:var(--color-muted);font-size:var(--text-sm);margin:2px 0 8px;font-weight:300;line-height:1.6;display:block}.entry-title-row time{white-space:nowrap;flex:none;margin:0}.chip-list{flex-wrap:wrap;gap:6px;margin:8px 0 10px;padding:0;list-style:none;display:flex}.chip-list li{background:var(--color-chip-bg);color:var(--color-chip-text);font-size:var(--text-xs);border-radius:6px;padding:5px 8px;font-weight:300;line-height:1.1}.subentry-list{gap:18px;margin-top:14px;display:grid}.subentry h4{color:var(--color-text);font-size:var(--text-md);margin:0 0 4px;font-weight:500;line-height:1.45}.bullet-list{margin:8px 0 0;padding-left:20px;list-style:"-"}.skill-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 32px;display:grid}.education-list{gap:16px;display:grid}.compact-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 32px;display:grid}.compact-item h3{color:var(--color-text);font-size:var(--text-md);margin:0;font-weight:500;line-height:1.45}.compact-item p{color:var(--color-body);font-size:var(--text-sm);margin:4px 0 0;font-weight:300;line-height:1.65}.compact-item .bullet-list{margin-top:6px}.compact-item .bullet-list li{font-size:var(--text-sm);line-height:1.6}.education-item h3{font-size:var(--text-md)}.site-footer{padding:20px var(--space-page-x) 40px;justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.site-footer p{color:var(--color-muted);font-size:var(--text-xs);text-align:right;margin:0;font-weight:300;line-height:1.6}.site-footer .contact-list{gap:8px 14px}.site-footer .contact-list a{color:var(--color-muted);font-size:var(--text-xs)}@page{size:A4;margin:18mm 12mm}@media (width<=860px){:root{--space-page-x:16px;--space-page-y:34px}.site-header{align-items:flex-start;padding-top:12px}.top-nav{max-width:70%}.skill-grid,.compact-list{grid-template-columns:1fr}.site-footer{gap:16px;display:grid}.site-footer p{text-align:left}}@media (width<=720px){.profile-photo{width:min(118px,30vw)}}@media (width<=520px){.site-header{gap:8px;display:grid}.top-nav{justify-content:flex-start;max-width:none}.top-nav a{padding-left:8px;padding-right:8px}.intro-section h1{margin-bottom:26px}.intro-profile-layout{gap:18px}}@media print{:root{--space-page-x:0;--space-page-y:0;--color-text:#111827;--color-body:#1f2937;--color-muted:#4b5563;--color-chip-bg:#f3f4f6;--text-xs:8.3pt;--text-sm:9.2pt;--text-md:10pt;--text-lg:10.8pt;--text-xl:13pt;--text-display:15pt;--leading-body:1.52}html,body{background:#fff;width:210mm;min-width:0}body{-webkit-print-color-adjust:exact;print-color-adjust:exact}.site-header,.site-footer{display:none}.site-shell{background:#fff;min-height:0}.resume-document{width:auto;max-width:none;min-height:0;margin:0;padding:0 6mm}.intro-section{margin-bottom:5mm}.intro-profile-layout{gap:6mm}.intro-section h1{margin-bottom:4mm;line-height:1.42}.resume-section>h2,.entry-header h3,.subentry h3,.compact-item h3,.skill-group h3,.education-item h3{line-height:1.5}strong{line-height:inherit}.headline,.intro-section p{margin-bottom:2.3mm}.intro-highlights{margin:2.5mm 0 3mm}.profile-photo{width:24mm;box-shadow:0 3mm 6mm #1f29371f,0 1mm 2mm #1f293714}.profile-photo img{filter:none;opacity:1;visibility:visible;-webkit-print-color-adjust:exact;print-color-adjust:exact}.contact-list{gap:1.5mm 4mm}.resume-section{margin-top:5.5mm}#activities{break-before:auto;page-break-before:auto}#activities>h2{break-after:avoid;page-break-after:avoid}.resume-section>h2{break-after:avoid;page-break-after:avoid;border-top:.2mm solid #e5e7eb;margin:5.5mm 0 3mm;padding-top:3mm}.entry-list{display:block}.entry{break-inside:auto;page-break-inside:auto;margin-bottom:5.5mm}.entry+.entry{border-top:.2mm solid #e5e7eb;padding-top:4mm}.entry-header{margin-bottom:1.2mm}.entry-title-row{gap:4mm}time{margin:.5mm 0 1.2mm;line-height:1.75}.chip-list{gap:1mm;margin:1.2mm 0 1.8mm}.chip-list li{border:.2mm solid #e5e7eb;padding:.8mm 1.5mm}.subentry-list{margin-top:2mm;display:block}.subentry{break-inside:auto;page-break-inside:auto;margin-bottom:3.6mm}.bullet-list{margin-top:1.2mm}.intro-highlights li,.bullet-list li{margin-top:.7mm;margin-bottom:.7mm;line-height:1.55}.skill-grid,.education-list,.compact-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:3.4mm 7mm;display:grid}.skill-group,.education-item{break-inside:avoid;page-break-inside:avoid}.compact-item{break-inside:auto;page-break-inside:auto}a{text-decoration-thickness:.2mm}}
