@page{size:A4 portrait;margin:0}body{background:color-mix(in srgb, var(--secondary) 9%, var(--paper))}.pdf-toolbar{z-index:2;justify-content:flex-end;align-items:center;gap:16px;width:210mm;margin:24px auto 0;display:flex;position:relative}.pdf-toolbar p{color:var(--secondary);margin:0;font-size:12px}.pdf-toolbar button{appearance:none;background:var(--accent);color:var(--paper);font:650 13px var(--font-pretendard),sans-serif;cursor:pointer;border:0;border-radius:2px;padding:11px 17px}.pdf-toolbar button:hover{background:var(--color-ink)}.pdf-toolbar button:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 35%, transparent);outline-offset:3px}.pdf-document{color:var(--ink);font-family:var(--font-pretendard),sans-serif;padding:32px 0}.pdf-sheet{background:var(--paper);width:210mm;height:297mm;box-shadow:0 8px 34px color-mix(in srgb, var(--ink) 12%, transparent);break-after:page;page-break-after:always;margin:0 auto 24px;position:relative;overflow:hidden}.pdf-content{height:100%;padding:18mm 17mm 17mm}.pdf-page-label{color:var(--accent);font:600 7pt var(--font-geist-mono),var(--font-pretendard),monospace;letter-spacing:.5pt;position:absolute;top:9mm;right:17mm}.pdf-footer{border-top:.2mm solid var(--line);color:var(--secondary);font:500 7pt var(--font-geist-mono),var(--font-pretendard),monospace;justify-content:space-between;padding-top:3mm;display:flex;position:absolute;bottom:8mm;left:17mm;right:17mm}.pdf-heading{grid-template-columns:max-content 1fr;align-items:center;column-gap:3mm;margin-bottom:8mm;display:grid}.pdf-heading span{color:var(--accent);font:600 7.5pt var(--font-geist-mono),var(--font-pretendard),monospace;white-space:nowrap}.pdf-heading h2{letter-spacing:-1pt;word-break:keep-all;margin:0;font-size:22pt;font-weight:580;line-height:1.1}.pdf-section-heading{letter-spacing:-.5pt;word-break:keep-all;margin:0 0 5mm;font-size:16pt;font-weight:560;line-height:1.25}.pdf-cover .pdf-content{flex-direction:column;display:flex}.pdf-cover-identity{text-align:center;width:100%;margin:auto 0}.pdf-cover-role{color:var(--accent);font:600 8pt var(--font-geist-mono),var(--font-pretendard),monospace;letter-spacing:1.4pt;text-transform:uppercase;margin:0 0 7mm}.pdf-cover-identity h1{letter-spacing:-3.2pt;margin:0;font-size:62pt;font-weight:650;line-height:.95}.pdf-cover-rule{background:var(--accent);width:18mm;height:.7mm;margin:10mm auto 8mm;display:block}.pdf-cover-statement{width:118mm;color:var(--deep);letter-spacing:-.3pt;white-space:pre-line;margin:0 auto;font-size:10.5pt;line-height:1.7}.pdf-cover-title{margin-top:58mm}.pdf-cover-title p{color:var(--secondary);margin:0 0 4mm;font-size:11pt}.pdf-cover-title h1{letter-spacing:-3pt;margin:0;font-size:52pt;font-weight:570;line-height:1}.pdf-contact-line{border-top:.3mm solid var(--ink);gap:12mm;margin-top:auto;padding-top:4mm;font-size:8pt;display:flex}.pdf-contact-line span{align-items:baseline;gap:3mm;display:flex}.pdf-contact-line b{color:var(--accent);font:600 7pt var(--font-geist-mono),var(--font-pretendard),monospace;letter-spacing:.5pt}.pdf-contact-line a{color:inherit;text-decoration:none}.pdf-about-strengths{grid-template-columns:1fr 1fr;gap:10mm;display:grid}.pdf-about-strengths article{padding-top:0}.pdf-about-strengths article:last-child{grid-column:1/-1}.pdf-about-strengths h3{letter-spacing:-.4pt;max-width:100%;margin:0 0 1mm;font-size:14pt;line-height:1.3}.pdf-about-strengths p{max-width:150mm;color:var(--deep);white-space:pre-line;margin:0;font-size:9pt;line-height:1.65}.pdf-about-combined .pdf-heading{margin-bottom:6mm}.pdf-about-combined .pdf-about-strengths{grid-template-columns:1fr;gap:5mm}.pdf-about-combined .pdf-about-strengths article:last-child{grid-column:auto}.pdf-about-combined .pdf-about-strengths h3{margin-bottom:1mm;padding-bottom:0;font-size:13.5pt;line-height:1.35}.pdf-about-combined .pdf-about-strengths p{max-width:165mm;font-size:9.8pt;line-height:1.55}.pdf-about-combined .pdf-about-strengths+.pdf-heading{margin-top:16mm}.pdf-qualifications{grid-template-columns:1fr 1fr;gap:5mm;margin:6mm 0 0;display:grid}.pdf-qualifications div{gap:3mm;margin:0;display:flex}.pdf-qualifications dt{color:var(--accent);font:600 6.5pt var(--font-geist-mono),var(--font-pretendard),monospace;text-transform:uppercase}.pdf-qualifications dd{color:var(--deep);margin:0;font-size:7.5pt;font-weight:600}.pdf-qualifications+.pdf-heading{margin-top:20mm}.pdf-about-combined .pdf-rule{margin:7mm 0}.pdf-about-combined .pdf-experience .pdf-lead{margin-bottom:3mm;font-size:10.5pt;line-height:1.35}.pdf-about-combined .pdf-responsibilities p{margin:0 0 1.4mm;padding-left:3.5mm;font-size:8.5pt;line-height:1.3}.pdf-subsection-label{color:var(--accent);font:600 8.5pt var(--font-geist-mono),var(--font-pretendard),monospace;letter-spacing:.6pt;margin:0 0 3mm}.pdf-education-history{margin-top:8mm}.pdf-education-history>div{grid-template-columns:1fr 1fr;gap:5mm 9mm;margin-left:0;display:grid}.pdf-education-history article{break-inside:avoid}.pdf-education-history h3{margin:0 0 1mm;font-size:10.5pt}.pdf-education-history .pdf-education-provider{color:var(--secondary);margin:0 0 1mm;font-size:8.5pt;line-height:1.25}.pdf-education-history time{color:var(--secondary);font:500 8pt var(--font-geist-mono),var(--font-pretendard),monospace;margin-bottom:1mm;display:block}.pdf-education-history article p{color:var(--deep);white-space:pre-line;margin:0;font-size:8.5pt;line-height:1.3}.pdf-tags{color:var(--secondary);font:500 7pt/1.6 var(--font-geist-mono),var(--font-pretendard),monospace}.pdf-rule{border-top:.3mm solid var(--ink);margin:12mm 0}.pdf-experience{display:block}.pdf-company-meta{flex-direction:column;gap:1.8mm;margin-bottom:5mm;display:flex}.pdf-company-row{align-items:baseline;gap:2.5mm;display:flex}.pdf-company-row>span{color:color-mix(in srgb,var(--secondary) 55%,var(--paper));font-size:8pt}.pdf-company-meta h3{margin:0;font-size:13.5pt}.pdf-company-meta p,.pdf-company-meta time{margin:0;font-size:9.5pt;line-height:1.35}.pdf-company-meta time{color:var(--secondary)}.pdf-experience .pdf-lead{color:var(--ink);margin-bottom:4mm;font-size:12.5pt;font-weight:600;line-height:1.4}.pdf-responsibilities p{margin:0 0 1.8mm;padding-left:3.5mm;font-size:9.5pt;line-height:1.35;position:relative}.pdf-responsibilities p:before{content:"-";color:var(--accent);font-weight:600;position:absolute;left:0}.pdf-company-link{color:var(--accent);white-space:nowrap;font-size:8.5pt;font-weight:600}.pdf-page-intro{width:110mm;color:var(--deep);margin:0 0 12mm;font-size:11pt;line-height:1.6}.pdf-project-overview{border-top:.3mm solid var(--ink)}.pdf-project-overview article{border-bottom:.2mm solid var(--line);break-inside:avoid;grid-template-columns:13mm 1fr;gap:3mm;padding:6mm 0;display:grid}.pdf-project-overview article>span{color:var(--accent);font:600 7pt var(--font-geist-mono),var(--font-pretendard),monospace}.pdf-project-overview h3{margin:0 0 2mm;font-size:13pt}.pdf-project-overview p{color:var(--deep);margin:0 0 2mm;font-size:8pt;line-height:1.5}.pdf-project-overview strong{font-size:8pt}.pdf-other-projects-detailed article{padding:4mm 0}.pdf-other-project-description{margin-top:2mm}.pdf-other-project-description p{word-break:keep-all;margin:0 0 1mm;font-size:7pt;line-height:1.4}.pdf-other-project-images{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:2mm;margin-top:2.5mm;display:grid}.pdf-other-project-images figure{border:.2mm solid var(--line);height:25mm;color:var(--secondary);font:500 6pt/1.35 var(--font-geist-mono),var(--font-pretendard),monospace;text-align:center;place-items:center;margin:0;display:grid;overflow:hidden}.pdf-other-project-images img{object-position:top;align-self:start;width:100%;height:auto;min-height:100%;display:block}.pdf-other-project-entry-side>div{min-height:48mm;padding-right:55mm;position:relative}.pdf-other-project-side{display:block}.pdf-other-project-side .pdf-other-project-images{width:52mm;margin-top:0;position:absolute;top:0;right:0}.pdf-other-project-side .pdf-other-project-images figure{border:0;height:auto;overflow:visible}.pdf-other-project-side .pdf-other-project-images img{min-height:0}.pdf-other-project-entry-equal-images .pdf-other-project-images figure{aspect-ratio:426/730;overflow:hidden}.pdf-other-project-entry-equal-images .pdf-other-project-images img{object-fit:cover;object-position:top;width:100%;height:100%}.pdf-web-link{color:var(--secondary);justify-content:center;align-items:baseline;gap:3mm;font-size:8pt;display:flex;position:absolute;bottom:18mm;left:17mm;right:17mm}.pdf-web-link a{color:var(--accent);font-weight:600;text-decoration:none}.pdf-kicker{color:var(--secondary);margin:0 0 3mm;font-size:8.5pt}.pdf-project-statement{letter-spacing:-1.3pt;width:135mm;margin:0 0 7mm;font-size:25pt;font-weight:560;line-height:1.18}.pdf-project-meta{color:var(--secondary);gap:8mm;margin:0 0 6mm;font-size:7.5pt;display:flex}.pdf-placeholder{border:.2mm solid var(--line);min-height:63mm;color:var(--secondary);font:500 7pt var(--font-geist-mono),var(--font-pretendard),monospace;place-items:center;margin:0 0 5mm;display:grid}.pdf-project-meta~.pdf-tags,.pdf-placeholder+.pdf-tags{margin-left:0}.pdf-two-column{grid-template-columns:1fr 1fr;gap:0 10mm;display:grid}.pdf-section-block{border-bottom:.2mm solid var(--line);break-inside:avoid;margin-bottom:7mm;padding:0 0 7mm}.pdf-section-block h3{letter-spacing:-.3pt;margin:0 0 3mm;font-size:12pt}.pdf-section-block p{color:var(--deep);margin:0 0 2mm;font-size:9.5pt;line-height:1.6}.pdf-section-items{flex-direction:column;gap:1mm;margin-top:3mm;display:flex}.pdf-section-items p{margin:0;font-size:8pt;line-height:1.4}.pdf-section-subtitle{font-weight:650;color:var(--ink)!important}.pdf-flows{margin-top:4mm}.pdf-flows b{color:var(--accent);font:600 6.5pt var(--font-geist-mono),var(--font-pretendard),monospace;margin-bottom:1mm;display:block}.pdf-cases{grid-template-columns:1fr 1fr;gap:4mm;margin-top:4mm;display:grid}.pdf-cases article{border:.2mm solid var(--line);break-inside:avoid;background:0 0;padding:4mm}.pdf-cases article>span{color:var(--accent);font:600 6.5pt var(--font-geist-mono),var(--font-pretendard),monospace}.pdf-cases h4{margin:1.5mm 0 3mm;font-size:9pt;line-height:1.3}.pdf-cases p{font-size:7pt;line-height:1.4}.pdf-cases p b{color:var(--accent);font:600 6pt var(--font-geist-mono),var(--font-pretendard),monospace;display:block}.pdf-cases .pdf-tags{font-size:5.5pt}.pdf-cases .pdf-placeholder{min-height:15mm;margin-top:2mm}.pdf-case-flow{font-family:var(--font-geist-mono),var(--font-pretendard),monospace;font-size:5.5pt!important}.pdf-section-block .pdf-placeholder{min-height:28mm;margin:4mm 0 0}.pdf-metric{border-left:.8mm solid var(--accent);background:0 0;margin-top:4mm;padding:4mm}.pdf-metric strong{letter-spacing:-.7pt;font-size:17pt;display:block}.pdf-metric span{color:var(--secondary);font-size:7pt}.pdf-compact-grid{grid-template-columns:1fr 1fr;gap:0 9mm;margin:8mm 0 0;display:grid}.pdf-compact-grid .pdf-section-block{margin:0;padding:4mm 0}.pdf-compact-grid .pdf-section-block h3{font-size:10pt}.pdf-compact-grid .pdf-section-block p{font-size:7pt}.pdf-compact-grid .pdf-placeholder{min-height:19mm}.pdf-closing{border-top:.3mm solid var(--ink);grid-template-columns:25mm 1fr 1fr;margin:14mm 0 0;padding-top:5mm;font-size:8pt;display:grid}.pdf-closing p{color:var(--accent);margin:0}.pdf-closing a{font-weight:600}.pdf-fgt-overview .pdf-heading{margin-bottom:5mm}.pdf-fgt-overview .pdf-project-meta,.pdf-plithus-overview .pdf-project-meta{margin-bottom:4mm}.pdf-fgt-visual{width:100%;margin:5mm 0;padding:0}.pdf-fgt-visual img{width:80%;height:auto;margin-inline:auto;display:block}.pdf-fgt-summary{word-break:keep-all;margin:4mm 0 0;font-size:10pt;line-height:1.6}.pdf-fgt-overview .operation-scale{--scale-muted:var(--secondary);--scale-line:var(--line);break-inside:avoid;margin-top:5mm}.pdf-fgt-overview .operation-scale-heading{margin-bottom:3mm;font-size:9pt}.pdf-fgt-overview .operation-scale-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:3mm}.pdf-fgt-overview .operation-scale-card{background:0 0;padding:4mm}.pdf-fgt-overview .operation-scale-label{font-size:6.5pt}.pdf-fgt-overview .operation-scale-context{font-size:7pt}.pdf-fgt-overview .operation-scale-metrics{gap:2mm;margin-top:4mm}.pdf-fgt-overview .operation-scale-metrics strong{font-size:19pt}.pdf-fgt-overview .operation-scale-metrics small,.pdf-fgt-overview .operation-scale-metrics dt{font-size:7pt}.pdf-fgt-overview .operation-scale-result{flex-direction:row;align-items:baseline;gap:3mm;margin-top:3mm;padding:3mm 4mm}.pdf-fgt-overview .operation-scale-result p{font-size:8pt}.pdf-fgt-offline-combined .pdf-content>section+section{margin-top:8mm}.pdf-fgt-offline-combined .pdf-content>section{break-inside:avoid}.pdf-fgt-intro,.pdf-plithus-intro{white-space:pre-line;color:var(--deep);word-break:keep-all;margin:3mm 0 6mm;font-size:10.5pt;line-height:1.65}.pdf-fgt-case,.pdf-plithus-case{border-top:.2mm solid var(--line);break-inside:avoid;margin-top:6mm;padding-top:6mm}.pdf-fgt-case-label,.pdf-plithus-case-num{color:var(--accent);font:600 7pt/1.5 var(--font-geist-mono),var(--font-pretendard),monospace;letter-spacing:.6pt;margin:0 0 1.5mm}.pdf-fgt-case-title,.pdf-plithus-case h3{word-break:keep-all;margin:0 0 2mm;font-size:12pt;font-weight:560;line-height:1.3}.pdf-fgt-case-highlight,.pdf-plithus-case-highlight{word-break:keep-all;margin:0 0 2.5mm;font-size:10pt;font-weight:600;line-height:1.5}.pdf-fgt-case-body,.pdf-plithus-case-body{white-space:pre-line;color:var(--deep);word-break:keep-all;margin:0;font-size:10pt;line-height:1.65}.pdf-fgt-case-visual,.pdf-plithus-visual{break-inside:avoid;margin-top:4mm}.pdf-fgt-case-visual img,.pdf-plithus-visual>img{object-fit:contain;height:auto;max-height:none;margin-inline:auto;display:block;width:80%!important}.pdf-fgt-case-visual>figure,.pdf-plithus-visual>figure{border:.2mm solid var(--line);width:100%;height:30mm;font:500 7pt/1.4 var(--font-geist-mono),var(--font-pretendard),monospace;color:var(--secondary);place-items:center;margin:0;display:grid}.pdf-tech-stack{font:500 8pt/1.6 var(--font-geist-mono),var(--font-pretendard),monospace;color:var(--secondary);margin:4mm 0 0}.pdf-tech-label{color:var(--accent);font-weight:600}.pdf-tech-label:after{content:": "}@media print{html,body{background:var(--paper);-webkit-print-color-adjust:exact;print-color-adjust:exact;width:210mm;margin:0;padding:0}.pdf-toolbar{display:none}.pdf-document{padding:0}.pdf-sheet{box-shadow:none;margin:0}.pdf-sheet:last-child{break-after:auto;page-break-after:auto}}@media screen and (max-width:900px){.pdf-document{transform-origin:0 0;width:210mm}}.pdf-plithus-overview-combined .pdf-plithus+.pdf-plithus{margin-top:8mm}.pdf-plithus .pdf-heading{margin-bottom:5mm}.pdf-plithus .pdf-heading h2{word-break:keep-all;font-size:22pt;line-height:1.1}.pdf-plithus-emphasis{border-left:.5mm solid var(--accent);white-space:pre-line;word-break:keep-all;margin:6mm 0;padding:1.5mm 0 1.5mm 4mm;font-size:10pt;font-weight:600;line-height:1.5}.pdf-plithus-technologies{color:var(--secondary);font:500 6.5pt/1.5 var(--font-geist-mono),var(--font-pretendard),monospace;flex-wrap:wrap;gap:2mm 5mm;margin:0;display:flex}.pdf-plithus .execution-flow{break-inside:avoid}.pdf-plithus .plithus-architecture{break-inside:avoid;page-break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact;margin-top:4mm;padding:3mm;font-size:9pt;line-height:1.4}.pdf-plithus .plithus-architecture .p-4{padding:3mm}.pdf-plithus .plithus-architecture .text-xs{font-size:8pt}.pdf-plithus .plithus-architecture .mb-3{margin-bottom:2mm}.pdf-plithus .plithus-architecture .py-2{padding-top:1.5mm;padding-bottom:1.5mm}.pdf-plithus-case h3{break-after:avoid}.pdf-plithus .plithus-language{padding:0}.pdf-plithus .plithus-language,.pdf-plithus .plithus-language div,.pdf-plithus .plithus-language span{color:#273442}.pdf-plithus .plithus-language .plithus-language-card{background:#f1f4f7;border-color:#a6b1bc}.pdf-plithus .plithus-language .plithus-language-server{background:#e5edf5;border-color:#668db3}.pdf-plithus .plithus-language .plithus-language-card .rounded{background:#fff;border-color:#a6b1bc}.pdf-plithus .plithus-language [aria-hidden=true],.pdf-plithus .plithus-language figcaption{color:#365b7c}.pdf-plithus-proxy-hybrid .pdf-plithus+.pdf-plithus{margin-top:8mm}.pdf-plithus-proxy-hybrid .pdf-plithus{break-inside:avoid}.pdf-plithus-proxy-hybrid .pdf-section-heading{margin-bottom:3mm}.pdf-plithus-proxy-hybrid .pdf-plithus-case{margin-top:4mm;padding-top:4mm}.pdf-plithus-proxy-hybrid .pdf-plithus-intro{margin:3mm 0 4mm}
