:root{--color-bg:#e5e5e5;--color-paper:#fff;--color-ink:#111;--color-ink-light:#333;--color-ink-muted:#555;--color-accent:#111;--color-divider:#ccc;--color-divider-light:#e0e0e0;--font-display:"Cormorant Garamond",Georgia,"Times New Roman",serif;--font-body:"DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--a4-width:210mm;--a4-height:297mm;--space-xs:1.5mm;--space-sm:2.5mm;--space-md:4mm;--space-lg:6mm;--space-xl:10mm;--space-2xl:15mm;--margin-page:12mm;--margin-header:10mm;--text-name:24pt;--text-role:9pt;--text-section:8.5pt;--text-body:8.5pt;--text-small:7.5pt;--text-contact:7.5pt;--leading-tight:1.2;--leading-normal:1.4;--leading-relaxed:1.5;--ease-out:cubic-bezier(0.16,1,0.3,1)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#e5e5e5;background:var(--color-bg);color:#111;color:var(--color-ink);font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-body);font-weight:400;line-height:1.4;line-height:var(--leading-normal);overflow:hidden}body,html{height:100%;width:100%}body{position:fixed}#root{height:100%;width:100%}#root,.app{overflow:hidden}.app{align-items:center;display:flex;flex-direction:column;height:100vh;justify-content:center;padding:12px;width:100vw}@media screen and (min-width:1200px){.app{padding:16px}}@media screen and (max-width:640px){.app{padding:6px}}.cv-a4{background:#fff;background:var(--color-paper);box-shadow:0 1px 3px #0000000a,0 4px 12px #0000000f,0 12px 32px #00000014;contain:layout style paint;display:flex;flex-direction:column;flex-shrink:0;height:297mm;height:var(--a4-height);max-height:297mm;max-height:var(--a4-height);max-width:210mm;max-width:var(--a4-width);overflow:hidden;transform-origin:top center;transition:transform .25s cubic-bezier(.16,1,.3,1),margin-bottom .25s cubic-bezier(.16,1,.3,1);transition:transform .25s var(--ease-out),margin-bottom .25s var(--ease-out);width:210mm;width:var(--a4-width)}.cv-a4.export{box-shadow:none!important;filter:none!important;transform:none!important}.cv-header{align-items:flex-end;border-bottom:1px solid #ccc;border-bottom:1px solid var(--color-divider);display:flex;flex-shrink:0;gap:6mm;gap:var(--space-lg);justify-content:space-between;padding:12mm 12mm 10mm;padding:var(--margin-page) var(--margin-page) var(--margin-header)}.cv-header__identity{flex:1 1}.cv-header__name{-webkit-text-fill-color:#111!important;background:none!important;-webkit-background-clip:unset!important;background-clip:initial!important;color:#111!important;font-size:24pt;font-size:var(--text-name);font-weight:700;letter-spacing:-.02em;line-height:1.1;margin-bottom:1.5mm;margin-bottom:var(--space-xs)}.cv-header__name,.cv-header__role{font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-body)}.cv-header__role{-webkit-text-fill-color:#555!important;background:none!important;color:#555!important;font-size:9pt;font-size:var(--text-role);font-weight:500;letter-spacing:.15em;text-transform:uppercase}.cv-header__contact{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:1.5mm;gap:var(--space-xs)}.cv-header__contact-item{background:none;border:none;color:#333;color:var(--color-ink-light);cursor:pointer;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-body);font-size:7.5pt;font-size:var(--text-contact);font-weight:500;padding:0;transition:color .2s ease}.cv-header__contact-item:focus,.cv-header__contact-item:hover{color:#111;color:var(--color-ink);text-decoration:underline}.cv-header__contact-item:focus-visible{border-radius:2px;outline:2px solid #111;outline:2px solid var(--color-ink);outline-offset:2px}.cv-body{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden;padding:6mm 12mm 12mm;padding:var(--space-lg) var(--margin-page) var(--margin-page)}.cv-section{flex-shrink:0}.cv-section:not(:last-child){border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--color-divider-light);margin-bottom:4mm;margin-bottom:var(--space-md);padding-bottom:4mm;padding-bottom:var(--space-md)}.cv-section:last-child{flex-shrink:1;min-height:0}.cv-section__title{color:#111;color:var(--color-ink);font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-body);font-size:8.5pt;font-size:var(--text-section);font-weight:700;letter-spacing:.12em;margin-bottom:2.5mm;margin-bottom:var(--space-sm);padding-bottom:1.5mm;padding-bottom:var(--space-xs);position:relative;text-transform:uppercase}.cv-section__title:after{background:#111;background:var(--color-accent);bottom:0;content:"";height:1.5px;left:0;position:absolute;width:18mm}.cv-section__content,.cv-section__content>p{color:#333;color:var(--color-ink-light);font-size:8.5pt;font-size:var(--text-body);line-height:1.5;line-height:var(--leading-relaxed)}.cv-section__content>p{-webkit-hyphens:auto;hyphens:auto;text-align:justify}.cv-experience{display:flex;flex-direction:column}.cv-experience,.cv-job{gap:2.5mm;gap:var(--space-sm)}.cv-job{grid-gap:2.5mm;grid-gap:var(--space-sm);align-items:start;display:grid;grid-template-columns:28mm 1fr}.cv-job__period{color:#111;color:var(--color-ink);font-size:7.5pt;font-size:var(--text-small);font-weight:600;padding-top:.5mm;white-space:nowrap}.cv-job__content{min-width:0}.cv-job__header{align-items:baseline;display:flex;flex-wrap:wrap;gap:1.5mm;gap:var(--space-xs);margin-bottom:.8mm}.cv-job__company{color:#111;color:var(--color-ink);font-size:8.5pt;font-size:var(--text-body);font-weight:700}.cv-job__company-link{color:inherit;text-decoration:none;transition:color .2s ease}.cv-job__company-link:focus,.cv-job__company-link:hover{text-decoration:underline}.cv-job__separator{color:#555;color:var(--color-ink-muted);font-weight:400}.cv-job__position{color:#333;color:var(--color-ink-light);font-size:8.5pt;font-size:var(--text-body);font-weight:500}.cv-job__achievements{list-style:disc outside;margin:0;padding-left:4mm}.cv-job__achievements li{color:#333;color:var(--color-ink-light);font-size:7.5pt;font-size:var(--text-small);line-height:1.4;line-height:var(--leading-normal);margin-bottom:.6mm;padding-left:.5mm}.cv-job__achievements li:last-child{margin-bottom:0}.cv-skills{grid-gap:1.5mm 3mm;display:grid;gap:1.5mm 3mm;grid-template-columns:repeat(3,1fr);list-style:none;margin:0;padding:0}.cv-skills li{color:#333;color:var(--color-ink-light);font-size:7.5pt;font-size:var(--text-small);font-weight:500;line-height:1.2;line-height:var(--leading-tight);padding-left:3mm;position:relative}.cv-skills li:before{color:#555;color:var(--color-ink-muted);content:"•";font-weight:700;left:0;position:absolute}.cv-education{display:flex;flex-direction:column;gap:1.5mm;gap:var(--space-xs)}.cv-edu{grid-gap:2.5mm;grid-gap:var(--space-sm);align-items:baseline;display:grid;gap:2.5mm;gap:var(--space-sm);grid-template-columns:28mm 1fr}.cv-edu__period{color:#111;color:var(--color-ink);font-size:7.5pt;font-size:var(--text-small);font-weight:600}.cv-edu__content{min-width:0}.cv-edu__degree{color:#111;color:var(--color-ink);font-size:8.5pt;font-size:var(--text-body);font-weight:700;margin-bottom:.3mm}.cv-edu__institution{color:#333;color:var(--color-ink-light);font-size:7.5pt;font-size:var(--text-small)}.actions{display:flex;flex-shrink:0;gap:12px;margin-top:10px}.btn{background:#fff;background:var(--color-paper);border:1px solid #ccc;border:1px solid var(--color-divider);border-radius:4px;color:#555;color:var(--color-ink-muted);cursor:pointer;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-body);font-size:9pt;font-weight:500;padding:10px 24px;transition:all .2s ease}.btn:hover:not(:disabled){background:#111;background:var(--color-ink);border-color:#111;border-color:var(--color-ink);color:#fff;color:var(--color-paper)}.btn:focus-visible{outline:2px solid #111;outline:2px solid var(--color-ink);outline-offset:2px}.btn:disabled{cursor:not-allowed;opacity:.5}.error-boundary{margin:0 auto;max-width:600px;padding:40px;text-align:center}.error-boundary h1{color:#111;color:var(--color-ink);font-size:24px;margin-bottom:16px}.error-boundary p{color:#333;color:var(--color-ink-light);margin-bottom:24px}@page{size:A4 portrait;margin:0}@media print{*{color-adjust:exact!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body,html{background:#fff!important;margin:0!important;padding:0!important;position:static!important}#root,.app,body,html{height:auto!important;overflow:visible!important;width:auto!important}.app{display:block!important;padding:0!important;position:static!important}.cv-a4{box-shadow:none!important;height:297mm!important;height:var(--a4-height)!important;margin:0!important;max-height:297mm!important;max-height:var(--a4-height)!important;max-width:210mm!important;max-width:var(--a4-width)!important;overflow:visible!important;transform:none!important;width:210mm!important;width:var(--a4-width)!important}.cv-a4,.cv-header{page-break-after:avoid!important}.cv-a4,.cv-body,.cv-header{page-break-inside:avoid!important}.cv-body{overflow:visible!important}.cv-job,.cv-section{page-break-inside:avoid!important}.actions,.notification{display:none!important}}.notification{border-radius:6px;box-shadow:0 4px 12px #00000026;font-size:13px;font-weight:500;left:50%;padding:10px 20px;position:fixed;top:16px;transform:translateX(-50%) translateY(-100px);transition:transform .3s cubic-bezier(.16,1,.3,1);transition:transform .3s var(--ease-out);z-index:1000}.notification.show{transform:translateX(-50%) translateY(0)}.notification.success{background:#111;background:var(--color-ink);color:#fff;color:var(--color-paper)}.notification.error{background:#dc3545;color:#fff}
/*# sourceMappingURL=main.88a6e4eb.css.map*/