.resume-page{position:fixed;z-index:40;inset:3.5rem 0 0;overflow:hidden}.resume-canvas,.resume-page{background:hsl(var(--background))}.resume-canvas{display:grid;grid-template-rows:auto minmax(0,1fr);width:calc(100% - 2rem);max-width:70rem;height:100%;margin:0 auto}.resume-header{max-height:25svh;overflow-y:auto;padding:1.35rem 0 1.15rem;border-bottom:2px solid hsl(var(--primary));animation:resume-header-in .24s ease-out both}.resume-columns{display:grid;grid-template-columns:13.75rem minmax(0,1fr);gap:2rem;min-height:0;padding-top:1.4rem}.resume-content,.resume-sidebar{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:hsl(var(--border)) transparent;scrollbar-width:thin}.resume-sidebar{padding:0 .75rem 4rem 0}.resume-content{padding:0 .75rem 5rem 0;scroll-behavior:smooth}.resume-article{width:100%;max-width:52rem;animation:resume-content-in .3s ease-out 50ms both}.resume-markdown{color:hsl(var(--foreground));font-size:.8rem;line-height:1.52}.resume-markdown>:first-child{margin-top:0}.resume-markdown>:last-child{margin-bottom:0}.resume-markdown h1{margin:0 0 .5rem;color:hsl(var(--primary));font-size:2.4rem;font-weight:750;letter-spacing:-.045em;line-height:.98}.resume-markdown h2{margin:2.15rem 0 .9rem;padding-bottom:.5rem;border-bottom:1px solid hsl(var(--border));color:hsl(var(--primary));font-family:var(--font-mono);font-size:.68rem;font-weight:700;letter-spacing:.14em;line-height:1.3;text-transform:uppercase}.resume-markdown h2:first-child{margin-top:0}.resume-markdown h3{margin:1.25rem 0 .15rem;color:hsl(var(--foreground));font-size:.9rem;font-weight:700;letter-spacing:-.012em;line-height:1.3}.resume-markdown p{margin:.38rem 0;color:hsl(var(--foreground)/.84)}.resume-markdown ol,.resume-markdown ul{margin:.5rem 0 .9rem;padding-left:1.05rem}.resume-markdown ul{list-style:square outside}.resume-markdown ol{list-style:decimal outside}.resume-markdown li{margin:.22rem 0;padding-left:.18rem}.resume-markdown li::marker{color:hsl(var(--primary));font-size:.8em}.resume-markdown li>ol,.resume-markdown li>ul{margin:.2rem 0 .35rem}.resume-markdown li>ul{list-style-type:circle}.resume-markdown a{color:hsl(var(--primary));font-weight:600;text-decoration:underline;text-decoration-color:hsl(var(--primary)/.35);text-underline-offset:.18em;transition:color .15s ease,text-decoration-color .15s ease}.resume-markdown a:hover{color:hsl(var(--primary)/.78);text-decoration-color:currentColor}.resume-markdown strong{color:hsl(var(--foreground));font-weight:700}.resume-markdown code{border-radius:.15rem;background:hsl(var(--primary)/.08);padding:.05rem .22rem;color:hsl(var(--primary));font-family:var(--font-mono);font-size:.88em}.resume-markdown blockquote{margin:.9rem 0;padding-left:.75rem;border-left:2px solid hsl(var(--primary));color:hsl(var(--muted-foreground))}.resume-markdown hr{margin:1.5rem 0;border-color:hsl(var(--border))}.resume-markdown table{width:100%;margin:.9rem 0;border-collapse:collapse;font-size:.75rem}.resume-markdown td,.resume-markdown th{padding:.45rem .6rem .45rem 0;border-bottom:1px solid hsl(var(--border));text-align:left;vertical-align:top}.resume-markdown--header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1rem 3rem;font-family:var(--font-mono);font-size:.68rem;line-height:1.62}.resume-markdown--header h1{grid-column:1;grid-row:1;margin:0;font-family:var(--font-sans)}.resume-markdown--header p{grid-column:2;grid-row:1;margin:0;color:hsl(var(--muted-foreground));text-align:right}.resume-markdown--sidebar{font-size:.715rem;line-height:1.48}.resume-markdown--sidebar h2{margin-top:1.75rem;font-size:.64rem}.resume-markdown--sidebar h2:first-child{margin-top:0}.resume-markdown--sidebar h3{margin-top:.9rem;font-size:.78rem}.resume-markdown--sidebar p{margin:.38rem 0 .62rem}.resume-markdown--sidebar ol,.resume-markdown--sidebar ul{padding-left:.9rem}.resume-markdown--content{font-size:.79rem;line-height:1.5}.resume-markdown--content h3{padding-right:12rem}.resume-company,.resume-role{display:block}.resume-company{margin-top:.1rem;color:hsl(var(--primary));font-family:var(--font-mono);font-size:.68rem;font-weight:600;letter-spacing:.015em}.resume-markdown--content h3+p:has(>strong:only-child){position:relative;top:-2.42rem;height:0;margin:0;color:hsl(var(--muted-foreground));font-family:var(--font-mono);font-size:.65rem;letter-spacing:.035em;line-height:1;text-align:right}.resume-markdown--content ol+h3,.resume-markdown--content ul+h3{margin-top:1.3rem;padding-top:1rem;border-top:1px solid hsl(var(--border))}@keyframes resume-header-in{0%{opacity:0;transform:translateY(-.35rem)}to{opacity:1;transform:translateY(0)}}@keyframes resume-content-in{0%{opacity:0;transform:translateY(.45rem)}to{opacity:1;transform:translateY(0)}}@media (max-width:900px){.resume-canvas{width:calc(100% - 1.5rem)}.resume-columns{grid-template-columns:12rem minmax(0,1fr);gap:1.5rem}.resume-markdown--content h3{padding-right:0}.resume-markdown--content h3+p:has(>strong:only-child){position:static;height:auto;margin:.2rem 0 .55rem;text-align:left}}@media (max-width:767px){.resume-page{overflow-y:auto}.resume-canvas{display:block;width:calc(100% - 2rem);height:auto;min-height:100%}.resume-header{max-height:none;overflow:visible;padding:1.15rem 0 1rem}.resume-markdown--header{display:block}.resume-markdown--header h1{margin-bottom:.7rem;font-size:2rem}.resume-markdown--header p{text-align:left}.resume-columns{display:block;padding-top:1.25rem}.resume-content,.resume-sidebar{overflow:visible;padding:0 0 2.5rem}.resume-sidebar{border-bottom:1px solid hsl(var(--border));margin-bottom:1.5rem}.resume-markdown--content,.resume-markdown--sidebar{font-size:.76rem}}@media (prefers-reduced-motion:reduce){.resume-article,.resume-header{animation:none}}@media print{.resume-page{position:static;overflow:visible}.resume-canvas{display:block;width:100%;max-width:none;height:auto}.resume-columns{grid-template-columns:12rem minmax(0,1fr)}.resume-content,.resume-sidebar{overflow:visible}.resume-markdown{font-size:8pt}.resume-markdown h2,.resume-markdown h3,.resume-markdown li{-moz-column-break-inside:avoid;break-inside:avoid}}