:root{--bg-primary: #f4f4f4;--bg-secondary: #f8f9fa;--text-primary: #1a1a1a;--text-secondary: #6c757d;--accent: #0066cc;--accent-hover: #0051a2;--border: #e0e0e0;--shadow: rgba(0, 0, 0, .1);--code-bg: #f5f5f5;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 4rem;--spacing-xl: 6rem;--font-primary: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, monospace;--transition: all .3s ease}[data-theme=dark]{--bg-primary: #0a0a0a;--bg-secondary: #1a1a1a;--text-primary: #e0e0e0;--text-secondary: #a0a0a0;--accent: #a83dff;--accent-hover: #9008ff;--border: #2a2a2a;--shadow: rgba(255, 255, 255, .05);--code-bg: #1a1a1a}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-primary);background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;transition:var(--transition)}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.btn{display:inline-block;padding:1rem 2rem;border-radius:8px;text-decoration:none;font-weight:600;transition:var(--transition);border:none;cursor:pointer;font-size:1rem}.btn--primary{background-color:var(--accent);color:#fff}.btn--primary:hover{background-color:var(--accent-hover);transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow)}.btn--secondary{background-color:transparent;color:var(--accent);border:2px solid var(--accent)}.btn--secondary:hover{background-color:var(--accent-hover);color:#fff;transform:translateY(-2px)}section{padding:var(--spacing-xl) 0}.section__title{font-size:clamp(2rem,4vw,3rem);margin-bottom:var(--spacing-lg);text-align:center;position:relative}.section__title:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:60px;height:4px;background-color:var(--accent);border-radius:2px}@media(max-width:768px){.btn{width:100%;text-align:center}}@media(max-width:480px){:root{--spacing-lg: 2rem;--spacing-xl: 3rem}}.nav[data-v-f686d090]{position:fixed;top:0;width:100%;background-color:var(--bg-primary);border-bottom:1px solid var(--border);z-index:1000;transition:var(--transition)}.nav__container[data-v-f686d090]{max-width:1200px;margin:0 auto;padding:var(--spacing-sm) var(--spacing-md);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-sm)}.nav__logo[data-v-f686d090]{font-size:1.5rem;font-weight:700;color:var(--accent);text-decoration:none;transition:var(--transition);flex-shrink:0}.nav__logo[data-v-f686d090]:hover{opacity:.8}.nav__menu[data-v-f686d090]{display:flex;gap:var(--spacing-md);overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;max-width:100%}.nav__menu[data-v-f686d090]::-webkit-scrollbar{display:none}@media(max-width:768px){.nav__container[data-v-f686d090]{gap:var(--spacing-xs);padding:var(--spacing-sm)}.nav__menu[data-v-f686d090]{gap:var(--spacing-sm);padding:0 var(--spacing-xs)}.nav__link[data-v-f686d090]{white-space:nowrap}.theme-toggle[data-v-f686d090]{flex-shrink:0}}.nav__link[data-v-f686d090]{color:var(--text-primary);text-decoration:none;font-weight:500;transition:var(--transition);position:relative;cursor:pointer;padding-bottom:5px}.nav__link[data-v-f686d090]:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:var(--accent);transition:width .3s ease}.nav__link[data-v-f686d090]:hover:after,.nav__link.active[data-v-f686d090]:after{width:100%}.theme-toggle[data-v-f686d090]{background:none;border:none;padding:0;cursor:pointer;position:relative;width:60px;height:30px;flex-shrink:0}.theme-toggle__track[data-v-f686d090]{position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--border);border-radius:15px;transition:var(--transition)}.theme-toggle:hover .theme-toggle__track[data-v-f686d090]{background-color:var(--accent)}.theme-toggle__slider[data-v-f686d090]{position:absolute;top:3px;left:3px;width:24px;height:24px;background-color:var(--bg-primary);border-radius:50%;transition:var(--transition);display:flex;align-items:center;justify-content:center;font-size:.8rem;box-shadow:0 2px 4px #0003}.theme-toggle__icon[data-v-f686d090]{position:absolute;font-size:1.1rem;top:10%;right:3px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:var(--transition)}[data-theme=dark] .theme-toggle__slider[data-v-f686d090]{transform:translate(30px)}[data-theme=dark] .theme-toggle__track[data-v-f686d090]{background-color:var(--accent)}[data-theme=dark] .theme-toggle__icon[data-v-f686d090]{transform:translate(-30px)}.footer[data-v-a5221a8a]{background-color:var(--bg-secondary);padding:var(--spacing-md) 0;text-align:center;border-top:1px solid var(--border)}.footer p[data-v-a5221a8a]{color:var(--text-secondary);margin:.5rem 0}.footer__location[data-v-a5221a8a]{font-size:.9rem}main[data-v-8a86ee3d]{min-height:calc(100vh - 60px)}.hero[data-v-c2cd93ce]{position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-top:80px}.hero__content[data-v-c2cd93ce]{max-width:800px}.hero__image[data-v-c2cd93ce]{width:300px;height:300px;border-radius:50%;object-fit:cover;object-position:40% center;margin-bottom:var(--spacing-md);box-shadow:0 4px 12px var(--shadow)}.hero__title[data-v-c2cd93ce]{font-size:clamp(2.5rem,5vw,4rem);font-weight:700;margin-bottom:var(--spacing-sm);line-height:1.2}.highlight[data-v-c2cd93ce]{color:var(--accent)}.hero__subtitle[data-v-c2cd93ce]{font-size:clamp(1.2rem,2.5vw,1.5rem);color:var(--text-secondary);margin-bottom:var(--spacing-md)}.hero__description[data-v-c2cd93ce]{font-size:1.1rem;color:var(--text-secondary);margin-bottom:var(--spacing-lg)}.hero__cta[data-v-c2cd93ce]{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}@media(max-width:768px){.hero__cta[data-v-c2cd93ce]{flex-direction:column}}.about[data-v-faa78f38]{background-color:var(--bg-secondary)}.about__content[data-v-faa78f38]{max-width:900px;margin:0 auto}.about__text p[data-v-faa78f38]{font-size:1.2rem;margin-bottom:var(--spacing-md);color:var(--text-secondary);line-height:1.8}.skills[data-v-faa78f38]{margin:var(--spacing-lg) 0}.skills__title[data-v-faa78f38]{font-size:1.5rem;margin-bottom:var(--spacing-md);color:var(--text-primary)}.skills__grid[data-v-faa78f38]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}@media(max-width:768px){.skills__grid[data-v-faa78f38]{grid-template-columns:1fr}}.skill-category h4[data-v-faa78f38]{color:var(--accent);margin-bottom:var(--spacing-sm);font-size:1.2rem}.skill-list[data-v-faa78f38]{list-style:none}.skill-list li[data-v-faa78f38]{padding:.5rem 0 .5rem 1.5rem;font-size:1.1rem;color:var(--text-secondary);position:relative}.skill-list li[data-v-faa78f38]:before{content:"▹";position:absolute;left:0;color:var(--accent);font-weight:700}.project[data-v-b2988da1]{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);align-items:center}.project--featured[data-v-b2988da1]{background-color:var(--bg-secondary);padding:var(--spacing-lg);border-radius:12px;box-shadow:0 4px 20px var(--shadow)}.project__tag[data-v-b2988da1]{display:inline-block;color:var(--accent);font-size:.9rem;font-weight:600;margin-bottom:var(--spacing-sm)}.project__title[data-v-b2988da1]{font-size:1.8rem;margin-bottom:var(--spacing-sm)}.project__description[data-v-b2988da1]{font-size:1.1rem;color:var(--text-secondary);margin-bottom:var(--spacing-md);line-height:1.7}.project__description[data-v-b2988da1] a{color:var(--accent);text-decoration:none;font-weight:500;transition:var(--transition);border-bottom:2px solid transparent}.project__description[data-v-b2988da1] a:hover{color:var(--accent-hover);border-bottom-color:var(--accent-hover)}.project__tech[data-v-b2988da1]{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);list-style:none;margin-bottom:var(--spacing-md)}.project__tech li[data-v-b2988da1]{background-color:var(--code-bg);padding:.4rem 1rem;border-radius:6px;font-size:.9rem;font-family:var(--font-mono);color:var(--accent);border:1px solid var(--border)}.project__links[data-v-b2988da1]{margin-bottom:var(--spacing-md)}.project__link[data-v-b2988da1]{color:var(--accent);text-decoration:none;font-weight:600;display:inline-flex;align-items:center;transition:var(--transition)}.project__link[data-v-b2988da1]:hover{transform:translate(5px)}.project__note[data-v-b2988da1]{font-size:.9rem;color:var(--text-secondary);font-style:italic}.project__image img[data-v-b2988da1]{width:100%;height:auto;border-radius:8px;box-shadow:0 4px 20px var(--shadow)}.project__placeholder[data-v-b2988da1]{width:100%;aspect-ratio:16/9;background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--border) 100%);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);font-weight:600}.project__subsections[data-v-b2988da1]{margin-top:var(--spacing-md)}@media(max-width:768px){.project[data-v-b2988da1]{grid-template-columns:1fr}.project__image[data-v-b2988da1]{order:-1}.project__content[data-v-b2988da1]{order:1}}details[data-v-b2988da1]{inline-size:100%}@media(prefers-reduced-motion:no-preference){details[data-v-b2988da1]{interpolate-size:allow-keywords}}details[data-v-b2988da1]::details-content{opacity:0;overflow:hidden;max-block-size:0;transition:content-visibility .5s allow-discrete,opacity .5s,max-block-size .5s ease}details[open][data-v-b2988da1]::details-content{opacity:1;max-block-size:800px}.subsection[data-v-b2988da1]{border:1px solid var(--border);border-radius:8px;padding:var(--spacing-sm);margin-bottom:var(--spacing-sm);cursor:pointer;transition:var(--transition);scroll-margin-top:10rem}.subsection[data-v-b2988da1]:hover{border-color:var(--accent)}.subsection__title[data-v-b2988da1]{font-weight:600;color:var(--accent);cursor:pointer;-webkit-user-select:none;user-select:none}.subsection__description[data-v-b2988da1]{margin-top:var(--spacing-sm);color:var(--text-secondary)}.subsection__description[data-v-b2988da1] a{color:var(--accent);text-decoration:none;font-weight:500;transition:var(--transition);border-bottom:2px solid transparent}.subsection__description[data-v-b2988da1] a:hover{color:var(--accent-hover);border-bottom-color:var(--accent-hover)}.subsection__image img[data-v-b2988da1]{width:100%;height:auto;border-radius:6px;margin-top:var(--spacing-sm);margin-bottom:var(--spacing-sm);box-shadow:0 2px 10px var(--shadow)}.subsection__placeholder[data-v-b2988da1]{width:100%;aspect-ratio:16/9;background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--border) 100%);border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);font-weight:600;margin:var(--spacing-sm) 0}.experience[data-v-d9278b65]{background-color:var(--bg-secondary)}.timeline[data-v-d9278b65]{max-width:800px;margin:0 auto;position:relative;padding-left:var(--spacing-lg)}.timeline[data-v-d9278b65]:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background-color:var(--border)}.timeline__item[data-v-d9278b65]{position:relative;margin-bottom:var(--spacing-lg);padding-left:var(--spacing-md)}.timeline__marker[data-v-d9278b65]{position:absolute;left:-9px;top:5px;width:18px;height:18px;border-radius:50%;background-color:var(--accent);border:3px solid var(--bg-secondary)}.timeline__content h3[data-v-d9278b65]{font-size:1.3rem;margin-bottom:.25rem}.timeline__content h4[data-v-d9278b65]{color:var(--accent);font-weight:600;margin-bottom:.5rem}.company-link[data-v-d9278b65]{color:var(--accent);text-decoration:none;transition:var(--transition);border-bottom:2px solid transparent}.company-link[data-v-d9278b65]:hover{color:var(--accent-hover);border-bottom-color:var(--accent-hover)}.timeline__date[data-v-d9278b65]{display:block;color:var(--text-secondary);font-size:.9rem;margin-bottom:var(--spacing-sm)}.timeline__content ul[data-v-d9278b65]{list-style:none;margin-top:var(--spacing-sm)}.timeline__content li[data-v-d9278b65]{color:var(--text-secondary);padding:.4rem 0 .4rem 1.5rem;position:relative}.timeline__content li[data-v-d9278b65]:before{content:"▹";position:absolute;left:0;color:var(--accent)}.contact__content[data-v-24ae8831]{max-width:1000px;margin:0 auto;text-align:center}.contact__description[data-v-24ae8831]{font-size:1.4rem;color:var(--text-secondary);margin-bottom:var(--spacing-lg)}.contact__links[data-v-24ae8831]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}@media(max-width:768px){.contact__links[data-v-24ae8831]{grid-template-columns:1fr}}.contact__link[data-v-24ae8831]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md);background-color:var(--bg-secondary);border:2px solid var(--border);border-radius:8px;text-decoration:none;color:var(--text-primary);font-weight:600;transition:var(--transition)}.contact__link[data-v-24ae8831]:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 4px 12px var(--shadow)}.contact__icon[data-v-24ae8831]{width:60px;height:60px;transition:var(--transition);filter:invert(0)}[data-theme=dark] .contact__icon[data-v-24ae8831]{filter:invert(1)}.contact__text[data-v-24ae8831]{font-size:1rem;text-align:center;word-break:break-word}.home-view[data-v-964d8397]{width:100%}
