.cv-viewer{min-width:0;height:100%;min-height:0;color:var(--os-ink);background:var(--os-sunken);font:450 13px/18px var(--font-ui);flex-direction:column;flex:1;display:flex}.cv-viewer .cv-toolbar{flex-wrap:nowrap;flex:0 0 44px;gap:12px;min-height:44px;padding:0 12px}.cv-navigation,.cv-zoom,.cv-actions{align-items:center;gap:4px;display:flex}.cv-page-indicator{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12px}.cv-zoom{margin-left:auto}.cv-zoom output{text-align:center;min-width:44px;font:400 11px/16px var(--font-mono);font-stretch:87.5%}.cv-actions{gap:8px;margin-left:auto}.cv-download{border-radius:var(--r-pill);min-height:32px;color:var(--os-on-accent);background:var(--os-accent);white-space:nowrap;align-items:center;gap:8px;padding:4px 12px;font-weight:600;text-decoration:none;display:inline-flex}.cv-download small{font:500 9px/11px var(--font-ui);display:block}.cv-body{flex:1;min-width:0;min-height:0;display:flex}.cv-thumbnails{border-right:1px solid var(--os-line);background:var(--os-sidebar);flex:0 0 132px;width:132px;padding:16px 8px;overflow-y:auto}.cv-thumbnails>a{border-radius:var(--r-control);color:var(--os-ink-2);flex-direction:column;align-items:center;gap:8px;margin-bottom:12px;padding:4px 0 12px;text-decoration:none;display:flex}.cv-thumbnails>a:hover{background:var(--os-hover)}.cv-thumbnail-preview{pointer-events:none;width:111.16px;height:157.22px;display:block;box-shadow:0 1px 3px #0000001f}.cv-thumbnail-preview .cv-paper{transform-origin:0 0;transform:scale(.14)}.cv-thumbnails a[aria-current=page] .cv-thumbnail-preview{outline:2px solid var(--os-accent-ink);outline-offset:2px}.cv-thumbnail-number{font:500 11px/14px var(--font-mono)}.cv-scroll{overscroll-behavior:contain;flex:1;min-width:0;padding:24px;overflow:auto}.cv-scaled-pages{width:calc(794px * var(--cv-scale));height:calc(var(--cv-stack-height) * var(--cv-scale));margin-inline:auto;position:relative}.cv-pages{width:794px;transform:scale(var(--cv-scale));transform-origin:0 0;flex-direction:column;gap:24px;display:flex}.cv-paper{box-sizing:border-box;color:#1f1b16;width:794px;height:1123px;font:400 11.5px/15.5px var(--font-ui);overflow-wrap:normal;color-scheme:light;background:#fff;border-radius:2px;flex:none;padding:56px;position:relative;box-shadow:0 1px 3px #0000001f,0 8px 24px #0000001f}.cv-paper[data-page="2"]{font-size:11px;line-height:14px}.cv-paper[data-page="2"] .cv-section{margin-bottom:14px}.cv-paper[data-page="2"] .cv-job{margin-bottom:12px}.cv-paper[data-page="2"] .cv-job:last-child{margin-bottom:0}.cv-paper[data-page="2"] p{margin-bottom:4px}.cv-paper :is(h1,.cv-name){font:500 36px/40px var(--font-display);letter-spacing:-.025em;color:#1f1b16;margin:0 0 8px}.cv-paper h2{font:500 10.5px/14px var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:#5c554b;margin:2px 0 0;font-stretch:87.5%}.cv-paper h3{font:600 13px/17px var(--font-ui);color:#1f1b16;margin:0 0 2px}.cv-paper p{margin:0 0 5px}.cv-paper a{color:inherit;text-decoration:none}.cv-paper a:hover{text-decoration:underline}.cv-paper a:focus-visible{outline-color:#5c554b}.cv-heading{border-bottom:1px solid #d8d2c6;margin-bottom:22px;padding-bottom:18px}.cv-paper .cv-role{margin-bottom:12px;font-size:14px;line-height:20px}.cv-contact{font:400 11px/16px var(--font-mono);color:#5c554b;grid-template-columns:180px 170px minmax(0,1fr);gap:40px 14px;font-stretch:87.5%;display:grid}.cv-contact>*{white-space:nowrap;min-width:0}.cv-contact>:nth-child(4){grid-column:span 2}.cv-section{grid-template-columns:120px minmax(0,1fr);column-gap:16px;margin-bottom:18px;display:grid}.cv-section:last-of-type{margin-bottom:0}.cv-highlights{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:12px 0 0;display:grid}.cv-highlights dt{font:500 24px/28px var(--font-display)}.cv-highlights dd{color:#5c554b;margin:4px 0 0;font-size:10px;line-height:13px}.cv-paper ul{margin:6px 0;padding-left:14px;list-style:outside}.cv-paper li{margin:0 0 3px}.cv-paper .cv-competencies{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 20px;margin:0;padding:0;list-style:none;display:grid}.cv-competencies li{margin:0}.cv-job{break-inside:avoid;margin-bottom:16px}.cv-job:last-child{margin-bottom:0}.cv-job-role{font-weight:500}.cv-paper .cv-job-meta{color:#5c554b;margin-bottom:7px;font-size:10.5px;line-height:14px}.cv-paper .cv-stack{color:#5c554b;margin-top:7px;font-size:10px;line-height:14px}.cv-skills{margin:0}.cv-skills>div{grid-template-columns:100px minmax(0,1fr);gap:10px;margin-bottom:5px;font-size:10.5px;line-height:14px;display:grid}.cv-skills dt{font-weight:600}.cv-skills dd{color:#5c554b;margin:0}.cv-page-footer{color:#5c554b;font:400 9px/12px var(--font-mono);border-top:1px solid #d8d2c6;justify-content:space-between;padding-top:8px;font-stretch:87.5%;display:flex;position:absolute;bottom:24px;left:56px;right:56px}.cv-empty{flex:1;padding:24px;overflow:auto}html.no-js .cv-interactive{display:none}html:is([data-view=simple],:has(#simple:target)) #static-window[data-app=cv] .cv-viewer{height:auto;--cv-scale:min(1, tan(atan2(calc(100cqw - 32px), 794px)))!important}html:is([data-view=simple],:has(#simple:target)) #static-window[data-app=cv] .cv-body{display:block}html:is([data-view=simple],:has(#simple:target)) #static-window[data-app=cv] .cv-thumbnails{display:none}html:is([data-view=simple],:has(#simple:target)) #static-window[data-app=cv] .cv-scroll{padding:16px;overflow:visible}@container window (width<=700px){.cv-viewer .cv-toolbar{gap:4px;padding-inline:8px}.cv-actions{gap:2px}.cv-download{gap:4px;padding-inline:10px}}@container window (width<=600px){.cv-viewer:not([data-zoomed]){--cv-scale:tan(atan2(calc(100cqw - 32px), 794px))!important}.cv-navigation,.cv-thumbnails,.cv-viewer:not([data-zoomed]) .cv-zoom,.cv-zoom>button:not([aria-pressed]){display:none}.cv-viewer .cv-toolbar{flex-basis:52px;min-height:52px;padding-inline:16px}.cv-zoom button,.cv-actions button,.cv-download{min-width:44px;min-height:44px!important}.cv-viewer[data-zoomed] .cv-page-indicator{display:none}.cv-viewer[data-zoomed] .cv-zoom{margin-left:0}.cv-viewer[data-zoomed] .cv-actions button{padding-inline:0}.cv-viewer[data-zoomed] .cv-print-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.cv-scroll{padding:16px}}@media (forced-colors:active){.cv-paper,.cv-thumbnail-preview{border:1px solid canvastext}.cv-thumbnails a[aria-current=page] .cv-thumbnail-preview{outline-color:highlight}.cv-download{border:1px solid buttontext}}@media print{.cv-contact{row-gap:6px}}
