body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}html[data-theme=teal]{--color-accent:#0d9488;--color-accent-dark:#0b7f75;--color-accent-light:#5eead4;--color-accent-secondary:#ff7a59;--color-accent-secondary-light:#ffcab8;--color-on-accent:#fff;--color-link:#0f766e;--color-accent-tint-10:#0d94881a;--color-accent-tint-15:#0d948826;--color-accent-tint-20:#0d948833;--color-accent-glow:#0d948826;--color-bg-dark:#f7fbfb;--color-bg-card:#fff;--color-card-surface:#fff;--color-nav-bg:#fff;--color-nav-shadow:#0000000d;--color-mobile-menu-bg:#fff;--color-network-bg:#0f172a;--color-text-primary:#0f172a;--color-text-secondary:#475569;--color-text-tertiary:#64748b;--color-text-muted:#94a3b8;--color-border:#e6edf0;--color-border-light:#0d948814;--color-btn-secondary-bg:transparent;--color-btn-secondary-text:var(--color-accent);--color-btn-secondary-hover-bg:#e6f6f5;--color-btn-secondary-hover-text:var(--color-accent-dark);--color-error:#dc2626;--color-success:#16a34a;--spacing-xs:8px;--spacing-sm:12px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-xxl:48px;--spacing-xxxl:64px;--gradient-bg:linear-gradient(135deg, #f7fbfb 0%, #e8f4f3 50%, #f7fbfb 100%);--gradient-text:linear-gradient(90deg, #0d9488 0%, #ff7a59 50%, #0d9488 100%);--gradient-primary-button:linear-gradient(135deg, #0d9488 0%, #0b7f75 100%);--gradient-icon-circle:linear-gradient(135deg, #0d9488 0%, #0b7f75 100%);--current-theme-primary:#0d9488;--current-theme-glow:#0d948808}html[data-theme=purple]{--color-accent:#8b5cf6;--color-accent-dark:#6d28d9;--color-accent-light:#d8b4fe;--color-accent-secondary:#60a5fa;--color-accent-secondary-light:#93c5fd;--color-on-accent:#fff;--color-link:#d8b4fe;--color-accent-tint-10:#8b5cf61a;--color-accent-tint-15:#8b5cf626;--color-accent-tint-20:#8b5cf633;--color-accent-glow:#8b5cf680;--color-bg-dark:#0f172a;--color-bg-card:#1e293b;--color-card-surface:#1e293b80;--color-nav-bg:#1e293bf2;--color-nav-shadow:#0000001a;--color-mobile-menu-bg:#0f172afa;--color-network-bg:#1e293b80;--color-text-primary:#fff;--color-text-secondary:#cbd5e1;--color-text-tertiary:#cbd5e1;--color-text-muted:#94a3b8;--color-border:#334155;--color-border-light:#ffffff0d;--color-btn-secondary-bg:#ffffff1a;--color-btn-secondary-text:var(--color-text-primary);--color-btn-secondary-hover-bg:#fff3;--color-btn-secondary-hover-text:var(--color-text-primary);--color-error:#ef4444;--color-success:#10b981;--spacing-xs:8px;--spacing-sm:12px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-xxl:48px;--spacing-xxxl:64px;--gradient-bg:linear-gradient(135deg, #0f172a 0%, #581c87 50%, #0f172a 100%);--gradient-text:linear-gradient(90deg, #c084fc 0%, #60a5fa 50%, #c084fc 100%);--gradient-primary-button:linear-gradient(135deg, #8b5cf6 0%, #3b82f6 100%);--gradient-icon-circle:linear-gradient(135deg, #8b5cf6 0%, #60a5fa 100%);--current-theme-primary:#8b5cf6;--current-theme-glow:#8b5cf608}*,:before,:after{box-sizing:border-box}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(30px)}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fadeIn{animation:.8s ease-in fadeIn}.pulse{animation:2s ease-in-out infinite pulse}.float{animation:6s ease-in-out infinite float}nav{z-index:1000;border-bottom:1px solid var(--color-border-light);background:var(--color-nav-bg);box-shadow:0 1px 3px var(--color-nav-shadow);transition:all .3s;position:fixed;top:0;left:0;right:0}.navbar-container{max-width:1280px;padding:var(--spacing-md) var(--spacing-lg);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.brand{align-items:center;gap:var(--spacing-sm);cursor:pointer;display:flex}.logo-circle{background:var(--gradient-icon-circle);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-weight:700;transition:transform .3s;display:flex}.brand-text{background:var(--gradient-text);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.25rem;font-weight:700}.desktop-nav{gap:var(--spacing-xl);align-items:center;display:flex}.nav-link{color:var(--color-text-secondary);cursor:pointer;font-size:1rem;font-weight:500;text-decoration:none;transition:all .3s;position:relative}.nav-link:hover{color:var(--color-accent)}.nav-link:hover:after{content:"";background:var(--color-accent);width:100%;height:2px;position:absolute;bottom:-4px;left:0}.mobile-menu-button{cursor:pointer;padding:var(--spacing-sm);background:0 0;border:none;transition:transform .2s;display:none}.mobile-menu{background:var(--color-mobile-menu-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--color-border-light);flex-direction:column;display:none}.mobile-nav-link{color:var(--color-text-secondary);padding:var(--spacing-md);border-bottom:1px solid var(--color-border-light);font-size:1.125rem;font-weight:500;text-decoration:none;transition:all .3s}.mobile-nav-link:hover{background:var(--color-accent-tint-10);color:var(--color-accent);padding-left:24px}.mobile-theme-switcher-row{padding:var(--spacing-md);justify-content:space-between;align-items:center;display:flex}.mobile-theme-switcher-label{color:var(--color-text-secondary);font-size:1.125rem;font-weight:500}@media (width<=768px){.desktop-nav{display:none}.mobile-menu-button{display:block}.mobile-menu.open{display:flex}}button{font-family:inherit}.btn-primary{padding:var(--spacing-md) var(--spacing-xl);background:var(--gradient-primary-button);color:var(--color-on-accent);cursor:pointer;box-shadow:0 6px 18px var(--color-accent-tint-20);border:none;border-radius:8px;font-size:1rem;font-weight:600;transition:all .3s}.btn-primary:hover{box-shadow:0 10px 25px -5px var(--color-accent-glow);transform:translateY(-2px)}.btn-primary:active{transform:scale(.98)}.btn-secondary{padding:var(--spacing-md) var(--spacing-xl);background:var(--color-btn-secondary-bg);color:var(--color-btn-secondary-text);border:1px solid var(--color-border);cursor:pointer;align-items:center;gap:var(--spacing-sm);border-radius:8px;font-size:1rem;font-weight:600;transition:all .3s;display:flex}.btn-secondary:hover{background:var(--color-btn-secondary-hover-bg);border-color:var(--color-accent);color:var(--color-btn-secondary-hover-text)}.btn-small{padding:var(--spacing-sm) var(--spacing-md);background:var(--gradient-primary-button);color:var(--color-on-accent);cursor:pointer;border:none;border-radius:8px;font-size:.9rem;font-weight:600;transition:all .3s}.btn-small:hover{transform:scale(1.05)}.btn-outline{padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-accent-tint-10);border:1px solid var(--color-accent-secondary);color:var(--color-accent-secondary);cursor:pointer;border-radius:6px;font-weight:600;transition:all .3s}.btn-outline:hover{background:var(--color-accent-secondary);color:var(--color-on-accent)}input[type=text],input[type=email],textarea{width:100%;padding:var(--spacing-md);background:var(--color-card-surface);border:1px solid var(--color-border);color:var(--color-text-primary);box-sizing:border-box;border-radius:8px;font-family:inherit;font-size:1rem;transition:all .3s}input[type=text]:focus,input[type=email]:focus,textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-tint-15);outline:none}textarea{resize:vertical;min-height:120px}label{color:var(--color-text-primary);font-size:.95rem;font-weight:600}.svg-s{size:16px;color:var(--color-accent-secondary)}.svg-m{size:24px;color:var(--color-accent-secondary)}.svg-l{size:32px;color:var(--color-accent-light)}.hero-section{text-align:center;padding:var(--spacing-xxxl) var(--spacing-md);width:100%}.hero-title{background:var(--gradient-text);-webkit-text-fill-color:transparent;margin-bottom:var(--spacing-lg);-webkit-background-clip:text;background-clip:text;font-size:3.5rem;font-weight:700}.introduction{color:var(--color-text-tertiary);max-width:750px;margin:0 auto;font-size:1.125rem;line-height:1.75}.section-title{color:var(--color-text-primary);text-align:center;margin-bottom:var(--spacing-xxl);font-size:2.25rem;font-weight:700}.category-section{width:100%;margin:0 auto var(--spacing-xxxl);padding:0 var(--spacing-md)}.category-grid{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));max-width:1200px;margin:0 auto;display:grid}.category-card{min-width:0;padding:var(--spacing-lg);background:var(--color-card-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--color-border);text-align:center;cursor:pointer;border-radius:12px;transition:all .3s}.category-card:hover{background:var(--color-accent-tint-15)}.category-card.active{background:var(--color-accent-tint-15);border-color:var(--color-accent);box-shadow:0 10px 25px -5px var(--color-accent-glow)}.category-dot{width:12px;height:12px;margin:0 auto var(--spacing-md);background:var(--color-accent);border-radius:50%}.category-name{color:var(--color-text-primary);margin-bottom:var(--spacing-sm);overflow-wrap:break-word;font-size:1.125rem;font-weight:600}.skill-count{color:var(--color-text-muted);font-size:.875rem}.filter-info{justify-content:center;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-xl);padding:var(--spacing-lg);background:var(--color-accent-tint-10);border:1px solid var(--color-border);border-radius:8px;display:flex}.filter-text{color:var(--color-text-secondary);font-size:1rem}.clear-button{padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-accent-tint-15);border:1px solid var(--color-accent);color:var(--color-accent);cursor:pointer;border-radius:6px;font-weight:600;transition:all .3s}.clear-button:hover{background:var(--color-accent);color:var(--color-on-accent)}.category-badge{padding:var(--spacing-xs) var(--spacing-md);color:var(--color-text-primary);background:var(--color-accent-tint-15);border:1px solid var(--color-accent);border-radius:20px;font-size:.75rem;font-weight:600}.network-section{max-width:1280px;padding:0 var(--spacing-md) var(--spacing-xxxl);margin:0 auto}.network-svg{touch-action:none;cursor:grab;width:100%;overflow:hidden}.network-description{text-align:center;color:var(--color-text-tertiary);margin-bottom:var(--spacing-xxl);font-size:1rem}.network-container{background:var(--color-network-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--color-border);padding:var(--spacing-lg);margin-bottom:var(--spacing-xxl);border-radius:12px;position:relative;overflow:hidden}.network-zoom-controls{right:calc(var(--spacing-lg) + 8px);bottom:calc(var(--spacing-lg) + 8px);z-index:1;flex-direction:column;gap:6px;display:flex;position:absolute}.zoom-btn{width:40px;height:40px;color:var(--color-text-primary);background:var(--color-card-surface);border:1px solid var(--color-border);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;font-size:1.2rem;line-height:1;transition:all .2s;display:flex}.zoom-btn:hover{background:var(--color-accent-tint-15);border-color:var(--color-accent)}.network-legend{text-align:center;padding:var(--spacing-lg);background:var(--color-card-surface);color:var(--color-text-primary);border-radius:8px}.legend-title{margin-bottom:var(--spacing-md);color:var(--color-text-primary);font-size:.95rem}.connections-container{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.connections-tags{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.connection-tag{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-accent-tint-15);border:1px solid var(--color-accent);color:var(--color-accent);border-radius:20px;font-size:.8rem}.landing-container{background:var(--gradient-bg);min-height:100vh;padding-top:80px}.hero{min-height:100vh;padding:0 var(--spacing-md);justify-content:center;align-items:center;display:flex;position:relative}.bg-container{position:absolute;inset:0;overflow:hidden}.hero-content{z-index:10;text-align:center;max-width:896px;position:relative}.icon-wrapper{margin-bottom:var(--spacing-xl);display:inline-block}.icon-circle{background:var(--gradient-icon-circle);width:128px;height:128px;box-shadow:0 25px 50px -12px var(--color-accent-glow);cursor:pointer;color:#fff;border-radius:50%;justify-content:center;align-items:center;margin:0 auto;font-size:3rem;transition:transform .3s;display:flex}.hero-subtitle{color:var(--color-accent-secondary);margin-bottom:var(--spacing-md);font-size:1.5rem;font-weight:300}.hero-description{color:var(--color-text-tertiary);max-width:672px;margin:0 auto var(--spacing-xxl);font-size:1.125rem;line-height:1.75}.hero-link{color:var(--color-link);text-underline-offset:3px;text-decoration:underline}.hero-link:focus-visible{outline:2px solid var(--color-link);outline-offset:2px;border-radius:2px}.button-group{gap:var(--spacing-md);flex-wrap:wrap;justify-content:center;display:flex}.cards-section{padding:var(--spacing-xxxl) var(--spacing-md);background:var(--color-card-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative}.cards-container{max-width:1152px;margin:0 auto}.cards-title{text-align:center;margin-bottom:var(--spacing-md);color:var(--color-text-primary);font-size:2.25rem;font-weight:700}.cards-subtitle{text-align:center;color:var(--color-text-muted);margin-bottom:var(--spacing-xxl);font-size:1.125rem}.cards-grid{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));display:grid}.card{background:var(--color-card-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:var(--spacing-xl);border:1px solid var(--color-border);cursor:pointer;border-radius:12px;transition:all .3s;position:relative}.card:hover{border-color:var(--color-accent);box-shadow:0 20px 25px -5px var(--color-accent-glow);transform:scale(1.05)}.card-icon{padding:var(--spacing-md);margin-bottom:var(--spacing-md);background:var(--color-accent-tint-10);color:var(--color-accent-secondary);border-radius:8px;font-size:2rem;transition:transform .3s;display:inline-flex}.card-title{color:var(--color-text-primary);margin-bottom:var(--spacing-sm);font-size:1.5rem;font-weight:700;transition:color .3s}.card-description{color:var(--color-text-muted);line-height:1.75}footer{padding:var(--spacing-xl);text-align:center;color:var(--color-text-muted);border-top:1px solid var(--color-border);background:var(--color-card-surface);position:relative}.experience-container{background:var(--gradient-bg);min-height:100vh;padding-top:80px;padding-bottom:var(--spacing-xxxl)}.section{max-width:900px;margin:0 auto var(--spacing-xxxl);padding:0 var(--spacing-md)}.section-subtitle{text-align:center;color:var(--color-text-muted);margin-bottom:var(--spacing-xxl);font-size:1.125rem}.buttons-container{justify-content:center;gap:var(--spacing-md);margin-bottom:var(--spacing-xxl);flex-wrap:wrap;display:flex}.tab-button{padding:var(--spacing-sm) var(--spacing-lg);border:1px solid var(--color-border);background:var(--color-card-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--color-text-secondary);cursor:pointer;border-radius:8px;font-size:1rem;font-weight:500;transition:all .3s}.tab-button:hover{background:var(--color-accent-tint-15)}.tab-button.active{background:var(--gradient-primary-button);color:var(--color-on-accent);box-shadow:0 10px 25px -5px var(--color-accent-glow);border:none}.content-card{background:var(--color-card-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:var(--spacing-xxl);border:1px solid var(--color-border);text-align:center;border-radius:12px;transition:all .5s}.logo{object-fit:contain;width:120px;height:120px;margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-accent-tint-10);border-radius:8px}.job-title{margin-bottom:var(--spacing-sm);color:var(--color-text-primary);font-size:1.5rem;font-weight:700}.company{color:var(--color-accent-light);margin-bottom:var(--spacing-xs);font-size:1.125rem;font-weight:500}.date{color:var(--color-text-muted);margin-bottom:var(--spacing-lg);font-size:1rem}.description{color:var(--color-text-tertiary);font-size:1.125rem;line-height:1.75}.contact-container{background:var(--gradient-bg);width:100%;min-height:100vh;padding-top:80px;overflow-x:hidden}.main-content{max-width:1280px;padding:0 var(--spacing-md) var(--spacing-xxxl);margin:0 auto}.contact-links-section{margin-bottom:var(--spacing-xxxl)}.contact-links-grid{gap:var(--spacing-lg);margin-bottom:var(--spacing-xxxl);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.contact-link{padding:var(--spacing-xl);background:var(--color-card-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--color-border);cursor:pointer;border-radius:12px;flex-direction:column;align-items:center;text-decoration:none;transition:all .3s;display:flex}.contact-link:hover{box-shadow:0 20px 25px -5px var(--color-accent-glow);border-color:var(--color-accent);transform:translateY(-4px)}.icon-container{background:var(--gradient-icon-circle);width:60px;height:60px;margin-bottom:var(--spacing-md);color:#fff;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;display:flex}.contact-link-label{color:var(--color-text-primary);margin-bottom:var(--spacing-sm);font-size:1.5rem;font-weight:700}.contact-link-value{color:var(--color-text-muted);text-align:center;font-size:.95rem}.content-row{gap:var(--spacing-xxl);grid-template-columns:1fr 1fr;align-items:start;display:grid}.qr-section,.form-section{padding:var(--spacing-xxl);background:var(--color-card-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--color-border);border-radius:12px}.qr-section{text-align:center}.qr-container{flex-direction:column;align-items:center;display:flex}.qr-code{object-fit:contain;width:250px;height:250px;padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);border:1px solid var(--color-border);background:#fff;border-radius:8px}.qr-text{color:var(--color-text-muted);font-size:.95rem}.resume-button{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-lg);color:var(--color-on-accent);background:var(--gradient-primary-button);text-align:center;cursor:pointer;box-shadow:0 6px 18px var(--color-accent-tint-15);border-radius:8px;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.resume-button:hover{box-shadow:0 10px 25px -5px var(--color-accent-glow);transform:translateY(-2px)}.form{gap:var(--spacing-lg);flex-direction:column;display:flex}.form-group,.captcha-section{gap:var(--spacing-sm);flex-direction:column;display:flex}.captcha-box{gap:var(--spacing-md);align-items:center;display:flex}.captcha-display{padding:var(--spacing-md) var(--spacing-lg);background:var(--color-accent-tint-15);border:2px solid var(--color-accent);color:var(--color-accent-light);letter-spacing:4px;text-align:center;border-radius:8px;min-width:120px;font-size:1.5rem;font-weight:700}.captcha-input{flex:1}.captcha-error{color:var(--color-error);font-size:.9rem}.captcha-success{color:var(--color-success);font-size:.9rem;font-weight:600}.submit-button{margin-top:var(--spacing-md);transition:all .3s}.submit-button:hover{box-shadow:0 10px 25px -5px var(--color-accent-glow);transform:translateY(-2px)}.skills-container{background:var(--gradient-bg);min-height:100vh;padding-top:80px;padding-bottom:var(--spacing-xxxl)}.skills-section{max-width:1280px;margin:0 auto var(--spacing-xxxl);padding:0 var(--spacing-md)}.skills-grid{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(350px,1fr));display:grid}.skill-card{padding:var(--spacing-xxl);background:var(--color-card-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--color-border);cursor:pointer;border-radius:12px;transition:all .3s}.skill-card:hover{box-shadow:0 20px 25px -5px var(--color-accent-glow);border-color:var(--color-accent);transform:translateY(-8px)}.skill-card.active{background:var(--color-accent-tint-15);border-color:var(--color-accent)}.skill-card-header{margin-bottom:var(--spacing-md);justify-content:space-between;align-items:center;display:flex}.learned-date{color:var(--color-text-muted);font-size:.875rem}.skill-name{color:var(--color-text-primary);margin-bottom:var(--spacing-lg);font-size:1.5rem;font-weight:700}.skill-label{color:var(--color-accent);margin-top:var(--spacing-md);margin-bottom:var(--spacing-xs);font-size:.875rem;font-weight:600}.selected-skill-info{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--color-accent-tint-10);color:var(--color-accent);border-radius:8px}.certifications-container{background:var(--gradient-bg);min-height:100vh;padding-top:80px;padding-bottom:var(--spacing-xxxl)}.certifications-section{max-width:1280px;margin:0 auto var(--spacing-xxxl);padding:0 var(--spacing-md)}.certifications-grid{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(350px,1fr));display:grid}.cert-card{padding:var(--spacing-xxl);background:var(--color-card-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--color-border);cursor:pointer;border-radius:12px;transition:all .3s}.cert-card:hover{box-shadow:0 20px 25px -5px var(--color-accent-glow);border-color:var(--color-accent);transform:translateY(-8px)}.cert-card.active{background:var(--color-accent-tint-15);border-color:var(--color-accent)}.cert-card-header{margin-bottom:var(--spacing-md);justify-content:space-between;align-items:center;display:flex}.cert-badges{gap:var(--spacing-xs);flex-wrap:wrap;display:flex}.cert-type-badge{padding:var(--spacing-xs) var(--spacing-md);color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:20px;font-size:.75rem;font-weight:600}.cert-type-badge--certification{color:var(--color-text-primary);border-color:var(--color-accent)}.cert-icon{background:var(--color-accent-tint-10);width:60px;height:60px;color:var(--color-accent);margin-right:var(--spacing-md);border-radius:50%;justify-content:center;align-items:center;font-size:2rem;display:flex}.cert-name{color:var(--color-text-primary);margin-bottom:var(--spacing-xs);font-size:1.5rem;font-weight:700}.cert-issuer{color:var(--color-text-muted);margin-bottom:var(--spacing-lg);font-size:.875rem}.cert-date{color:var(--color-text-muted);font-size:.875rem}.cert-label{color:var(--color-accent);margin-top:var(--spacing-md);margin-bottom:var(--spacing-xs);font-size:.875rem;font-weight:600}.selected-cert-info{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--color-accent-tint-10);color:var(--color-accent);border-radius:8px}.projects-container{background:var(--gradient-bg);min-height:100vh;padding-top:80px;padding-bottom:var(--spacing-xxxl)}.projects-section{max-width:1280px;margin:0 auto var(--spacing-xxxl);padding:0 var(--spacing-md)}.projects-grid{gap:var(--spacing-xl);grid-template-columns:repeat(auto-fill,minmax(500px,1fr));display:grid}.project-card{padding:var(--spacing-xxl);background:var(--color-card-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--color-border);cursor:pointer;border-radius:12px;flex-direction:column;transition:all .3s;display:flex}.project-card:hover{box-shadow:0 20px 25px -5px var(--color-accent-glow);border-color:var(--color-accent);transform:translateY(-8px)}.project-card.active{background:var(--color-accent-tint-15)}.project-card-header{margin-bottom:var(--spacing-md);justify-content:space-between;align-items:center;display:flex}.status-badge{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-accent-tint-15);color:var(--color-accent);border:1px solid var(--color-accent);border-radius:20px;font-size:.75rem;font-weight:600}.project-title{color:var(--color-text-primary);margin-bottom:var(--spacing-sm);font-size:1.75rem;font-weight:700}.project-tagline{color:var(--color-accent-secondary);margin-bottom:var(--spacing-md);font-size:1rem;font-weight:500}.project-description{color:var(--color-text-tertiary);margin-bottom:var(--spacing-lg);flex-grow:1;font-size:.95rem;line-height:1.6}.project-meta{gap:var(--spacing-lg);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border);display:flex}.meta-item{align-items:center;gap:var(--spacing-sm);color:var(--color-text-muted);font-size:.875rem;display:flex}.tech-section{margin-bottom:var(--spacing-lg)}.tech-label{color:var(--color-accent);margin-bottom:var(--spacing-sm);font-size:.875rem;font-weight:600}.tech-tags{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.tech-tag{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-accent-tint-20);border:1px solid var(--color-accent);color:var(--color-accent);cursor:pointer;border-radius:20px;font-size:.8rem;transition:all .2s}.tech-tag:hover{background:var(--color-accent);color:var(--color-on-accent);transform:scale(1.05)}.tech-tag-more{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-accent-tint-10);border:1px solid var(--color-accent);color:var(--color-accent);border-radius:20px;font-size:.8rem}.project-links{gap:var(--spacing-md);margin-bottom:var(--spacing-md);display:flex}.project-link-btn,.project-link{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-accent-tint-15);border:1px solid var(--color-accent);color:var(--color-accent);cursor:pointer;border-radius:8px;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .3s;display:inline-flex}.project-link-btn:hover,.project-link:hover{background:var(--color-accent);color:var(--color-on-accent);transform:scale(1.05)}.view-details{justify-content:center;align-items:center;gap:var(--spacing-sm);padding-top:var(--spacing-md);border-top:1px solid var(--color-border);color:var(--color-accent-secondary-light);margin-top:auto;font-size:.95rem;font-weight:600;display:flex}.project-card:hover .view-details{color:var(--color-accent)}.cta-section{max-width:800px;padding:var(--spacing-xxxl) var(--spacing-md);text-align:center;margin:0 auto}.cta-title{color:var(--color-text-primary);margin-bottom:var(--spacing-md);font-size:2.25rem;font-weight:700}.cta-description{color:var(--color-text-tertiary);margin-bottom:var(--spacing-xl);font-size:1.125rem;line-height:1.75}.back-button-container{max-width:1280px;padding:var(--spacing-lg) var(--spacing-md);margin:0 auto}.back-button{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-accent-tint-15);border:1px solid var(--color-accent);color:var(--color-accent);cursor:pointer;border-radius:8px;font-weight:600;transition:all .3s;display:inline-flex}.back-button:hover{background:var(--color-accent);color:var(--color-on-accent);transform:translate(-4px)}.project-detail-hero{max-width:1280px;padding:var(--spacing-xxxl) var(--spacing-md);text-align:center;margin:0 auto}.project-tagline-large{color:var(--color-accent-secondary);margin-bottom:var(--spacing-xxl);font-size:1.5rem;font-weight:300;line-height:1.5}.project-meta-large{justify-content:center;gap:var(--spacing-xxl);margin-bottom:var(--spacing-xxl);flex-wrap:wrap;display:flex}.meta-item-large{align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--color-card-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--color-border);border-radius:12px;min-width:200px;display:flex}.meta-label{color:var(--color-text-muted);margin-bottom:var(--spacing-xs);font-size:.875rem}.meta-value{color:var(--color-text-primary);font-size:1rem;font-weight:600}.project-links-large{justify-content:center;gap:var(--spacing-md);flex-wrap:wrap;display:flex}.project-link-btn-large{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);background:var(--gradient-primary-button);color:var(--color-on-accent);box-shadow:0 6px 18px var(--color-accent-tint-15);border:none;border-radius:8px;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex}.project-link-btn-large:hover{box-shadow:0 10px 25px -5px var(--color-accent-glow);transform:translateY(-2px)}.project-detail-content{max-width:1000px;padding:0 var(--spacing-md) var(--spacing-xxxl);margin:0 auto}.detail-section{margin-bottom:var(--spacing-xxxl)}.detail-section-title{color:var(--color-text-primary);margin-bottom:var(--spacing-lg);background:var(--gradient-text);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:700}.detail-card{padding:var(--spacing-xxl);background:var(--color-card-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--color-border);border-radius:12px}.detail-text{color:var(--color-text-tertiary);white-space:pre-line;font-size:1.125rem;line-height:1.8}.contributions-list{gap:var(--spacing-md);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.contribution-item{align-items:flex-start;gap:var(--spacing-md);color:var(--color-text-tertiary);font-size:1rem;line-height:1.6;display:flex}.contribution-item svg{width:20px;height:20px;color:var(--color-accent);flex-shrink:0;margin-top:2px}.contribution-item span{flex:1}.tech-grid{gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));display:grid}.tech-item{padding:var(--spacing-md) var(--spacing-lg);background:var(--color-accent-tint-15);border:1px solid var(--color-accent);text-align:center;color:var(--color-accent);cursor:pointer;border-radius:8px;font-size:.95rem;font-weight:600;transition:all .3s}.tech-item:hover{background:var(--color-accent);color:var(--color-on-accent);box-shadow:0 10px 15px -3px var(--color-accent-glow);transform:translateY(-4px)}.highlights-grid{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));justify-items:stretch;display:grid}.highlights-grid:has(.highlight-item:nth-child(4):last-child){grid-template-columns:repeat(2,1fr);max-width:800px;margin:0 auto}.highlights-grid:has(.highlight-item:nth-child(3):last-child){grid-template-columns:repeat(3,1fr)}.highlights-grid:has(.highlight-item:nth-child(2):last-child){grid-template-columns:repeat(2,1fr);max-width:600px;margin:0 auto}.highlights-grid:has(.highlight-item:only-child){grid-template-columns:1fr;max-width:400px;margin:0 auto}.highlight-item{text-align:center;padding:var(--spacing-lg);background:var(--color-accent-tint-10);border:1px solid var(--color-border);border-radius:8px;flex-direction:column;align-items:center;display:flex}.highlight-icon{margin-bottom:var(--spacing-sm);color:var(--color-accent);font-size:2rem}.highlight-item p{color:var(--color-text-tertiary);font-size:.95rem;line-height:1.5}.related-projects{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.related-project-card{padding:var(--spacing-xl);background:var(--color-card-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--color-border);cursor:pointer;border-radius:12px;transition:all .3s;position:relative}.related-project-card:hover{border-color:var(--color-accent);box-shadow:0 10px 15px -3px var(--color-accent-glow);transform:translateY(-4px)}.related-project-title{color:var(--color-text-primary);margin-bottom:var(--spacing-sm);font-size:1.25rem;font-weight:700}.related-project-description{color:var(--color-text-muted);margin-bottom:var(--spacing-md);font-size:.95rem;line-height:1.6}.related-project-arrow{color:var(--color-accent);transition:transform .3s}.related-project-card:hover .related-project-arrow{transform:translate(4px)}.error-container{max-width:600px;padding:var(--spacing-xxxl) var(--spacing-md);text-align:center;margin:0 auto}.theme-switcher{cursor:pointer;outline-offset:2px;background:0 0;border:none;border-radius:20px;justify-content:center;align-items:center;width:64px;height:32px;padding:0;transition:all .2s ease-out;display:flex;position:relative}.theme-switcher:hover{opacity:.9}.theme-switcher:active{transform:scale(.95)}.theme-switcher:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}.theme-switcher-pill{background:#f0f0f0;border-radius:20px;width:100%;height:100%;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 2px 4px #0000001a}.theme-switcher-side--purple{background:linear-gradient(135deg,#8b5cf6 0%,#6d28d9 100%);flex:1;position:relative}.theme-switcher-side--teal{background:linear-gradient(135deg,#0d9488 0%,#0b7f75 100%);flex:1;position:relative}.theme-switcher-knob{background:#fff;border-radius:50%;width:28px;height:28px;transition:all .22s cubic-bezier(.2,.9,.3,1);position:absolute;top:50%;left:2px;transform:translateY(-50%);box-shadow:0 2px 8px #0003}.theme-switcher-knob--purple{background:linear-gradient(135deg,#8b5cf6 0%,#6d28d9 100%);left:2px;box-shadow:0 4px 12px #8b5cf64d}.theme-switcher-knob--teal{background:linear-gradient(135deg,#0d9488 0%,#0b7f75 100%);left:34px;box-shadow:0 4px 12px #0d94884d}.theme-switcher:hover .theme-switcher-knob{transform:translateY(-50%)translateY(-2px);box-shadow:0 6px 16px #0003}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}html[data-theme=purple]:before,html[data-theme=teal]:before{content:"";pointer-events:none;z-index:-1;background:linear-gradient(135deg, var(--current-theme-glow) 0%, transparent 50%, var(--current-theme-glow) 100%);opacity:.04;width:100%;height:100%;transition:opacity .35s ease-out;position:fixed;top:0;left:0}button,a,input,textarea,.card,.btn-primary,.btn-secondary{transition:background-color .25s ease-out,color .25s ease-out,border-color .25s ease-out,box-shadow .25s ease-out}@media (prefers-reduced-motion:reduce){.theme-switcher-knob{transition:none}.theme-switcher:hover .theme-switcher-knob{transform:translateY(-50%)}button,a,input,textarea,.card,.btn-primary,.btn-secondary,html[data-theme=purple]:before,html[data-theme=teal]:before{transition:none}}@media (prefers-contrast:more){.theme-switcher:focus-visible{outline-width:4px}.theme-switcher-pill{box-shadow:inset 0 0 0 2px}.theme-switcher-knob{box-shadow:0 0 0 2px}}@media (width<=1024px){.projects-grid{grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.highlights-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}@media (width<=768px){.projects-grid{gap:var(--spacing-lg);grid-template-columns:1fr}.project-card{padding:var(--spacing-xl)}.project-meta{gap:var(--spacing-sm);flex-direction:column}.project-meta-large{gap:var(--spacing-lg)}.meta-item-large{min-width:auto}.project-links-large{flex-direction:column}.project-link-btn-large{justify-content:center;width:100%}.tech-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.related-projects{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.highlights-grid{grid-template-columns:1fr}.highlights-grid:has(.highlight-item:nth-child(4):last-child){grid-template-columns:1fr;max-width:100%}.highlights-grid:has(.highlight-item:nth-child(3):last-child){grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.highlights-grid:has(.highlight-item:nth-child(2):last-child){grid-template-columns:1fr;max-width:100%}}@media (width<=480px){.projects-grid{gap:var(--spacing-md);grid-template-columns:1fr}.project-card{padding:var(--spacing-lg)}.project-title{font-size:1.25rem}.project-tagline{font-size:.875rem}.tech-tags{gap:var(--spacing-xs)}.tech-tag{padding:var(--spacing-xs) var(--spacing-sm);font-size:.7rem}.project-links{gap:var(--spacing-sm);flex-direction:column}.project-link-btn{justify-content:center;width:100%}.project-detail-hero{padding:var(--spacing-xl) var(--spacing-md)}.project-tagline-large{margin-bottom:var(--spacing-lg);font-size:1.125rem}.project-meta-large{gap:var(--spacing-md)}.meta-item-large{min-width:auto;padding:var(--spacing-md);flex-direction:column}.tech-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.tech-item{padding:var(--spacing-sm) var(--spacing-md);font-size:.8rem}.related-projects{grid-template-columns:1fr}.related-project-card{padding:20px}.related-project-title{font-size:1.1rem}.highlight-item{padding:var(--spacing-md)}.highlight-icon{font-size:1.5rem}.detail-card{padding:var(--spacing-lg)}.detail-section-title{font-size:1.5rem}.detail-text{font-size:1rem}.cta-title{font-size:1.5rem}.cta-description{font-size:1rem}}.construction-container{background:var(--gradient-bg);justify-content:center;align-items:center;min-height:100vh;padding-top:80px;display:flex;position:relative;overflow:hidden}.construction-bg-container{z-index:1;position:fixed;inset:0;overflow:hidden}.construction-blob-1,.construction-blob-2{filter:blur(80px);mix-blend-mode:multiply;border-radius:50%;width:300px;height:300px;position:absolute}.construction-blob-1{background:var(--color-accent);top:10%;left:10%}.construction-blob-2{background:var(--color-accent-secondary);bottom:10%;right:10%}.construction-content{z-index:10;text-align:center;max-width:600px;padding:var(--spacing-xxl);position:relative}.construction-icon{margin-bottom:var(--spacing-xl);font-size:80px;display:inline-block}.construction-title{background:var(--gradient-text);-webkit-text-fill-color:transparent;margin-bottom:var(--spacing-md);-webkit-background-clip:text;background-clip:text;font-size:3rem;font-weight:700}.construction-subtitle{color:var(--color-text-muted);margin-bottom:var(--spacing-md);font-size:1.25rem}.construction-description{color:var(--color-text-tertiary);margin-bottom:var(--spacing-xxl);font-size:1rem;line-height:1.8}.progress-container{margin:var(--spacing-xxl) 0}.progress-label{color:var(--color-accent);margin-bottom:var(--spacing-md);font-size:.9rem;font-weight:600}.progress-bar{background:var(--color-accent-tint-20);border:1px solid var(--color-border);border-radius:10px;width:100%;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--color-accent) 0%, var(--color-accent-secondary) 100%);border-radius:10px;width:65%;height:100%}.contact-section{margin-top:var(--spacing-xxxl);padding-top:var(--spacing-xl);border-top:1px solid var(--color-border-light)}.contact-label{color:var(--color-text-muted);margin-bottom:var(--spacing-lg);font-size:.9rem}.contact-links{gap:var(--spacing-md);flex-wrap:wrap;justify-content:center;display:flex}@media (width<=1024px){.cards-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.skills-grid,.certifications-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (width<=768px){.hero-title{font-size:2.5rem}.cards-title,.section-title{font-size:1.75rem}.content-row{gap:var(--spacing-lg);grid-template-columns:1fr}.contact-links-grid{grid-template-columns:repeat(2,1fr)}.category-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.cards-grid{grid-template-columns:1fr}.skills-grid,.certifications-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.button-group{flex-direction:column}.btn-primary,.btn-secondary{width:100%}.hero-subtitle{font-size:1.25rem}.hero-description{font-size:1rem}.tech-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr))}}@media (width<=480px){html[data-theme=teal],html[data-theme=purple]{--spacing-xxxl:32px;--spacing-xxl:32px}.hero-title{font-size:1.75rem}.construction-title{font-size:2rem}.cards-title,.section-title{font-size:1.5rem}.contact-links-grid{grid-template-columns:1fr}.captcha-box{flex-direction:column}.captcha-input{width:100%}.category-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.contact-links{flex-direction:column;width:100%}.contact-link{justify-content:center;width:100%}.buttons-container{flex-direction:column}.tab-button{width:100%}.card,.skill-card,.cert-card{padding:var(--spacing-lg)}}
