:root{--background-color: transparent;--text-color: #e2e8f0;--text-muted: #94a3b8;--cursor-color: #00ff9d;--primary-glow: rgba(128, 208, 255, .15);--secondary-glow: rgba(224, 64, 251, .15);--accent-color: #00e5ff;--background-dark: #03030a;--card-bg: rgba(10, 10, 20, .5);--card-border: rgba(255, 255, 255, .06);--card-border-hover: rgba(128, 208, 255, .3)}body{margin:0;padding:0;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--background-dark);color:var(--text-color);overflow-y:auto;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{display:flex;align-items:flex-start;justify-content:center;min-height:100vh;width:100vw;padding:6vh 2rem 8rem 2rem;box-sizing:border-box;position:relative;z-index:1}.main-content{text-align:center;max-width:900px;width:100%;transition:transform .15s ease-out;transform-style:preserve-3d}.logo-placeholder{height:300px;width:100%;display:flex;align-items:center;justify-content:center;position:relative;transform-style:preserve-3d}.logo-placeholder:before{content:"";position:absolute;width:250px;height:250px;border:1.5px dashed rgba(0,229,255,.15);border-radius:50%;box-shadow:0 0 20px #00e5ff0d;animation:rotateOrbitClockwise 30s linear infinite;pointer-events:none;z-index:-1}.logo-placeholder:after{content:"";position:absolute;width:210px;height:210px;border:1.2px solid rgba(224,64,251,.05);border-left-color:#e040fb4d;border-right-color:#e040fb4d;border-radius:50%;animation:rotateOrbitCounter 20s linear infinite;pointer-events:none;z-index:-1}@keyframes rotateOrbitClockwise{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes rotateOrbitCounter{0%{transform:rotate(360deg)}to{transform:rotate(0)}}.logo-image{width:240px;height:240px;object-fit:contain;filter:drop-shadow(0 8px 30px rgba(0,229,255,.16));animation:logoAppear .8s cubic-bezier(.34,1.56,.64,1);transition:transform .5s cubic-bezier(.25,.8,.25,1),filter .5s ease;z-index:2}.logo-image:hover{transform:scale(1.05) rotate(1.5deg);filter:drop-shadow(0 12px 40px rgba(0,229,255,.3)) drop-shadow(0 4px 20px rgba(224,64,251,.2))}.logo-disappear{animation:logoDisappear .6s cubic-bezier(.4,0,.2,1) forwards}h1{font-size:2.8rem;font-weight:700;letter-spacing:-.02em;min-height:3.5rem;margin:1.5rem 0;line-height:1.2}.cursor{display:inline-block;width:3px;height:2.2rem;background-color:var(--cursor-color);margin-left:8px;animation:blink 1s infinite;vertical-align:middle;border-radius:2px;box-shadow:0 0 8px var(--cursor-color)}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes pulseGlow{0%{transform:scale(.9);opacity:.7}to{transform:scale(1.15);opacity:1.1}}@keyframes logoAppear{0%{opacity:0;transform:scale(.92) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes logoDisappear{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.92) translateY(-10px)}}.tech-badges{display:flex;justify-content:center;gap:.75rem;margin:.5rem 0 2rem;flex-wrap:wrap}.tech-badges span{font-family:JetBrains Mono,monospace;font-size:.8rem;color:var(--text-muted);background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.04);padding:.25rem .65rem;border-radius:20px;letter-spacing:.05em;transition:all .3s cubic-bezier(.25,.8,.25,1);cursor:default}.tech-badges span:hover{color:var(--accent-color);border-color:#00e5ff40;background:rgba(0,229,255,.03);transform:translateY(-1.5px);box-shadow:0 4px 12px #00e5ff0d}@media (max-width: 768px){.container{padding-top:4vh;padding-bottom:6rem}.logo-placeholder{height:220px}.logo-image{width:170px;height:170px}h1{font-size:1.8rem;min-height:2.5rem}.cursor{height:1.5rem}.tech-badges{gap:.5rem;margin-bottom:1.5rem}.tech-badges span{font-size:.7rem;padding:.15rem .5rem}}.projects-container{display:flex;flex-direction:column;gap:1rem;max-width:600px;margin:3.5rem auto 0;width:100%}.project-item{display:flex;align-items:center;text-decoration:none;color:inherit;padding:1rem 1.5rem;border-radius:12px;background:rgba(255,255,255,.01);border:1px solid rgba(255,255,255,.03);box-shadow:0 4px 20px #00000026;transition:all .3s cubic-bezier(.25,.8,.25,1);position:relative}.project-item:hover{transform:translateY(-2px);border-color:#80d0ff33;box-shadow:0 8px 30px #80d0ff14,0 0 15px #e040fb05;background:rgba(255,255,255,.035)}.project-icon{width:44px;height:44px;object-fit:contain;flex-shrink:0;transition:transform .3s ease}.project-item:hover .project-icon{transform:scale(1.06)}.project-details{text-align:left;flex-grow:1;margin-left:1.25rem;padding-right:.5rem}.project-name{font-size:1.2rem;font-weight:600;margin:0 0 .25rem;letter-spacing:-.01em}.project-description{font-size:.85rem;color:var(--text-muted);line-height:1.4;margin:0;font-weight:400}.project-arrow{font-size:1rem;transition:all .3s ease;color:var(--text-muted);flex-shrink:0}.project-item:hover .project-arrow{color:var(--accent-color);transform:translate(4px)}.project-item.disabled{cursor:not-allowed;opacity:.5}.project-item.disabled:hover{transform:none;box-shadow:0 4px 20px #00000026;border-color:#ffffff08;background:rgba(255,255,255,.01)}.project-tech-tags{display:flex;gap:.5rem;margin-top:.6rem;flex-wrap:wrap}.tech-tag{font-family:JetBrains Mono,monospace;font-size:.7rem;color:var(--text-muted);background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05);padding:.15rem .45rem;border-radius:4px;letter-spacing:.02em;transition:all .3s cubic-bezier(.25,.8,.25,1)}.project-item:hover .tech-tag{color:#e2e8f0;border-color:#80d0ff26;background:rgba(128,208,255,.02)}@media (max-width: 768px){.projects-container{padding:0 1rem;margin-top:2.5rem}.project-item{padding:1rem}.project-icon{width:36px;height:36px}.project-name{font-size:1.1rem}.project-description{font-size:.8rem}.project-tech-tags{margin-top:.4rem;gap:.35rem}.tech-tag{font-size:.65rem;padding:.1rem .35rem}}.site-footer{position:fixed;bottom:0;left:0;width:100%;padding:1.5rem;box-sizing:border-box}.footer-icon-bar{display:flex;justify-content:center;align-items:center;gap:1.75rem}.icon-link{color:var(--text-color);opacity:.6;transition:all .2s ease-in-out;display:inline-block}.icon-link:hover{opacity:1;transform:scale(1.15) translateY(-3px)}.icon-link.github:hover{color:#fff}.icon-link.linkedin:hover{color:#0a66c2}.icon-link.docker:hover{color:#2496ed}.icon-link.pypi:hover{color:#3775a9}.icon-link svg{width:32px;height:32px;display:block}.footer-info{margin-top:1rem;text-align:center;font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--text-muted);letter-spacing:.02em;opacity:.65;transition:opacity .3s ease;cursor:default}.footer-info:hover{opacity:.9}#neural-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1}.visitor-counter{position:fixed;top:1.5rem;right:2rem;text-align:right;font-family:JetBrains Mono,Consolas,Menlo,Monaco,monospace;z-index:100;color:var(--text-color);opacity:.7;transition:opacity .3s ease-in-out}.visitor-counter:hover{opacity:1}.counter-label{margin:0;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:#888}.counter-value{position:relative;margin:0;font-size:1.5rem;font-weight:500;letter-spacing:.1em;color:var(--cursor-color);text-shadow:0 0 5px rgba(0,255,157,.5);cursor:help;transition:text-shadow .3s ease}.counter-value:hover{text-shadow:0 0 8px rgba(128,208,255,.8)}.glitch{animation:glitch-main 4s infinite linear alternate-reverse}.glitch:before,.glitch:after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%;background:var(--background-dark);overflow:hidden}.glitch:before{left:2px;text-shadow:-2px 0 var(--primary-glow);animation:glitch-pseudo 2s infinite linear alternate-reverse}.glitch:after{left:-2px;text-shadow:-2px 0 var(--secondary-glow),2px 2px var(--primary-glow);animation:glitch-pseudo 3s infinite linear alternate-reverse}@keyframes glitch-main{0%{transform:translate(0)}5%{transform:translate(2px,-3px)}10%{transform:translate(-2px,2px)}15%{transform:translate(0)}to{transform:translate(0)}}@keyframes glitch-pseudo{0%{clip-path:inset(50% 0 49% 0)}10%{clip-path:inset(90% 0 1% 0)}20%{clip-path:inset(20% 0 75% 0)}30%{clip-path:inset(60% 0 30% 0)}40%{clip-path:inset(10% 0 5% 0)}50%{clip-path:inset(95% 0 2% 0)}60%{clip-path:inset(40% 0 55% 0)}70%{clip-path:inset(80% 0 10% 0)}80%{clip-path:inset(5% 0 90% 0)}90%{clip-path:inset(50% 0 45% 0)}to{clip-path:inset(98% 0 1% 0)}}@media (max-width: 768px){.visitor-counter{top:1rem;right:1rem}.counter-value{font-size:1.2rem}}
