*{box-sizing:border-box}html{background:#f0f0f0}body{margin:0;color:#111;font-family:"Noto Sans KR","Malgun Gothic",sans-serif;font-size:13px;line-height:1.45}a{color:inherit;text-decoration:none}.resume-wrap{width:940px;max-width:calc(100% - 32px);margin:36px auto 60px}.resume-sheet{position:relative;min-height:1260px;padding:64px 62px 78px;background:#fff;box-shadow:0 3px 14px rgba(0,0,0,0.12)}h1{margin:0 0 48px;text-align:center;font-size:30px;font-weight:700;letter-spacing:.42em}h2{margin:0 0 8px;font-size:14px;font-weight:700}h2 small{font-size:11px;font-weight:400}.resume-table,.record-table{border-top:2px solid #222;border-left:1px solid #777}.personal-table{display:grid;grid-template-columns:82px 1fr 68px 1fr 60px 1fr}.label,.value,.record-row span{display:flex;min-height:44px;align-items:center;justify-content:center;padding:7px 9px;border-right:1px solid #777;border-bottom:1px solid #777}.label,.record-row.head span{background:#f1f1f1;font-weight:600;text-align:center}.value{justify-content:flex-start}.value.phone{grid-column:span 3}.value.full{grid-column:span 5}.resume-section{margin-top:28px}.record-row{display:grid}.education-table .record-row{grid-template-columns:1.25fr 2fr .7fr 1.2fr}.project-table .record-row{grid-template-columns:1.3fr 2.1fr 2.3fr}.certificate-table .record-row{grid-template-columns:1fr 2fr 1fr 1.5fr}.military-table .record-row{grid-template-columns:1.3fr 2fr 1.3fr}.record-row.head span{min-height:38px}.signature{margin-top:58px;text-align:center;font-size:12px;letter-spacing:.06em}.signature p:last-child{margin-top:25px}.sheet-footer{position:absolute;right:62px;bottom:28px;left:62px;display:flex;justify-content:space-between;padding-top:8px;border-top:1px solid #bbb;color:#555;font-size:10px}.downloads{display:flex;justify-content:center;gap:10px;margin-top:18px}.downloads a{padding:12px 18px;border:1px solid #333;background:#fff;font-size:12px;font-weight:600}.downloads a:hover{color:#fff;background:#222}@media (max-width: 680px){body{font-size:11px}.resume-wrap{max-width:none;width:100%;margin:0}.resume-sheet{min-height:0;padding:34px 14px 64px;box-shadow:none}h1{margin-bottom:30px;font-size:24px}.personal-table{grid-template-columns:70px 1fr}.value.phone,.value.full{grid-column:auto}.resume-section{margin-top:22px}.record-table{overflow-x:auto}.record-row{min-width:620px}.signature{margin-top:40px}.sheet-footer{right:14px;bottom:20px;left:14px}.downloads{margin:0;padding:14px;flex-direction:column;background:#f0f0f0}.downloads a{text-align:center}}@media print{@page{size:A4;margin:0}html{background:#fff}.resume-wrap{width:210mm;max-width:none;margin:0}.resume-sheet{min-height:297mm;padding:14mm 15mm 17mm;box-shadow:none}.downloads{display:none}.sheet-footer{right:15mm;bottom:8mm;left:15mm}}.personal-layout{display:grid;grid-template-columns:minmax(0, 1fr) 136px;border-right:1px solid #777;border-bottom:1px solid #777}.personal-layout .personal-table{grid-template-columns:70px 1fr 58px 1fr 50px 1fr;border-bottom:0}.profile-photo{padding:7px;border-top:2px solid #222;background:#fff}.profile-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 35%}@media (max-width: 680px){.personal-layout{grid-template-columns:1fr;border-right:0}.personal-layout .personal-table{grid-template-columns:70px 1fr}.profile-photo{order:-1;width:118px;height:158px;margin:0 auto 14px;border:1px solid #777}.personal-layout .value.phone,.personal-layout .value.full{grid-column:auto}}.personal-layout{grid-template-columns:145px minmax(0, 1fr);border-top:2px solid #222;border-left:1px solid #777}.personal-layout .personal-table{grid-template-columns:85px minmax(90px, 1fr) 72px minmax(145px, 1.25fr) 55px minmax(90px, 1fr);border-top:0;border-left:1px solid #777}.personal-layout .profile-photo{padding:10px 12px;border-top:0}.personal-layout .profile-photo img{object-position:center center}.personal-layout .label,.personal-layout .value{min-height:43px}.personal-layout .phone,.personal-layout .phone a{white-space:nowrap}@media (max-width: 680px){.personal-layout{grid-template-columns:1fr;border:0}.personal-layout .profile-photo{order:-1;padding:0}.personal-layout .personal-table{grid-template-columns:70px 1fr;border-top:2px solid #222;border-left:1px solid #777}.personal-layout .phone,.personal-layout .phone a{white-space:normal}}.downloads{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.downloads a{position:relative;display:flex;min-height:112px;flex-direction:column;justify-content:center;padding:22px 28px;border:1px solid #333;background:#fff;transition:background .18s ease,color .18s ease}.downloads a small{margin-bottom:3px;color:#777;font-size:9px;font-weight:600;letter-spacing:.1em}.downloads a strong{font-size:17px}.downloads a span{position:absolute;right:26px;bottom:18px;color:#777;font-size:10px}.downloads a:hover{color:#fff;background:#222}.downloads a:hover small,.downloads a:hover span{color:#ccc}@media (max-width: 680px){.downloads{grid-template-columns:1fr;gap:8px;padding:14px}.downloads a{min-height:92px;padding:18px 22px;text-align:left}.downloads a span{right:20px;bottom:16px}}.privacy-note{display:grid;grid-template-columns:1fr 1.35fr;gap:30px;margin-top:18px;padding:20px 24px;border:1px solid #aaa;background:#fff}.privacy-note p{margin:4px 0 0;color:#555;font-size:11px}.privacy-message{padding-left:24px;border-left:1px solid #ccc}.privacy-message span{display:block;margin-bottom:3px;color:#111;font-size:10px;font-weight:700}@media (max-width: 680px){.privacy-note{grid-template-columns:1fr;gap:14px;margin:0;padding:18px}.privacy-message{padding:14px 0 0;border-top:1px solid #ccc;border-left:0}}@media print{.privacy-note{display:none}}.personal-layout{border-right:0;border-bottom:0}.personal-layout .profile-photo{border-bottom:1px solid #777}.privacy-note{display:block;padding:20px 24px}.privacy-note p{margin:0;color:#555;font-size:11px;line-height:1.8}.privacy-note p strong{color:#111}.privacy-note .privacy-message{padding:0;border:0}@media (max-width: 680px){.privacy-note{display:block;padding:18px}}.privacy-note p{color:#333;font-size:12px;font-weight:400;line-height:1.75}.privacy-note p span{display:block}.privacy-note p span:first-child{color:#111;font-size:12px;font-weight:400}@media (max-width: 680px){.privacy-note p{font-size:11px}.privacy-note p span:first-child{font-size:11px}}.downloads a:hover small{color:#f5821f}.privacy-note{border:0}.privacy-note{background:#fff;box-shadow:0 3px 14px rgba(0,0,0,0.12)}.privacy-note p{font-size:13px}.privacy-note p span:first-child{font-size:13px}@media (max-width: 680px){.privacy-note p,.privacy-note p span:first-child{font-size:12px}}.privacy-note p,.privacy-note p span:first-child{color:#222;font-weight:400}.education-table .record-row{grid-template-columns:1.25fr 2fr 1.2fr}.utility-actions{position:fixed;z-index:100;right:18px;bottom:18px;display:flex;flex-direction:column;gap:8px}.utility-actions .fab{display:flex;height:44px;align-items:center;justify-content:flex-end;overflow:hidden;padding:0;border:1px solid #333;border-radius:0;background:#fff;color:#222;box-shadow:0 3px 10px rgba(0,0,0,0.12);white-space:nowrap;transition:background .18s,color .18s}.utility-actions .fab-icon{display:flex;width:42px;height:42px;flex:0 0 42px;align-items:center;justify-content:center;background-position:center;background-repeat:no-repeat;background-size:22px;font-size:16px}.utility-actions .fab-label{max-width:0;overflow:hidden;opacity:0;font-size:11px;font-weight:600;transition:max-width .22s,opacity .18s,padding .22s}.utility-actions .fab:hover{color:#fff;background:#222}.utility-actions .fab:hover .fab-label{max-width:140px;padding-left:14px;opacity:1}.utility-actions .coffee-chat-fab{border-color:#d6be00;background:#fae100}.utility-actions .coffee-chat-fab:hover{color:#111;background:#fae100}.utility-actions .coffee-chat-fab:hover .fab-label{color:#111}@media (max-width: 680px){.utility-actions{right:12px;bottom:12px}.utility-actions .fab{height:40px}.utility-actions .fab-icon{width:38px;height:38px;flex-basis:38px;background-size:20px}.utility-actions .fab-label{display:none}}@media print{.utility-actions{display:none}}.utility-actions{align-items:flex-end}@media (max-width: 680px){.resume-sheet{padding-right:10px;padding-left:10px}.record-table{width:100%;overflow:visible}.record-row{min-width:0;width:100%}.record-row span{min-width:0;padding:7px 4px;overflow-wrap:anywhere;word-break:keep-all;text-align:center}.record-row.head span{font-size:9px;line-height:1.35}.education-table .record-row{grid-template-columns:27% 45% 28%}.project-table .record-row{grid-template-columns:28% 37% 35%}.certificate-table .record-row{grid-template-columns:19% 35% 18% 28%}.military-table .record-row{grid-template-columns:30% 40% 30%}.certificate-table .record-row:not(.head) span{font-size:9px}.personal-layout .personal-table{width:100%}.personal-layout .profile-photo{border:1px solid #777}.personal-layout .label,.personal-layout .value{min-width:0;padding:7px 8px;overflow-wrap:anywhere}.downloads,.privacy-note{width:100%}}.privacy-note .introduction-content p{margin:0 0 14px;color:#222;font-size:13px;font-weight:400;line-height:1.8}.privacy-note .introduction-content p:last-child{margin-bottom:0}@media (max-width: 680px){.privacy-note .introduction-content p{font-size:12px}}.privacy-note .introduction-content ul{margin:0 0 14px;padding-left:20px;color:#222;font-size:13px;line-height:1.8}@media (max-width: 680px){.privacy-note .introduction-content ul{font-size:12px}}.privacy-note .introduction-content p:first-child strong{color:#111;font-weight:700}.privacy-note .introduction-content p:first-child strong:first-of-type{color:#f5821f}.privacy-note .introduction-content p,.privacy-note .introduction-content ul{font-size:14px}@media (max-width: 680px){.privacy-note .introduction-content p,.privacy-note .introduction-content ul{font-size:13px}}.document-note{margin:12px 0 0;color:#666;font-size:11px;line-height:1.6;text-align:center}@media (max-width: 680px){.document-note{margin:0;padding:4px 18px 20px;font-size:10px}}.resume-wrap{overflow-anchor:none}.reveal-box{overflow-anchor:none;opacity:0;transform:translate3d(0, 40px, 0);transition:opacity 0.65s cubic-bezier(0.22, 1, 0.36, 1) var(--reveal-delay, 0s),transform 0.65s cubic-bezier(0.22, 1, 0.36, 1) var(--reveal-delay, 0s)}.reveal-box.is-visible{opacity:1;transform:translate3d(0, 0, 0)}@media print{.reveal-box{opacity:1;transform:none;transition:none}}.downloads a.reveal-box{transition:opacity 0.65s cubic-bezier(0.22, 1, 0.36, 1) var(--reveal-delay, 0s),transform 0.65s cubic-bezier(0.22, 1, 0.36, 1) var(--reveal-delay, 0s),background 0.18s ease,color 0.18s ease}.downloads a.reveal-box:nth-child(1){--reveal-delay:0s}.downloads a.reveal-box:nth-child(2){--reveal-delay:.22s}html{scrollbar-gutter:stable}.page-loading{scrollbar-color:transparent transparent}.page-loading::-webkit-scrollbar-thumb,.page-loading::-webkit-scrollbar-track{background:transparent}.downloads a{color:#222;background:#fff}.downloads a small{color:#f5821f}.downloads a span{color:#777}.downloads a:hover{color:#fff;background:#222}.downloads a:hover span{color:#ccc}.downloads a:hover small{color:#f5821f}.loading-screen{position:fixed;z-index:9999;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;background:#f0f0f0;font-family:Arial,"Malgun Gothic",sans-serif;opacity:1;transition:opacity .2s ease}.loading-screen.is-hidden{pointer-events:none;opacity:0}.loading-screen p{width:120px;margin:0;color:#555;font-family:Arial,"Malgun Gothic",sans-serif;font-size:12px;font-weight:600;line-height:18px;letter-spacing:0;text-align:center}.loading-document{width:48px;height:62px;padding:12px 9px;border:1px solid #777;background:#fff;box-shadow:0 3px 9px rgba(0,0,0,0.1)}.loading-document span{display:block;height:2px;margin-bottom:7px;background:#aaa;animation:loading-line 1.2s ease-in-out infinite}.loading-document span:nth-child(2){width:72%;animation-delay:.12s}.loading-document span:nth-child(3){width:88%;animation-delay:.24s}.loading-document span:nth-child(4){width:60%;animation-delay:.36s}.loading-dots:after{content:"";animation:loading-dots 1.2s steps(4, end) infinite}@keyframes loading-line{0%,100%{opacity:.25}50%{opacity:1}}@keyframes loading-dots{0%{content:""}25%{content:"."}50%{content:".."}75%,100%{content:"..."}}@media print{.loading-screen{display:none !important}}.loading-screen .loading-message{display:flex;width:min(390px, calc(100vw - 40px));min-height:62px;flex-direction:column;justify-content:center;gap:8px;color:#333;font-size:15px;font-weight:400;line-height:1.6}.greeting-line{display:block;opacity:0;transform:translate3d(0, 8px, 0);transition:opacity .4s ease,transform .4s ease}.greeting-line.is-visible{opacity:1;transform:translate3d(0, 0, 0)}.experience-highlight{display:inline;color:#f5821f;font-size:1em;font-style:normal;font-weight:700}.loading-name{color:#111;font-weight:700}.career-badge{display:inline-block;margin-left:7px;padding:2px 7px;border:1px solid #f5821f;color:#d96f12;font-size:10px;font-weight:600;line-height:1.4;vertical-align:2px}.skills-detail-table .record-row{grid-template-columns:1.15fr 4fr}.skills-detail-table .record-row span{min-height:44px;justify-content:flex-start;padding:7px 9px}.skills-detail-table .record-row span:first-child{justify-content:center;font-weight:500;text-align:center}.skills-detail-table .skills-group-title{grid-template-columns:1fr}.skills-detail-table .skills-group-title span{min-height:38px;background:#f1f1f1;font-weight:700}.skills-detail-table .skills-group-title span:first-child{justify-content:flex-start;text-align:left}@media (max-width: 680px){.skills-detail-table .record-row{grid-template-columns:31% 69%}.skills-detail-table .skills-group-title{grid-template-columns:1fr}.skills-detail-table .record-row span{text-align:left}}.home-back{position:fixed;z-index:100;top:18px;left:18px;display:flex;width:44px;height:44px;align-items:center;justify-content:center;text-decoration:none;opacity:.78;transition:opacity .18s ease,transform .18s ease}.home-back img{display:block;width:32px;height:32px}.home-back:hover{opacity:1;transform:translateX(-3px)}.home-back:focus-visible{outline:2px solid #aaa;outline-offset:1px}@media (max-width: 680px){.home-back{top:8px;left:6px}}@media print{.home-back{display:none}}@media (max-width: 680px){.resume-sheet+.privacy-note{margin-top:14px}}
