@keyframes orbFloat1{0%,to{transform:translate(0,0)}50%{transform:translate(30px,-30px)}}@keyframes orbFloat2{0%,to{transform:translate(0,0)}50%{transform:translate(-20px,20px)}}@keyframes pulse{0%,to{opacity:1;box-shadow:0 0 0 0 rgba(34,197,94,.4)}50%{opacity:.8;box-shadow:0 0 0 8px transparent}}@keyframes scrollWheel{0%{opacity:1;transform:translateX(-50%) translateY(0)}50%{opacity:.6}to{opacity:0;transform:translateX(-50%) translateY(14px)}}@keyframes floatY{0%,to{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-10px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes float-up{0%{transform:translateY(0) scale(1);opacity:0}10%,90%{opacity:1}to{transform:translateY(-100px) scale(.5);opacity:0}}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@keyframes headingSlideIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes skillIconPulse{0%,to{transform:scale(1)}40%{transform:scale(1.3)}70%{transform:scale(.95)}}@keyframes glow-pulse{0%,to{transform:scale(1);opacity:.4}50%{transform:scale(1.2);opacity:.6}}:root{--bg-primary:#0F172A;--bg-secondary:#1E293B;--bg-card:#1E293B;--bg-card-hover:#263449;--bg-code:#0B1120;--bg-nav:rgba(15, 23, 42, 0.88);--text-primary:#F8FAFC;--text-secondary:#94A3B8;--text-muted:#64748B;--accent-primary:#22C55E;--accent-secondary:#3B82F6;--accent-tertiary:#8B5CF6;--accent-gradient:linear-gradient(135deg, #22C55E 0%, #3B82F6 50%, #8B5CF6 100%);--accent-glow:rgba(34, 197, 94, 0.12);--accent-glow-blue:rgba(59, 130, 246, 0.12);--border-color:rgba(148, 163, 184, 0.1);--border-card:rgba(148, 163, 184, 0.07);--neon-green:0 0 20px rgba(34, 197, 94, 0.2), 0 0 60px rgba(34, 197, 94, 0.06);--neon-blue:0 0 20px rgba(59, 130, 246, 0.2), 0 0 60px rgba(59, 130, 246, 0.06);--code-kw:#c678dd;--code-str:#22C55E;--code-fn:#3B82F6;--code-cls:#e5c07b;--code-ann:#06b6d4;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--space-4xl:6rem;--space-5xl:8rem;--font-heading:'Archivo', -apple-system, BlinkMacSystemFont, sans-serif;--font-body:'Space Grotesk', -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:'JetBrains Mono', 'Fira Code', monospace;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--text-6xl:3.75rem;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--shadow-sm:0 1px 3px rgba(0, 0, 0, 0.3), 0 1px 2px rgba(0, 0, 0, 0.2);--shadow-md:0 6px 20px rgba(0, 0, 0, 0.3), 0 2px 8px rgba(0, 0, 0, 0.15);--shadow-lg:0 16px 48px rgba(0, 0, 0, 0.4), 0 6px 20px rgba(0, 0, 0, 0.2);--shadow-glow:0 0 30px rgba(34, 197, 94, 0.12), 0 0 60px rgba(34, 197, 94, 0.04);--shadow-glow-blue:0 0 30px rgba(59, 130, 246, 0.12), 0 0 60px rgba(59, 130, 246, 0.04);--transition-fast:150ms ease-out;--transition-base:250ms ease-out;--transition-slow:400ms ease-out;--nav-height:72px;--max-width:1200px}[data-theme=light]{--bg-primary:#F8FAFC;--bg-secondary:#FFFFFF;--bg-card:#FFFFFF;--bg-card-hover:#F1F5F9;--bg-code:#F1F5F9;--bg-nav:rgba(248, 250, 252, 0.92);--text-primary:#0F172A;--text-secondary:#475569;--text-muted:#94A3B8;--accent-glow:rgba(34, 197, 94, 0.08);--accent-glow-blue:rgba(59, 130, 246, 0.08);--border-color:rgba(15, 23, 42, 0.1);--border-card:rgba(15, 23, 42, 0.08);--neon-green:0 4px 20px rgba(34, 197, 94, 0.12), 0 0 40px rgba(34, 197, 94, 0.04);--neon-blue:0 4px 20px rgba(59, 130, 246, 0.12), 0 0 40px rgba(59, 130, 246, 0.04);--shadow-sm:0 1px 3px rgba(0, 0, 0, 0.08), 0 1px 2px rgba(0, 0, 0, 0.06);--shadow-md:0 6px 20px rgba(0, 0, 0, 0.08), 0 2px 8px rgba(0, 0, 0, 0.04);--shadow-lg:0 16px 48px rgba(0, 0, 0, 0.12), 0 4px 16px rgba(0, 0, 0, 0.06);--shadow-glow:0 4px 20px rgba(34, 197, 94, 0.08);--shadow-glow-blue:0 4px 20px rgba(59, 130, 246, 0.08)}[data-theme=light] .blog-card,[data-theme=light] .education__card,[data-theme=light] .github__stat-card,[data-theme=light] .philosophy__card,[data-theme=light] .project-card,[data-theme=light] .skill-group,[data-theme=light] .timeline__card{box-shadow:0 2px 12px rgba(0,0,0,.06),0 1px 4px rgba(0,0,0,.04);border:1px solid rgba(15,23,42,.06)}[data-theme=light] .blog-card:hover,[data-theme=light] .philosophy__card:hover,[data-theme=light] .project-card:hover,[data-theme=light] .skill-group:hover{box-shadow:0 16px 48px rgba(0,0,0,.1),0 4px 16px rgba(34,197,94,.06)}[data-theme=light] .code-window{box-shadow:0 8px 32px rgba(0,0,0,.12);border:1px solid rgba(15,23,42,.08)}[data-theme=light] .navbar.scrolled{box-shadow:0 4px 20px rgba(0,0,0,.06);border-bottom:1px solid rgba(15,23,42,.06)}[data-theme=light] .contact__form{box-shadow:0 4px 20px rgba(0,0,0,.04);border:1px solid rgba(15,23,42,.06);background:#fff;border-radius:var(--radius-lg);padding:var(--space-2xl)}[data-theme=light] .hero__badge{box-shadow:0 2px 8px rgba(34,197,94,.12)}[data-theme=light] .btn--primary{box-shadow:0 4px 16px rgba(34,197,94,.2)}[data-theme=light] .btn--primary:hover{box-shadow:0 8px 30px rgba(34,197,94,.3)}[data-theme=light] .hero__glow-orb--1{background:radial-gradient(circle,rgba(34,197,94,.06)0,transparent 70%)}[data-theme=light] .hero__glow-orb--2{background:radial-gradient(circle,rgba(59,130,246,.06)0,transparent 70%)}[data-theme=light] .back-to-top{box-shadow:0 4px 16px rgba(0,0,0,.1)}[data-theme=light] .about__image-placeholder{background:linear-gradient(135deg,#e2e8f0,#f1f5f9);color:rgba(34,197,94,.4)}[data-theme=light] .contribution-cell{border-radius:2px}[data-theme=light] .project-card__placeholder{background:linear-gradient(135deg,#f1f5f9 0,#e2e8f0 100%);color:rgba(34,197,94,.4)}[data-theme=light] .footer{background:#f1f5f9;border-top:1px solid rgba(15,23,42,.06)}*,::after,::before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--nav-height);font-size:16px}body{font-family:var(--font-body);background:var(--bg-primary);color:var(--text-primary);line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background var(--transition-slow),color var(--transition-slow)}i[class*=" fa-"],i[class^=fa]{display:inline-flex;align-items:center;justify-content:center;width:1.25em;min-width:1.25em}body.theme-transitioning,body.theme-transitioning *,body.theme-transitioning ::after,body.theme-transitioning ::before{transition:background-color 400ms ease-out,color 400ms ease-out,border-color 400ms ease-out,box-shadow 400ms ease-out!important}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading)}a,button{cursor:pointer;color:inherit}a{text-decoration:none}ol,ul{list-style:none}img{max-width:100%;display:block}button{border:0;background:0 0;font-family:inherit}.skip-link{position:absolute;top:-40px;left:50%;transform:translateX(-50%);padding:8px 16px;background:var(--accent-primary);color:var(--bg-primary);font-weight:600;border-radius:var(--radius-md);z-index:10000;transition:top .3s ease}.skip-link:focus{top:20px;outline:2px solid var(--text-primary);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.form--loading{opacity:.7;pointer-events:none}.form--loading button,.form--loading input,.form--loading textarea{cursor:not-allowed}.field-error{color:#ef4444;font-size:.75rem;margin-top:.25rem;display:flex;align-items:center;gap:.25rem}.field-error::before{content:"⚠️";font-size:.875rem}.form-feedback{padding:.75rem 1rem;border-radius:8px;font-size:.875rem;font-weight:500;margin-bottom:1rem;animation:fadeUpIn .3s ease forwards}.form-feedback--error{background:rgba(239,68,68,.1);color:#ef4444;border:1px solid rgba(239,68,68,.2)}.form-feedback--success{background:rgba(34,197,94,.1);color:#22c55e;border:1px solid rgba(34,197,94,.2)}.reveal{contain:layout style paint}input,textarea{font-family:inherit;font-size:inherit}::selection{background:var(--accent-primary);color:#fff}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-lg)}.section{padding:var(--space-5xl)0;position:relative}.section__header{text-align:center;margin-bottom:var(--space-4xl)}.section__tag{display:inline-block;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--accent-primary);margin-bottom:var(--space-sm);font-weight:500}.tag-bracket{color:var(--text-muted)}.section__title{font-size:var(--text-4xl);font-weight:800;letter-spacing:-.03em;margin-bottom:var(--space-md)}.gradient-text,.section__line{background:var(--accent-gradient)}.section__line{width:60px;height:4px;border-radius:var(--radius-full);margin:0 auto}.gradient-text{-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.btn{display:inline-flex;align-items:center;gap:var(--space-sm);padding:.85rem 1.75rem;border-radius:var(--radius-full);font-weight:600;font-size:var(--text-base);transition:all var(--transition-base);white-space:nowrap;cursor:pointer}.btn--primary,.nav-link::after{background:var(--accent-gradient)}.btn--primary{color:#fff;box-shadow:0 4px 20px rgba(34,197,94,.25)}.btn--primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(34,197,94,.4)}.btn--outline{border:2px solid var(--border-color);color:var(--text-primary);backdrop-filter:blur(8px)}.btn--outline:hover{border-color:var(--accent-primary);color:var(--accent-primary);transform:translateY(-2px)}.btn--full{width:100%;justify-content:center}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;background:var(--bg-nav);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid var(--border-color);height:var(--nav-height);transition:all var(--transition-base)}.navbar.scrolled{box-shadow:var(--shadow-md)}.navbar__inner{display:flex;align-items:center;justify-content:space-between;height:100%}.logo-char,.navbar__logo{font-weight:900;position:relative}.navbar__logo{font-family:var(--font-mono);font-size:1.6rem;letter-spacing:.02em;transition:all .4s cubic-bezier(.175,.885,.32,1.275);padding:8px 16px;border-radius:var(--radius-md);background:rgba(34,197,94,.05);border:1.5px solid rgba(34,197,94,.1);display:inline-flex;align-items:center;gap:2px;overflow:hidden}.navbar__logo:hover{background:rgba(34,197,94,.1);border-color:rgba(34,197,94,.35);box-shadow:0 0 25px rgba(34,197,94,.2),0 0 60px rgba(34,197,94,.06),inset 0 0 15px rgba(34,197,94,.04);transform:translateY(-2px) scale(1.05)}.logo-char{display:inline-block;transition:all .4s cubic-bezier(.34,1.56,.64,1)}.logo-char--t{color:var(--accent-primary);text-shadow:0 0 8px rgba(34,197,94,.3)}.logo-char--d{color:var(--accent-secondary);text-shadow:0 0 8px rgba(59,130,246,.3)}.navbar__logo:hover .logo-char--t{transform:rotate(-12deg) scale(1.2) translateY(-2px);text-shadow:0 0 20px rgba(34,197,94,.7),0 0 40px rgba(34,197,94,.3);color:#4ade80}.navbar__logo:hover .logo-char--d{transform:rotate(12deg) scale(1.2) translateY(-2px);text-shadow:0 0 20px rgba(59,130,246,.7),0 0 40px rgba(59,130,246,.3);color:#60a5fa}.logo-bracket{color:var(--accent-tertiary);font-weight:800;text-shadow:0 0 6px rgba(139,92,246,.3)}.navbar__logo:hover .logo-bracket{color:#a78bfa;text-shadow:0 0 18px rgba(139,92,246,.6),0 0 35px rgba(139,92,246,.2)}.hamburger span,.logo-bracket,.logo-slash{transition:all .4s cubic-bezier(.34,1.56,.64,1)}.logo-slash{color:var(--accent-primary);font-weight:800}.navbar__logo:hover .logo-slash{color:#f59e0b;text-shadow:0 0 18px rgba(245,158,11,.6),0 0 35px rgba(245,158,11,.2);transform:rotate(360deg)}.navbar__links{display:flex;align-items:center;gap:var(--space-xl)}.nav-link{font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);position:relative;padding:var(--space-xs)0;transition:color var(--transition-fast)}.nav-link::after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;transition:width var(--transition-base)}.nav-link.active,.nav-link:hover{color:var(--text-primary)}.nav-link.active::after,.nav-link:hover::after{width:100%}.navbar__actions{display:flex;align-items:center;gap:var(--space-md)}.nav-link::after,.theme-toggle{border-radius:var(--radius-full)}.theme-toggle{width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:var(--text-lg);color:var(--text-secondary);transition:all var(--transition-fast);background:var(--bg-card);border:1px solid var(--border-card)}.theme-toggle:hover{color:var(--accent-primary);border-color:var(--accent-primary)}.hamburger{display:none;flex-direction:column;gap:6px;width:32px;height:32px;justify-content:center;z-index:1001;position:relative}.hamburger span{display:block;width:100%;height:2.5px;background:var(--text-primary);border-radius:4px;transform-origin:center}.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(6px,6px);background:var(--accent-primary)}.hamburger.active span:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px);background:var(--accent-primary)}@media (max-width:768px){.hamburger{display:flex}.navbar .navbar__links{display:none;position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(15,23,42,.96);backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);flex-direction:column;justify-content:center;align-items:center;gap:var(--space-sm);z-index:1000;padding:80px var(--space-xl) 40px;list-style:none;margin:0;overflow-y:auto}.navbar .navbar__links.open{display:flex;animation:menuFadeIn .4s cubic-bezier(.16,1,.3,1) forwards}.navbar__links li{opacity:0;transform:translateY(30px);list-style:none;width:100%;max-width:320px;text-align:center}.navbar__links.open li{animation:menuItemIn .5s cubic-bezier(.16,1,.3,1) forwards}.navbar__links.open li:nth-child(1){animation-delay:.05s}.navbar__links.open li:nth-child(2){animation-delay:.1s}.navbar__links.open li:nth-child(3){animation-delay:.15s}.navbar__links.open li:nth-child(4){animation-delay:.2s}.navbar__links.open li:nth-child(5){animation-delay:.25s}.navbar__links.open li:nth-child(6){animation-delay:.3s}.navbar .navbar__links .nav-link{font-size:1.3rem;font-weight:700;display:block;padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-lg);transition:all .3s ease;position:relative;color:var(--text-primary);letter-spacing:.02em;border:1px solid transparent}.navbar .navbar__links .nav-link.active,.navbar .navbar__links .nav-link:hover{color:var(--accent-primary);background:rgba(34,197,94,.1);border-color:rgba(34,197,94,.15)}.navbar .navbar__links .nav-link::after{display:none}.navbar__links::after,.navbar__links::before{content:"";position:absolute;border-radius:50%;opacity:.06;pointer-events:none}.navbar__links::before{width:200px;height:200px;background:var(--accent-primary);filter:blur(100px);top:10%;left:-20%}.navbar__links::after{width:180px;height:180px;background:var(--accent-secondary);filter:blur(80px);bottom:15%;right:-15%}[data-theme=light] .navbar__links{background:rgba(248,250,252,.96)}[data-theme=light] .nav-link.active,[data-theme=light] .nav-link:hover{background:rgba(34,197,94,.08)}}.hero{min-height:100svh;display:flex;align-items:center;position:relative;padding-top:var(--nav-height);overflow:hidden}.hero__bg-grid{position:absolute;inset:0;background-image:linear-gradient(var(--border-color) 1px,transparent 1px),linear-gradient(90deg,var(--border-color) 1px,transparent 1px);background-size:60px 60px;mask-image:radial-gradient(ellipse 60% 60%at 50% 50%,#000 20%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse 60% 60%at 50% 50%,#000 20%,transparent 70%)}.hero__glow-orb{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none;opacity:.15}.hero__glow-orb--1{width:400px;height:400px;background:var(--accent-primary);top:10%;left:-5%;animation:orbFloat1 12s ease-in-out infinite}.hero__glow-orb--2{width:350px;height:350px;background:var(--accent-secondary);bottom:5%;right:-5%;animation:orbFloat2 15s ease-in-out infinite}.hero__particles{position:absolute;inset:0;pointer-events:none}.hero__inner{display:grid;grid-template-columns:1.1fr .9fr;gap:var(--space-4xl);align-items:center;min-height:calc(100svh - var(--nav-height));padding:var(--space-3xl)0}.hero__badge{display:inline-flex;align-items:center;gap:var(--space-sm);padding:.4rem 1rem;background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);margin-bottom:var(--space-xl)}.pulse-dot{width:8px;height:8px;border-radius:50%;background:var(--accent-primary);box-shadow:0 0 8px var(--accent-primary);animation:pulse 2s ease-in-out infinite}.hero__title{font-size:clamp(var(--text-3xl),5vw,var(--text-6xl));font-weight:900;line-height:1.08;letter-spacing:-.04em;margin-bottom:var(--space-md)}.hero__subtitle{font-size:clamp(var(--text-lg),2.5vw,var(--text-2xl));font-weight:500;color:var(--text-secondary);margin-bottom:var(--space-lg)}.hero__tagline{font-size:var(--text-lg);color:var(--text-muted);max-width:520px;margin-bottom:var(--space-2xl);line-height:1.8}.hero__cta{display:flex;gap:var(--space-md);margin-bottom:var(--space-3xl);flex-wrap:wrap}.hero__stats{display:flex;gap:var(--space-3xl)}.stat{text-align:left}.stat__number{font-family:var(--font-heading);font-size:var(--text-3xl);font-weight:800;display:inline}.highlight i,.stat__plus{color:var(--accent-primary)}.stat__plus{font-size:var(--text-2xl);font-weight:700}.stat__label{display:block;font-size:var(--text-sm);color:var(--text-muted);margin-top:var(--space-xs)}.code-window{background:var(--bg-code);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg),var(--neon-green);position:relative}.code-window::before{inset:-1px;border-radius:var(--radius-lg);padding:1px;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask-composite:xor;opacity:.25;pointer-events:none}.code-window__header{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);background:rgba(255,255,255,.03);border-bottom:1px solid var(--border-color)}.dot{width:12px;height:12px;border-radius:50%}.dot--red{background:#ff5f57}.dot--yellow{background:#febc2e}.dot--green{background:#28c840}.code-window__body,.code-window__title{font-family:var(--font-mono);font-size:var(--text-sm)}.code-window__title{margin-left:var(--space-md);color:var(--text-muted)}.code-window__body{padding:var(--space-lg) var(--space-xl);line-height:1.9;overflow-x:auto;color:var(--text-secondary)}.code-window__body .kw{color:var(--code-kw)}.code-window__body .str{color:var(--code-str)}.code-window__body .fn{color:var(--code-fn)}.code-window__body .cls{color:var(--code-cls)}.code-window__body .ann{color:var(--code-ann)}.hero__scroll-indicator{position:absolute;bottom:var(--space-2xl);left:50%;transform:translateX(-50%);animation:floatY 2.5s ease-in-out infinite;display:flex;flex-direction:column;align-items:center;gap:var(--space-sm)}.mouse{display:block;width:28px;height:44px;border:2px solid var(--accent-primary);border-radius:14px;position:relative;background:rgba(34,197,94,.04);box-shadow:0 0 15px rgba(34,197,94,.1),inset 0 0 10px rgba(34,197,94,.03);transition:all .3s ease}.mouse:hover{border-color:var(--accent-primary);box-shadow:0 0 25px rgba(34,197,94,.2),inset 0 0 15px rgba(34,197,94,.06);transform:scale(1.08)}.mouse__wheel{display:block;width:4px;height:10px;background:var(--accent-primary);border-radius:3px;position:absolute;top:8px;left:50%;transform:translateX(-50%);animation:scrollWheel 2s ease-in-out infinite;box-shadow:0 0 6px rgba(34,197,94,.4)}.hero__scroll-text{font-size:var(--text-xs);color:var(--text-muted);letter-spacing:.15em;text-transform:uppercase;font-weight:500}@media (max-width:992px){.hero__inner{grid-template-columns:1fr;text-align:center}.hero__tagline{margin-left:auto;margin-right:auto}.hero__cta,.hero__stats{justify-content:center}.hero__visual{display:none}}@media (max-width:576px){.hero__stats{flex-direction:column;gap:var(--space-lg);align-items:center}.stat{text-align:center}}.about__grid{display:grid;grid-template-columns:300px 1fr;gap:var(--space-4xl);align-items:center}.about__image-wrapper{position:relative;width:260px;height:260px;margin:0 auto}.about__image-placeholder,.about__photo{width:100%;height:100%;border-radius:var(--radius-xl);position:relative;z-index:1}.about__image-placeholder{background:var(--bg-card);display:flex;align-items:center;justify-content:center;font-size:4rem;color:var(--accent-primary);border:1px solid var(--border-card);overflow:hidden}.about__image-placeholder::before,.code-window::before,.skill-group::before{content:"";position:absolute;background:var(--accent-gradient)}.about__image-placeholder::before{inset:0;opacity:.05}.about__photo{object-fit:cover;border:2px solid var(--border-card);box-shadow:var(--shadow-lg);transition:transform .5s ease,box-shadow .5s ease}.about__photo:hover{transform:scale(1.03);box-shadow:var(--shadow-lg),var(--neon-green)}.about__image-ring{position:absolute;inset:-12px;border-radius:calc(var(--radius-xl) + 8px);border:2px dashed var(--border-color);animation:spin 30s linear infinite}.about__text{font-size:var(--text-lg);color:var(--text-secondary);margin-bottom:var(--space-lg);line-height:1.8}.about__text strong,.blog-detail__meta-item strong,.project-detail__meta-item strong,.timeline__list li strong{color:var(--text-primary);font-weight:600}.about__highlights{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md);margin-top:var(--space-xl)}.highlight{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);font-weight:500;font-size:var(--text-sm);transition:all var(--transition-base);cursor:pointer}.highlight i{font-size:var(--text-lg)}.highlight:hover{border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:var(--shadow-glow)}@media (max-width:768px){.about__grid{text-align:center}.about__grid,.about__highlights{grid-template-columns:1fr}}.skills__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-xl)}.skill-group{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);padding:var(--space-2xl);text-align:center;transition:all var(--transition-base);position:relative;overflow:hidden;cursor:pointer;box-shadow:var(--shadow-sm)}.skill-group::before{top:0;left:0;right:0;height:3px;transform:scaleX(0);transition:transform var(--transition-base)}.skill-group:hover{border-color:rgba(34,197,94,.2);box-shadow:var(--shadow-lg),var(--shadow-glow)}.skill-group:hover::before{transform:scaleX(1)}.skill-group__icon{width:56px;height:56px;margin:0 auto var(--space-lg);border-radius:var(--radius-md);background:var(--accent-glow);display:flex;align-items:center;justify-content:center;font-size:var(--text-2xl);color:var(--accent-primary)}.skill-group__title{font-size:var(--text-lg);font-weight:700;margin-bottom:var(--space-lg)}.skill-group__content{width:100%}.skill-group__tags{display:flex;flex-wrap:wrap;gap:var(--space-sm);justify-content:center}.skill-tag{padding:.35rem .85rem;background:rgba(148,163,184,.12);border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:500;color:var(--text-primary);transition:all .2s cubic-bezier(.34,1.56,.64,1);cursor:pointer}.project-card__tags span,.skill-tag--primary{font-weight:600;color:var(--accent-primary);background:var(--accent-glow)}.skill-tag--primary{border-color:rgba(34,197,94,.2)}.skill-tag:hover{border-color:var(--accent-primary);color:var(--accent-primary);transform:scale(1.06)}@media (max-width:992px){.skills__grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:576px){.skills__grid{display:flex;flex-direction:column;gap:var(--space-sm)}.skill-group{padding:0;border-radius:var(--radius-md);overflow:hidden;border-left:3px solid var(--accent-primary);text-align:left}.skill-group__icon{display:none}.skill-group__content{padding:var(--space-md) var(--space-lg)}.skill-group__title{font-size:var(--text-base);margin-bottom:var(--space-xs);color:var(--accent-primary);display:flex;align-items:center;gap:var(--space-sm)}.skill-group__title::before{content:"›";font-size:1.2em;font-weight:800;color:var(--accent-primary)}.skill-group__tags{justify-content:flex-start;gap:6px;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px;scrollbar-width:none}.skill-group__tags::-webkit-scrollbar{display:none}.skill-tag{padding:.3rem .7rem;font-size:.72rem;white-space:nowrap;flex-shrink:0}.skill-tag--primary{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}}.projects__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-xl)}.project-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);overflow:hidden;transition:box-shadow var(--transition-base),border-color var(--transition-base);cursor:pointer;position:relative;box-shadow:var(--shadow-sm)}.project-card:hover{box-shadow:var(--shadow-lg),var(--neon-green);border-color:rgba(34,197,94,.15)}.project-card__image{position:relative;height:220px;overflow:hidden}.project-card__placeholder{width:100%;height:100%;background:linear-gradient(135deg,#1e293b 0,#0f172a 100%);display:flex;align-items:center;justify-content:center;font-size:3.5rem;color:rgba(34,197,94,.35);transition:transform var(--transition-slow)}.project-card__placeholder--alt{background:linear-gradient(135deg,#1e3a4f 0,#0f2a3a 100%);color:rgba(6,182,212,.35)}.project-card__placeholder--accent{background:linear-gradient(135deg,#2d1e5f 0,#1a0f3a 100%);color:rgba(139,92,246,.35)}.project-card__placeholder--warm{background:linear-gradient(135deg,#3a2e1e 0,#2a1a0f 100%);color:rgba(245,158,11,.35)}.project-card:hover .project-card__placeholder{transform:scale(1.06)}.project-card__link,.project-card__overlay{display:flex;align-items:center;justify-content:center}.project-card__overlay{position:absolute;inset:0;background:rgba(15,23,42,.75);gap:var(--space-md);opacity:0;transition:opacity var(--transition-base)}.project-card:hover .project-card__overlay{opacity:1}.project-card__link{width:48px;height:48px;border-radius:var(--radius-full);background:var(--accent-primary);color:#fff;font-size:var(--text-xl);transform:translateY(10px);transition:all var(--transition-base);cursor:pointer}.project-card:hover .project-card__link{transform:translateY(0)}.project-card .project-card__link:hover{background:var(--accent-secondary);transform:translateY(-2px)}.project-card__content{padding:var(--space-xl);position:relative;overflow:hidden}.project-card__content::before{content:"";position:absolute;top:0;left:-75%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.02),transparent);transform:skewX(-20deg);transition:left .75s ease}.project-card:hover .project-card__content::before{left:125%}.project-card__tags{display:flex;gap:var(--space-sm);margin-bottom:var(--space-md);flex-wrap:wrap}.project-card__tags span{padding:.25rem .7rem;font-size:var(--text-xs);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em}.project-card__title{font-size:var(--text-xl);font-weight:700;margin-bottom:var(--space-sm)}.project-card__desc{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.7;margin-bottom:var(--space-lg)}.project-card__meta{display:flex;gap:var(--space-lg);font-size:var(--text-sm);color:var(--text-muted)}.project-card__meta i{color:var(--accent-primary);margin-right:var(--space-xs)}.project-card__view-detail{padding:0 var(--space-xl) var(--space-lg);opacity:0;transform:translateY(8px);transition:all .35s cubic-bezier(.16,1,.3,1)}.project-card:hover .project-card__view-detail{opacity:1;transform:translateY(0)}.project-card__view-detail span{display:inline-flex;align-items:center;gap:var(--space-sm);font-size:var(--text-sm);font-weight:600;color:var(--accent-primary);cursor:pointer}.project-card__view-detail i{transition:transform .3s ease}.project-card:hover .project-card__view-detail i{transform:translateX(4px)}@media (max-width:768px){.projects__grid{grid-template-columns:1fr}}.timeline{position:relative;max-width:720px;margin:0 auto;padding-left:var(--space-3xl)}.timeline::before{content:"";position:absolute;left:14px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--accent-primary),var(--accent-secondary),transparent)}.timeline__item{position:relative;margin-bottom:var(--space-3xl)}.timeline__item:last-child{margin-bottom:0}.timeline__dot{position:absolute;left:calc(-1*var(--space-3xl) + 6px);top:8px;width:18px;height:18px;border-radius:50%;background:var(--bg-primary);border:3px solid var(--accent-primary);z-index:1;box-shadow:0 0 0 4px var(--bg-primary),var(--neon-green)}.timeline__card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);padding:var(--space-2xl);transition:all var(--transition-base);cursor:pointer;box-shadow:var(--shadow-sm)}.timeline__card:hover{border-color:rgba(34,197,94,.15);box-shadow:var(--shadow-md),var(--shadow-glow);transform:translateX(4px)}.timeline__date,.timeline__list li{margin-bottom:var(--space-sm);font-size:var(--text-sm)}.timeline__date{font-family:var(--font-mono);color:var(--accent-primary);font-weight:600}.timeline__role{font-size:var(--text-xl);font-weight:700;margin-bottom:var(--space-xs)}.timeline__company{font-size:var(--text-base);color:var(--text-muted);display:block;margin-bottom:var(--space-lg)}.timeline__list li{position:relative;padding-left:var(--space-xl);color:var(--text-secondary);line-height:1.7}.timeline__list li::before{content:"▹";position:absolute;left:0;color:var(--accent-primary);font-weight:700}@media (max-width:576px){.timeline{padding-left:var(--space-2xl)}.timeline__dot{left:calc(-1*var(--space-2xl) + 6px)}}.education__card{display:flex;align-items:flex-start;gap:var(--space-xl);background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);padding:var(--space-xl);transition:all .3s ease}.education__card:hover{transform:translateY(-4px)}.education__icon{width:48px;height:48px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:rgba(34,197,94,.1);border-radius:var(--radius-md);color:var(--accent-primary);font-size:1.25rem}.education__degree,.education__institution{font-size:var(--text-xl);font-weight:700;margin-bottom:var(--space-xs)}.education__institution{font-size:var(--text-base);color:var(--accent-primary);font-weight:600;display:block}.education__date{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-muted);display:block;margin-bottom:var(--space-sm)}.education__desc,.philosophy__card p{font-size:var(--text-sm);color:var(--text-secondary)}.education__desc{margin-top:var(--space-sm)}@media (max-width:576px){.education__card{flex-direction:column;gap:var(--space-md)}}.philosophy__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-xl)}.philosophy__card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);padding:var(--space-2xl);transition:all var(--transition-base);position:relative;overflow:hidden;cursor:pointer}.philosophy__card::after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(34,197,94,.02),transparent);transition:left .6s ease}.philosophy__card:hover::after{left:100%}.blog-card:hover,.education__card:hover,.philosophy__card:hover{border-color:rgba(34,197,94,.15);box-shadow:var(--shadow-md),var(--shadow-glow)}.philosophy__icon{width:48px;height:48px;border-radius:var(--radius-md);background:var(--accent-glow);display:flex;align-items:center;justify-content:center;font-size:var(--text-xl);color:var(--accent-primary);margin-bottom:var(--space-lg)}.philosophy__card h3{font-size:var(--text-lg);font-weight:700;margin-bottom:var(--space-md)}.philosophy__card p{line-height:1.8}@media (max-width:768px){.philosophy__grid{grid-template-columns:1fr}}.blog__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-xl)}.blog-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);padding:var(--space-2xl);transition:all var(--transition-base);display:flex;flex-direction:column;text-decoration:none;overflow:hidden}.blog-card:hover{transform:translateY(-4px)}.blog-card__tag{display:inline-block;padding:.25rem .7rem;font-size:var(--text-xs);font-weight:600;color:var(--accent-primary);background:var(--accent-glow);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-lg);align-self:flex-start}.blog-card__title{font-size:var(--text-lg);font-weight:700;margin-bottom:var(--space-md);line-height:1.4;background-image:linear-gradient(var(--accent-primary),var(--accent-primary));background-position:0 100%;background-repeat:no-repeat;background-size:0 2px;transition:background-size .4s ease}.blog-card:hover .blog-card__title{background-size:100% 2px}.blog-card__excerpt{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.7;flex:1;margin-bottom:var(--space-lg)}.blog-card__footer{display:flex;gap:var(--space-lg);font-size:var(--text-xs);color:var(--text-muted)}.blog-card__footer i{margin-right:var(--space-xs)}@media (max-width:992px){.blog__grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:576px){.blog__grid{grid-template-columns:1fr}}.github__content{max-width:800px;margin:0 auto}.github__contribution-grid{display:grid;grid-template-columns:repeat(52,1fr);gap:3px;margin-bottom:var(--space-2xl);padding:var(--space-xl);background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg)}.github__contribution-grid[data-mode=widgets]{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md);padding:0;background:0 0;border:0}.github__contribution-grid[data-mode=summary]{grid-template-columns:1fr;gap:0;padding:0;background:0 0;border:0}.contribution-cell{aspect-ratio:1;border-radius:3px;transition:all .15s ease}.contribution-cell:hover{transform:scale(1.8);z-index:1}.contribution-0{background:rgba(148,163,184,.06)}.contribution-1{background:rgba(34,197,94,.15)}.contribution-2{background:rgba(34,197,94,.3)}.contribution-3{background:rgba(34,197,94,.5)}.contribution-4{background:rgba(34,197,94,.8)}.contribution-grid .contribution-cell.snake-head{background:#4ade80;box-shadow:0 0 8px rgba(74,222,128,.8),0 0 16px rgba(74,222,128,.4);border-radius:4px;transform:scale(1.4);z-index:3}.contribution-grid .contribution-cell.snake-body-1{background:rgba(34,197,94,.7);box-shadow:0 0 6px rgba(34,197,94,.5);transform:scale(1.2);z-index:2}.contribution-grid .contribution-cell.snake-body-2{background:rgba(34,197,94,.45);box-shadow:0 0 4px rgba(34,197,94,.3);transform:scale(1.1);z-index:1}.contribution-grid .contribution-cell.snake-body-3{background:rgba(34,197,94,.25);transform:scale(1.05)}.cell-eaten{animation:cellEaten .4s cubic-bezier(.34,1.56,.64,1) both}.cell-wave{animation:cellWavePulse .4s ease both}.github__stats{display:grid;grid-template-columns:repeat(3,minmax(210px,260px));justify-content:center;gap:var(--space-md)}.github__summary{display:grid;gap:var(--space-lg);padding:var(--space-xl);background:linear-gradient(135deg,rgba(34,197,94,.08),rgba(15,23,42,.04));border:1px solid var(--border-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.github__summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-lg)}@media (max-width:980px){.github__stats{grid-template-columns:repeat(2,minmax(170px,240px));justify-content:center}}.github__summary-kicker{display:inline-block;margin-bottom:var(--space-sm);font-size:var(--text-xs);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-primary)}.github__summary-title{margin-bottom:var(--space-sm);font-size:var(--text-3xl)}.github__summary-text{max-width:58ch;color:var(--text-secondary)}.github__summary-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.github__summary-link{display:inline-flex;align-items:center;gap:var(--space-xs);padding:.75rem 1rem;border-radius:999px;border:1px solid rgba(34,197,94,.16);background:rgba(15,23,42,.72);color:var(--text-primary);transition:transform var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base)}.github__summary-link:hover{transform:translateY(-2px);border-color:rgba(34,197,94,.32);box-shadow:var(--shadow-glow)}.github__summary-link--ghost{background:0 0}.github__summary-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-sm)}.github__badge,.github__summary-pill,.github__widget{border:1px solid var(--border-card);background:var(--bg-card)}.github__summary-pill{padding:var(--space-md);border-radius:var(--radius-md);text-align:center}.github__summary-pill span{display:block;margin-bottom:.35rem;font-family:var(--font-heading);font-size:var(--text-xl);font-weight:800}.github__summary-pill small{font-size:var(--text-xs);color:var(--text-muted)}.github__badge,.github__widget{box-shadow:var(--shadow-sm);transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base)}.github__badge{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:2px;border-radius:999px}.github__badge:hover,.github__stat-card:hover,.github__widget:hover{transform:translateY(-2px);border-color:rgba(34,197,94,.25);box-shadow:var(--shadow-glow)}.github__badge img{display:block;height:24px}.github__widget{display:block;overflow:hidden;border-radius:var(--radius-lg)}.github__stat-card:hover,.github__widget:hover{transform:translateY(-3px)}.github__widget--wide{grid-column:1/-1}.github__widget img{display:block;width:100%;height:auto;background:#0d1117}.github__stat-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);padding:var(--space-xl);text-align:center;transition:all var(--transition-base);cursor:pointer;box-shadow:var(--shadow-sm)}.github__stat-card:hover{border-color:rgba(34,197,94,.2);transform:translateY(-2px)}.github__stat-card i,.github__stat-number{font-size:var(--text-2xl);margin-bottom:var(--space-sm);display:block}.github__stat-number{font-family:var(--font-heading);font-weight:800;margin-bottom:var(--space-xs)}.contact__link-item i,.github__stat-card i,.github__stat-card:hover .github__stat-number{color:var(--accent-primary)}.github__stat-label{font-size:var(--text-xs);color:var(--text-muted)}@media (max-width:768px){.github__stats{grid-template-columns:repeat(2,minmax(150px,240px));justify-content:center}.github__summary-head{flex-direction:column}.github__summary-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.github__contribution-grid:not([data-mode=widgets]){display:none}.github__contribution-grid[data-mode=summary]{display:grid}.github__contribution-grid[data-mode=widgets]{grid-template-columns:1fr}.github__widget--wide{grid-column:auto}}.contact__inner{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4xl);align-items:start}.contact__heading{font-size:var(--text-3xl);font-weight:800;margin-bottom:var(--space-lg);line-height:1.3}.contact__text{font-size:var(--text-lg);color:var(--text-secondary);margin-bottom:var(--space-2xl);line-height:1.8}.contact__links{display:flex;flex-direction:column;gap:var(--space-md)}.contact__link-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);transition:all var(--transition-base);font-size:var(--text-sm);font-weight:500;cursor:pointer}.contact__link-item i{font-size:var(--text-xl);width:24px;text-align:center}.contact__link-item:hover{border-color:var(--accent-primary);transform:translateX(4px);background:var(--bg-card-hover)}.contact__form{display:flex;flex-direction:column;gap:var(--space-lg)}.form-group{position:relative}.form-group input,.form-group label,.form-group textarea{font-size:var(--text-base);transition:all var(--transition-base);background:var(--bg-card)}.form-group input,.form-group textarea{width:100%;padding:1rem 1.25rem;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);outline:0}.form-group textarea{resize:vertical;min-height:120px}.form-group label{position:absolute;left:1.25rem;top:1rem;color:var(--text-muted);pointer-events:none;padding:0 var(--space-xs)}.form-group input:focus,.form-group textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px rgba(34,197,94,.1)}.form-group input:focus+label,.form-group input:not(:placeholder-shown)+label,.form-group textarea:focus+label,.form-group textarea:not(:placeholder-shown)+label{top:-.5rem;font-size:var(--text-xs);color:var(--accent-primary)}@media (max-width:768px){.contact__inner{grid-template-columns:1fr}}.footer{padding:var(--space-2xl)0;border-top:1px solid var(--border-color)}.footer__inner,.footer__social a{display:flex;align-items:center;justify-content:space-between}.footer__left p,.footer__right p{font-size:var(--text-sm);color:var(--text-muted);margin-top:var(--space-sm)}.footer__social{display:flex;gap:var(--space-md)}.footer__social a{width:40px;height:40px;border-radius:var(--radius-full);background:var(--bg-card);border:1px solid var(--border-card);justify-content:center;font-size:var(--text-lg);color:var(--text-secondary);transition:all var(--transition-base);cursor:pointer}.footer__social a:hover{color:var(--accent-primary);border-color:var(--accent-primary);transform:translateY(-3px);box-shadow:var(--shadow-glow)}@media (max-width:768px){.footer__inner{flex-direction:column;gap:var(--space-lg);text-align:center}}.back-to-top,.project-detail-overlay{position:fixed;opacity:0;visibility:hidden;display:flex;align-items:center;justify-content:center}.back-to-top{bottom:var(--space-xl);right:var(--space-xl);width:48px;height:48px;border-radius:var(--radius-full);background:var(--accent-primary);color:#fff;font-size:var(--text-lg);z-index:999;transform:translateY(10px);transition:all var(--transition-base);box-shadow:0 4px 20px rgba(34,197,94,.25);cursor:pointer}.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(34,197,94,.4)}.project-detail-overlay{inset:0;background:rgba(15,23,42,.4);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);z-index:1000;transition:all .4s cubic-bezier(.4,0,.2,1);padding:2rem}.project-detail-overlay.active{opacity:1;visibility:visible;pointer-events:auto;background:rgba(0,0,0,.6);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.project-detail{width:100%;max-width:900px;max-height:90vh;background:var(--bg-secondary);border-radius:24px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;position:relative;transform:translateY(40px) scale(.95);opacity:0;transition:all .5s cubic-bezier(.34,1.56,.64,1);box-shadow:0 25px 80px rgba(0,0,0,.6),0 10px 40px rgba(0,0,0,.3);scrollbar-width:thin;scrollbar-color:var(--accent-primary) rgba(255,255,255,.05)}.project-detail-overlay.active .project-detail{transform:translateY(0) scale(1);opacity:1}.project-detail::-webkit-scrollbar{width:8px}.project-detail::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:4px;margin:8px 0}.project-detail::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--accent-primary),var(--accent-secondary, var(--accent-primary)));border-radius:4px;border:2px solid transparent;background-clip:padding-box;transition:background .3s ease}.project-detail::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--accent-secondary, var(--accent-primary)),var(--accent-primary));border:1px solid transparent}.project-detail__close{position:sticky;top:1rem;z-index:10;margin-left:auto;margin-right:1.5rem;margin-top:0;margin-bottom:-44px;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.15);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);color:var(--text-primary);font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transform:scale(0) rotate(-90deg)}.project-detail-overlay.active .project-detail__close{opacity:1;transform:rotate(0) scale(1);transition-delay:.2s}.project-detail__close:hover{background:rgba(239,68,68,.9);border-color:transparent;transform:scale(1.1) rotate(90deg)}.project-detail__hero{position:relative;padding:3rem;background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-primary) 100%);overflow:hidden;flex-shrink:0;touch-action:none;cursor:grab}.project-detail__hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse at 20% 30%,rgba(34,197,94,.08)0,transparent 50%),radial-gradient(ellipse at 80% 70%,rgba(59,130,246,.08)0,transparent 50%)}.project-detail__hero-particles{position:absolute;inset:0;overflow:hidden;pointer-events:none}.project-detail__hero-content{position:relative;z-index:1;display:flex;align-items:flex-start;gap:2rem}.project-detail__icon-wrapper{width:100px;height:100px;border-radius:24px;display:flex;align-items:center;justify-content:center;font-size:3rem;flex-shrink:0;position:relative;overflow:hidden;box-shadow:0 10px 40px rgba(0,0,0,.3)}.project-detail__icon-wrapper::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.1)0,transparent 50%)}.project-detail__hero-text{flex:1}.project-detail__tags{display:flex;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.blog-detail__tags span,.project-detail__tags span{padding:.4rem 1rem;background:rgba(34,197,94,.15);color:var(--accent-primary);border-radius:20px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.project-detail__title{font-size:2.25rem;font-weight:800;margin-bottom:.75rem;line-height:1.2;letter-spacing:-.02em}.project-detail__subtitle{font-size:1.125rem;color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.6}.project-detail__meta-row{display:flex;gap:2rem;flex-wrap:wrap}.project-detail__meta-item{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.95rem}.project-detail__meta-item i{color:var(--accent-primary);font-size:1rem}.project-detail__stats-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md);padding:var(--space-2xl) var(--space-3xl);margin-top:calc(-1*var(--space-xl));position:relative;z-index:3}.project-detail__stat{text-align:center;padding:var(--space-xl) var(--space-md);background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);position:relative;overflow:hidden}.project-detail__stat::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--accent-gradient);transform:scaleX(0);transition:transform .6s cubic-bezier(.16,1,.3,1)}.project-detail__stat.visible::before{transform:scaleX(1)}.project-detail__stat-number{font-family:var(--font-heading);font-size:var(--text-3xl);font-weight:800;display:inline;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.project-detail__stat-suffix{font-size:var(--text-xl);font-weight:700;color:var(--accent-primary)}.project-detail__stat-label{display:block;font-size:var(--text-xs);color:var(--text-muted);margin-top:var(--space-xs);text-transform:uppercase;letter-spacing:.08em;font-weight:500}.project-detail__body{padding:2.5rem 3rem;flex:1}.project-detail__section{margin-top:var(--space-3xl)}.project-detail__section-title{font-size:var(--text-2xl);font-weight:800;margin-bottom:var(--space-xl);display:flex;align-items:center;gap:var(--space-md);letter-spacing:-.02em}.project-detail__section-title i{color:var(--accent-primary);font-size:var(--text-xl)}.project-detail__description{font-size:var(--text-lg);color:var(--text-secondary);line-height:1.9;max-width:720px}.project-detail__features{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-lg)}.project-detail__feature{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);padding:var(--space-xl);display:flex;gap:var(--space-lg);transition:all .4s cubic-bezier(.175,.885,.32,1.275);cursor:default;position:relative;overflow:hidden}.project-detail__feature::before{content:"";position:absolute;inset:0;background:var(--accent-gradient);opacity:0;transition:opacity .4s ease}.project-detail__feature:hover{border-color:rgba(34,197,94,.3);transform:translateY(-4px) scale(1.01);box-shadow:var(--shadow-md),0 0 30px rgba(34,197,94,.08)}.project-detail__feature:hover::before{opacity:.03}.project-detail__feature-icon{width:48px;height:48px;border-radius:var(--radius-md);background:var(--accent-glow);display:flex;align-items:center;justify-content:center;font-size:var(--text-xl);color:var(--accent-primary);flex-shrink:0;position:relative;z-index:1}.project-detail__feature-content{position:relative;z-index:1}.project-detail__feature-content h4{font-size:var(--text-base);font-weight:700;margin-bottom:var(--space-xs)}.project-detail__feature-content p{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.7}.project-detail__screenshots{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-lg)}.project-detail__screenshot{aspect-ratio:9/16;border-radius:var(--radius-lg);overflow:hidden;position:relative;cursor:pointer;border:1px solid var(--border-card);transition:all .5s cubic-bezier(.175,.885,.32,1.275)}.project-detail__screenshot:hover{transform:translateY(-8px) scale(1.03);box-shadow:var(--shadow-lg);border-color:rgba(255,255,255,.15)}.project-detail__screenshot-inner{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-md);position:relative}.project-detail__screenshot-inner::before{content:"";position:absolute;inset:0;opacity:.15;transition:opacity .4s ease}.project-detail__screenshot:hover .project-detail__screenshot-inner::before{opacity:.25}.project-detail__screenshot-icon{font-size:2rem;color:rgba(255,255,255,.7);position:relative;z-index:1}.project-detail__screenshot-label{font-size:var(--text-sm);font-weight:600;color:rgba(255,255,255,.8);position:relative;z-index:1}.project-detail__screenshot::after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent 30%,rgba(255,255,255,.05) 50%,transparent 70%);transform:translateX(-100%);transition:transform .8s ease}.project-detail__screenshot:hover::after{transform:translateX(100%)}.project-detail__tech{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg)}.project-detail__tech-item{display:flex;align-items:center;gap:var(--space-lg);padding:var(--space-lg) var(--space-xl);background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);transition:all .35s cubic-bezier(.175,.885,.32,1.275);cursor:default}.project-detail__tech-item:hover{border-color:rgba(34,197,94,.3);transform:translateY(-3px);box-shadow:var(--shadow-glow)}.project-detail__tech-icon{width:42px;height:42px;border-radius:var(--radius-sm);background:var(--accent-glow);display:flex;align-items:center;justify-content:center;font-size:var(--text-lg);color:var(--accent-primary);flex-shrink:0}.project-detail__tech-info h4{font-size:var(--text-sm);font-weight:700;margin-bottom:2px}.project-detail__tech-info p{font-size:var(--text-xs);color:var(--text-muted)}.project-detail__challenges{display:flex;flex-direction:column;gap:var(--space-xl)}.project-detail__challenge{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);padding:var(--space-2xl);position:relative;overflow:hidden;transition:all .4s ease}.project-detail__challenge:hover{border-color:rgba(34,197,94,.2);box-shadow:var(--shadow-md)}.project-detail__challenge::before{content:"";position:absolute;top:0;left:0;bottom:0;width:4px;background:var(--accent-gradient);border-radius:4px 0 0 4px}.project-detail__challenge h4{font-size:var(--text-lg);font-weight:700;margin-bottom:var(--space-lg);padding-left:var(--space-sm)}.project-detail__challenge-block{display:flex;gap:var(--space-md);margin-bottom:var(--space-md);padding-left:var(--space-sm)}.project-detail__challenge-block:last-child{margin-bottom:0}.project-detail__challenge-badge{padding:.25rem .65rem;font-size:var(--text-xs);font-weight:700;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.06em;flex-shrink:0;height:fit-content;margin-top:2px}.project-detail__challenge-badge--problem{background:rgba(239,68,68,.1);color:#ef4444;border:1px solid rgba(239,68,68,.2)}.project-detail__challenge-badge--solution{background:rgba(34,197,94,.1);color:#22c55e;border:1px solid rgba(34,197,94,.2)}.project-detail__challenge-block p{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.8}.project-detail__links{display:flex;flex-wrap:wrap;gap:var(--space-md)}.project-detail__link-btn{display:inline-flex;align-items:center;gap:var(--space-sm);padding:.85rem 1.75rem;border-radius:var(--radius-full);font-weight:600;font-size:var(--text-base);transition:all .35s cubic-bezier(.175,.885,.32,1.275);cursor:pointer;text-decoration:none}.project-detail__link-btn--primary{background:var(--accent-gradient);color:#fff;box-shadow:0 4px 20px rgba(34,197,94,.25)}.project-detail__link-btn--primary:hover{transform:translateY(-3px);box-shadow:0 8px 30px rgba(34,197,94,.4)}.project-detail__link-btn--outline{border:2px solid var(--border-color);color:var(--text-primary);background:0 0}.project-detail__link-btn--outline:hover{border-color:var(--accent-primary);color:var(--accent-primary);transform:translateY(-3px);box-shadow:0 8px 25px rgba(34,197,94,.15)}@media (max-width:768px){.project-detail-overlay{padding:0}.project-detail{max-width:100%;max-height:100vh;border-radius:0}.project-detail__hero{padding:var(--space-4xl) var(--space-xl) var(--space-2xl)}.project-detail__hero-content{flex-direction:column;align-items:flex-start}.project-detail__icon-wrapper{width:72px;height:72px;font-size:2rem}.project-detail__body{padding:0 var(--space-xl) var(--space-3xl)}.project-detail__stats-bar{grid-template-columns:repeat(2,1fr);padding:var(--space-xl) var(--space-xl)}.project-detail__features{grid-template-columns:1fr}.project-detail__screenshots{grid-template-columns:repeat(2,1fr)}.project-detail__tech{grid-template-columns:1fr}.project-detail__meta-row{flex-direction:column;gap:var(--space-sm)}}[data-theme=light] .project-detail__close{background:rgba(255,255,255,.85)}[data-theme=light] .project-detail__stat{box-shadow:0 2px 12px rgba(0,0,0,.06)}[data-theme=light] .project-detail__challenge,[data-theme=light] .project-detail__feature,[data-theme=light] .project-detail__tech-item{box-shadow:0 1px 4px rgba(0,0,0,.04)}@media (max-width:768px){.section{padding:var(--space-3xl)0}.container{padding:0 var(--space-md)}.hero{min-height:85vh}.hero__content{text-align:center}.hero__inner{gap:var(--space-xl);flex-direction:column}.hero__visual{max-width:220px;margin:0 auto}.hero__scroll-indicator{bottom:var(--space-lg)}.mouse{width:24px;height:38px;border-width:1.5px}.mouse__wheel{width:3px;height:8px;top:7px}.hero__scroll-text{font-size:10px;letter-spacing:.2em}.section-eyebrow{font-size:var(--text-xs)}.section-title{font-size:var(--text-2xl)}.experience__item{padding-left:var(--space-xl)}.philosophy__card{padding:var(--space-lg)}.contact__form{padding:var(--space-xl)}.footer__inner{flex-direction:column;text-align:center;gap:var(--space-md)}.footer__links{justify-content:center}.back-to-top{bottom:var(--space-lg);right:var(--space-md);width:40px;height:40px;font-size:1rem}.contribution__graph{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:var(--space-sm)}}@media (max-width:480px){.hero__scroll-indicator{bottom:var(--space-md)}.mouse{width:20px;height:32px}.mouse__wheel{width:3px;height:6px;top:6px}.skills__grid{grid-template-columns:repeat(2,1fr)}.project-detail__screenshots,.project-detail__stats-bar{grid-template-columns:1fr}.navbar .nav-logo{font-size:1.2rem}}.blog-detail-overlay{position:fixed;inset:0;background:rgba(15,23,42,.4);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);z-index:1000;opacity:0;visibility:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;padding:2rem}.blog-detail-overlay.active{opacity:1;visibility:visible}.blog-detail{width:100%;max-width:900px;max-height:90vh;background:var(--bg-secondary);border-radius:24px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;position:relative;padding-top:.5rem;transform:translateY(40px) scale(.95);opacity:0;transition:all .5s cubic-bezier(.34,1.56,.64,1);box-shadow:0 25px 80px rgba(0,0,0,.6),0 10px 40px rgba(0,0,0,.3);scrollbar-width:thin;scrollbar-color:var(--accent-primary) rgba(255,255,255,.05)}.blog-detail-overlay.active .blog-detail{transform:translateY(0) scale(1);opacity:1}.blog-detail::-webkit-scrollbar{width:8px}.blog-detail::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:4px;margin:8px 0}.blog-detail::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--accent-primary),var(--accent-secondary, var(--accent-primary)));border-radius:4px;border:2px solid transparent;background-clip:padding-box;transition:background .3s ease}.blog-detail::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--accent-secondary, var(--accent-primary)),var(--accent-primary));border:1px solid transparent}.blog-detail__close{position:sticky;top:1rem;z-index:10;margin-left:auto;margin-right:1.5rem;margin-top:0;margin-bottom:-44px;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.15);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);color:var(--text-primary);font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transform:scale(0) rotate(-90deg)}.blog-detail-overlay.active .blog-detail__close{transform:scale(1) rotate(0deg);transition-delay:.2s}.blog-detail__close:hover{background:rgba(239,68,68,.9);border-color:transparent;transform:scale(1.1) rotate(90deg)}.blog-detail__hero{position:relative;padding:3rem;background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-primary) 100%);overflow:hidden;flex-shrink:0;touch-action:none;cursor:grab}.blog-detail__hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse at 20% 30%,rgba(34,197,94,.08)0,transparent 50%),radial-gradient(ellipse at 80% 70%,rgba(59,130,246,.08)0,transparent 50%)}.blog-detail__hero-particles{position:absolute;inset:0;overflow:hidden;pointer-events:none}.blog-detail-particle{position:absolute;border-radius:50%;animation:float-up linear infinite}.blog-detail__hero-content{position:relative;z-index:1;display:flex;align-items:flex-start;gap:2rem}.blog-detail__icon-wrapper{width:100px;height:100px;border-radius:24px;display:flex;align-items:center;justify-content:center;font-size:3rem;flex-shrink:0;position:relative;overflow:hidden;box-shadow:0 10px 40px rgba(0,0,0,.3)}.blog-detail__icon-wrapper::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.1)0,transparent 50%)}.blog-detail__hero-text{flex:1}.blog-detail__tags{display:flex;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.blog-detail__title{font-size:2.25rem;font-weight:800;margin-bottom:.75rem;line-height:1.2;letter-spacing:-.02em}.blog-detail__subtitle{font-size:1.125rem;color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.6}.blog-detail__meta-row{display:flex;gap:2rem;flex-wrap:wrap}.blog-detail__meta-item{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.95rem}.blog-detail__meta-item i{color:var(--accent-primary);font-size:1rem}.blog-detail__body{padding:2.5rem 3rem;flex:1}.blog-detail__stats-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2.5rem;padding:1.5rem;background:linear-gradient(135deg,rgba(34,197,94,.05)0,rgba(59,130,246,.05) 100%);border-radius:16px;border:1px solid rgba(34,197,94,.1)}.blog-detail__stat{text-align:center;position:relative}.blog-detail__stat::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:2px;height:60%;background:linear-gradient(to bottom,transparent,var(--border-color),transparent)}.blog-detail__stat:first-child::before{display:none}.blog-detail__stat-number{font-size:2rem;font-weight:800;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:inline}.blog-detail__stat-suffix{font-size:1.5rem;font-weight:700;color:var(--accent-primary);margin-left:.25rem}.blog-detail__stat-label{display:block;font-size:.875rem;color:var(--text-secondary);margin-top:.25rem}.blog-detail__section{margin-bottom:2.5rem}.blog-detail__section-title{font-size:1.25rem;font-weight:700;margin-bottom:1.25rem;display:flex;align-items:center;gap:.75rem;color:var(--text-primary)}.blog-detail__section-title i{color:var(--accent-primary);font-size:1.1rem}.blog-detail__description{font-size:1.1rem;line-height:1.8;color:var(--text-secondary)}.blog-detail__content{display:flex;flex-direction:column;gap:1.5rem}.blog-detail__content-section,.blog-detail__takeaways-list li{border-radius:12px;transition:transform .3s ease,box-shadow .3s ease}.blog-detail__content-section{padding:1.5rem;background:rgba(255,255,255,.03);border-left:3px solid var(--accent-primary)}.blog-detail__content-section:hover{transform:translateX(4px);box-shadow:0 4px 20px rgba(0,0,0,.1)}.blog-detail__content-section h4{font-size:1.1rem;font-weight:700;margin-bottom:.75rem;color:var(--text-primary)}.blog-detail__content-section p{font-size:1rem;line-height:1.7;color:var(--text-secondary)}.blog-detail__takeaways-list{list-style:none;display:flex;flex-direction:column;gap:1rem}.blog-detail__takeaways-list li{display:flex;align-items:flex-start;gap:1rem;padding:1rem 1.25rem;background:linear-gradient(135deg,rgba(34,197,94,.08)0,rgba(34,197,94,.02) 100%);border:1px solid rgba(34,197,94,.15);font-size:1rem;color:var(--text-primary)}.cursor-active{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='28' viewBox='0 0 24 28'%3E%3Cpath d='M2 1L2 22L7.5 17L12.5 26L16 24.5L11 15.5L18 14.5L2 1Z' fill='%2322C55E' stroke='%23fff' stroke-width='1.5' stroke-linejoin='round'/%3E%3C/svg%3E")2 2,auto}.cursor-active .blog-card,.cursor-active .project-card,.cursor-active .skill-tag,.cursor-active [onclick],.cursor-active [role=button],.cursor-active a,.cursor-active button,.cursor-active input,.cursor-active select,.cursor-active textarea{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='32' viewBox='0 0 28 32'%3E%3Cpath d='M10 0C10 0 10 8 10 11C8.5 10 6 8 5 7.5C3.5 6.7 1.5 7.5 1.5 9.5C1.5 11 4 13.5 6 15.5C8 17.5 10 19 10 22L10 28L22 28L22 22C22 19 25 16 25 12C25 10 23.5 9 22 9.5C21 10 20 11 19.5 12C19.5 10 19.5 7 19 6C18.5 5 17 4.5 16 5.5C15.5 6 15 7 15 8C15 6 15 4 14.5 3C14 2 12.5 1.5 11.5 2.5C11 3 10.5 4.5 10.5 6' fill='%2322C55E' stroke='%23fff' stroke-width='1.2' stroke-linejoin='round' stroke-linecap='round'/%3E%3C/svg%3E")10 0,pointer}@media (max-width:767px),(hover:none){.cursor-active,.cursor-active .blog-card,.cursor-active .project-card,.cursor-active .skill-tag,.cursor-active [onclick],.cursor-active [role=button],.cursor-active a,.cursor-active button,.cursor-active input,.cursor-active select,.cursor-active textarea{cursor:auto!important}}.skeleton{background:var(--bg-card, #1e293b);border-radius:var(--radius-lg, 12px);position:relative;overflow:hidden}.skeleton::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0,rgba(255,255,255,.04) 40%,rgba(255,255,255,.08) 50%,rgba(255,255,255,.04) 60%,transparent 100%);animation:shimmer 1.5s infinite}.skeleton--hero-badge{width:180px;height:32px;border-radius:999px;margin-bottom:1.5rem}.skeleton--hero-title{width:80%;max-width:500px;height:48px;margin-bottom:1rem}.skeleton--hero-subtitle{width:60%;max-width:400px;height:24px;margin-bottom:2rem}.skeleton--hero-buttons{width:280px;height:48px;border-radius:999px}.skeleton--card{height:200px;border:1px solid var(--border-card, rgba(148, 163, 184, 0.1))}.section__title--hidden{opacity:0;transform:translateY(30px)}.section__title--visible{opacity:1;transform:translateY(0);animation:headingSlideIn .7s cubic-bezier(.23,1,.32,1) forwards}.skill-pulse{animation:skillIconPulse .6s ease-out}.easter-egg-canvas{position:fixed;top:0;left:0;z-index:99998;pointer-events:none;transition:opacity .5s ease}.pwa-install{position:fixed;bottom:0;left:0;right:0;z-index:9999;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.5rem;background:var(--bg-card, #1e293b);border-top:1px solid rgba(34,197,94,.2);box-shadow:0-4px 24px rgba(0,0,0,.3);transform:translateY(100%);transition:transform .4s cubic-bezier(.23,1,.32,1)}.pwa-install--visible{transform:translateY(0)}.pwa-install__content{display:flex;align-items:center;gap:.75rem}.pwa-install__icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:rgba(34,197,94,.15);color:#22c55e;font-size:1.1rem}.pwa-install__text{display:flex;flex-direction:column;line-height:1.3}.pwa-install__text strong{color:var(--text-primary, #f8fafc);font-size:.95rem}.pwa-install__text span{color:var(--text-secondary, #94a3b8);font-size:.8rem}.pwa-install__actions{display:flex;align-items:center;gap:.5rem}.pwa-install__btn{border:0;border-radius:8px;cursor:pointer;font-weight:600;transition:background .2s,transform .2s}.pwa-install__btn--install{padding:.5rem 1.25rem;background:#22c55e;color:#0f172a;font-size:.85rem}.pwa-install__btn--install:hover{background:#16a34a;transform:scale(1.03)}.pwa-install__btn--dismiss{background:0 0;color:var(--text-secondary, #94a3b8);font-size:1.4rem;padding:.25rem .5rem;line-height:1}.pwa-install__btn--dismiss:hover{color:var(--text-primary, #f8fafc)}.blog-detail__takeaways-list li:hover{transform:translateY(-2px);box-shadow:0 4px 20px rgba(34,197,94,.15)}.blog-detail__takeaways-list li i{color:var(--accent-primary);font-size:1.25rem;margin-top:.1rem;flex-shrink:0}.blog-detail__tech{display:flex;flex-wrap:wrap;gap:.75rem}.blog-detail__tech-item{padding:.6rem 1.25rem;background:rgba(59,130,246,.1);border-radius:8px;border:1px solid rgba(59,130,246,.2);transition:all .3s ease}.blog-detail__tech-item:hover{background:rgba(59,130,246,.2);transform:translateY(-2px);box-shadow:0 4px 15px rgba(59,130,246,.2)}.blog-detail__tech-name{font-size:.95rem;font-weight:600;color:var(--accent-secondary)}.blog-detail__related{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.blog-detail__related-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:rgba(255,255,255,.03);border-radius:12px;border:1px solid rgba(255,255,255,.08);cursor:pointer;transition:all .3s ease}.blog-detail__related-card:hover{background:rgba(255,255,255,.06);border-color:rgba(34,197,94,.3);transform:translateY(-3px);box-shadow:0 8px 25px rgba(0,0,0,.2)}.blog-detail__related-icon{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));display:flex;align-items:center;justify-content:center;font-size:1.25rem;color:#fff;flex-shrink:0}.blog-detail__related-content h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem;line-height:1.4}.blog-detail__related-content span{font-size:.8rem;color:var(--text-muted)}.blog-detail__actions{display:flex;gap:1rem;flex-wrap:wrap}.blog-detail__action-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1.75rem;border-radius:50px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease;border:0}.blog-detail__action-btn--primary{background:var(--accent-gradient);color:#fff;box-shadow:0 4px 20px rgba(34,197,94,.3)}.blog-detail__action-btn--primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(34,197,94,.4)}.blog-detail__action-btn--outline{background:0 0;color:var(--text-primary);border:2px solid var(--border-color);text-decoration:none}.blog-detail__action-btn--outline:hover{border-color:var(--accent-primary);color:var(--accent-primary);transform:translateY(-2px)}.blog-detail-glow-orb{position:absolute;border-radius:50%;filter:blur(60px);opacity:.4;animation:glow-pulse 8s ease-in-out infinite;pointer-events:none}.blog-card{cursor:pointer;position:relative}.blog-card__view-detail{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;font-weight:600;color:var(--accent-primary);opacity:0;transform:translateY(10px);transition:all .3s ease}.blog-card:focus .blog-card__view-detail,.blog-card:hover .blog-card__view-detail{opacity:1;transform:translateY(0)}.blog-card__view-detail i{transition:transform .3s ease}.blog-card:focus .blog-card__view-detail i,.blog-card:hover .blog-card__view-detail i{transform:translateX(4px)}[data-theme=light] .blog-detail-overlay,[data-theme=light] .project-detail-overlay{background:rgba(248,250,252,.5);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}[data-theme=light] .blog-detail{background:var(--bg-secondary);box-shadow:0 25px 80px rgba(0,0,0,.3)}[data-theme=light] .blog-detail__close{background:rgba(0,0,0,.1);border-color:rgba(0,0,0,.2);color:var(--text-primary)}[data-theme=light] .blog-detail__close:hover{background:rgba(239,68,68,.9);color:#fff}[data-theme=light] .blog-detail__stat{background:rgba(255,255,255,.5);box-shadow:0 2px 8px rgba(0,0,0,.05)}[data-theme=light] .blog-detail__content-section{background:rgba(0,0,0,.02)}[data-theme=light] .blog-detail__takeaways-list li{background:linear-gradient(135deg,rgba(34,197,94,.06)0,rgba(34,197,94,.02) 100%);border-color:rgba(34,197,94,.2)}[data-theme=light] .blog-detail__tech-item{background:rgba(59,130,246,.08);border-color:rgba(59,130,246,.15)}[data-theme=light] .blog-detail__related-card{background:rgba(0,0,0,.02);border-color:rgba(0,0,0,.08)}[data-theme=light] .blog-detail__related-card:hover{background:rgba(0,0,0,.04)}@media (max-width:768px){.blog-detail-overlay{padding:0}.blog-detail{max-height:100vh;border-radius:0}.blog-detail__hero{padding:2rem 1.5rem}.blog-detail__hero-content{flex-direction:column;text-align:center}.blog-detail__icon-wrapper{width:80px;height:80px;font-size:2.5rem;margin:0 auto}.blog-detail__title{font-size:1.75rem}.blog-detail__meta-row{justify-content:center;gap:1rem}.blog-detail__body{padding:1.5rem}.blog-detail__stats-bar{grid-template-columns:1fr;gap:1rem}.blog-detail__stat{display:flex;align-items:center;justify-content:center;gap:.5rem}.blog-detail__stat::before{display:none}.blog-detail__related{grid-template-columns:1fr}.blog-detail__actions{flex-direction:column}.blog-detail__action-btn{justify-content:center}}