.cv-print-bar{background:var(--bg);border-bottom:1px solid var(--line);z-index:100;align-items:center;gap:1rem;padding:.75rem 2rem;display:flex;position:fixed;top:0;left:0;right:0}.cv-print-btn{background:var(--fg);color:var(--bg);font-family:var(--font-body);cursor:pointer;border:none;border-radius:999px;padding:.5rem 1.25rem;font-size:.875rem;font-weight:400;transition:opacity .15s}.cv-print-btn:hover{opacity:.8}.cv-back{color:var(--muted-fg);font-size:.875rem;text-decoration:none}.cv-back:hover{color:var(--fg)}.cv-page{padding-top:4rem}.cv-sheet{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);max-width:800px;margin:2rem auto;padding:3rem 2.5rem}.cv-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:2rem;margin-bottom:1.5rem;display:flex}.cv-name{font-family:var(--font-display);letter-spacing:-.025em;color:var(--fg);margin:0 0 .25rem;font-size:2.25rem;font-weight:200}.cv-role{color:var(--muted-fg);margin:0;font-size:.9rem;font-weight:300}.cv-contact{text-align:right;color:var(--muted-fg);flex-direction:column;gap:.2rem;font-size:.8rem;display:flex}.cv-contact a{color:var(--fg);text-decoration:none}.cv-rule{background:var(--line-strong);border:0;height:1px;margin:0 0 1.5rem}.cv-section{margin-bottom:1.75rem}.cv-section-title{font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--faint-fg);margin:0 0 .75rem;font-size:.72rem;font-weight:400}.cv-body{color:var(--fg);margin:0;font-size:.875rem;font-weight:300;line-height:1.65}.cv-label{letter-spacing:.08em;text-transform:uppercase;color:var(--faint-fg);margin:0 0 .3rem;font-size:.72rem;font-weight:400}.cv-meta{color:var(--muted-fg);margin:0;font-size:.78rem;font-weight:300}.cv-two-col{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.cv-project{border-bottom:1px solid var(--line);margin-bottom:1rem;padding-bottom:1rem}.cv-project:last-child{border-bottom:0}.cv-project-header{justify-content:space-between;align-items:baseline;margin-bottom:.3rem;display:flex}.cv-project-name{font-family:var(--font-display);color:var(--fg);font-size:.95rem;font-weight:400}.cv-project-year{color:var(--faint-fg);font-variant-numeric:tabular-nums;font-size:.78rem}@media print{.no-print{display:none!important}.cv-page{padding-top:0}.cv-sheet{background:#fff;border:none;border-radius:0;max-width:100%;margin:0;padding:0}body{font-size:11px;color:#000!important;background:#fff!important}.cv-name{font-size:24pt}.cv-role{font-size:10pt}.cv-body{font-size:9pt;line-height:1.5}@page{size:A4;margin:18mm}}
