:root{--ink:#182230;--muted:#627084;--paper:#fff;--page:#edf4f7;--sidebar:#102a43;--sidebar-2:#173b57;--accent:#0f9f8f;--accent-2:#e56b4e;--gold:#f5b84b;--line:#d9e3eb;--soft:#f6fafb}*{box-sizing:border-box}body{color:var(--ink);background:radial-gradient(circle at 0 0,#0f9f8f2e,#0000 34rem),linear-gradient(135deg,#edf4f7 0%,#f8fbfc 48%,#eef1f6 100%);margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;line-height:1.55}.page-shell{min-height:100vh;padding:34px 18px}.cv-sheet{background:var(--paper);border:1px solid #d9e3ebe6;border-radius:24px;grid-template-columns:minmax(0,1fr) 318px;gap:0;max-width:1180px;margin:0 auto;display:grid;overflow:hidden;box-shadow:0 28px 90px #18223026}.content{padding:44px 50px 34px}.sidebar{background:linear-gradient(180deg, #ffffff14, transparent 28rem), linear-gradient(155deg, var(--sidebar) 0%, var(--sidebar-2) 100%);color:#f7fbff;padding:34px 26px}.identity-card{text-align:center;justify-items:center;gap:14px;margin-bottom:30px;display:grid}.identity-card p{color:#ffffffe0;background:#ffffff14;border:1px solid #ffffff29;border-radius:999px;width:100%;margin:0;padding:9px 12px;font-size:.86rem;font-weight:750}.avatar-wrap{background:#ffffff1f;border:5px solid #ffffff57;border-radius:50%;width:156px;height:156px;overflow:hidden;box-shadow:0 18px 40px #0000003d}.avatar-wrap img{object-fit:cover;width:100%;height:100%}.hero{background:linear-gradient(135deg, #0f9f8f1f, #f5b84b14), var(--soft);border:1px solid #0f9f8f2e;border-radius:22px;grid-template-columns:minmax(0,1fr) 260px;align-items:end;gap:26px;margin-bottom:32px;padding:34px;display:grid}.hero p{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin:0 0 8px;font-size:.78rem;font-weight:900}.hero h1{color:#101928;max-width:720px;margin:0;font-size:clamp(2.6rem,5vw,5rem);font-weight:900;line-height:.96}.hero-copy>span{color:var(--accent-2);margin-top:16px;font-size:1.24rem;font-weight:850;display:inline-block}.hero-copy>strong{color:#415064;max-width:660px;margin-top:10px;font-size:1rem;display:block}.hero-contact{color:#405164;flex-wrap:wrap;gap:5px 14px;margin-top:14px;font-size:.84rem;font-weight:700;display:flex}.hero-contact a{color:var(--accent);text-decoration:none}.hero-contact span{flex-basis:100%}.hero-stats{gap:10px;display:grid}.hero-stats div{background:#ffffffb8;border:1px solid #102a431a;border-radius:16px;min-height:78px;padding:14px}.hero-stats b{color:var(--sidebar);font-size:1.8rem;line-height:1;display:block}.hero-stats span{color:var(--muted);text-transform:uppercase;margin-top:6px;font-size:.8rem;font-weight:800;display:block}.section{margin-bottom:28px}.print-summary{display:none}.section h2{color:inherit;letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:10px;margin:0 0 14px;font-size:.88rem;font-weight:900;display:flex}.content .section h2:before{content:"";background:var(--accent);border-radius:999px;width:28px;height:3px}.sidebar .section h2{border-bottom:1px solid #ffffff2e;padding-bottom:9px}.about{color:#3f4f60;gap:12px;max-width:780px;font-size:1rem;display:grid}.about p,.education p,.stack{margin:0}.match-list{border-left:4px solid var(--accent);background:var(--soft);border-radius:0 14px 14px 0;gap:10px;margin:0;padding:18px 20px;list-style:none;display:grid}.match-list li{color:#3f4f60;padding-left:18px;position:relative}.match-list li:before{content:"";background:var(--accent-2);border-radius:50%;width:6px;height:6px;position:absolute;top:.72em;left:0}.contact-list,.simple-list,.experience-card ul{margin:0;padding:0;list-style:none}.contact-list{gap:14px;display:grid}.contact-list li{color:#ffffffeb;overflow-wrap:anywhere}.contact-list span{color:#ffffff8f;letter-spacing:.1em;text-transform:uppercase;margin-bottom:2px;font-size:.72rem;font-weight:900;display:block}.chips,.keyword-grid{flex-wrap:wrap;gap:8px;display:flex}.chips span{color:#f7fbff;background:#ffffff17;border:1px solid #ffffff2e;border-radius:999px;align-items:center;min-height:30px;padding:5px 10px;font-size:.86rem;display:inline-flex}.keyword-grid span{color:#0b6d66;background:#effaf8;border:1px solid #0f9f8f33;border-radius:999px;align-items:center;min-height:34px;padding:6px 12px;font-size:.9rem;font-weight:800;display:inline-flex}.simple-list{gap:8px;display:grid}.simple-list li{color:#ffffffe6}.education{color:#ffffffe6;gap:8px;display:grid}.timeline{gap:16px;display:grid}.experience-card{background:#fff;border:1px solid #d9e3ebeb;border-radius:18px;grid-template-columns:132px minmax(0,1fr);gap:20px;padding:20px;display:grid;box-shadow:0 12px 30px #102a4312}.experience-time{color:var(--accent);font-size:.86rem;font-weight:900}.experience-body{min-width:0}.experience-heading{justify-content:space-between;align-items:baseline;gap:18px;margin-bottom:8px;display:flex}.experience-heading h3{color:#111c2b;margin:0;font-size:1.12rem}.experience-heading span{color:var(--accent-2);white-space:nowrap;font-size:.95rem;font-weight:850}.experience-card ul{gap:5px;margin-bottom:10px;display:grid}.experience-card li{color:#405164;padding-left:16px;position:relative}.experience-card li:before{content:"";background:var(--gold);border-radius:50%;width:5px;height:5px;position:absolute;top:.74em;left:0}.stack{color:#27374a;font-size:.92rem;font-weight:850}.project-links{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.project-links a{color:var(--accent);border:1px solid #0f8b8d47;border-radius:6px;padding:7px 11px;font-size:.82rem;font-weight:850;text-decoration:none}.project-links a:hover,.project-links a:focus-visible{border-color:var(--accent);background:#0f8b8d14}.footer-current{border-top:1px solid var(--line);color:var(--muted);text-align:right;margin-top:34px;padding-top:18px;font-size:.88rem}.footer{display:none}.view-switcher{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff0;border:1px solid #102a4329;border-radius:7px;grid-template-columns:1fr 1fr;padding:4px;display:inline-grid;position:fixed;top:16px;right:18px;box-shadow:0 10px 28px #102a4324}.view-switcher a{color:#405164;text-align:center;border-radius:4px;min-width:106px;padding:7px 10px;font-size:.78rem;font-weight:800;text-decoration:none}.view-switcher a[aria-current=page]{background:var(--sidebar);color:#fff}.compact-cv{background:#fff;width:min(100%,920px);margin:32px auto;padding:42px 46px;box-shadow:0 24px 70px #18223024}.compact-cv h1,.compact-cv h2,.compact-cv h3,.compact-cv p{margin-top:0}.compact-cv h2{color:var(--sidebar);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;font-size:1rem}.compact-header{border-bottom:3px solid var(--accent);grid-template-columns:minmax(0,1fr) 250px;align-items:end;gap:28px;padding-bottom:20px;display:grid}.compact-header p{color:var(--accent-2);margin-bottom:6px;font-weight:850}.compact-header h1{color:#101928;margin-bottom:8px;font-size:2.8rem;line-height:1}.compact-header>div>strong{color:#415064;display:block}.compact-header address{color:#405164;text-align:right;gap:4px;font-size:.84rem;font-style:normal;display:grid}.compact-header a{color:var(--accent);font-weight:750;text-decoration:none}.compact-summary,.compact-skills,.compact-projects,.compact-work,.compact-earlier{margin-top:22px}.compact-summary p,.compact-skills p,.compact-earlier p{color:#405164;margin-bottom:6px}.compact-skills>div{grid-template-columns:1fr 1fr;gap:5px 24px;display:grid}.compact-skills p{margin:0}.compact-project-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.compact-project-grid article{border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:5px;padding:14px}.compact-project-grid article>div,.compact-work-heading{justify-content:space-between;gap:14px;display:flex}.compact-project-grid h3,.compact-work-heading h3{color:#182230;margin-bottom:0;font-size:1rem}.compact-project-grid span,.compact-work-heading>span{color:var(--accent);white-space:nowrap;font-size:.78rem;font-weight:850}.compact-project-grid p{color:#405164;margin:8px 0;font-size:.88rem}.compact-project-grid article>strong,.compact-work-list article>p{color:#27374a;margin:0;font-size:.78rem;font-weight:800;display:block}.compact-project-grid article>a{color:var(--accent);margin-top:7px;font-size:.78rem;font-weight:850;display:inline-block}.compact-work-list{gap:10px;display:grid}.compact-work-list article{border-bottom:1px solid var(--line);padding-bottom:10px}.compact-work-heading strong{color:var(--accent-2);font-size:.84rem}.compact-work-list ul{color:#405164;gap:3px;margin:7px 0;padding-left:18px;display:grid}.compact-earlier{background:var(--soft);padding:12px 14px}.compact-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:16px;margin-top:16px;padding-top:10px;font-size:.78rem;display:flex}@media (width<=960px){.page-shell{padding:0}.cv-sheet{border:0;border-radius:0;grid-template-columns:1fr}.content{order:2;padding:28px 20px}.sidebar{order:1;padding:30px 22px}.hero{grid-template-columns:1fr;padding:24px}.hero-stats{grid-template-columns:repeat(3,1fr)}.avatar-wrap{width:132px;height:132px}.experience-card{grid-template-columns:1fr;gap:8px;padding:18px}.experience-heading{gap:2px;display:grid}.experience-heading span{white-space:normal}}@media (width<=520px){.hero h1{font-size:2.45rem}.hero-stats{grid-template-columns:1fr}.hero-stats div{min-height:0}.compact-cv{margin:0;padding:24px 18px}.compact-header,.compact-skills>div,.compact-project-grid{grid-template-columns:1fr}.compact-header address{text-align:left}.compact-footer{display:grid}.view-switcher{top:8px;right:8px}.view-switcher a{min-width:92px;padding:6px 8px;font-size:.72rem}}@media print{@page{size:A4;margin:10mm}body{background:#fff;font-size:10pt;line-height:1.42}.view-switcher{display:none}.page-shell{padding:0}.cv-sheet{max-width:none;box-shadow:none;border:0;border-radius:0;display:block;overflow:visible}.content{padding:0}.sidebar,.print-hide{display:none}.print-summary{border:1px solid var(--line);background:var(--soft);grid-template-columns:1.35fr 1fr;gap:14px;margin:-12px 0 22px;padding:14px 16px;display:grid}.print-summary div{align-content:start;gap:2px;min-width:0;display:grid}.print-summary strong{color:var(--sidebar);text-transform:uppercase;font-size:8.5pt}.print-summary span{color:#405164;overflow-wrap:anywhere;font-size:8.5pt}.hero{grid-template-columns:minmax(0,1fr) 210px;gap:18px;margin-bottom:22px;padding:24px}.hero h1{font-size:38pt}.hero-contact{gap:3px 12px;margin-top:10px;font-size:8.5pt}.section{margin-bottom:20px}.experience-card{break-inside:avoid;page-break-inside:avoid;grid-template-columns:110px minmax(0,1fr);gap:14px;padding:14px 16px}.experience-heading{gap:2px;display:grid}.experience-heading span{white-space:normal}.experience-card ul{gap:3px;margin-bottom:7px}.project-links{margin-top:8px}.hero,.experience-card{box-shadow:none}.footer-current{break-inside:avoid;page-break-inside:avoid}.compact-cv{width:auto;box-shadow:none;margin:0;padding:0;font-size:10pt;line-height:1.42}.compact-header{grid-template-columns:minmax(0,1fr) 62mm;gap:8mm;padding-bottom:5mm}.compact-header h1{margin-bottom:2mm;font-size:30pt}.compact-header p{margin-bottom:1mm}.compact-header address{gap:.5mm;font-size:9pt}.compact-summary,.compact-skills,.compact-projects,.compact-work,.compact-earlier{margin-top:3mm}.compact-cv h2{margin-bottom:1.5mm;font-size:9.5pt}.compact-summary p,.compact-skills p,.compact-earlier p{margin-bottom:.5mm;font-size:8.5pt;line-height:1.2}.compact-skills>div{gap:1mm 5mm}.compact-project-grid{gap:2mm 2.5mm}.compact-project-grid article{break-inside:avoid;padding:2.2mm}.compact-project-grid h3,.compact-work-heading h3{font-size:9pt;line-height:1.15}.compact-project-grid p{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:1mm 0;font-size:8pt;line-height:1.18;display:-webkit-box;overflow:hidden}.compact-project-grid article>strong{font-size:7pt;line-height:1.15}.compact-project-grid article>a,.compact-project-grid span,.compact-work-heading>span{font-size:7.2pt}.compact-page-break{break-before:page;page-break-before:always}.compact-work-list{gap:1.5mm}.compact-work-list article{break-inside:avoid;padding-bottom:1.5mm}.compact-work-list ul{gap:.3mm;margin:1mm 0;font-size:8.8pt;line-height:1.22}.compact-work-heading h3{font-size:9.5pt}.compact-work-heading strong{font-size:8pt}.compact-work-list article>p{font-size:7.4pt;line-height:1.15}.compact-earlier{padding:3.5mm 4mm}.compact-footer{margin-top:3mm;padding-top:2mm;font-size:8.2pt}.section h2{break-after:avoid;page-break-after:avoid}}
