*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);letter-spacing:-.012em;font-kerning:normal;margin:0;font-family:Archiv,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.6}a{color:inherit;text-decoration-color:var(--line);text-underline-offset:4px}a:hover{color:var(--blue)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}button{font:inherit;color:var(--muted);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:4px;min-height:44px;padding:8px 12px}button:hover{color:var(--blue);background:var(--panel)}p,h1,h2,h3,ul,dl,dd{margin:0}p,li,dd{color:var(--muted)}.cv-controls,.cv-sheet,.draft-note{width:calc(100% - 48px);max-width:820px;margin-left:auto;margin-right:auto}.cv-controls{justify-content:space-between;align-items:center;gap:16px;margin-top:28px;font-size:12px;display:flex}.cv-controls>a{align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.cv-controls>div{gap:8px;display:flex}#print{color:var(--blue)}.cv-sheet{border:1px solid var(--line);margin-top:28px;margin-bottom:32px;padding:44px 48px 48px}.cv-header{text-align:center;border-bottom:2px solid var(--blue);padding-bottom:24px}h1{letter-spacing:-.025em;font-family:Archiv,sans-serif;font-size:30px;font-weight:700;line-height:1.25}.cv-focus{color:var(--ink);margin-top:10px}.cv-focus>span{color:var(--rust);padding:0 5px}address{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:4px 18px;margin-top:12px;font-size:12px;font-style:normal;display:flex}address a{overflow-wrap:anywhere}.cv-section{margin-top:24px}.cv-section h2{color:var(--ink);border-bottom:1px solid var(--line);margin-bottom:13px;padding-bottom:6px;font-size:14px;font-weight:700;line-height:1.5}.cv-entry{grid-template-columns:minmax(0,1fr) auto;gap:0 20px;display:grid}.cv-entry+.cv-entry{margin-top:20px}.cv-entry>div{display:contents}.cv-entry>div>*{grid-column:1/-1}.cv-entry>div>h3{grid-area:1/1}.cv-date{text-align:right;font-variant-numeric:tabular-nums;grid-area:1/2;padding-top:2px;font-size:12px;line-height:1.6}h3{font-size:14px;font-weight:700;line-height:1.6}.cv-role{color:var(--ink);margin-bottom:7px;font-style:italic}ul{padding-left:17px}li{padding-left:2px}li+li{margin-top:4px}li::marker{color:var(--muted)}.cv-stack{color:var(--muted);margin-top:9px;font-size:12px}.cv-skills{grid-template-columns:142px minmax(0,1fr);gap:8px 24px;display:grid}.cv-skills dt{color:var(--ink)}.draft-note{border-top:1px solid var(--line);margin-bottom:48px;padding-top:18px;font-size:12px}.draft-note summary{cursor:pointer;color:var(--muted);justify-content:space-between;align-items:center;gap:16px;min-height:44px;list-style:none;display:flex}.draft-note summary::-webkit-details-marker{display:none}.draft-note summary span{color:var(--rust)}.draft-note details[open] summary span{transform:rotate(45deg)}.draft-note p{max-width:650px;margin:8px 0}.skip-link{background:var(--paper);z-index:2;padding:12px;position:absolute;top:-100px;left:24px}.skip-link:focus{top:8px}@media (width<=600px){.cv-controls{align-items:flex-start;gap:8px}.cv-controls>div{gap:5px}button{padding:8px;font-size:12px}.cv-sheet{border:0;margin-top:28px;padding:24px 0}h1{font-size:27px}.cv-entry,.cv-skills{grid-template-columns:1fr;gap:3px}.cv-entry+.cv-entry{margin-top:22px}.cv-skills dd+dt{margin-top:9px}.cv-date{text-align:left;grid-area:2/1;margin-bottom:3px;padding:0}address{gap:5px 16px}.cv-header{padding-bottom:23px}.cv-role{margin-bottom:5px}}@page{size:A4;margin:15mm 17mm}@media print{:root[data-direction=compact][data-theme]{--paper:#fff;--ink:#222;--muted:#333;--blue:#222;--rust:#555;--line:#ccc;color-scheme:light}body{color:#222;letter-spacing:0;background:#fff;font-size:10pt;line-height:1.4}.cv-controls,.draft-note,.skip-link{display:none!important}.cv-sheet{border:0;width:100%;max-width:none;margin:0;padding:0}.cv-header{padding-bottom:12pt}h1{font-size:22pt}.cv-focus{margin-top:5pt}address{gap:3pt 13pt;margin-top:7pt;font-size:9pt}.cv-section{margin-top:15pt}.cv-section h2{break-after:avoid;margin-bottom:7pt;font-size:10pt}h3{break-after:avoid;font-size:10pt;line-height:1.4}.cv-entry{break-inside:avoid;grid-template-columns:minmax(0,1fr) auto;gap:0 14pt}.cv-entry+.cv-entry{margin-top:12pt}.cv-date,.cv-stack{font-size:9pt;line-height:1.4}.cv-date{text-align:right;grid-area:1/2;margin:0;padding-top:0}.cv-role{margin-bottom:4pt}.cv-stack{margin-top:5pt}li+li{margin-top:2pt}.cv-skills{grid-template-columns:93pt minmax(0,1fr);gap:4pt 14pt}.cv-skills dd+dt{margin-top:0}a{text-decoration:none}p,li{orphans:3;widows:3}}
