:root{--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 4rem;--spacing-xl: 8rem;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display: "Outfit", sans-serif;--font-mono: "JetBrains Mono", monospace}[data-theme=light]{--bg-color: #fcfcfc;--surface-color: #ffffff;--primary-color: #000000;--primary-hover: #333333;--text-primary: #1d1d1f;--text-secondary: #86868b;--accent-color: #000000;--border-color: rgba(0, 0, 0, .05);--icon-neutral: #1d1d1f;--header-icon-color: #86868b;--gradient-primary: linear-gradient(135deg, #000000 0%, #333333 100%);--gradient-surface: linear-gradient(180deg, rgba(255, 255, 255, .8) 0%, rgba(255, 255, 255, .4) 100%)}[data-theme=dark]{--bg-color: #000000;--surface-color: #1c1c1e;--primary-color: #ffffff;--primary-hover: #e5e5e5;--text-primary: #f5f5f7;--text-secondary: #86868b;--accent-color: #ffffff;--border-color: rgba(255, 255, 255, .1);--icon-neutral: #f5f5f7;--header-icon-color: #86868b;--gradient-primary: linear-gradient(135deg, #ffffff 0%, #a3a3a3 100%);--gradient-surface: linear-gradient(180deg, rgba(28, 28, 30, .8) 0%, rgba(28, 28, 30, .4) 100%)}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth;transition:background-color .5s cubic-bezier(.4,0,.2,1);overflow-x:hidden}body{background-color:var(--bg-color);color:var(--text-primary);font-family:var(--font-sans);line-height:1.6;overflow-x:hidden;transition:background-color .5s cubic-bezier(.4,0,.2,1),color .5s cubic-bezier(.4,0,.2,1);background-image:linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);background-size:20px 20px;background-position:center top}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.2;color:var(--text-primary)}a{text-decoration:none;color:inherit;transition:color .3s ease;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}ul{list-style:none}button{cursor:pointer;border:none;background:none;font-family:inherit;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;outline:none}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.section{padding:var(--spacing-lg) 0}.section-title-block{display:flex;flex-direction:column;gap:.5rem;margin-bottom:var(--spacing-lg);text-align:left;align-items:flex-start}.section-title-block.center{text-align:center;align-items:center}.section-title{font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:600;margin:0;letter-spacing:-.02em}.section-title-underline{width:64px;height:3px;background:var(--primary-color);border-radius:999px}.section-title-block.center .section-title-underline{margin-left:auto;margin-right:auto}.gradient-text{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=dark] .gradient-text{background:none;-webkit-background-clip:unset;-webkit-text-fill-color:var(--primary-color);background-clip:unset;color:var(--primary-color)}.glass{background:#ffffffb3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(0,0,0,.05)}[data-theme=dark] .glass{background:#050505b3;border-bottom:1px solid rgba(255,255,255,.05)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-color)}::-webkit-scrollbar-thumb{background:var(--text-secondary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--primary-color)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.8rem 2rem;border-radius:8px;font-weight:500;font-size:1rem;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;letter-spacing:.02em;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;outline:none}.minimal-nav{position:fixed;top:1rem;left:50%;transform:translate(-50%);z-index:1000;width:auto;padding:.5rem 1.25rem;border-radius:9999px;background:#1212164d;backdrop-filter:blur(10px) saturate(1.4);-webkit-backdrop-filter:blur(10px) saturate(1.4);border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 24px #00000040,inset 0 .5px #ffffff14;transition:all .35s cubic-bezier(.4,0,.2,1);pointer-events:none}.minimal-nav.scrolled{top:.65rem;padding:.45rem 1.1rem;background:#0c0c1073;backdrop-filter:blur(14px) saturate(1.5);-webkit-backdrop-filter:blur(14px) saturate(1.5);border-color:#ffffff14;box-shadow:0 6px 32px #00000059,inset 0 .5px #ffffff0f}[data-theme=light] .minimal-nav{background:#ffffff4d;border:1px solid rgba(0,0,0,.08);box-shadow:0 4px 24px #0000000f,inset 0 .5px #ffffffb3}[data-theme=light] .minimal-nav.scrolled{background:#ffffff73;border-color:#0000000f;box-shadow:0 6px 32px #00000014,inset 0 .5px #fffc}.minimal-nav-container{display:flex;align-items:center;justify-content:space-between;gap:.5rem;pointer-events:auto}.minimal-nav-left{display:flex;align-items:center}.minimal-nav-left:empty{display:none}.minimal-nav-back{display:inline-flex;align-items:center;gap:.4rem;font-size:.88rem;font-weight:500;color:var(--text-secondary);text-decoration:none;transition:all .2s ease;white-space:nowrap;padding-right:.5rem;border-right:1px solid rgba(255,255,255,.1);margin-right:.25rem}[data-theme=light] .minimal-nav-back{border-right-color:#0000001a}.minimal-nav-back:hover{color:var(--primary-color);transform:translate(-2px)}.minimal-nav-right{display:flex;align-items:center;gap:.35rem}.minimal-nav-icon-link{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;color:var(--text-secondary);background:transparent;transition:all .2s ease;text-decoration:none}.minimal-nav-icon-link:hover{color:var(--primary-color);background:#ffffff1a;transform:translateY(-1px)}[data-theme=light] .minimal-nav-icon-link:hover{background:#0000000f}.minimal-nav-toggle-wrap{display:flex;align-items:center;padding-left:.15rem}.btn-primary{background:var(--primary-color);color:var(--bg-color);border:1px solid var(--primary-color)}.btn-primary:hover{background:transparent;color:var(--primary-color);transform:translateY(-2px)}.btn-outline{background:transparent;color:var(--text-primary);border:1px solid var(--border-color)}.btn-outline:hover{border-color:var(--primary-color);background:var(--surface-color);transform:translateY(-2px)}@media(max-width:768px){.btn{padding:.8rem 1.2rem;font-size:.95rem}}.skill-card{padding:1rem 1.25rem;background:#ffffff0d;border-radius:16px;border:1px solid rgba(255,255,255,.05);font-size:.95rem;color:var(--text-primary);font-family:var(--font-mono);display:flex;align-items:center;gap:1rem;cursor:default;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden}.skill-card:hover{background:#ffffff14;border-color:#ffffff1a}[data-theme=light] .skill-card{background:#fff;border:none;box-shadow:0 2px 8px #0000000a}[data-theme=light] .skill-card:hover{background:#fff;border:none;box-shadow:0 4px 12px #00000014}[data-theme=dark] .skill-card{background:#050505;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.5' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.05'/%3E%3C/svg%3E");border:none}.project-tag{font-size:.8rem;color:var(--primary-color);background:#646cff1a;padding:.25rem .75rem;border-radius:20px;font-family:var(--font-mono);border:1px solid transparent}[data-theme=light] .project-tag{background:var(--surface-color);border:1px solid var(--border-color)}.project-link{display:inline-flex;width:fit-content;color:var(--primary-color);font-weight:500;border-bottom:1px solid var(--primary-color);transition:all .3s ease;margin-top:auto;padding-top:.5rem}.project-link:hover{opacity:.8;transform:translateY(-1px)}.projects-grid,.projects-grid-home{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}.projects-grid-home .project-card-full{grid-column:1 / -1}@media(max-width:768px){.projects-grid,.projects-grid-home{grid-template-columns:1fr}.projects-grid-home .project-card-full{grid-column:auto}}.project-card{padding:2rem;transition:transform .3s ease,box-shadow .3s ease;cursor:pointer;border-radius:12px;position:relative;background:#ffffff0d;display:flex;flex-direction:column}[data-theme=light] .project-card{background:#fff;border:none;box-shadow:0 2px 8px #0000000a}[data-theme=light] .project-card:hover{box-shadow:0 4px 16px #00000014}[data-theme=dark] .project-card{background:#050505;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.5' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.05'/%3E%3C/svg%3E");border:none}.project-logo{height:40px;width:auto;max-width:55px;object-fit:contain;flex-shrink:0;border-radius:8px}.project-logo-contain,.project-logo[src*=LesGo],.project-logo[src*=dandar-],.project-logo[src*=awake]{border-radius:0!important}.project-links-row{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:auto;padding-top:.5rem}.project-store-link{display:inline-flex;align-items:center;gap:.4rem;font-size:.82rem;font-weight:500;color:var(--text-secondary);padding:.35rem .75rem;border-radius:8px;border:1px solid var(--border-color);transition:all .2s ease;text-decoration:none}.project-store-link:hover{color:var(--primary-color);border-color:var(--primary-color);transform:translateY(-1px)}.hero-content{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4rem}.hero-text{flex:1;min-width:300px;text-align:left}.hero-visual{flex:1;display:flex;justify-content:center;min-width:300px;padding-left:2rem}.hero-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;color:var(--text-secondary);margin-bottom:var(--spacing-sm);font-family:var(--font-mono);font-size:.9rem}.hero-meta-item{display:flex;align-items:center;gap:.5rem}.hero-meta-item span{padding-top:2px}.hero-meta-separator{margin:0 .5rem;opacity:.5}.hero-badges{display:flex;flex-wrap:wrap;gap:.65rem;margin-bottom:var(--spacing-lg)}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .9rem;font-size:.85rem;font-weight:500;font-family:var(--font-mono);border-radius:9999px;border:1px solid var(--border-color);background:var(--surface-color);color:var(--text-primary);transition:all .3s cubic-bezier(.4,0,.2,1)}[data-theme=light] .hero-badge{background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 2px 6px #00000008}[data-theme=dark] .hero-badge{background:#ffffff0a;border:1px solid rgba(255,255,255,.08)}.hero-badge:hover{border-color:var(--primary-color);transform:translateY(-2px);box-shadow:0 4px 12px #0000000f}.hero-badge-icon{color:var(--primary-color);flex-shrink:0}.hero-rocket-icon{transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.hero-badge:hover .hero-rocket-icon{transform:translate(2px,-3px) rotate(14deg) scale(1.15)}@media(max-width:968px){.hero-content{flex-direction:column-reverse;gap:.75rem;padding-top:0}.hero-text{min-width:100%;text-align:center;display:flex;flex-direction:column;align-items:center}.hero-text p{margin-left:auto;margin-right:auto}.hero-visual{min-width:100%;padding-left:0;margin-bottom:0;margin-top:-1.5rem}.hero-meta{flex-direction:column;gap:.5rem;margin-bottom:1rem}.hero-meta-separator{display:none}.hero-badges{justify-content:center;margin-bottom:1.5rem}.mobile-animation-container{max-width:240px!important}#home{min-height:100vh!important;padding-top:3.5rem!important;padding-bottom:1.5rem!important;display:flex;flex-direction:column;justify-content:flex-start}.section{padding:var(--spacing-md) 0!important}#about{padding-bottom:var(--spacing-md)!important}}@media(max-width:480px){.container{padding:0 1.25rem}#home{padding-top:3.25rem!important}.hero-visual{margin-top:.25rem}.hero-content{gap:.75rem}#contact{padding-bottom:2rem!important}footer{margin-top:0!important}}.article-card{padding:2rem;background:#ffffff0d;border-radius:16px;border:1px solid rgba(255,255,255,.05);transition:all .4s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;display:flex;flex-direction:column;height:100%}.article-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;background:#ffffff14;border-color:#ffffff1a}[data-theme=light] .article-card{background:#fff;border:none;box-shadow:0 2px 8px #0000000a}[data-theme=light] .article-card:hover{background:#fff;border-color:transparent;box-shadow:0 12px 24px #00000014}[data-theme=dark] .article-card{background:#050505;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.5' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.05'/%3E%3C/svg%3E");border:none}.article-content{display:flex;flex-direction:column;gap:1rem;height:100%}.article-title{font-size:1.5rem;font-weight:700;color:var(--text-primary);line-height:1.3;margin:0}.article-excerpt{color:var(--text-secondary);line-height:1.6;flex-grow:1;margin:0}.article-meta{display:flex;gap:1.5rem;flex-wrap:wrap;margin-top:.5rem}.article-meta-item{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.9rem;font-family:var(--font-mono)}.article-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.experience-card{padding:1.25rem 1.75rem;border-radius:12px;background:#ffffff0d;position:relative;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid var(--border-color)}[data-theme=light] .experience-card{background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 2px 8px #0000000a}[data-theme=light] .experience-card:hover{box-shadow:0 6px 20px #00000014;transform:translateY(-4px)}[data-theme=dark] .experience-card{background:#050505;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.5' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.05'/%3E%3C/svg%3E");border:1px solid rgba(255,255,255,.08)}[data-theme=dark] .experience-card:hover{border-color:#ffffff2e;transform:translateY(-4px)}.experience-header{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap}.experience-role-group{display:flex;align-items:center;gap:1.25rem;flex:1;min-width:280px}.experience-index{font-family:var(--font-mono);font-size:.82rem;font-weight:600;color:var(--text-secondary);background:#646cff14;padding:.35rem .65rem;border-radius:8px;border:1px solid var(--border-color);letter-spacing:.05em;flex-shrink:0}[data-theme=dark] .experience-index{background:#ffffff0a}.experience-role-title{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:.25rem}.experience-role{font-size:1.15rem;font-weight:700;color:var(--text-primary);margin:0;line-height:1.2}.experience-current-badge{display:inline-flex;align-items:center;gap:.4rem;font-size:.72rem;font-weight:600;font-family:var(--font-mono);color:#4ade80;background:#4ade801a;padding:.15rem .55rem;border-radius:9999px;border:1px solid rgba(74,222,128,.25)}.experience-pulse-dot{width:6px;height:6px;border-radius:50%;background:#4ade80;box-shadow:0 0 8px #4ade80;display:inline-block}.experience-company{font-size:.92rem;font-weight:500;color:var(--text-secondary);margin:0}.experience-meta{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.experience-meta-item{display:flex;align-items:center;gap:.45rem;font-size:.88rem;font-family:var(--font-mono);color:var(--text-secondary)}@media(max-width:768px){.experience-card{padding:1.2rem 1.25rem}.experience-header{flex-direction:column;align-items:flex-start;gap:.9rem}.experience-role-group{gap:.9rem;min-width:100%}.experience-meta{gap:1rem;width:100%;padding-top:.6rem;border-top:1px solid var(--border-color)}}.articles-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem}@media(max-width:768px){.articles-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:1.5rem;margin-right:-1.5rem;padding-right:1.5rem;-webkit-overflow-scrolling:touch;scrollbar-width:none}.articles-grid::-webkit-scrollbar{display:none}.articles-grid .article-card{min-width:80vw;scroll-snap-align:center;height:inherit}.swipe-indicator{display:flex}}.swipe-indicator{display:none;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.9rem;margin-top:1rem;margin-bottom:-1rem;animation:pulse 2s infinite}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}.spotlight-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:1.5rem;max-width:1200px;margin:0 auto}@media(min-width:768px){.spotlight-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.spotlight-grid{grid-template-columns:repeat(3,1fr)}}.spotlight-card{position:relative;border-radius:16px;background-color:transparent;border:none;background:#050505;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.5' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.05'/%3E%3C/svg%3E");overflow:hidden;transition:transform .3s ease;height:100%}[data-theme=light] .spotlight-card{background-color:#fff;border:none;box-shadow:0 2px 8px #0000000a;background-image:none}.spotlight-card:hover{transform:translateY(-2px)}.spotlight-glow{pointer-events:none;position:absolute;inset:0;opacity:var(--spotlight-opacity, 0);transition:opacity .3s;background:radial-gradient(600px circle at var(--mouse-x) var(--mouse-y),rgba(255,255,255,.03),transparent 40%);z-index:1}[data-theme=light] .spotlight-glow{background:radial-gradient(600px circle at var(--mouse-x) var(--mouse-y),rgba(0,0,0,.02),transparent 40%)}.spotlight-content{position:relative;z-index:2;height:100%;padding:1.25rem;display:flex;flex-direction:column;gap:1.5rem}.skill-category-header{display:flex;align-items:center;gap:1rem;margin-bottom:.15rem}.skill-category-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:#ffffff0d;color:var(--primary-color)}[data-theme=light] .skill-category-icon{background:#0000000d}.skill-category-title{font-size:1.1rem;font-weight:700;color:var(--text-primary)}.skill-list{display:flex;flex-wrap:wrap;gap:.5rem}.bento-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;max-width:1200px;margin:0 auto}@media(min-width:768px){.bento-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.bento-grid{grid-template-columns:repeat(3,1fr)}}.bento-item{border-radius:16px;padding:1.25rem;display:flex;flex-direction:column;justify-content:space-between;transition:all .3s cubic-bezier(.4,0,.2,1);border:none;background:#050505;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.5' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.05'/%3E%3C/svg%3E");overflow:hidden;position:relative;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}[data-theme=light] .bento-item{border:none;background:#fff;box-shadow:0 2px 8px #0000000a}.bento-item:hover{transform:translateY(-4px);border-color:#fff3}[data-theme=light] .bento-item:hover{border:none;background:#fff;box-shadow:0 4px 12px #00000014}.bento-item-content{display:flex;flex-direction:column;gap:.5rem;z-index:2}.bento-item-title{font-family:var(--font-display);font-weight:700;font-size:1.25rem;color:var(--text-primary)}.bento-item-description{font-size:.9rem;color:var(--text-secondary);line-height:1.5}@media(min-width:768px){.col-span-1{grid-column:span 1}.col-span-2{grid-column:span 2}.col-span-3{grid-column:span 3}.row-span-1{grid-row:span 1}.row-span-2{grid-row:span 2}.row-span-3{grid-row:span 3}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.skill-pill{position:relative;display:flex;align-items:center;gap:.5rem;padding:.4rem .8rem;border-radius:999px;font-size:.8rem;font-weight:500;font-family:var(--font-sans);color:#fffc;background:#ffffff0d;overflow:hidden;z-index:1;transition:color .3s ease;border:1px solid transparent}.skill-pill:after{content:"";position:absolute;inset:1px;background:#121212;border-radius:999px;z-index:-1;transition:background .3s ease}[data-theme=light] .skill-pill:after{background:#f3f4f6}.skill-pill:before{content:"";position:absolute;inset:0;border-radius:999px;padding:1px;background:linear-gradient(135deg,#667eea,#764ba2,#f093fb);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;z-index:-2;opacity:0;transition:opacity .3s ease}.skill-pill:hover{color:#fff}[data-theme=light] .skill-pill:hover,[data-theme=light] .skill-pill{color:#000}.skill-pill:hover:before{opacity:1}.skill-pill:hover:after{background:#000}[data-theme=light] .skill-pill:hover:after{background:#fff}.article-link{display:inline-flex;align-items:center;gap:.5rem;color:#000;font-weight:600;text-decoration:none;margin-top:1rem;transition:all .3s ease;font-size:1rem}[data-theme=dark] .article-link{color:#fff}.article-link:hover{gap:.75rem;color:#000;opacity:.8}[data-theme=dark] .article-link:hover{color:#fff;opacity:.8}.article-link svg{transition:transform .3s ease}.article-link:hover svg{transform:translate(2px)}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}.about-headline{font-size:clamp(2rem,3vw,3rem);font-weight:700;line-height:1.2;margin-bottom:1.5rem}.about-text{color:var(--text-secondary);font-size:1.1rem;line-height:1.7;margin-bottom:2rem}.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.stat-card{background:var(--surface-color);border:1px solid var(--border-color);padding:1.5rem;border-radius:16px;transition:all .3s ease}[data-theme=dark] .stat-card{background:#050505;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.5' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.05'/%3E%3C/svg%3E");border:none}[data-theme=light] .stat-card{border:none;box-shadow:0 2px 8px #0000000a}[data-theme=light] .stat-card:hover{box-shadow:0 4px 16px #00000014}.stat-card:hover{transform:translateY(-5px);border-color:#667eea4d}.stat-icon{color:var(--primary-color);margin-bottom:.5rem;transition:all .3s ease}.stat-card:hover .stat-icon{background:linear-gradient(135deg,#667eea,#764ba2,#f093fb);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=light] .stat-card:hover .stat-icon{background:linear-gradient(135deg,#4f46e5,#7c3aed,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-value{font-size:1.1rem;font-weight:700;color:var(--text-primary);display:block;transition:all .3s ease}.stat-label{font-size:.9rem;color:var(--text-secondary)}@media(max-width:968px){.about-content{grid-template-columns:1fr;gap:2rem}.about-headline,.about-text{text-align:left}}.skills-bento-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:.5rem;max-width:1200px;margin:0 auto}.skill-bento-item{grid-column:span 1;min-height:160px;display:flex}.skill-bento-item.span-2{grid-column:span 2}.skill-bento-item.span-3{grid-column:span 3}.skill-bento-item.span-4{grid-column:span 4}.skill-bento-item.span-5{grid-column:span 5}.skill-bento-item.span-6{grid-column:span 6}.skill-bento-item.span-7{grid-column:span 7}.skill-bento-item .spotlight-card{width:100%;height:100%;display:flex;flex-direction:column}.skill-bento-item .spotlight-content{flex:1;display:flex;flex-direction:column}.skill-bento-item .skill-list{flex:1;display:flex;flex-wrap:wrap;gap:.5rem;align-content:flex-start}@media(max-width:1024px){.skills-bento-grid{grid-template-columns:repeat(4,1fr)}.skill-bento-item.span-3,.skill-bento-item.span-4{grid-column:span 2}}@media(max-width:768px){.skills-bento-grid{grid-template-columns:1fr;gap:.75rem}.skill-bento-item,.skill-bento-item.span-2,.skill-bento-item.span-3,.skill-bento-item.span-4,.skill-bento-item.span-5,.skill-bento-item.span-6,.skill-bento-item.span-7{grid-column:span 1;min-height:150px}}.skill-sub-category-group{margin-bottom:1rem;width:100%}.skill-sub-category-group:last-child{margin-bottom:0}.skill-sub-category-title{font-size:.85rem;font-weight:600;color:var(--text-secondary);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.05em;display:block}@media(max-width:768px){.hide-on-mobile{display:none!important}}.contact-email-card{display:inline-flex;align-items:center;gap:.75rem;padding:.65rem 1.15rem;background:var(--surface-color);border:1px solid var(--border-color);border-radius:12px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}[data-theme=light] .contact-email-card{background:#fff;border-color:#00000014;box-shadow:0 2px 8px #0000000a}[data-theme=light] .contact-email-card:hover{box-shadow:0 4px 14px #00000014;border-color:var(--primary-color)}[data-theme=dark] .contact-email-card{background:#ffffff0a;border-color:#ffffff14}[data-theme=dark] .contact-email-card:hover{background:#ffffff12;border-color:var(--primary-color)}.contact-email-card:hover{transform:translateY(-2px)}.contact-email-icon{color:var(--primary-color);display:flex;align-items:center;justify-content:center}.contact-email-text{font-size:1.05rem;font-weight:500;font-family:var(--font-mono);color:var(--text-primary)}.contact-copy-action{margin-left:.25rem}.contact-copy-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:500;padding:.25rem .6rem;border-radius:6px;background:#ffffff14;color:var(--text-secondary);transition:all .2s ease}[data-theme=light] .contact-copy-badge{background:#0000000d;color:var(--text-secondary)}.contact-email-card:hover .contact-copy-badge{color:var(--primary-color);background:#3b82f61a}.contact-copy-badge.copied{color:#4ade80!important;background:#4ade8026!important}.contact-toast{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;font-weight:500;color:var(--text-primary);padding:.35rem .85rem;background:var(--surface-color);border:1px solid rgba(74,222,128,.3);border-radius:9999px;box-shadow:0 4px 12px #0000001a}[data-theme=light] .contact-toast{background:#fff;border-color:#4ade8080;box-shadow:0 4px 12px #0000000f}@media(max-width:480px){.contact-email-card{padding:.6rem .9rem;gap:.5rem}.contact-email-text{font-size:.92rem}}.scroll-to-top-btn{position:fixed;bottom:2rem;right:2rem;width:44px;height:44px;border-radius:50%;background:#121216d9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.12);box-shadow:0 8px 24px -4px #0006;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10000;padding:0;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease,border-color .2s ease}[data-theme=light] .scroll-to-top-btn{background:#ffffffeb;border:1px solid rgba(0,0,0,.08);box-shadow:0 8px 24px -4px #0000001f}.scroll-to-top-btn:hover{transform:translateY(-3px) scale(1.05);border-color:var(--primary-color);box-shadow:0 12px 28px -4px #3b82f64d}.scroll-to-top-btn:active{transform:translateY(0) scale(.95)}.scroll-progress-ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg);pointer-events:none}.scroll-progress-track{fill:none;stroke:var(--border-color);stroke-width:2.5;opacity:.35}.scroll-progress-indicator{fill:none;stroke:var(--primary-color);stroke-width:2.8;stroke-linecap:round;transition:stroke-dashoffset .12s linear}.scroll-to-top-icon{color:var(--text-primary);position:relative;z-index:2;transition:transform .2s ease,color .2s ease}.scroll-to-top-btn:hover .scroll-to-top-icon{color:var(--primary-color);transform:translateY(-2px)}@media(max-width:768px){.scroll-to-top-btn{bottom:calc(1.75rem + env(safe-area-inset-bottom,0px));right:1.5rem;width:44px;height:44px}}.loader-container{position:fixed;inset:0;margin:0;padding:0;box-sizing:border-box;background:#fff;display:flex;align-items:center;justify-content:center;z-index:9999;opacity:1;transition:opacity .3s ease;overflow:hidden;-webkit-overflow-scrolling:touch}.loader-container.fade-out{opacity:0}[data-theme=dark] .loader-container{background:#050505}
