@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}:root{--bg-primary:#001100;--bg-secondary:#001a00;--text-primary:#00ff00;--text-secondary:#00cc00;--text-muted:#008800;--border-color:#00ff00;--accent:#00ff00;--glow:rgba(0, 255, 0, 0.5)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:"Fira Code","Courier New","Consolas","Monaco",monospace;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.5;font-size:14px;-webkit-font-smoothing:antialiased}html{scroll-behavior:smooth}body::before{content:"";background:repeating-linear-gradient(0deg,rgba(0,255,0,.05)0,transparent 1px,transparent 2px,rgba(0,255,0,.05) 3px);z-index:9999}#particle-canvas,.contact-section #matrix-canvas,body::after,body::before{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none}body::after{content:"";background-image:linear-gradient(rgba(0,255,0,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(0,255,0,.02) 1px,transparent 1px);background-size:20px 20px;z-index:-1}.container{max-width:1200px}.navbar{background-color:transparent;padding:1rem 0;transition:all .3s ease;border-bottom:1px solid transparent;position:sticky;top:0;z-index:9998}.navbar.scrolled{background-color:rgba(0,0,0,.95);backdrop-filter:blur(10px);padding:.75rem 0;border-bottom:1px solid var(--border-color);box-shadow:0 0 10px var(--glow)}.navbar-brand{font-size:.9rem;font-weight:700;color:var(--text-primary)!important;letter-spacing:.05em;text-shadow:0 0 10px var(--glow)}.navbar-brand::before{content:"> ";color:var(--text-primary)}.nav-link{color:var(--text-secondary)!important;font-size:.85rem;font-weight:400;transition:all .2s ease;padding:.4rem 1rem!important;position:relative}.nav-link::before{content:"# ";opacity:0;transition:opacity .2s ease}.experience-card:hover::before,.nav-link.active::before,.nav-link:hover::before{opacity:1}.nav-link.active,.nav-link:hover{color:var(--text-primary)!important;text-shadow:0 0 5px var(--glow)}#particle-canvas,.contact-section #matrix-canvas{z-index:1}.contact-section #matrix-canvas{position:absolute;z-index:0}.contact-section>.container,.hero-section{position:relative;z-index:1}.hero-section{min-height:75vh;display:flex;align-items:center;padding:5rem 0 3rem;z-index:2}.ascii-art{font-size:.5rem;line-height:1;color:var(--text-secondary);margin-bottom:1rem;text-shadow:0 0 5px var(--glow)}@media (max-width:768px){.ascii-art{font-size:.3rem}}.terminal-header{font-size:.85rem;color:var(--text-secondary);margin-bottom:1.5rem;font-weight:400}.terminal-command{margin-left:.5rem}.terminal-command,.terminal-user{color:var(--text-primary)}.terminal-separator{color:var(--text-muted)}.terminal-path{color:var(--text-secondary)}.terminal-prompt{color:var(--text-primary);margin-left:.5rem}.hero-title{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;line-height:1.1;margin-bottom:1.5rem;letter-spacing:.02em;text-shadow:0 0 20px var(--glow)}.typewriter-text{display:inline}.cursor{display:inline-block;animation:blink 1s step-end infinite;color:var(--text-primary);font-weight:400}.hero-info{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.info-item{font-size:.85rem;line-height:1.6}.info-label{color:var(--text-muted);margin-right:.5rem}.info-value{color:var(--text-secondary)}.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-bottom:2rem;padding:1.5rem;border:1px solid var(--text-muted);background:rgba(0,255,0,.02)}.stat-item{text-align:center}.stat-value{font-size:1.5rem;font-weight:700;color:var(--text-primary);text-shadow:0 0 10px var(--glow);margin-bottom:.25rem}.stat-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.hero-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}.hero-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-primary);text-decoration:none;font-size:.85rem;transition:all .2s ease;border:1px solid var(--text-muted);padding:.5rem 1rem;position:relative}.hero-link::before{content:"[ "}.hero-link::after{content:" ]"}.hero-link.primary{background:rgba(0,255,0,.05);border-color:var(--border-color)}.hero-link:hover{color:var(--text-primary);border-color:var(--text-primary);background:rgba(0,255,0,.1);box-shadow:0 0 15px var(--glow);text-shadow:0 0 5px var(--glow)}.hero-link i{font-size:.9rem}.work-section{padding:3rem 0;position:relative;z-index:2;background:var(--bg-primary)}.section-title{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--text-primary);margin-bottom:2rem;text-shadow:0 0 10px var(--glow)}.section-title::before{content:">> "}.project-item{padding:2rem 0;border-bottom:1px solid var(--text-muted);transition:all .3s ease}.project-item:hover{border-bottom-color:var(--border-color);padding-left:.5rem}.project-item:last-child{border-bottom:none}.experience-card{padding:2rem;border:1px solid var(--border-color);height:100%;transition:all .3s ease;background:rgba(0,255,0,.03);position:relative}.experience-card::before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--text-primary);opacity:0;transition:opacity .3s ease}.experience-card:hover{border-color:var(--text-primary);box-shadow:0 4px 20px rgba(0,255,0,.15);transform:translateY(-4px);background:rgba(0,255,0,.05)}.experience-card .project-title{font-size:1.25rem;margin-bottom:1rem;line-height:1.3}.experience-card .project-description{font-size:.95rem;line-height:1.7;margin-bottom:1.5rem;color:var(--text-secondary)}.experience-card .project-tags{margin-top:auto}.project-title{font-size:1.1rem;font-weight:700;margin-bottom:.5rem;letter-spacing:.02em;color:var(--text-primary)}.project-title::before{content:"[+] ";color:var(--text-secondary)}.project-description,.work-section .experience-list li{color:var(--text-secondary);font-size:.85rem;line-height:1.5;margin-bottom:1rem}.work-section .experience-list{list-style:none;padding-left:0;margin:.75rem 0 1rem}.work-section .experience-list li{position:relative;padding-left:1.25rem;margin-bottom:.4rem}.about-section .experience-list li::before,.work-section .experience-list li::before{content:">";position:absolute;left:0;color:var(--text-muted)}.project-tags{display:flex;flex-wrap:wrap;gap:.6rem}.project-link,.tag{color:var(--text-primary);font-size:.8rem;font-weight:400;transition:all .2s ease;padding:.4rem .8rem}.tag{border:1px solid var(--border-color);background:rgba(0,255,0,.05);letter-spacing:.02em}.tag:hover{border-color:var(--text-primary);box-shadow:0 0 8px var(--glow);background:rgba(0,255,0,.08)}.project-link{text-decoration:none;display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--text-muted)}.project-link::before{content:"{ "}.project-link::after{content:" }"}.project-link:hover{color:var(--text-primary);border-color:var(--border-color);box-shadow:0 0 10px var(--glow);text-shadow:0 0 5px var(--glow)}.project-link i{font-size:.85rem}.blog-section{padding:3rem 0;border-top:1px solid var(--text-muted);position:relative;z-index:2;background:var(--bg-primary)}.blog-section .col-lg-8{padding-right:4.5rem}.blog-section .col-lg-4{padding-left:2rem}.blog-item{padding:2rem 0;border-bottom:1px solid var(--text-muted);transition:all .3s ease}.blog-item:hover{border-bottom-color:var(--border-color);padding-left:.5rem}.blog-item:last-child{border-bottom:none}.blog-meta{margin-bottom:.5rem}.blog-date{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.blog-title{font-size:1.1rem;font-weight:700;margin-bottom:.5rem;letter-spacing:.02em;color:var(--text-primary)}.blog-title::before{content:"[+] ";color:var(--text-secondary)}.blog-description{color:var(--text-secondary);font-size:.85rem;line-height:1.5;margin-bottom:1rem}.blog-pagination{display:flex;justify-content:center;align-items:center;gap:.5rem;padding:2rem 0 1rem;flex-wrap:wrap}.blog-pagination .page-btn{background:0 0;border:1px solid var(--text-muted);color:var(--text-secondary);font-family:"Courier New",Courier,monospace;font-size:.85rem;padding:.4rem .75rem;cursor:pointer;transition:all .2s ease;letter-spacing:.05em}.blog-pagination .page-btn:hover:not(.disabled){border-color:var(--accent-color);color:var(--accent-color);text-shadow:0 0 8px var(--glow)}.blog-pagination .page-btn.active{border-color:var(--accent-color);color:var(--accent-color);text-shadow:0 0 10px var(--glow);box-shadow:0 0 6px var(--glow)}.blog-pagination .page-btn.disabled{color:var(--text-muted);border-color:rgba(255,255,255,.05);cursor:default;opacity:.4}.filter-sidebar{position:sticky;top:100px;padding:1.5rem;border:1px solid var(--text-muted);background:rgba(0,255,0,.02)}.filter-title{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--text-primary);margin-bottom:1.5rem;text-shadow:0 0 10px var(--glow)}.filter-title::before{content:">> "}.filter-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--text-muted)}.filter-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.filter-heading{font-size:.8rem;font-weight:700;color:var(--text-primary);margin-bottom:1rem;letter-spacing:.05em}.filter-heading::before,.skill-category h4::before{content:"// ";color:var(--text-muted)}.filter-options{display:flex;flex-direction:column;gap:.75rem}.filter-option{display:flex;align-items:center;gap:.75rem;cursor:pointer;transition:all .2s ease;padding:.4rem .5rem;margin:0;border:1px solid transparent}.filter-option:hover{border-color:var(--text-muted);padding-left:.75rem;background:rgba(0,255,0,.03)}.filter-checkbox,.filter-radio{width:16px;height:16px;border:1px solid var(--text-muted);background-color:transparent;cursor:pointer;appearance:none;position:relative;transition:all .2s ease}.filter-checkbox:checked,.filter-radio:checked{background-color:transparent;border-color:var(--border-color);box-shadow:0 0 8px var(--glow)}.filter-checkbox:checked::before{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--text-primary);font-size:.75rem;text-shadow:0 0 5px var(--glow)}.filter-radio{border-radius:50%}.filter-radio:checked::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;background-color:var(--text-primary);border-radius:50%;box-shadow:0 0 5px var(--glow)}.filter-label,.skill-category p{font-size:.8rem;color:var(--text-secondary)}.filter-label{cursor:pointer;transition:color .2s ease}.contact-link:hover::before,.filter-option:hover .filter-label,.reaction-btn.active::after,.reaction-btn.active::before,.reaction-btn:hover i{color:var(--text-primary)}.about-section{padding:3rem 0;border-top:1px solid var(--text-muted);position:relative;z-index:2;background:var(--bg-primary)}.about-section .experience-list li,.about-text{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin-bottom:1rem}.about-text::first-letter,.contact-link i{color:var(--text-primary);font-size:1.1rem}.about-section .experience-list{list-style:none;padding-left:0;margin:.75rem 0 1rem}.about-section .experience-list li{position:relative;padding-left:1.25rem;margin-bottom:.4rem;line-height:1.5}.skill-category h4,.skills-heading{font-size:.85rem;font-weight:700;color:var(--text-primary)}.skills-heading{text-transform:uppercase;letter-spacing:.15em;margin-bottom:1rem;text-shadow:0 0 10px var(--glow)}.skills-summary{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0}.skills-heading::before{content:">> "}.skills-list{display:flex;flex-direction:column;gap:1rem}.skill-category{border-left:2px solid var(--text-muted);padding-left:.75rem;transition:all .3s ease}.skill-category:hover{border-left-color:var(--border-color);padding-left:1rem;box-shadow:-5px 0 10px var(--glow)}.skill-category h4{margin-bottom:.75rem}.skill-category p{line-height:1.5}.contact-section{padding:3rem 0;border-top:1px solid var(--text-muted);position:relative;z-index:2;background:var(--bg-primary)}.contact-intro{font-size:.9rem;color:var(--text-secondary);margin-bottom:2rem;line-height:1.6}.contact-links{display:flex;flex-direction:column;gap:1rem}.contact-link{display:flex;align-items:center;gap:.75rem;color:var(--text-primary);text-decoration:none;font-size:.85rem;transition:all .2s ease;padding:.5rem;border:1px solid transparent}.contact-link::before{content:"> ";color:var(--text-muted)}.contact-link:hover{color:var(--text-primary);border-color:var(--text-muted);padding-left:1rem;box-shadow:0 0 10px var(--glow);text-shadow:0 0 5px var(--glow)}.contact-link i{font-size:1rem;width:20px}.footer{padding:2rem 0;border-top:1px solid var(--text-muted)}.footer p{color:var(--text-muted);font-size:.75rem;margin:0}.footer p::before{content:"# "}@media (max-width:992px){.hero-section{padding:4rem 0 2rem}.about-section,.blog-section,.contact-section,.work-section{padding:2.5rem 0}.project-item{padding:1.5rem 0}.skills-list{margin-top:2rem}.filter-sidebar{position:static;margin-top:2rem}.blog-section .col-lg-4,.blog-section .col-lg-8{padding-right:15px;padding-left:15px}}@media (max-width:768px){.navbar{padding:1rem 0}.hero-section{min-height:60vh;padding:3rem 0 2rem}.hero-stats{grid-template-columns:repeat(3,1fr);gap:1rem;padding:1rem}.stat-value{font-size:1.25rem}.stat-label{font-size:.7rem}.section-title{margin-bottom:1.5rem}.project-item{padding:1.25rem 0}.experience-card{padding:1.5rem}.experience-card .project-title{font-size:1.1rem}.experience-card .project-description{font-size:.9rem}.hero-actions{flex-direction:column}.hero-link{width:100%;justify-content:center}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg-primary);border-left:1px solid var(--text-muted)}::-webkit-scrollbar-thumb{background:var(--text-muted);border-left:2px solid var(--border-color)}::-webkit-scrollbar-thumb:hover{background:var(--border-color);box-shadow:0 0 10px var(--glow)}::selection{background:var(--text-primary);color:var(--bg-primary)}::-moz-selection{background:var(--text-primary);color:var(--bg-primary)}.blog-interaction-section{margin-top:4rem;padding-top:3rem;border-top:1px solid var(--text-muted)}.reaction-buttons{display:flex;gap:1rem;margin-bottom:3rem}.reaction-btn{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;background:rgba(0,255,0,.05);border:1px solid rgba(0,255,0,.3);font-size:.9rem;font-family:inherit;cursor:pointer;position:relative}.reaction-btn::after,.reaction-btn::before{content:"[ ";color:var(--text-muted)}.reaction-btn::after{content:" ]"}.reaction-btn,.reaction-btn i{color:var(--text-secondary);transition:all .3s ease}.reaction-btn.active,.reaction-btn:hover{border-color:var(--border-color);color:var(--text-primary)}.reaction-btn:hover{background:rgba(0,255,0,.1);box-shadow:0 0 15px rgba(0,255,0,.3);transform:translateY(-2px)}.reaction-btn.active{background:rgba(0,255,0,.15);box-shadow:0 0 15px rgba(0,255,0,.4)}.reaction-btn.active i{color:var(--text-primary);text-shadow:0 0 10px var(--glow)}.comments-section{margin-top:2rem}.comments-title{font-size:1.2rem;font-weight:700;color:var(--text-primary);margin-bottom:2rem;display:flex;align-items:center;gap:.75rem;text-shadow:0 0 10px var(--glow)}.comments-title::before{content:">> ";color:var(--text-secondary)}.comments-title i,.reaction-btn i{font-size:1.1rem}.comment-input-container{margin-bottom:2rem;padding:1.5rem;background:rgba(0,255,0,.03);border:1px solid rgba(0,255,0,.3);transition:all .3s ease}.comment-input-container:focus-within{border-color:var(--border-color);box-shadow:0 0 15px rgba(0,255,0,.2);background:rgba(0,255,0,.05)}.comment-fields{display:flex;flex-direction:column;gap:.75rem}.comment-identity-fields{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.comment-input{padding:.75rem;background:rgba(0,0,0,.3);border:1px solid rgba(0,255,0,.2);color:var(--text-secondary);font-family:inherit;font-size:.85rem;transition:all .3s ease}.comment-input::placeholder,.comment-textarea::placeholder{color:var(--text-muted);opacity:.7}.comment-input:focus,.comment-textarea:focus{outline:0;border-color:var(--border-color);background:rgba(0,0,0,.5);color:var(--text-primary);box-shadow:0 0 10px rgba(0,255,0,.2)}.comment-textarea,.post-comment-btn{font-family:inherit;font-size:.9rem;transition:all .3s ease}.comment-textarea{width:100%;padding:1rem;background:rgba(0,0,0,.3);border:1px solid rgba(0,255,0,.2);color:var(--text-secondary);line-height:1.6;resize:vertical;min-height:80px}.post-comment-btn{margin-top:1rem;display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:rgba(0,255,0,.1);border:1px solid var(--border-color);color:var(--text-primary);font-weight:600;cursor:pointer}.post-comment-btn::before{content:"[ "}.post-comment-btn::after{content:" ]"}.post-comment-btn:hover:not(:disabled){background:rgba(0,255,0,.15);box-shadow:0 0 20px rgba(0,255,0,.4);text-shadow:0 0 5px var(--glow);transform:translateY(-2px)}.post-comment-btn:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.post-comment-btn i{font-size:.9rem}.comments-list{display:flex;flex-direction:column;gap:1.5rem}.comment-item{padding:1.25rem;background:rgba(0,255,0,.03);border:1px solid rgba(0,255,0,.2);border-left:3px solid var(--text-muted);transition:all .3s ease}.comment-item:hover{border-left-color:var(--border-color);border-color:rgba(0,255,0,.4);background:rgba(0,255,0,.05);box-shadow:0 0 10px rgba(0,255,0,.1);transform:translateX(5px)}.comment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid rgba(0,255,0,.1)}.comment-author{font-size:.85rem;font-weight:700;color:var(--text-primary);text-shadow:0 0 5px var(--glow)}.comment-author::before{content:"@ ";color:var(--text-muted)}.comment-time{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.comment-body{color:var(--text-secondary);font-size:.9rem;line-height:1.6;word-wrap:break-word}.no-comments{text-align:center;padding:3rem 2rem;color:var(--text-muted);font-size:.9rem;border:1px dashed rgba(0,255,0,.2);background:rgba(0,255,0,.02)}@media (max-width:768px){.blog-interaction-section{margin-top:3rem;padding-top:2rem}.reaction-buttons{flex-direction:column;gap:.75rem}.reaction-btn{width:100%;justify-content:center}.comment-input-container{padding:1rem}.comment-identity-fields{grid-template-columns:1fr}.comment-input,.comment-textarea{font-size:.85rem;padding:.75rem}.post-comment-btn{width:100%;justify-content:center;padding:.75rem 1rem}.comment-item{padding:1rem}.comment-header{flex-direction:column;align-items:flex-start;gap:.5rem}}.fade-in-element{opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease}.fade-in-visible{opacity:1;transform:translateY(0)}.blog-title{cursor:pointer;transition:color .3s ease}.blog-title:hover{color:#0f0}.hidden{display:none}.visible{display:block}.inline-link{color:#0f0;text-decoration:underline;transition:all .3s ease}.inline-link:hover{color:#0f0;text-shadow:0 0 5px rgba(0,255,0,.5)}.toc{background:rgba(0,255,0,.03);border:1px solid rgba(0,255,0,.2);border-left:3px solid #0f0;border-radius:0 6px 6px 0;margin:0 0 40px;overflow:hidden}.toc-header{display:flex;align-items:center;padding:11px 18px;background:rgba(0,255,0,.05);border-bottom:1px solid rgba(0,255,0,.12);color:#0f0;font-size:.82rem;font-weight:700;letter-spacing:.1em;text-transform:lowercase;cursor:pointer;user-select:none}.toc-header::before{content:"$ ";color:#050;margin-right:2px}.toc-toggle-icon{margin-left:auto;transition:transform .25s ease;color:#050;font-size:.8rem}.toc.toc-collapsed .toc-toggle-icon{transform:rotate(-90deg)}.toc.toc-collapsed .toc-list{display:none}.toc-list{list-style:none;padding:10px 0;margin:0;counter-reset:toc-h2}.toc-item{margin:0}.toc-item:not(.toc-item-h3){counter-increment:toc-h2}.toc-item:not(.toc-item-h3)>a::before{content:counter(toc-h2,decimal-leading-zero);color:#040;font-size:.76rem;min-width:24px;flex-shrink:0;transition:color .15s ease}.toc-item:not(.toc-item-h3).toc-active>a::before,.toc-item:not(.toc-item-h3):hover>a::before{color:#0a0}.toc-item-h3>a::before{content:"└─";color:#040;font-size:.76rem;flex-shrink:0;transition:color .15s ease}.toc-item-h3.toc-active>a::before,.toc-item-h3:hover>a::before{color:#0a0}.toc-item>a{display:flex;align-items:baseline;gap:10px;padding:5px 18px;color:#4a8a4a;text-decoration:none;font-size:.88rem;line-height:1.4;transition:color .15s ease,background .15s ease}.toc-item-h3>a{padding-left:34px;font-size:.83rem;color:#3d7a3d}.toc-item>a:hover{color:#0f0;background:rgba(0,255,0,.04)}.toc-item.toc-active>a{color:#0f0;background:rgba(0,255,0,.06)}@media (max-width:768px){.toc{border-radius:0 4px 4px 0}}