@import url(https://fonts.googleapis.com/css2?family=Space+Mono:wght@400;700&display=swap);.terminal-container{background:#1e1e1e;border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 20px #0006;font-family:Space Mono,monospace;margin:4rem auto;max-width:800px;width:90%}.terminal-header{align-items:center;background:#333;border-top-left-radius:7px;border-top-right-radius:7px;display:flex;padding:.75rem;position:relative}.terminal-header-dot{border-radius:50%;height:12px;margin-right:8px;width:12px}.terminal-header-dot.red{background:#ff5f56}.terminal-header-dot.yellow{background:#ffbd2e}.terminal-header-dot.green{background:#27c93f}.terminal-header span{color:var(--secondary-text-color);font-size:.9rem;left:50%;position:absolute;transform:translateX(-50%)}.terminal-body{color:var(--primary-text-color);cursor:text;height:400px;overflow-y:auto;padding:1.5rem}.terminal-line{word-wrap:break-word;line-height:1.6;margin:0;padding:0;white-space:pre-wrap}.terminal-line.user{color:var(--primary-text-color)}.terminal-line.system{color:var(--secondary-text-color)}.terminal-line.success{color:#27c93f}.terminal-line.error{color:#ff5f56}.terminal-line.link a{color:var(--accent-cyan);text-decoration:underline;-webkit-text-decoration-color:var(--accent-cyan-glow);text-decoration-color:var(--accent-cyan-glow);transition:color .3s}.terminal-line.link a:hover{color:var(--accent-magenta);-webkit-text-decoration-color:var(--accent-magenta);text-decoration-color:var(--accent-magenta)}.terminal-prompt{align-items:center;display:flex}.prompt-text{color:var(--accent-cyan);margin-right:8px}.terminal-prompt form{flex-grow:1}.terminal-input{background:#0000;border:none;caret-color:var(--accent-cyan);color:var(--primary-text-color);font-family:Space Mono,monospace;font-size:1em;margin:0;outline:none;padding:0;width:100%}:root{--bg-color:#121212;--primary-text-color:#eaeaea;--secondary-text-color:#a5a5a5;--accent-cyan:#00fff9;--accent-magenta:#ff00c1;--border-color:#ffffff1a;--card-bg:#ffffff0d;--accent-cyan-glow:#00fff966}*{box-sizing:border-box;margin:0;padding:0}body{color:#eaeaea;color:var(--primary-text-color);font-family:Space Mono,monospace;overflow-x:hidden}.navbar,body{background:#121212;background:var(--bg-color)}.navbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#121212cc;border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border-color);position:-webkit-sticky;position:sticky;top:0;width:100%;z-index:999}.navbar-inner{justify-content:space-between;margin:0 auto;max-width:1200px;padding:1rem 0;width:90%}.logo-title,.navbar-inner{align-items:center;display:flex}.nav-logo{height:60px;margin-right:1rem;object-fit:cover;width:60px}.nav-name{font-size:1.4rem;font-weight:700}.nav-links a,.nav-name{color:#eaeaea;color:var(--primary-text-color)}.nav-links a{font-weight:400;margin-left:2rem;position:relative;text-decoration:none;transition:color .3s}.nav-links a:hover{animation:nav-glitch .3s linear;color:#00fff9;color:var(--accent-cyan)}.hero{align-items:center;display:flex;justify-content:center;min-height:85vh;position:relative;text-align:center;width:100%}.hero-content{color:#fff;margin:0 auto;max-width:800px;padding:2rem 1rem;width:90%;z-index:1}.hero-content h1{font-size:3.5rem;font-weight:700;margin-bottom:1.5rem}.hero-content p{color:#a5a5a5;color:var(--secondary-text-color);font-size:1.1rem;line-height:1.7}.timeline-container{margin:4rem auto;max-width:1200px;position:relative;width:90%}.about-text h2,.skills-title,.timeline-title{color:#eaeaea;color:var(--primary-text-color);font-size:2.2rem;font-weight:700;margin-bottom:3rem;text-align:center;transition:text-shadow .2s}.about-text h2:hover,.skills-title:hover,.timeline-title:hover{animation:subtle-text-glitch .4s steps(2) infinite}.timeline{position:relative}.timeline-line{background:#ffffff1a;background:var(--border-color);bottom:0;left:50%;position:absolute;top:0;transform:translateX(-50%);width:2px}.timeline-item{cursor:pointer;margin-bottom:2rem;padding:1rem 2rem;position:relative;width:50%}.timeline-item:nth-child(odd){left:0;padding-right:4rem;text-align:right}.timeline-item:nth-child(2n){left:50%;padding-left:4rem;text-align:left}.timeline-dot{background:#121212;background:var(--bg-color);border:3px solid #00fff9;border:3px solid var(--accent-cyan);border-radius:50%;height:14px;position:absolute;top:1rem;transition:background-color .3s;width:14px;z-index:1}.timeline-item:hover .timeline-dot{background:#00fff9;background:var(--accent-cyan)}.timeline-item:nth-child(odd) .timeline-dot{right:-7px}.timeline-item:nth-child(2n) .timeline-dot{left:-7px}.timeline-content{background:#ffffff0d;background:var(--card-bg);border:1px solid #ffffff1a;border:1px solid var(--border-color);border-radius:8px;overflow:hidden;padding:1.5rem;position:relative;transition:all .3s ease}.timeline-item:hover .timeline-content{border-color:#00fff9;border-color:var(--accent-cyan);box-shadow:0 0 20px #00fff966;box-shadow:0 0 20px var(--accent-cyan-glow);transform:translateY(-5px)}.timeline-content:after{background:#00fff9;background:var(--accent-cyan);box-shadow:0 0 10px #00fff9,0 0 20px #00fff9;box-shadow:0 0 10px var(--accent-cyan),0 0 20px var(--accent-cyan);content:"";height:3px;left:0;opacity:0;position:absolute;top:0;transition:opacity .3s ease-out;width:100%}.timeline-item:hover .timeline-content:after{animation:scan-line .75s cubic-bezier(.23,1,.32,1);opacity:.6}.timeline-date{color:#ff00c1;color:var(--accent-magenta);font-weight:700;margin-bottom:.5rem}.timeline-project-title{color:#eaeaea;color:var(--primary-text-color);font-size:1.4rem;font-weight:700;margin-bottom:.5rem}.timeline-project-preview{color:#a5a5a5;color:var(--secondary-text-color);font-size:.9rem;line-height:1.5}.timeline-read-more{color:#00fff9;color:var(--accent-cyan);display:block;font-weight:700;margin-top:.5rem;text-decoration:none}.about-container{background:#121212;background:var(--bg-color);padding:4rem 0}.about-content{align-items:center;display:flex;gap:3rem;margin:0 auto;max-width:1000px;width:90%}.about-text{color:#eaeaea;color:var(--primary-text-color);flex:2 1}.about-text h2{text-align:left}.about-text p{color:#a5a5a5;color:var(--secondary-text-color);line-height:1.7;margin-bottom:1rem}.about-image{flex:1 1;max-width:300px}.about-image img{border:2px solid #00fff9;border:2px solid var(--accent-cyan);box-shadow:0 0 25px #00fff94d;-webkit-clip-path:polygon(0 15%,15% 0,100% 0,85% 100%,0 100%);clip-path:polygon(0 15%,15% 0,100% 0,85% 100%,0 100%);filter:grayscale(100%);transition:filter .4s ease-out,transform .4s ease-out;width:100%}.about-image:hover img{filter:grayscale(0);transform:rotate(-2deg) scale(1.05)}.skills-container{margin:4rem auto;max-width:1200px;text-align:center;width:90%}.skills-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.skill-category{background:#ffffff0d;background:var(--card-bg);border:1px solid #0000;border-radius:8px;padding:2rem;position:relative;text-align:left}.skill-category .border-svg{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:1}.skill-category .border-svg rect{fill:none;stroke:#ffffff1a;stroke:var(--border-color);stroke-width:1px;vector-effect:non-scaling-stroke;rx:8px;x:1px;y:1px;height:calc(100% - 2px);transition:stroke .3s;width:calc(100% - 2px)}.skill-category:hover .border-svg rect{stroke:#ff00c1;stroke:var(--accent-magenta);stroke-dasharray:50 100;animation:draw-border 4s linear infinite}.skill-category h3{border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border-color);color:#ff00c1;color:var(--accent-magenta);font-size:1.5rem;font-weight:700;margin-bottom:1rem;padding-bottom:.5rem}.skill-category ul{list-style:none;padding:0}.skill-category li{background:#0003;border-radius:4px;color:#a5a5a5;color:var(--secondary-text-color);font-weight:400;margin-bottom:.5rem;padding:.5rem 1rem}.contact-container{margin:3rem auto;max-width:1200px;width:90%}.contact-tile{background:#ffffff0d;background:var(--card-bg);border:1px solid #ffffff1a;border:1px solid var(--border-color);border-radius:8px;padding:2rem;text-align:center;transition:transform .3s}.contact-tile:hover{border-color:#ff00c1;border-color:var(--accent-magenta)}.contact-tile h2{color:#eaeaea;color:var(--primary-text-color);font-size:1.8rem;font-weight:700;margin-bottom:1rem}.contact-item{color:#a5a5a5;color:var(--secondary-text-color);margin:.5rem 0}.contact-item a{color:#eaeaea;color:var(--primary-text-color);text-decoration:none;transition:color .3s}.contact-item a:hover{color:#ff00c1;color:var(--accent-magenta)}.project-page-container{margin:0 auto;max-width:1000px;min-height:100vh;padding:2rem}.project-header{align-items:center;border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;margin-bottom:2rem;padding-bottom:2rem;position:relative}.project-header h1{color:#eaeaea;color:var(--primary-text-color);font-size:2.8rem;margin-bottom:.5rem}.project-header span{color:#ff00c1;color:var(--accent-magenta);font-size:1rem;font-weight:700}.project-body{display:flex;flex-direction:column;gap:2rem}.project-body.side-by-side{align-items:flex-start;flex-direction:row}.project-body.side-by-side .project-gallery{flex:1 1;max-width:45%}.project-body.side-by-side .project-details{flex:1.5 1}.back-link{color:#eaeaea;color:var(--primary-text-color);font-weight:700;margin-bottom:1.5rem;position:static;text-decoration:none;transition:color .3s}.back-link:hover{color:#00fff9;color:var(--accent-cyan)}.project-gallery{margin-bottom:3rem}.main-image-container{margin:0 auto 1rem;max-width:700px;position:relative;width:80%}.main-image{border:2px solid #ffffff1a;border:2px solid var(--border-color);-webkit-clip-path:polygon(0 15%,15% 0,100% 0,85% 100%,0 100%);clip-path:polygon(0 15%,15% 0,100% 0,85% 100%,0 100%);height:auto;transition:all .3s ease-in-out;width:100%}.main-image-container:hover .main-image{border-color:#ff00c1;border-color:var(--accent-magenta);box-shadow:0 0 25px #ff00c180;transform:scale(1.02)}.thumbnail-container{display:flex;gap:1rem;justify-content:center}.thumbnail-image{border:2px solid #0000;-webkit-clip-path:polygon(0 15%,15% 0,100% 0,85% 100%,0 100%);clip-path:polygon(0 15%,15% 0,100% 0,85% 100%,0 100%);cursor:pointer;height:75px;object-fit:cover;transition:border-color .3s,transform .3s;width:100px}.thumbnail-image:hover{border-color:#00fff9;border-color:var(--accent-cyan);transform:scale(1.05)}.thumbnail-image.active{border-color:#ff00c1;border-color:var(--accent-magenta);box-shadow:0 0 15px #ff00c1;box-shadow:0 0 15px var(--accent-magenta)}.project-details{background:#ffffff0d;background:var(--card-bg);border:1px solid #ffffff1a;border:1px solid var(--border-color);border-radius:8px;padding:2rem}.project-details h3{color:#eaeaea;color:var(--primary-text-color);font-size:1.8rem;margin-bottom:1rem}.project-details p{color:#a5a5a5;color:var(--secondary-text-color);font-size:1.1rem;line-height:1.8}.project-not-found{padding:5rem 1rem;text-align:center}.footer{background:#121212;background:var(--bg-color);border-top:1px solid #ffffff1a;border-top:1px solid var(--border-color);color:#a5a5a5;color:var(--secondary-text-color);margin-top:3rem;padding:2rem 0;text-align:center}@keyframes nav-glitch{0%,to{text-shadow:none;transform:skewX(0)}25%{text-shadow:1px 1px #ff00c1;text-shadow:1px 1px var(--accent-magenta);transform:skewX(-2deg)}75%{text-shadow:-1px -1px #00fff9;text-shadow:-1px -1px var(--accent-cyan);transform:skewX(2deg)}}@keyframes subtle-text-glitch{0%{text-shadow:1px 0 0 #ff00c1,-1px 0 0 #00fff9;text-shadow:1px 0 0 var(--accent-magenta),-1px 0 0 var(--accent-cyan)}to{text-shadow:-1px 0 0 #ff00c1,1px 0 0 #00fff9;text-shadow:-1px 0 0 var(--accent-magenta),1px 0 0 var(--accent-cyan)}}@keyframes scan-line{0%{transform:translateY(-100%)}to{transform:translateY(400%)}}@keyframes draw-border{0%{stroke-dashoffset:150}to{stroke-dashoffset:0}}.glitch-wrapper{display:inline-block;position:relative}.glitch{color:#fff;mix-blend-mode:screen;position:relative}.glitch:after,.glitch:before{background:#121212;-webkit-clip-path:inset(50% 50% 50% 50%);clip-path:inset(50% 50% 50% 50%);content:attr(data-text);height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%}.glitch:before{animation:glitch-anim-1 2.5s linear infinite alternate-reverse;left:-2px;text-shadow:-1px 0 #ff00c1}.glitch:after{animation:glitch-anim-2 2s linear infinite alternate-reverse;left:2px;text-shadow:-1px 0 #00fff9}@keyframes glitch-anim-1{0%{-webkit-clip-path:inset(40% 0 60% 0);clip-path:inset(40% 0 60% 0)}20%{-webkit-clip-path:inset(10% 0 85% 0);clip-path:inset(10% 0 85% 0)}40%{-webkit-clip-path:inset(50% 0 30% 0);clip-path:inset(50% 0 30% 0)}60%{-webkit-clip-path:inset(30% 0 70% 0);clip-path:inset(30% 0 70% 0)}80%{-webkit-clip-path:inset(80% 0 5% 0);clip-path:inset(80% 0 5% 0)}to{-webkit-clip-path:inset(60% 0 40% 0);clip-path:inset(60% 0 40% 0)}}@keyframes glitch-anim-2{0%{-webkit-clip-path:inset(2% 0 98% 0);clip-path:inset(2% 0 98% 0)}20%{-webkit-clip-path:inset(90% 0 2% 0);clip-path:inset(90% 0 2% 0)}40%{-webkit-clip-path:inset(45% 0 45% 0);clip-path:inset(45% 0 45% 0)}60%{-webkit-clip-path:inset(95% 0 5% 0);clip-path:inset(95% 0 5% 0)}80%{-webkit-clip-path:inset(10% 0 80% 0);clip-path:inset(10% 0 80% 0)}to{-webkit-clip-path:inset(0 0 100% 0);clip-path:inset(0 0 100% 0)}}.particles-bg{height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%;z-index:-1}.particle{animation:rise 5s ease-in infinite;background-color:#00fff9;border-radius:50%;opacity:0;position:absolute}@keyframes rise{0%{opacity:1;transform:translateY(100vh) scale(.5)}50%{opacity:.8}to{opacity:0;transform:translateY(-10vh) scale(1)}}@media (max-width:768px){.navbar-inner{align-items:center;flex-direction:row;justify-content:space-between;padding:.75rem 1rem;position:relative;width:100%}.nav-links{display:none}.nav-links.active{background:#222;border-top:2px solid #ddd;display:flex;flex-direction:column;left:0;position:absolute;right:0;top:100%;z-index:1000}.nav-links.active a{border-bottom:1px solid #444;margin:0;padding:1.2rem 1rem;text-align:center;width:100%}.nav-links.active a:last-child{border-bottom:none}.hamburger-menu{background:#0000;border:none;cursor:pointer;display:flex;flex-direction:column;height:25px;justify-content:space-around;padding:0;width:30px}.hamburger-bar{background-color:#fff;border-radius:2px;height:3px;transition:all .3s ease-in-out;width:100%}.hamburger-menu.active .hamburger-bar:first-child{transform:translateY(8px) rotate(45deg)}.hamburger-menu.active .hamburger-bar:nth-child(2){opacity:0}.hamburger-menu.active .hamburger-bar:nth-child(3){transform:translateY(-8px) rotate(-45deg)}body{font-size:14px}h1{font-size:2.2rem}h2{font-size:1.8rem}.hero{min-height:70vh}.hero-content h1{font-size:2.5rem}.hero-content p{font-size:1rem}.timeline-line{left:20px;transform:translateX(0)}.timeline-item,.timeline-item:nth-child(2n){left:0;padding-left:4rem;padding-right:1rem;text-align:left;width:100%}.timeline-dot,.timeline-item:nth-child(2n) .timeline-dot,.timeline-item:nth-child(odd) .timeline-dot{left:12px}.about-content{flex-direction:column;gap:2rem;text-align:center}.about-text{order:2}.about-image{max-width:250px;order:1}.project-gallery,.skills-grid{grid-template-columns:1fr}.project-header h1{font-size:2rem}.back-link{display:block;margin-bottom:1rem;position:static;text-align:center}.project-body.side-by-side{flex-direction:column}.project-body.side-by-side .project-details,.project-body.side-by-side .project-gallery{max-width:100%}}@media (min-width:769px){.hamburger-menu{display:none}}body{cursor:none}.mouse-trail-container{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:9999}.trail-particle{animation:fade-out .5s forwards;border-radius:0;height:8px;position:absolute;transform:translate(-50%,-50%);width:8px}@keyframes fade-out{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(0)}}.decrypt-wrapper{position:relative}.decrypt-layout-text{color:#0000;opacity:0;pointer-events:none}.decrypt-scramble-text{color:var(--accent-cyan);font-weight:700;height:100%;left:0;margin:0;position:absolute;top:0;width:100%}.decrypt-wrapper p{margin-bottom:1rem}.decrypt-scramble-text:not(.decrypting){color:var(--secondary-text-color);font-weight:400}
/*# sourceMappingURL=main.13ed38e8.css.map*/