.cvv{z-index:40;background-color:var(--bg);background-image:radial-gradient(circle, var(--dot) 1.3px, transparent 1.6px);background-size:24px 24px;flex-direction:column;animation:.25s both cvvIn;display:flex;position:fixed;inset:0}.cvv:focus{outline:none}.cvv-page{min-height:100vh;animation:none;position:static}@keyframes cvvIn{0%{opacity:0}}.cvv-bar{z-index:2;min-height:56px;padding:env(safe-area-inset-top,0px) 20px 0;background:var(--bar-bg);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);border-bottom:1px solid var(--line);align-items:center;gap:16px;display:flex;position:sticky;top:0}.cvv-title{flex-direction:column;gap:4px;min-width:0;display:flex}.cvv-title b{font:500 calc(12px * var(--ls))/1.1 var(--label);letter-spacing:var(--label-track);text-transform:var(--label-case);color:var(--strong)}.cvv-title span{font:500 11px/1.2 var(--mono);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cvv-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.cvv-actions .btn{text-decoration:none}.cvv-scroll{flex:1;justify-content:center;align-items:flex-start;padding:32px 16px 64px;display:flex;overflow:auto}.cvv-page .cvv-scroll{overflow:visible}.cvv .cv-sheet{flex:none;animation:.45s cubic-bezier(.2,.8,.2,1) both sheetIn}.cvv-page .cv-sheet{animation:none}@keyframes sheetIn{0%{opacity:0;translate:0 24px}}html.cv-open{overflow:hidden}.cv-open .you{display:none}@media (prefers-reduced-motion:reduce){.cvv,.cvv .cv-sheet{animation:none}}@media (max-width:760px){.cvv-bar{gap:10px;padding-inline:12px}.cvv-bar .logo{display:none}.cvv-scroll{padding:12px 10px 40px}}.cv-sheet{color:#161616;width:210mm;min-height:297mm;box-shadow:var(--shadow);font:400 8.7pt/1.4 var(--body);-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff;padding:11mm 15mm 10mm}.cv-sheet a{color:inherit;text-decoration:none}.cv-sheet p,.cv-sheet ul,.cv-sheet dl{margin:0}.cv-head{justify-content:space-between;align-items:flex-start;gap:8mm;display:flex}.cv-head h1{font:500 24pt/1 var(--display);letter-spacing:-.025em;color:#0d0d0d;margin:0}.cv-role{color:#4a4a4a;font-size:10.5pt;margin-top:1.6mm!important}.cv-updated{font:500 7.2pt/1 var(--mono);color:#7a7a7a;flex:none;margin-top:1mm!important}.cv-contact{color:#333;flex-wrap:wrap;gap:.8mm 4.5mm;font-size:8pt;display:flex;margin-top:3mm!important}.cv-contact a{color:#0d0d0d}.cv-sheet section{margin-top:3.4mm}.cv-sheet h2{font:500 7.2pt/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#0d0d0d;align-items:center;gap:3mm;margin:0 0 2mm;display:flex}.cv-sheet h2:after{content:"";background:#cfcfcf;flex:1;height:.6pt}.cv-line{justify-content:space-between;align-items:baseline;gap:4mm;display:flex}.cv-sheet h3{font:500 9.6pt/1.25 var(--display);letter-spacing:-.01em;color:#0d0d0d;margin:0}.cv-sheet h3 span{font-family:var(--body);letter-spacing:0;color:#4a4a4a;font-size:8.7pt;font-weight:400}.cv-dates{font:500 7.4pt/1 var(--mono);color:#6a6a6a;font-variant-numeric:tabular-nums;flex:none}.cv-product{margin-top:1.7mm}.cv-sheet h4{color:#0d0d0d;margin:0;font-size:8.9pt;font-weight:600}.cv-sheet h4 span,.cv-sheet h4 a{color:#4a4a4a;font-weight:400}.cv-sheet ul{margin-top:.8mm;padding-left:4mm}.cv-sheet li{margin-top:.3mm;padding-left:.6mm}.cv-sheet li::marker{color:#9a9a9a}.cv-items{padding-left:4mm}.cv-items b{color:#0d0d0d;font-weight:600}.cv-items a{color:#4a4a4a}.cv-skills{gap:.5mm 0;display:grid}.cv-skills div{grid-template-columns:31mm 1fr;gap:3mm;display:grid}.cv-skills dt{color:#0d0d0d;font-weight:600}.cv-skills dd{color:#2a2a2a;margin:0}.cv-entry+.cv-entry{margin-top:1.4mm}.cv-entry p{color:#3a3a3a;margin-top:.4mm!important}@page{size:A4;margin:0}@media print{html,body{background:#fff!important}.cvv{background:#fff;min-height:0;animation:none;display:block;position:static}.cvv-bar{display:none}.cvv-scroll{padding:0;display:block;overflow:visible}.cv-sheet{width:210mm;height:297mm;min-height:0;box-shadow:none;animation:none;overflow:hidden}}@media screen and (max-width:840px){.cv-sheet{width:100%;min-height:0;padding:22px 18px}.cv-head{flex-direction:column;gap:6px}.cv-line{flex-direction:column;gap:2px}.cv-skills div{grid-template-columns:1fr;gap:0}}
