*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--sans: system-ui, "Segoe UI", Roboto, sans-serif;--text: #6b6375;--text-h: #08060d;--bg: #fff;--border: #e5e4e7;--accent: #aa3bff;--accent-bg: rgba(170, 59, 255, .1);--accent-border: rgba(170, 59, 255, .5);--card-bg: rgba(244, 243, 236, .5);--shadow: rgba(0, 0, 0, .1) 0 10px 15px -3px, rgba(0, 0, 0, .05) 0 4px 6px -2px;--page-max-width: 900px;--page-padding: 56px;--section-gap: 52px;color-scheme:light dark}@media (prefers-color-scheme: dark){:root{--text: #9ca3af;--text-h: #f3f4f6;--bg: #16171d;--border: #2e303a;--accent: #c084fc;--accent-bg: rgba(192, 132, 252, .15);--accent-border: rgba(192, 132, 252, .5);--card-bg: rgba(47, 48, 58, .5);--shadow: rgba(0, 0, 0, .4) 0 10px 15px -3px, rgba(0, 0, 0, .25) 0 4px 6px -2px}}body{font-family:var(--sans);font-weight:400;background:var(--bg);color:var(--text);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit}.page{max-width:var(--page-max-width);margin:0 auto;padding:var(--page-padding)}@media (max-width: 768px){.page{padding:32px 20px}}.section-label{display:inline-flex;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:3px 10px;border-radius:999px;background:var(--accent-bg);color:var(--accent);border:1.5px solid var(--accent-border);margin-bottom:20px}.sub-label{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text);opacity:.7;margin:20px 0 10px}.divider{border:none;border-top:1px solid var(--border);margin:var(--section-gap) 0}.header{display:flex;justify-content:space-between;align-items:flex-start;gap:40px}@media (max-width: 768px){.header{flex-direction:column;gap:20px}}.header-left h1{font-size:44px;font-weight:700;line-height:1.1;letter-spacing:-1px;color:var(--text-h)}.header-left .job-title{font-size:16px;font-weight:500;color:var(--text);margin-top:8px}.pdf-download-btn{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:8px 16px;border-radius:999px;background:var(--accent);border:1.5px solid var(--accent);color:#fff;font-family:var(--sans);font-size:13px;font-weight:600;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.pdf-download-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow);opacity:.92}.header-right{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0;padding-top:4px}@media (max-width: 768px){.header-right{align-items:flex-start}}.contact-item{display:flex;align-items:center;gap:8px;color:var(--text);font-size:14px;text-decoration:none}a.contact-item{color:var(--accent)}a.contact-item:hover{text-decoration:underline;text-underline-offset:3px}.contact-icon{width:15px;height:15px;flex-shrink:0;opacity:.75}.about p{font-size:15px;color:var(--text);max-width:700px;line-height:1.75}.tags{display:flex;flex-wrap:wrap;gap:8px}.tag{background:var(--accent-bg);color:var(--accent);font-size:12px;font-weight:600;padding:4px 11px;border-radius:999px}.experience-entry{padding:20px 24px;border-radius:16px;background:var(--card-bg);border:1.5px solid var(--border);margin-bottom:20px}.experience-entry:last-child{margin-bottom:0}.exp-header{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:4px}.exp-company{font-size:16px;font-weight:700;color:var(--text-h)}.exp-period{font-size:12px;font-weight:600;color:var(--accent);white-space:nowrap;flex-shrink:0}.exp-role{font-size:13.5px;font-weight:500;color:var(--text);margin-bottom:14px;opacity:.85}.exp-bullets{list-style:none;padding:0}.exp-bullets li{position:relative;padding-left:18px;font-size:13.5px;color:var(--text);margin-bottom:8px;line-height:1.65}.exp-bullets li:last-child{margin-bottom:0}.exp-bullets li:before{content:"–";position:absolute;left:0;color:var(--accent)}.project-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}.card{display:flex;flex-direction:column;padding:20px;border-radius:16px;background:var(--card-bg);border:1.5px solid var(--border);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.project-cards .card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--accent)}.card-title{font-size:15px;font-weight:700;color:var(--text-h)}.card-desc{margin-top:10px;font-size:13.5px;color:var(--text);line-height:1.6;flex-grow:1}.card-link{align-self:flex-start;margin-top:14px;color:var(--accent);text-decoration:none;font-size:13px;font-weight:600}.card-link:hover{text-decoration:underline}.card-footer{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.bottom-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media (max-width: 768px){.bottom-row{grid-template-columns:1fr}}.education,.languages{gap:0}.edu-entries{display:flex;flex-direction:column;gap:14px;margin-bottom:16px}.edu-institution{font-size:14px;font-weight:600;color:var(--text-h);line-height:1.45}.edu-degree{font-size:13px;color:var(--text);margin-top:2px}.edu-period{font-size:12px;color:var(--text);opacity:.7;margin-top:2px}.course-list{list-style:none}.course-list li{font-size:13px;color:var(--text);padding:6px 0;border-top:1px solid var(--border);line-height:1.5}.course-platform{font-weight:600;color:var(--text-h)}.lang-list{list-style:none}.lang-list li{display:flex;justify-content:space-between;font-size:13.5px;padding:6px 0;border-bottom:1px solid var(--border);color:var(--text)}.lang-name{color:var(--text-h);font-weight:600}.soft-skills{list-style:none;display:flex;flex-direction:column;gap:8px}.soft-skill-item{font-size:13px;color:var(--text);padding-left:16px;position:relative;line-height:1.5}.soft-skill-item:before{content:"–";position:absolute;left:0;color:var(--accent)}@media print{.pdf-download-btn{display:none}:root{--bg: #ffffff;--text: #333333;--text-h: #000000;--border: #cccccc;--card-bg: #fafafa;--accent: #6b21a8;--accent-bg: #f3e8ff}body{font-size:12px}.page{max-width:100%;padding:0}.header-left h1{font-size:36px}a{text-decoration:none}}@page{margin:20mm 18mm;size:A4}
