:root{color:#111;--page-bg:#f5f5f5;--surface:#fff;--text:#111;--muted:#2f2f2f;--border:#1b1b1b;--link:#0f172a;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}@media (prefers-color-scheme:dark){:root{color:#f3f4f6;--page-bg:#0b0d10;--surface:#111418;--text:#f3f4f6;--muted:#d1d5db;--border:#e5e7eb;--link:#fff;background:#0b0d10}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--page-bg);min-width:320px;color:var(--text);margin:0}a{color:var(--link)}p,li{font-size:1rem}#root{min-height:100vh}.cv-page{box-sizing:border-box;background:var(--surface);width:min(1040px,100%);color:var(--text);margin:0 auto;padding:28px 40px 36px}.hero{text-align:center;margin-bottom:18px}.hero h1{letter-spacing:-.03em;margin:0;font-size:3rem;font-weight:700}.hero__role{margin:4px 0 8px;font-size:1.15rem}.hero__contacts{flex-wrap:wrap;justify-content:center;gap:.35rem;font-size:.97rem;line-height:1.35;display:flex}.hero__contacts a{color:inherit;text-underline-offset:.14em;text-decoration:underline}.cv-section+.cv-section{margin-top:16px}.lead{margin:0;font-size:.98rem;line-height:1.38}.lead strong{font-weight:700}.section-heading{border-bottom:2px solid var(--border);margin-bottom:12px}.section-heading h2{text-transform:uppercase;letter-spacing:.01em;margin:0 0 6px;font-size:1.05rem;font-weight:800}.experience-list{gap:18px;display:grid}.experience-item__header{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.experience-item__header h3,.experience-item__header p,.experience-item__description,.experience-item__label,.experience-item ul{margin:0}.experience-item__header h3{font-size:1rem;font-weight:800}.experience-item__header h3 span{font-weight:400}.experience-item__header p{white-space:nowrap}.experience-item__description{margin-top:2px;line-height:1.35}.experience-item__label{margin-top:2px;font-weight:800}.experience-item ul{margin-top:4px;padding-left:1.5rem;line-height:1.32}.experience-item li+li{margin-top:2px}@media (width<=768px){.cv-page{padding:22px 16px 28px}.hero h1{font-size:2.3rem}.experience-item__header{flex-direction:column;align-items:flex-start;gap:4px}.experience-item__header p{white-space:normal}}@media print{.cv-page{max-width:none;padding:0}}
