.cv-root{--ink:#111;--ink-2:#444;--rule:#ccc;--accent:#023bfd;color:var(--ink);-webkit-font-smoothing:antialiased;background:#f4f4f4;min-height:100svh;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:11pt;line-height:1.45}.cv-root *,.cv-root :before,.cv-root :after{box-sizing:border-box;margin:0;padding:0}.cv-root .toolbar{border-bottom:1px solid var(--rule);z-index:10;background:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:12px;display:flex;position:sticky;top:0}.cv-root .toolbar a,.cv-root .toolbar button{font:inherit;color:var(--ink);border:1px solid var(--ink);cursor:pointer;background:#fff;border-radius:4px;padding:8px 14px;font-size:12px;text-decoration:none}.cv-root .toolbar .primary{background:var(--ink);color:#fff}.cv-root .toolbar .primary:hover{background:var(--accent);border-color:var(--accent)}.cv-root .toolbar a:hover{border-color:var(--accent);color:var(--accent)}.cv-root .toolbar-right{flex-wrap:wrap;gap:8px;display:flex}.cv-root .page{background:#fff;max-width:210mm;margin:24px auto;padding:18mm;box-shadow:0 1px 4px #00000014}.cv-root h1{letter-spacing:-.01em;color:var(--ink);margin-bottom:4px;font-size:22pt;font-weight:700}.cv-root .headline{color:var(--ink-2);margin-bottom:10px;font-size:11pt}.cv-root .contact-line{color:var(--ink);border-bottom:1px solid var(--rule);flex-wrap:wrap;gap:4px 14px;margin-bottom:14px;padding-bottom:10px;font-size:10.5pt;display:flex}.cv-root .contact-line a{color:var(--ink);text-decoration:none}.cv-root .contact-line span{color:var(--ink-2)}.cv-root h2{text-transform:uppercase;letter-spacing:.08em;color:var(--ink);border-bottom:1px solid var(--ink);margin-top:16px;margin-bottom:10px;padding-bottom:4px;font-size:12pt;font-weight:700}.cv-root .summary p{font-size:11pt;line-height:1.5}.cv-root .entry{page-break-inside:avoid;break-inside:avoid;margin-bottom:12px}.cv-root .entry-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.cv-root .entry h3{font-size:11.5pt;font-weight:700}.cv-root .entry .company-line{color:var(--ink-2);font-size:10.5pt;font-style:italic}.cv-root .entry .dates{color:var(--ink-2);white-space:nowrap;font-size:10.5pt}.cv-root .entry ul{margin:6px 0;padding-left:18px;list-style:outside}.cv-root .entry ul li{margin-bottom:3px;font-size:10.5pt}.cv-root .entry .tech-line{color:var(--ink-2);margin-top:4px;font-size:10pt}.cv-root .entry .tech-line b{color:var(--ink);font-weight:600}.cv-root .skills dl{grid-template-columns:1fr;gap:4px;display:grid}.cv-root .skills dt{font-size:10.5pt;font-weight:700;display:inline}.cv-root .skills dd{margin-left:4px;font-size:10.5pt;display:inline}.cv-root .skills .row{margin-bottom:3px}.cv-root .projects .entry .company-line b{color:var(--ink);font-weight:600}.cv-root .languages ul{flex-wrap:wrap;gap:4px 24px;padding:0;font-size:10.5pt;list-style:none;display:flex}@page{size:A4;margin:16mm 18mm}@media print{.cv-root{background:#fff;font-size:10.5pt}.cv-root .toolbar{display:none}.cv-root .page{max-width:none;box-shadow:none;margin:0;padding:0}.cv-root h1{font-size:20pt}.cv-root h2{margin-top:12px;font-size:11pt}.cv-root a{color:var(--ink);text-decoration:none}.cv-root .entry{margin-bottom:10px}.cv-root .entry ul li{font-size:10pt}}@media (width<=640px){.cv-root .page{margin:12px;padding:12mm 10mm}.cv-root h1{font-size:18pt}.cv-root .entry-head{flex-direction:column;gap:2px}}
