.minimap{opacity:0;pointer-events:none;transition:opacity .2s}.minimap[data-on]{opacity:1;pointer-events:auto}.minimap[data-at=left]{left:1rem;right:auto}.minimap .win{fill:var(--c-wire)}.minimap .view{fill:color-mix(in srgb, var(--ink) 12%, transparent);stroke:var(--ink);stroke-width:1px;vector-effect:non-scaling-stroke}@media screen{.resume .print-only{display:none}.resume .name{letter-spacing:-.03em;text-wrap:balance;font-size:2.25rem;font-weight:600;line-height:1.2}.resume .name:focus{outline:none}.resume .subtitle{color:var(--ink-muted);margin-top:.5rem;font-size:1.0625rem}.resume .contact{color:var(--ink-muted);flex-wrap:wrap;gap:.25rem 1.5rem;margin-top:.75rem;font-size:.875rem;display:flex}.resume .contact a{padding-block:.25rem;display:inline-block}.resume :is(.contact,.org,.honors) a{color:var(--c-ink);text-underline-offset:.2em;text-decoration:underline 1px;text-decoration-color:color-mix(in srgb, currentColor 45%, transparent)}.resume :is(.contact,.org,.honors) a:hover{text-decoration-color:currentColor}.resume .section{margin-top:2.25rem}.resume .section-title{color:var(--ink-faint);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:.75rem;margin-bottom:1rem;font-size:.75rem;font-weight:600;display:flex}.resume .section-title:after{content:"";background:var(--line);flex:1;height:1px}.resume .entry-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:0 1rem;display:flex}.resume .entry-title{letter-spacing:-.01em;font-size:1.0625rem}.resume .meta{color:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:.8125rem}.resume .org,.resume .detail,.resume .school{color:var(--ink-muted)}.resume .school{font-weight:400}.resume .timeline{border-left:1.5px solid var(--line);gap:1.5rem;margin-left:.375rem;display:grid}.resume .timeline .entry{padding-left:1.5rem;position:relative}.resume .dot{border:2px solid var(--surface);background:var(--line-strong);border-radius:50%;width:.75rem;height:.75rem;position:absolute;top:.3rem;left:calc(-.375rem - 1px)}.resume .dot[data-live]{background:var(--green-wire)}.resume .bullets{color:var(--ink-muted);gap:.3rem;margin-top:.5rem;display:grid}.resume .bullets li{padding-left:1.125rem;position:relative}.resume .bullets li:before{content:"";background:var(--line-strong);width:.4375rem;height:1.5px;position:absolute;top:.75em;left:.125rem}.resume .stack{gap:1rem;display:grid}.resume .skills{gap:.5rem 1.25rem;display:grid}.resume .skills dt{color:var(--ink-faint)}.resume .skills dd+dt{margin-top:.5rem}@media (width>=40rem){.resume .skills{grid-template-columns:11rem minmax(0,1fr);align-items:baseline}.resume .skills dd+dt{margin-top:0}.resume .honors{grid-template-columns:1fr 1fr;gap:1.25rem 2rem}}}@media print{@page{size:Letter;margin:.4in .5in}:root:root{color-scheme:light;--bg:#fff;--ink:#0d1015;--ink-muted:#2f3640;--ink-faint:#59616d;--line:#d9dde3;--line-strong:#b7bec8;--ok:#15803d;font-family:var(--font-geist), system-ui, sans-serif;background:#fff;font-size:8.5pt;line-height:1.36}body{min-height:0;font-size:1rem;line-height:inherit;background:#fff;display:block}main{max-width:56rem;padding:0}body>:not(main),.base>.node,.col:not(:has([data-pop=resume])),.branch:not(:has([data-pop=resume])),.branch>.node,.pop:not([data-pop=resume]),.resume-tools{display:none!important}.base,.col,.branch,.pop[data-pop=resume]{margin:0;animation:none;display:block!important;translate:none!important}.node{box-shadow:none;background:0 0;border:0;border-radius:0;outline:0!important;translate:none!important}.node-head{display:none}.world .node>.node-body{padding:0}.resume :is(.section-title,.entry-title){line-height:inherit}.resume .name{font-weight:600}.resume :is(.name,.section-title,.entry-title){letter-spacing:-.02em;text-wrap:balance}.resume p{text-wrap:pretty}.resume header{border-bottom:1px solid var(--line);padding-bottom:.7rem}.resume .name{font-size:1.9rem;line-height:1.1}.resume .subtitle{color:var(--ink-muted);margin-top:.15rem;font-size:1.1rem;line-height:1.5556}.resume .contact{color:var(--ink-muted);flex-wrap:wrap;gap:.5rem 1.25rem;margin-top:.5rem;font-size:.875rem;line-height:1.4286;display:flex}.resume .section{margin-top:.85rem}.resume .section-title{color:var(--ink-faint);font-family:var(--font-plex-mono), ui-monospace, monospace;letter-spacing:.04em;text-transform:uppercase;margin-bottom:.45rem;font-size:.8rem;font-weight:400}.resume .entry{break-inside:avoid}.resume .entry-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.25rem 1rem;display:flex}.resume .meta{color:var(--ink-faint);font-family:var(--font-plex-mono), ui-monospace, monospace;white-space:nowrap;font-size:.75rem}.resume .org,.resume .detail,.resume .school{color:var(--ink-muted)}.resume .school{font-weight:400}.resume .timeline{border-left:1px solid var(--line);gap:.55rem;margin-left:.25rem;display:grid}.resume .timeline .entry{padding-left:1.1rem;position:relative}.resume .dot{border:1.5px solid var(--line-strong);background:#fff;border-radius:999px;width:.6rem;height:.6rem;position:absolute;top:.35rem;left:-.3rem}.resume .dot[data-live]{border-color:var(--ok);background:var(--ok)}.resume .bullets{color:var(--ink-muted);gap:.05rem;margin-top:.15rem;display:grid}.resume .bullets li{padding-left:1.1rem;position:relative}.resume .bullets li:before{content:"";background:var(--line-strong);width:.4rem;height:1.5px;position:absolute;top:.62em;left:.15rem}.resume .stack{gap:.35rem;display:grid}.resume .skills{grid-template-columns:8.5rem 1fr;gap:.1rem 1rem;display:grid}.resume .skills dt{color:var(--ink-faint);font-family:var(--font-plex-mono), ui-monospace, monospace;font-size:.875rem;line-height:1.4286}.resume .honors{grid-template-columns:1fr 1fr;gap:.4rem 1.5rem}.resume .honors .entry{flex-wrap:wrap;align-content:flex-start;gap:0 .5rem;display:flex}.resume .honors .entry-head{display:contents}.resume .honors .meta{order:1}.resume .honors .detail{flex-basis:100%;order:2}}
