.r-h{font-size:.8125rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.view-btn{color:#a1a1aa;transition:background-color .2s,color .2s}.view-btn[aria-pressed=true]{background:#fff;color:#09090b}.metric{color:var(--fg);font-weight:700;border-radius:.25rem;padding:0 .2em;background:color-mix(in oklab,var(--accent) 14%,transparent);box-shadow:0 0 14px -2px color-mix(in oklab,var(--accent) 35%,transparent)}.bullets>li{position:relative;padding-left:1.1rem}.bullets>li:before{content:"";position:absolute;left:0;top:.62em;width:.4rem;height:.4rem;border-radius:999px;background:var(--accent)}.timeline{position:relative;display:grid;gap:1.25rem;padding-left:2rem}.timeline:before{content:"";position:absolute;left:.45rem;top:.5rem;bottom:.5rem;width:2px;background:linear-gradient(to bottom,var(--accent),var(--accent-2));opacity:.5}.timeline-item{position:relative}.timeline-item:before{content:"";position:absolute;left:-2rem;top:1.75rem;width:.95rem;height:.95rem;border-radius:999px;background:var(--bg);border:2px solid var(--accent);transition:background-color .25s,box-shadow .25s}.timeline-item:has(.is-match):before{background:var(--accent);box-shadow:0 0 12px var(--accent)}.exp-card{transition:opacity .3s ease,border-color .3s ease,box-shadow .3s ease,filter .3s ease}.exp-card.is-dim,[data-tags].is-dim>.exp-card{opacity:.3;filter:saturate(.4)}.exp-card.is-match,[data-tags].is-match>.exp-card{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 12px 32px -12px color-mix(in oklab,var(--accent) 50%,transparent)}#resume[data-view=compact] .metrics-strip,#resume[data-view=compact] .stack,#resume[data-view=compact] .loc-badge{display:none}#resume[data-view=compact] .timeline{gap:.6rem}#resume[data-view=compact] .exp-card{padding:.85rem 1rem;backdrop-filter:none}#resume[data-view=compact] .bullets{margin-top:.6rem;font-size:14px}@page{size:A4;margin:10mm 12mm}@media print{header.sticky,footer,.ambient,.no-print,.metrics-strip,.resume-hero>div,.timeline:before,.timeline-item:before,.cert-icon,.edu-card>svg,.meta-line svg,.loc-badge svg,.award-badge svg,.resume-contact svg{display:none!important}html,html[data-theme],body{background:#fff!important;color:#000!important;color-scheme:light!important;font-size:8.5pt}#resume,#resume *{background:none!important;color:#000!important;box-shadow:none!important;text-shadow:none!important;backdrop-filter:none!important;filter:none!important;opacity:1!important;transition:none!important;transform:none!important;border-color:#888!important;-webkit-text-fill-color:black!important}#resume{max-width:none;margin:0;padding:0;zoom:.9}#resume .resume-hero{border:0!important;border-bottom:1px solid #000!important;border-radius:0!important;padding:0 0 5pt!important;overflow:visible}#resume h1{font-size:22pt;line-height:1.1}#resume .resume-role{margin-top:2pt;font-size:11pt}#resume .resume-contact{margin-top:5pt;gap:1pt 12pt}#resume .contact-pill{border:0!important;padding:0!important;font-size:9pt}#resume section{margin-top:6pt!important}#resume .r-h{font-size:10pt;border-bottom:1px solid #000;padding-bottom:1pt}#resume p,#resume li,#resume dd,#resume dt{font-size:8.5pt!important;line-height:1.22!important}#resume section>p{margin-top:3pt}#resume .skill-list{margin-top:4pt;gap:1pt 10pt;grid-template-columns:11rem 1fr}#resume article,#resume .cert-card{border:0!important;border-radius:0!important;padding:0!important}#resume .timeline{padding-left:0;gap:4pt;margin-top:3pt}#resume h3{font-size:10pt!important}#resume .role-line{font-weight:600;font-size:9.5pt!important}#resume .loc-badge,#resume .award-badge{border:0!important;padding:0!important;margin-top:0!important;font-size:8.5pt!important}#resume .bullets{margin-top:2pt}#resume .bullets>li{padding-left:10pt;margin-top:1pt}#resume .bullets>li:before{background:#000!important;width:3pt;height:3pt;top:.55em}#resume .metric{font-weight:700}#resume .stack{display:block!important;margin-top:3pt}#resume .stack:before{content:"Tech: ";font-weight:700;font-size:9pt}#resume .stack>li{display:inline;border:0!important;padding:0!important;font-size:8.5pt!important}#resume .stack>li:not(:last-child):after{content:", "}#resume .edu-card+.edu-card,#resume .cert-card+.cert-card{margin-top:0}#resume ul.grid{gap:3pt!important}#resume div.grid{gap:4pt!important}.timeline-item,#resume article{break-inside:avoid}#resume h2,#resume h3{break-after:avoid}}
