@charset "UTF-8";:root{--color-primary:#0072C6;--color-primary-dark:#005a9e;--color-text-dark:#1a1a1a;--color-text-medium:#4a4a4a;--color-text-light:#666;--color-border:#e0e0e0;--color-bg-light:#f8f9fa;--color-bg-white:#ffffff;--color-accent:#0072C6;--font-sans:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;--font-serif:'Merriweather', Georgia, serif;--spacing-xs:0.5rem;--spacing-sm:1rem;--spacing-md:1.5rem;--spacing-lg:2rem;--spacing-xl:3rem;--border-radius:8px;--shadow-sm:0 1px 3px rgba(0,0,0,0.1);--shadow-md:0 4px 6px rgba(0,0,0,0.1)}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-sans);color:var(--color-text-dark);background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{max-width:1000px;margin:2rem auto;background:var(--color-bg-white);box-shadow:0 10px 40px rgba(0,0,0,.1);border-radius:12px;overflow:hidden}.cv-header{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;padding:var(--spacing-xl)var(--spacing-lg);position:relative}.header-content{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);gap:var(--spacing-lg)}.header-left{flex:1}.name{font-size:2.75rem;font-weight:700;margin-bottom:var(--spacing-xs);letter-spacing:-.5px}.tagline{font-size:1.25rem;opacity:.95;font-weight:300}.header-right{flex-shrink:0}.profile-photo{width:140px;height:140px;border-radius:50%;border:4px solid rgba(255,255,255,.3);object-fit:cover;box-shadow:0 4px 12px rgba(0,0,0,.2)}.contact-info{display:flex;flex-wrap:wrap;gap:var(--spacing-md)var(--spacing-lg);margin-top:var(--spacing-lg)}.contact-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.95rem}.contact-item i{width:20px;text-align:center;opacity:.9}.contact-item a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.3);transition:border-color .2s}.contact-item a:hover{border-bottom-color:#fff}.print-actions{margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid rgba(255,255,255,.2)}.pdf-button{background:rgba(255,255,255,.2);color:#fff;border:1px solid rgba(255,255,255,.3);padding:var(--spacing-xs)var(--spacing-md);border-radius:var(--border-radius);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s;display:inline-flex;align-items:center;gap:var(--spacing-xs);text-decoration:none}.pdf-button:hover{background:rgba(255,255,255,.3);transform:translateY(-2px);box-shadow:0 4px 8px rgba(0,0,0,.2)}.pdf-button i{font-size:1rem}.cv-main{padding:var(--spacing-xl)var(--spacing-lg)}.cv-section{margin-bottom:var(--spacing-xl);page-break-inside:avoid}.cv-section:last-child{margin-bottom:0}.section-title{font-size:1.75rem;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-xs);border-bottom:3px solid var(--color-primary);display:inline-block}.section-content{color:var(--color-text-medium)}.profile-section .section-content{font-size:1.05rem;line-height:1.8;text-align:justify}.experience-item{margin-bottom:var(--spacing-lg);padding-left:var(--spacing-md);border-left:3px solid var(--color-border);page-break-inside:avoid}.experience-item:last-child{margin-bottom:0}.experience-header{margin-bottom:var(--spacing-sm)}.job-title{font-size:1.3rem;font-weight:600;color:var(--color-text-dark);margin-bottom:.25rem}.company-info{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)var(--spacing-md);color:var(--color-text-light);font-size:.95rem;margin-bottom:var(--spacing-xs)}.company-name{font-weight:600;color:var(--color-primary)}.company-location::before{content:"📍 "}.date-range{font-style:italic}.experience-description{margin-top:var(--spacing-sm)}.experience-description p{margin-bottom:var(--spacing-sm);line-height:1.7}.experience-description ul{margin-left:var(--spacing-md);margin-bottom:var(--spacing-sm)}.experience-description li{margin-bottom:var(--spacing-xs);line-height:1.7;position:relative}.experience-description li::marker{color:var(--color-primary)}.experience-description strong{color:var(--color-text-dark);font-weight:600}.tech-badges{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-top:var(--spacing-sm)}.badge{display:inline-block;padding:.25rem .75rem;background:var(--color-bg-light);color:var(--color-text-medium);border-radius:20px;font-size:.85rem;font-weight:500;border:1px solid var(--color-border)}.skills-section .section-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md)}.skill-category{background:var(--color-bg-light);padding:var(--spacing-md);border-radius:var(--border-radius);border-left:4px solid var(--color-primary)}.skill-category h3{font-size:1.1rem;color:var(--color-text-dark);margin-bottom:var(--spacing-sm);font-weight:600}.skill-category ul{list-style:none}.skill-category li{padding:.25rem 0;color:var(--color-text-medium)}.skill-category li::before{content:"▹ ";color:var(--color-primary);font-weight:700;margin-right:.5rem}.education-section .section-content h3{font-size:1.2rem;color:var(--color-text-dark);margin-bottom:var(--spacing-xs)}.education-section .section-content p{color:var(--color-text-medium);margin-bottom:var(--spacing-sm)}.education-section .section-content ul{margin-left:var(--spacing-md)}.interests-section .section-content ul{list-style:none;display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.interests-section .section-content li{background:var(--color-bg-light);padding:var(--spacing-xs)var(--spacing-md);border-radius:20px;color:var(--color-text-medium);font-weight:500}.cv-footer{padding:var(--spacing-md)var(--spacing-lg);background:var(--color-bg-light);text-align:center;color:var(--color-text-light);font-size:.9rem;border-top:1px solid var(--color-border)}@media(max-width:768px){.container{margin:0;border-radius:0}.header-content{flex-direction:column-reverse;text-align:center}.name{font-size:2rem}.tagline{font-size:1.1rem}.profile-photo{width:120px;height:120px}.contact-info{justify-content:center;gap:var(--spacing-sm)}.cv-main{padding:var(--spacing-lg)var(--spacing-md)}.section-title{font-size:1.5rem}.skills-section .section-content{grid-template-columns:1fr}}@media print{@page{size:A4;margin:1.5cm}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}body{background:#fff;font-size:9.5pt;line-height:1.35}.container{max-width:100%;margin:0;padding:0;box-shadow:none;border-radius:0;background:#fff}.cv-header{background:var(--color-primary) !important;padding:.6rem .9rem .5rem;page-break-after:avoid;margin-bottom:0 !important;border-radius:0 !important}.header-content{margin-bottom:.35rem;gap:.7rem}.print-actions{display:none !important}.name{font-size:1.4rem;margin-bottom:.15rem;line-height:1.2}.tagline{font-size:.85rem;line-height:1.2}.profile-photo{width:65px;height:65px;border-radius:50% !important}.contact-info{gap:.25rem .6rem;font-size:7.5pt;margin-top:.25rem;line-height:1.15}.contact-item{font-size:7.5pt}.contact-item i{font-size:7.5pt;width:12px}.cv-main{padding:.25rem .75rem .5rem}.cv-section{margin-bottom:.6rem;page-break-inside:auto}.cv-section:first-child{margin-top:0 !important;padding-top:0 !important}.section-title{font-size:1rem;margin-bottom:.3rem;padding-bottom:.1rem;page-break-after:avoid;line-height:1.1;margin-top:0;border-bottom:2px solid var(--color-primary) !important;color:var(--color-primary) !important;display:inline-block}.profile-section{margin-top:0 !important;padding-top:0 !important;margin-bottom:.5rem !important}.profile-section .section-content{font-size:8.5pt;line-height:1.25}.profile-section .section-content p{margin-bottom:.25rem}.experience-item{margin-bottom:.6rem;padding-left:.5rem;page-break-inside:auto}.job-title{font-size:.9rem;margin-bottom:.1rem;page-break-after:avoid;line-height:1.15}.company-info{font-size:7pt;gap:.15rem .5rem;margin-bottom:.15rem}.experience-description{font-size:8pt;margin-top:.25rem}.experience-description p{margin-bottom:.25rem;line-height:1.2}.experience-description h3{font-size:8.5pt;margin-top:.3rem;margin-bottom:.15rem;line-height:1.15}.experience-description ul{margin-left:.5rem;margin-bottom:.25rem}.experience-description li{margin-bottom:.1rem;line-height:1.2}.tech-badges{gap:.12rem;margin-top:.25rem}.badge{font-size:6pt;padding:.06rem .25rem;border:1px solid #ccc;border-radius:12px !important;background:var(--color-bg-light) !important}.skills-section .section-content{grid-template-columns:repeat(3,1fr);gap:.4rem}.skill-category{padding:.35rem;font-size:8pt;border-radius:6px !important;background:var(--color-bg-light) !important}.skill-category h3{font-size:8.5pt;margin-bottom:.2rem;line-height:1.2}.skill-category li{font-size:7.5pt;padding:.02rem 0;line-height:1.3}.skill-category li::before{margin-right:.25rem}.education-section .section-content h3{font-size:9pt;margin-bottom:.2rem;line-height:1.2}.education-section .section-content p,.education-section .section-content li{font-size:8pt;margin-bottom:.2rem;line-height:1.3}.education-section .section-content hr{margin:.35rem 0}.interests-section .section-content ul{gap:.25rem}.interests-section .section-content li{font-size:7.5pt;padding:.12rem .3rem;border-radius:12px !important;background:var(--color-bg-light) !important}.cv-footer{display:none}a{color:inherit;text-decoration:none}.contact-item a{border-bottom:none}.experience-section{page-break-before:avoid}.skills-section{page-break-before:auto}h2{page-break-after:avoid}h3{page-break-after:avoid}.experience-item{page-break-inside:avoid}.skill-category{page-break-inside:avoid}}