:root{--bg-primary: #f8f9fa;--bg-secondary: #ffffff;--text-primary: #1f1f1f;--text-secondary: #5f6368;--text-tertiary: #80868b;--border-color: rgba(0, 0, 0, .06);--border-color-hover: rgba(0, 0, 0, .12);--glass-bg: rgba(255, 255, 255, .75);--glass-bg-hover: rgba(255, 255, 255, .85);--google-blue: #1a73e8;--google-red: #ea4335;--google-yellow: #f9ab00;--google-green: #34a853;--accent-primary: #1a73e8;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -1px rgba(0, 0, 0, .03);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .05), 0 4px 6px -2px rgba(0, 0, 0, .02);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .05), 0 10px 10px -5px rgba(0, 0, 0, .02);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .4s cubic-bezier(.4, 0, .2, 1);--font-size-hero: clamp(2rem, 3.2vw + .6rem, 3.5rem);--font-size-h2: clamp(1.3rem, 2vw + .4rem, 2.2rem);--font-size-h3: clamp(1.05rem, 1vw + .6rem, 1.4rem);--font-size-body: clamp(.88rem, .1vw + .85rem, 1.05rem);--font-size-meta: clamp(.75rem, .1vw + .7rem, .88rem);--spacing-section: clamp(3rem, 5vh + 1.5rem, 5.5rem);--spacing-container: clamp(1rem, 2.5vw + .25rem, 2.5rem);--spacing-grid-gap: clamp(1rem, 1.5vw + .25rem, 2rem)}@media(max-width:768px){:root{--font-size-hero: clamp(1.7rem, 4vw + .6rem, 2.5rem);--font-size-h2: clamp(1.2rem, 3vw + .4rem, 1.8rem);--font-size-h3: clamp(1rem, 1.5vw + .5rem, 1.25rem);--font-size-body: clamp(.82rem, .4vw + .8rem, .98rem);--font-size-meta: clamp(.72rem, .4vw + .7rem, .82rem);--spacing-section: clamp(2.5rem, 5vh + 1.5rem, 4.5rem);--spacing-container: 1.25rem;--spacing-grid-gap: 1.25rem}}@media(max-width:480px){:root{--font-size-hero: clamp(1.4rem, 5vw + .5rem, 2rem);--font-size-h2: clamp(1.1rem, 3vw + .4rem, 1.5rem);--font-size-h3: clamp(.9rem, 2.5vw + .35rem, 1.15rem);--font-size-body: clamp(.78rem, .8vw + .72rem, .92rem);--font-size-meta: clamp(.68rem, .8vw + .62rem, .78rem);--spacing-section: clamp(2rem, 4vh + 1rem, 3.5rem);--spacing-container: 1rem;--spacing-grid-gap: 1rem}}*{margin:0;padding:0;box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,select,textarea{font-family:inherit}html{scroll-behavior:smooth;scroll-padding-top:100px}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:var(--font-size-body);line-height:1.5;overflow-x:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--text-tertiary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.material-symbols-outlined{font-family:Material Symbols Outlined!important;font-variation-settings:"FILL" 0,"wght" 300,"GRAD" 0,"opsz" 24;vertical-align:middle}::selection{background-color:#1a70e826;color:var(--google-blue)}@media print{@page{size:A4;margin:0}*,body,html,div,p,span,h1,h2,h3,a,li,ul,td,th{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;font-family:Helvetica Neue,Helvetica,Arial,sans-serif!important;text-shadow:none!important;-webkit-text-stroke:0px transparent!important;filter:none!important;text-rendering:geometricPrecision!important}app-cv{background-color:#fff!important;padding:0!important;margin:0!important}.cv-page{margin:0!important;box-shadow:none!important;border-radius:0!important;page-break-inside:avoid;break-inside:avoid;page-break-after:always;break-after:always;transform:none!important}.cv-page:last-of-type{page-break-after:avoid!important;break-after:avoid!important}.sidebar{background-color:#f4f6f8!important;background-image:none!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.divider{background-color:#0000000f!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.tech-badge{background-color:#f1f3f4!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.no-print{display:none!important}}
