@import "https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css";:root{--bg-main:#fff;--text-main:#37352f;--text-light:#37352fa6;--text-lighter:#37352f73;--border:#37352f29;--highlight-bg:#ebeced;--highlight-text:#2f3437;--callout-bg:#f7f6f3;--callout-border:#37352f33;--font-family:"Pretendard", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, sans-serif}*{box-sizing:border-box}body{background-color:var(--bg-main);color:var(--text-main);font-family:var(--font-family);-webkit-font-smoothing:antialiased;margin:0;padding:0;line-height:1.55}.document{max-width:900px;margin:0 auto;padding:6vh 60px 10vh}h1,h2,h3,h4,p{margin:0}h1{letter-spacing:-.03em;color:#111;margin-top:5px;font-size:38px;font-weight:700}h2{border-bottom:2px solid var(--text-main);letter-spacing:-.01em;margin-top:36px;margin-bottom:18px;padding-bottom:4px;font-size:22px;font-weight:700}h3{letter-spacing:-.01em;font-size:17px;font-weight:600}.project-title-link{color:inherit;border-bottom:1px solid #37352f38;text-decoration:none;transition:color .18s,border-color .18s}.project-title-link:hover{color:#111;border-bottom-color:#37352f80}h4{margin-bottom:6px;font-size:15px;font-weight:700}p{word-break:keep-all;color:#333;margin-bottom:10px;font-size:14.5px;font-weight:400}.highlight{background-color:var(--highlight-bg);color:var(--highlight-text);border-radius:4px;padding:2px 5px;font-weight:500}.header{align-items:flex-start;gap:32px;margin-bottom:32px;display:flex}.profile-placeholder{border:1px dashed var(--border);width:96px;height:96px;color:var(--text-lighter);background-color:var(--callout-bg);border-radius:8px;justify-content:center;align-items:center;margin-top:4px;font-size:13px;font-weight:500;display:flex}.header-info{flex-direction:column;display:flex}.subtitle{color:var(--text-light);margin-top:2px;margin-bottom:8px;font-size:16.5px;font-weight:500}.contact-links{color:var(--text-light);align-items:center;gap:12px;font-size:13.5px;display:flex}.contact-links a{color:inherit;border-bottom:1px solid #37352f2e;text-decoration:none}.contact-links a:hover{color:var(--text-main);border-bottom-color:#37352f6b}.divider{color:var(--text-lighter)}.notion-callout{background-color:var(--callout-bg);border:1px solid var(--callout-border);border-left:4px solid var(--text-lighter);border-radius:4px;gap:10px;margin-bottom:24px;padding:12px 16px;display:flex}.callout-icon{margin-top:1px;font-size:20px}.callout-text{color:var(--text-main);word-break:keep-all;font-size:14px}.callout-text strong{font-weight:600}.project-block,.job-block,.edu-block{margin-bottom:32px}.project-header-box{background-color:#f8f9fa;border:1px solid #37352f14;border-radius:8px;margin-bottom:20px;padding:18px 20px}.project-header-box .project-header{margin-bottom:4px}.project-header-box .project-role{margin-bottom:6px!important}.project-header-box .keyword-subtle{margin-bottom:0!important}.project-header,.job-header{justify-content:space-between;align-items:baseline;margin-bottom:4px;display:flex}.project-role{color:var(--text-light);margin-bottom:12px;font-size:13.5px;font-weight:500}.date{color:var(--text-lighter);font-size:13.5px;font-weight:400}.tech-stack{flex-wrap:wrap;gap:5px;margin-top:8px;margin-bottom:24px;display:flex}.tech-badge{color:#37352fa6;background-color:#f1f1ef;border:1px solid #37352f0f;border-radius:4px;padding:1px 6px;font-size:11px;font-weight:500}.keyword-subtle{color:#716b6b8c;letter-spacing:-.01em;margin-top:0;margin-bottom:18px;font-size:13px;font-weight:500}.keyword-subtle strong{color:#37352fb3;font-weight:600}.image-placeholder{width:100%;height:220px;color:var(--text-light);text-align:center;background-color:#fafafa;border:1px solid #eaeaea;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;margin:24px 0;font-size:14px;font-weight:600;display:flex}.image-caption{text-align:center;opacity:.6;margin-top:auto;padding-top:10px;font-size:12.5px;font-weight:500;display:block}.figure-grid{gap:16px;width:100%;margin:16px 0;display:flex}.figure-grid .image-container{flex-direction:column;flex:1;display:flex}.figure-grid .image-placeholder{width:100%;margin:0}.process-wrapper{background-color:#f6f7f8;border-radius:8px;margin:24px 0;padding:20px 24px}.process-wrapper .figure-grid{margin:0}.process-arrow{text-align:center;color:#b1b5b9;margin:10px 0 8px;font-size:18px;font-weight:700}.white-bg{box-shadow:0 1px 3px #00000005;background-color:#fff!important;border-color:#eee!important}.architecture-image{object-fit:contain;background-color:#fff;border:1px solid #37352f17;border-radius:6px;width:80%;max-width:620px;height:auto;margin:0 auto;padding:8px;display:block;box-shadow:0 1px 2px #00000008}.figure-grid .architecture-image{width:100%;max-width:none;height:210px}.project-subheading{color:#333;border-bottom:1.5px solid #37352f14;margin-top:32px;margin-bottom:18px;padding-bottom:4px;font-size:16px;font-weight:700}.issue-block{border-left:3px solid var(--border);margin-top:20px;padding-left:16px}.issue-title{margin-bottom:4px;display:inline-block;position:relative}.star-list{margin-top:8px;margin-bottom:16px;padding-left:0;list-style:none}.star-list li{color:#333;word-break:keep-all;align-items:flex-start;gap:8px;margin-bottom:12px;font-size:14px;line-height:1.55;display:flex}.star-label{text-align:center;color:#111;background-color:#e2e2e2;border-radius:4px;flex-shrink:0;width:75px;margin-top:1px;padding:3px 0;font-size:12.5px;font-weight:600}.star-text{flex:1}.result-tradeoff{color:#444;background-color:#f8f9fa;border:1px solid #37352f14;border-radius:6px;align-items:flex-start;gap:10px;margin-top:10px;padding:10px 12px;font-size:13px;line-height:1.55;display:flex}.result-tradeoff strong{color:#222;font-weight:600}.section-divider{border:0;border-bottom:1px solid #37352f17;margin:28px 0}.bullet-list{margin-top:8px;margin-bottom:16px;padding-left:24px}.bullet-list li{color:#333;word-break:keep-all;margin-bottom:12px;font-size:15px}.experience-section{margin-top:8px}.experience-card{background:linear-gradient(#fcfcfc 0%,#f8f9fa 100%);border:1px solid #37352f14;border-radius:12px;margin-bottom:20px;padding:22px 24px}.experience-card .job-header{margin-bottom:6px}.experience-card .project-role{margin-bottom:10px}.experience-stack{margin-top:0;margin-bottom:14px}.experience-summary{color:#2f3437;margin-bottom:18px;font-size:14.5px;line-height:1.65}.experience-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.experience-group{background-color:#ffffffb3;border:1px solid #37352f12;border-radius:10px;padding:16px 16px 14px}.experience-group h4{color:#1f2328;margin-bottom:12px;font-size:14px}.experience-list{margin:0;padding:0;list-style:none}.experience-list li{border-bottom:1px solid #37352f14;margin-bottom:14px;padding-bottom:14px}.experience-list li:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.experience-list strong{color:#171717;margin-bottom:4px;font-size:14px;font-weight:700;display:block}.experience-list span{color:#4b5563;word-break:keep-all;font-size:13.5px;line-height:1.65;display:block}.experience-links{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.inline-link-chip{color:#2f3437;letter-spacing:-.01em;background-color:#fff;border:1px solid #37352f1f;border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:12.5px;font-weight:600;text-decoration:none;transition:transform .15s,box-shadow .15s,border-color .15s,background-color .15s;display:inline-flex;box-shadow:0 1px 2px #00000008}.inline-link-chip:after{content:"->";color:#37352f8c;font-size:11px}.inline-link-chip:hover{background-color:#fbfbfb;border-color:#37352f38;transform:translateY(-1px);box-shadow:0 3px 8px #0000000d}.inline-link-chip:visited{color:#2f3437}.edu-detail{color:var(--text-main);margin-top:4px;font-size:15px}@media print{@page{size:A4;margin:12mm 12mm 14mm}body{background-color:#fff;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}h1{margin-bottom:0;font-size:24pt}h2{margin-top:22px;margin-bottom:12px;font-size:16pt}h3{margin-bottom:2px;font-size:12.5pt}h4{margin-bottom:4px;font-size:10.8pt}p,.callout-text,.bullet-list li,.star-list li{margin-bottom:8px;font-size:9.8pt;line-height:1.5}.header{margin-bottom:24px}.subtitle{margin-bottom:4px;font-size:11pt}.contact-links{gap:8px;font-size:8.8pt}.project-role,.edu-detail{margin-bottom:8px;font-size:10pt}.date{font-size:9pt}.experience-summary,.experience-list span,.experience-list strong,.inline-link-chip{font-size:9.4pt}.keyword-subtle{margin-bottom:10px;font-size:9pt}.tech-badge{padding:1px 5px;font-size:8pt}.star-label{width:65px;margin-right:6px;padding:2px 0;font-size:9.2pt}.star-list li{margin-bottom:12px}.notion-callout{margin-bottom:20px;padding:12px 14px}.document{max-width:none!important;margin:0!important;padding:0!important}section{margin-top:0}h2,h3,h4,.project-header,.job-header{page-break-after:avoid;break-after:avoid}p,li,.image-placeholder,.notion-callout,.star-label,.process-wrapper,.experience-group,.experience-links{page-break-inside:avoid;break-inside:avoid}.project-header-box,.experience-group,.result-tradeoff,.process-wrapper,.figure-grid,.experience-list li,.edu-block{break-inside:avoid;page-break-inside:avoid}section,.project-block,.job-block,.issue-block,.experience-card,.experience-list{break-inside:auto;page-break-inside:auto}.project-header-box,.experience-card,.experience-group,.result-tradeoff,.process-wrapper,.notion-callout{box-shadow:none!important;background:#fff!important}.project-header-box,.experience-card,.experience-group,.result-tradeoff,.process-wrapper{border-color:#37352f1f!important}.project-block,.job-block,.edu-block{margin-bottom:20px}.project-header,.job-header{gap:8px}.tech-stack{gap:4px;margin-bottom:14px}.image-placeholder{height:100px;margin:12px 0;font-size:10pt}.figure-grid{page-break-inside:avoid;break-inside:avoid;margin:12px 0}.figure-grid .image-placeholder{margin:0}.issue-block{margin-top:16px;padding-left:10px}.section-divider{margin:20px 0}.experience-card{border-radius:8px;margin-bottom:12px;padding:12px 14px}.experience-groups{grid-template-columns:1fr;gap:8px}.experience-group{border-radius:6px;padding:10px 12px}.experience-summary{margin-bottom:10px;line-height:1.5}.experience-list li{margin-bottom:10px;padding-bottom:10px}.experience-links{gap:6px;margin-top:10px}.inline-link-chip{border-color:#37352f2e;border-radius:999px;padding:4px 8px;background:#fff!important}.inline-link-chip:after{content:""}}@media (width<=768px){.document{padding:40px 24px}.header{flex-direction:column;align-items:flex-start;gap:16px}h1{font-size:32px}.experience-card{padding:18px}.experience-groups{grid-template-columns:1fr}.job-header{flex-direction:column;align-items:flex-start;gap:2px}.experience-links{flex-direction:column;align-items:flex-start}}
