@import "https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable-dynamic-subset.min.css";
*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--text:#1a1a1a;--sub:#444;--muted:#888;--accent:#2563eb;--border:#e5e7eb;--tag-bg:#eff6ff;--tag-bd:#bfdbfe;--section-bg:#f8fafc}html{color:var(--text);-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff;font-family:Pretendard Variable,Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.65}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}strong{font-weight:600}.print-bar{z-index:100;position:fixed;top:16px;right:24px}.print-btn{color:#fff;background:var(--accent);cursor:pointer;border:none;border-radius:6px;padding:8px 18px;font-family:inherit;font-size:13px;font-weight:600}.print-btn:hover{background:#1d4ed8}.resume{max-width:980px;margin:0 auto;padding:56px 72px 72px}.resume-header{border-bottom:2.5px solid var(--text);margin-bottom:0;padding-bottom:24px}.resume-header-top{align-items:flex-start;gap:28px;display:flex}.resume-header-photo{object-fit:cover;object-position:top;border-radius:4px;flex-shrink:0;width:100px;height:126px}.resume-header-info{flex:1}.resume-header h1{letter-spacing:-.02em;color:var(--text);margin-bottom:16px;font-size:2.4rem;font-weight:700;line-height:1}.contacts-grid{grid-template-columns:1fr 1fr 1fr;gap:6px 20px;display:grid}.contact-item{color:var(--muted);align-items:center;gap:7px;font-size:.83rem;text-decoration:none;display:flex}.contact-item:hover{color:var(--accent)}.contact-icon{width:16px;height:16px;color:var(--accent);flex-shrink:0;justify-content:center;align-items:center;display:flex}.contact-icon svg{width:13px;height:13px}.section{border-bottom:1px solid var(--border);grid-template-columns:130px 1fr;gap:0 36px;padding:26px 0;display:grid}.section:last-of-type{border-bottom:none}.section-label{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);white-space:nowrap;padding-top:3px;font-size:.75rem;font-weight:700}.skill-row{align-items:baseline;gap:10px;margin-bottom:6px;font-size:.9rem;display:flex}.skill-cat{color:var(--sub);flex-shrink:0;width:80px;font-size:.82rem;font-weight:600}.skill-val{color:var(--sub)}.exp-item{page-break-inside:avoid;break-inside:avoid;margin-bottom:18px}.exp-item:last-child{margin-bottom:0}.exp-header{justify-content:space-between;align-items:baseline;margin-bottom:2px;display:flex}.exp-role{color:var(--text);font-size:.95rem;font-weight:700}.exp-period{color:var(--muted);white-space:nowrap;font-size:.8rem}.exp-company{color:var(--accent);margin-bottom:5px;font-size:.85rem;font-weight:600}.exp-desc{color:var(--sub);font-size:.87rem;line-height:1.7}.exp-list{color:var(--sub);margin:0;padding:0;font-size:.87rem;line-height:1.75;list-style:none}.proj-item{page-break-inside:avoid;break-inside:avoid;margin-bottom:14px}.proj-item:last-child{margin-bottom:0}.proj-header{align-items:baseline;gap:8px;margin-bottom:2px;display:flex}.proj-name{color:var(--text);font-size:.95rem;font-weight:700}.proj-link{color:var(--muted);font-size:.78rem}.proj-link:hover{color:var(--accent)}.proj-sub{color:var(--muted);font-size:.84rem}.proj-section-note{color:var(--muted);margin-bottom:14px;font-size:.82rem;font-style:italic}.proj-section-note a{color:var(--accent);font-style:normal;font-weight:600}.row-item{justify-content:space-between;align-items:baseline;margin-bottom:6px;font-size:.9rem;display:flex}.row-item-left{color:var(--sub)}.row-item-right{color:var(--muted);white-space:nowrap;margin-left:12px;font-size:.8rem}.badge{background:var(--tag-bg);border:1px solid var(--tag-bd);color:var(--accent);border-radius:4px;margin-left:5px;padding:1px 5px;font-size:.7rem;font-weight:700;display:inline-block}@page{size:A4;margin:0}@media print{.print-bar{display:none!important}html{font-size:12px}.resume{max-width:100%;padding:12mm 16mm}.resume-header{padding-bottom:16px}.section{padding:16px 0}.exp-item{margin-bottom:12px}.proj-item{margin-bottom:10px}.row-item,.skill-row{margin-bottom:4px}.exp-item,.proj-item,.section{page-break-inside:avoid;break-inside:avoid}}
