:root{--page-width:210mm;--page-height:297mm;--paper:#fff;--card-background:linear-gradient(145deg, #ffffffd1 0%, #f6f9fdc7 38%, #e8f2ffbd 100%), #f7f8fb;--ink:#111827;--muted:#687386;--subtle:#8b95a5;--line:#ffffffad;--blue:#007aff;--teal:#20c7b5;--coral:#ff6b5f;--green:#32d074}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--paper);color:var(--ink);-webkit-print-color-adjust:exact;print-color-adjust:exact;-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Helvetica Neue,Arial,sans-serif;font-size:8.15pt;line-height:1.36}a{color:inherit;text-decoration:none}p,h1,h2,h3,ul,dl,dd{margin:0}ul{padding:0;list-style:none}.resume{padding:18px 0}.sheet{width:var(--page-width);height:var(--page-height);background:var(--paper);break-after:page;margin:0 auto 18px;padding:10mm;position:relative;overflow:hidden;box-shadow:0 22px 58px #1e293b38}.sheet:before{pointer-events:none;content:"";background:0 0;position:absolute;inset:0}.sheet:last-child{break-after:auto;margin-bottom:0}.sheet>*{z-index:1;position:relative}.glass{border:.25mm solid var(--line);background:var(--card-background);-webkit-backdrop-filter:blur(18px)saturate(1.35);backdrop-filter:blur(18px)saturate(1.35);border-radius:8px}.hero{grid-template-columns:minmax(0,1fr) 38mm;gap:8mm;min-height:62mm;padding:8mm;display:grid}.hero-copy{align-self:center}.eyebrow{color:var(--blue);text-transform:uppercase;font-size:7.2pt;font-weight:700}h1{margin-top:2.2mm;font-size:26pt;font-weight:700;line-height:.98}.headline{color:#2c3544;margin-top:2mm;font-size:13pt;font-weight:700}.summary{color:#475569;max-width:128mm;margin-top:3.5mm;font-size:8.5pt}.hero-media{place-items:center;display:grid}.portrait{object-fit:cover;border:.35mm solid #ffffffe0;border-radius:8px;width:34mm;height:40mm;box-shadow:0 10px 24px #0f172a2e}.top-strip{margin-top:5mm}.contact{color:#344052;overflow-wrap:anywhere;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.2mm 4mm;padding:3.5mm 4mm;font-style:normal;display:grid}.contact>*{grid-template-columns:6.2mm minmax(0,1fr);align-items:center;gap:1.7mm;display:grid}.contact-icon{width:4.2mm;min-width:4.2mm;height:4.2mm;color:var(--blue);place-items:center;display:inline-grid}.contact-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:100%;height:100%;display:block}.contact-icon.github-icon svg{fill:currentColor;stroke:none}.content-grid{grid-template-columns:48mm minmax(0,1fr);gap:6mm;margin-top:6mm;display:grid}.sidebar,.right-stack{flex-direction:column;gap:4mm;display:flex}.panel{padding:4mm}.panel h2,.section>h2{color:#1e293b;text-transform:uppercase;font-size:8.4pt;font-weight:800}.panel p{color:#4b586a;margin-top:2.7mm}.soft-list,.facts{margin-top:2.8mm}.soft-list li,.impact-list li,.experience li{padding-left:4mm;position:relative}.soft-list li+li,.impact-list li+li,.experience li+li{margin-top:1.55mm}.soft-list li:before,.experience li:before{background:var(--blue);content:"";border-radius:50%;width:2mm;height:2mm;position:absolute;top:.42em;left:0}.facts{grid-template-columns:19mm minmax(0,1fr);gap:1.6mm 2.2mm;display:grid}.facts dt{color:var(--subtle);font-weight:700}.facts dd{color:#3d4756}.section>h2{border-bottom:.25mm solid #94a3b86b;align-items:center;gap:3mm;padding-bottom:2.4mm;display:flex}.section>h2:after{background:linear-gradient(90deg, var(--blue), var(--teal), transparent);content:"";border-radius:999px;flex:1;height:.7mm}.experience{break-inside:avoid;border-bottom:.25mm solid #94a3b847;margin-top:3.3mm;padding-bottom:3.1mm}.experience-head{justify-content:space-between;align-items:baseline;gap:4mm;display:flex}.experience h3,.skill-grid h3,.education h3{color:#162033;font-size:9.4pt;line-height:1.18}.experience-head p{color:var(--blue);margin-top:.7mm;font-size:7.2pt;font-weight:700}.experience time{color:var(--muted);white-space:nowrap;flex:none;font-size:7pt;font-weight:700}.experience>p,.experience ul{color:#465365;margin-top:1.7mm}.experience strong{color:#111827}.detail-header{justify-content:space-between;align-items:end;gap:8mm;padding:2mm 0 5mm;display:flex}.detail-header h2{color:#121826;max-width:104mm;margin-top:1.5mm;font-size:22pt;line-height:1.04}.pill-row{flex-wrap:wrap;justify-content:flex-end;gap:1.6mm;max-width:68mm;display:flex}.pill-row li{color:#263244;background:#ffffff9e;border:.25mm solid #ffffffb8;border-radius:8px;padding:1mm 2.2mm;font-size:7pt;font-weight:700;box-shadow:inset 0 .35mm #ffffffc2}.skills{margin-top:3mm}.skill-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:3.6mm;margin-top:3.4mm;display:grid}.skill-grid article{break-inside:avoid;min-height:31mm;padding:4mm}.skill-grid h3{font-size:9.1pt}.skill-grid p{color:#526073;margin-top:2.1mm;font-size:7.45pt}.detail-grid{grid-template-columns:minmax(0,1.05fr) 58mm;gap:6mm;margin-top:5.6mm;display:grid}.impact-list{margin-top:3mm}.impact-list li:before{background:var(--green);color:#fff;text-align:center;content:"✓";border-radius:50%;width:2.4mm;height:2.4mm;font-size:5.4pt;font-weight:800;line-height:2.4mm;position:absolute;top:.22em;left:0}.education{gap:3mm;margin-top:3mm;display:grid}.education article{break-inside:avoid}.education time{color:var(--blue);font-size:7.2pt;font-weight:800}.education h3{margin-top:.8mm;font-size:8.4pt}.education p{color:var(--muted);margin-top:.8mm;font-size:7.15pt}@page{size:A4;margin:0}@media print{html,body{width:var(--page-width);background:#fff}.sheet-cover .hero.glass{-webkit-backdrop-filter:none;background:#f5f8fd}.resume{padding:0}.sheet{box-shadow:none;margin:0}.portrait{box-shadow:none}}@media screen and (width<=820px){body{background:var(--paper);font-size:10pt}.resume{padding:0}.sheet{width:100%;height:auto;min-height:auto;box-shadow:none;break-after:auto;margin:0;padding:22px}.hero,.content-grid,.detail-grid{grid-template-columns:1fr}.contact,.skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-header{display:block}.pill-row{justify-content:flex-start;max-width:none;margin-top:18px}}@media screen and (width<=560px){.contact,.skill-grid{grid-template-columns:1fr}.experience-head{display:block}.experience time{white-space:normal;margin-top:4px;display:block}h1{font-size:34px}}.hero,.panel,.skill-grid article{break-inside:avoid}.hero .eyebrow,.detail-header .eyebrow{letter-spacing:.035em}.contact>*{min-width:0}.contact>*>span:last-child{overflow-wrap:anywhere}.information-panel{padding-block:2.5mm}.information-panel .information-compact{margin-top:1.2mm;line-height:1.25}.experience-last{border-bottom:0}.experience p a,.experience li strong,.achievements li strong{color:var(--blue)}.experience li strong{font-weight:800}.skill-grid article{min-height:32mm}@media print{.sheet{break-after:page}.sheet:last-child{break-after:auto}}
