.resume-header[data-v-1ee9ce90]{margin-bottom:32px;padding-bottom:24px;border-bottom:2px solid var(--vp-c-divider)}.resume-name[data-v-1ee9ce90]{font-size:2em;margin:0 0 4px;color:var(--vp-c-text-1)}.resume-title[data-v-1ee9ce90]{font-size:1.2em;color:var(--vp-c-brand-1);margin:0 0 16px;font-weight:500}.resume-contacts[data-v-1ee9ce90]{display:flex;flex-wrap:wrap;gap:12px 20px}.resume-contact-item[data-v-1ee9ce90]{display:flex;align-items:center;gap:6px;color:var(--vp-c-text-2);text-decoration:none;font-size:.9em;transition:color .2s}.resume-contact-item[data-v-1ee9ce90]:hover{color:var(--vp-c-brand-1)}.resume-contact-icon[data-v-1ee9ce90]{font-size:1.1em}.resume-summary[data-v-1ee9ce90]{margin:20px 0 0;color:var(--vp-c-text-2);line-height:1.7;font-size:.95em}@media(max-width:640px){.resume-name[data-v-1ee9ce90]{font-size:1.6em}.resume-contacts[data-v-1ee9ce90]{flex-direction:column;gap:8px}}.resume-section[data-v-ab67c3c0]{margin-bottom:28px;break-inside:avoid}.resume-section-title[data-v-ab67c3c0]{font-size:1.3em;color:var(--vp-c-text-1);margin:0 0 16px;padding-bottom:8px;border-bottom:1px solid var(--vp-c-divider)}.resume-section-content[data-v-ab67c3c0]{padding-left:4px}.resume-section[data-v-918b4e93]{margin-bottom:28px;break-inside:avoid}.resume-section-title[data-v-918b4e93]{font-size:1.3em;color:var(--vp-c-text-1);margin:0 0 16px;padding-bottom:8px;border-bottom:1px solid var(--vp-c-divider)}.skills-grid[data-v-918b4e93]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}.skill-category[data-v-918b4e93]{font-size:1em;color:var(--vp-c-brand-1);margin:0 0 12px}.skill-list[data-v-918b4e93]{display:flex;flex-direction:column;gap:10px}.skill-info[data-v-918b4e93]{display:flex;justify-content:space-between;margin-bottom:4px;font-size:.9em}.skill-name[data-v-918b4e93]{color:var(--vp-c-text-1)}.skill-level[data-v-918b4e93]{color:var(--vp-c-text-3);font-size:.85em}.skill-bar[data-v-918b4e93]{height:6px;background:var(--vp-c-bg-soft);border-radius:3px;overflow:hidden}.skill-bar-fill[data-v-918b4e93]{height:100%;background:var(--vp-c-brand-1);border-radius:3px;transition:width .6s ease;print-color-adjust:exact;-webkit-print-color-adjust:exact}@media(max-width:640px){.skills-grid[data-v-918b4e93]{grid-template-columns:1fr}}.resume-section[data-v-8c5b9e3f]{margin-bottom:28px;break-inside:avoid}.resume-section-title[data-v-8c5b9e3f]{font-size:1.3em;color:var(--vp-c-text-1);margin:0 0 16px;padding-bottom:8px;border-bottom:1px solid var(--vp-c-divider)}.timeline[data-v-8c5b9e3f]{position:relative;padding-left:24px}.timeline[data-v-8c5b9e3f]:before{content:"";position:absolute;left:6px;top:8px;bottom:8px;width:2px;background:var(--vp-c-divider)}.timeline-item[data-v-8c5b9e3f]{position:relative;padding-bottom:24px}.timeline-item[data-v-8c5b9e3f]:last-child{padding-bottom:0}.timeline-marker[data-v-8c5b9e3f]{position:absolute;left:-21px;top:8px;width:10px;height:10px;border-radius:50%;background:var(--vp-c-brand-1);border:2px solid var(--vp-c-bg);box-shadow:0 0 0 2px var(--vp-c-brand-1)}.timeline-header[data-v-8c5b9e3f]{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px;margin-bottom:4px}.timeline-title[data-v-8c5b9e3f]{font-size:1.05em;margin:0;color:var(--vp-c-text-1)}.timeline-period[data-v-8c5b9e3f]{font-size:.85em;color:var(--vp-c-text-3);white-space:nowrap}.timeline-subtitle[data-v-8c5b9e3f]{color:var(--vp-c-brand-1);font-size:.95em;margin:0 0 8px}.timeline-location[data-v-8c5b9e3f]{color:var(--vp-c-text-3);font-size:.85em}.timeline-location[data-v-8c5b9e3f]:before{content:" xB7 "}.timeline-description[data-v-8c5b9e3f]{color:var(--vp-c-text-2);font-size:.9em;margin:0 0 8px;line-height:1.5}.timeline-achievements[data-v-8c5b9e3f]{margin:0 0 10px;padding-left:20px;font-size:.9em;color:var(--vp-c-text-2);line-height:1.6;list-style:disc}.timeline-stack[data-v-8c5b9e3f]{display:flex;flex-wrap:wrap;gap:6px}.stack-tag[data-v-8c5b9e3f]{display:inline-block;padding:2px 10px;font-size:.8em;background:var(--vp-c-bg-soft);color:var(--vp-c-text-2);border-radius:12px;border:1px solid var(--vp-c-divider)}@media(max-width:640px){.timeline-header[data-v-8c5b9e3f]{flex-direction:column;gap:2px}}.resume-section[data-v-e1fd424f]{margin-bottom:28px;break-inside:avoid}.resume-section-title[data-v-e1fd424f]{font-size:1.3em;color:var(--vp-c-text-1);margin:0 0 16px;padding-bottom:8px;border-bottom:1px solid var(--vp-c-divider)}.projects-filters[data-v-e1fd424f]{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.filter-btn[data-v-e1fd424f]{padding:4px 14px;border:1px solid var(--vp-c-divider);border-radius:16px;background:var(--vp-c-bg);color:var(--vp-c-text-2);font-size:.82em;cursor:pointer;transition:all .2s}.filter-btn[data-v-e1fd424f]:hover{border-color:var(--vp-c-brand-1);color:var(--vp-c-brand-1)}.filter-btn.active[data-v-e1fd424f]{background:var(--vp-c-brand-1);color:#fff;border-color:var(--vp-c-brand-1)}.projects-grid[data-v-e1fd424f]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.project-card[data-v-e1fd424f]{border:1px solid var(--vp-c-divider);border-radius:8px;padding:14px 16px;background:var(--vp-c-bg-soft);transition:border-color .2s,box-shadow .2s}.project-card[data-v-e1fd424f]:hover{border-color:var(--vp-c-brand-1);box-shadow:0 2px 8px #0000000f}.project-header[data-v-e1fd424f]{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:6px}.project-name[data-v-e1fd424f]{font-size:1em;margin:0;color:var(--vp-c-text-1)}.project-category[data-v-e1fd424f]{font-size:.72em;padding:1px 8px;border-radius:10px;background:var(--vp-c-brand-soft);color:var(--vp-c-brand-1);white-space:nowrap;flex-shrink:0}.project-description[data-v-e1fd424f]{font-size:.85em;color:var(--vp-c-text-2);margin:0 0 8px;line-height:1.5}.project-highlights[data-v-e1fd424f]{margin:0 0 8px;padding-left:18px;font-size:.82em;color:var(--vp-c-text-2);line-height:1.5;list-style:disc}.project-highlights li[data-v-e1fd424f]{margin-bottom:2px}.project-stack[data-v-e1fd424f]{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.stack-tag[data-v-e1fd424f]{display:inline-block;padding:1px 8px;font-size:.75em;background:var(--vp-c-bg);color:var(--vp-c-text-2);border-radius:10px;border:1px solid var(--vp-c-divider)}.project-links[data-v-e1fd424f]{display:flex;gap:10px}.project-link[data-v-e1fd424f]{font-size:.82em;color:var(--vp-c-brand-1);text-decoration:none;transition:color .2s}.project-link[data-v-e1fd424f]:hover{color:var(--vp-c-brand-2);text-decoration:underline}@media(max-width:640px){.projects-grid[data-v-e1fd424f]{grid-template-columns:1fr}}@media print{.projects-filters[data-v-e1fd424f]{display:none}.projects-grid[data-v-e1fd424f]{grid-template-columns:1fr 1fr;gap:10px}.project-card[data-v-e1fd424f]{padding:8px 10px;break-inside:avoid}.project-highlights[data-v-e1fd424f]{display:none}}.resume-toc[data-v-11a947d1]{position:fixed;right:20px;top:calc(var(--vp-nav-height) + 40px);width:160px;z-index:10}.resume-toc-list[data-v-11a947d1]{list-style:none;margin:0;padding:0;border-left:2px solid var(--vp-c-divider)}.resume-toc-item[data-v-11a947d1]{margin:0}.resume-toc-link[data-v-11a947d1]{display:block;padding:4px 0 4px 12px;font-size:12px;line-height:1.4;color:var(--vp-c-text-3);text-decoration:none;border-left:2px solid transparent;margin-left:-2px;transition:color .2s,border-color .2s}.resume-toc-link[data-v-11a947d1]:hover{color:var(--vp-c-text-1)}.resume-toc-link.active[data-v-11a947d1]{color:var(--vp-c-brand-1);border-left-color:var(--vp-c-brand-1);font-weight:500}@media(max-width:1024px){.resume-toc[data-v-11a947d1]{display:none}}@media print{.VPNav,.VPSidebar,.VPFooter,.VPLocalNav,.VPDocAside,.no-print,.resume-actions{display:none!important}.VPContent .VPDoc{padding:0!important}.VPDoc .container,.VPDoc .content-container{max-width:100%!important}.resume-page{font-size:11pt;color:#000!important;background:#fff!important;max-width:210mm;margin:0 auto}.resume-section{break-inside:avoid}a[href^=http]:after{content:" (" attr(href) ")";font-size:.8em;color:#666}.skill-bar-fill{-webkit-print-color-adjust:exact;print-color-adjust:exact}.project-card{border-color:#ccc!important;background:#fff!important}.stack-tag{border-color:#ccc!important;background:#f5f5f5!important;color:#333!important}}body.resume-printing .VPNav,body.resume-printing .VPSidebar,body.resume-printing .VPFooter{display:none!important}.resume-page[data-v-a4380d9e]{max-width:800px;margin:0 auto;padding:20px 200px 20px 0}.resume-page[data-v-a4380d9e] h1,.resume-page[data-v-a4380d9e] h2,.resume-page[data-v-a4380d9e] h3,.resume-page[data-v-a4380d9e] h4{margin:0;padding:0;border:none;letter-spacing:normal;line-height:1.4}.resume-page[data-v-a4380d9e] p{margin:0}.resume-page[data-v-a4380d9e] ul{margin:0;padding-left:0;list-style:none}.resume-page[data-v-a4380d9e] li+li{margin-top:0}.resume-page[data-v-a4380d9e] a{font-weight:400;text-decoration:none}.resume-page[data-v-a4380d9e] a:hover{text-decoration:none}.resume-actions[data-v-a4380d9e]{display:flex;justify-content:flex-end;margin-bottom:20px}.resume-pdf-btn[data-v-a4380d9e]{padding:8px 20px;background:var(--vp-c-brand-1);color:#fff;border:none;border-radius:6px;font-size:.9em;cursor:pointer;transition:background .2s}.resume-pdf-btn[data-v-a4380d9e]:hover{background:var(--vp-c-brand-2)}.resume-languages[data-v-a4380d9e]{display:flex;flex-wrap:wrap;gap:10px}.resume-lang-badge[data-v-a4380d9e]{padding:4px 14px;background:var(--vp-c-bg-soft);border:1px solid var(--vp-c-divider);border-radius:16px;font-size:.9em;color:var(--vp-c-text-1)}.resume-expertise[data-v-a4380d9e]{display:flex;flex-wrap:wrap;gap:8px}.resume-expertise-badge[data-v-a4380d9e]{padding:6px 14px;background:var(--vp-c-brand-soft);border:1px solid var(--vp-c-brand-1);border-radius:16px;font-size:.85em;color:var(--vp-c-brand-1);font-weight:500}.resume-certs-list[data-v-a4380d9e]{padding-left:20px;font-size:.9em;color:var(--vp-c-text-2);line-height:1.7;list-style:disc}.resume-certs-list a[data-v-a4380d9e]{color:var(--vp-c-brand-1);text-decoration:none}.resume-certs-list a[data-v-a4380d9e]:hover{text-decoration:underline}.resume-loading[data-v-a4380d9e]{text-align:center;padding:40px;color:var(--vp-c-text-3)}@media(max-width:1024px){.resume-page[data-v-a4380d9e]{padding-right:0}}@media(max-width:640px){.resume-actions[data-v-a4380d9e]{position:sticky;bottom:16px;z-index:10;justify-content:center}.resume-pdf-btn[data-v-a4380d9e]{width:100%;padding:12px}}
