@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;600;700&family=Orbitron:wght@700;900&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*{margin:0;padding:0;box-sizing:border-box}:root{--bg-dark: #0a0e27;--bg-darker: #050814;--primary: #00ff41;--primary-glow: rgba(0, 255, 65, .3);--secondary: #00d9ff;--accent: #ff006e;--text: #e0e0e0;--text-dim: #8892b0;--card-bg: rgba(15, 23, 42, .8);--border: rgba(0, 255, 65, .2)}body{font-family:JetBrains Mono,monospace;background:var(--bg-dark);color:var(--text);overflow-x:hidden;line-height:1.6}.App{min-height:100vh;position:relative;width:100%;min-width:100vw}.matrix-bg{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,var(--bg-darker) 0%,var(--bg-dark) 100%),repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,255,65,.03) 2px,rgba(0,255,65,.03) 4px);z-index:-1;opacity:.4}.matrix-bg:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle at 20% 50%,rgba(0,255,65,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(0,217,255,.1) 0%,transparent 50%);animation:pulse 8s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.3}50%{opacity:.6}}.navbar{position:fixed;top:0;width:100%;padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center;background:#0a0e27d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);z-index:1000;animation:slideDown .5s ease-out}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.nav-brand{font-family:Orbitron,sans-serif;font-size:1.4rem;font-weight:900;letter-spacing:2px}.bracket{color:var(--primary);font-size:1.6rem}.brand-text{color:var(--text);text-shadow:0 0 10px var(--primary-glow)}.nav-links{display:flex;gap:1rem}.nav-links button{background:transparent;border:1px solid transparent;color:var(--text-dim);padding:.6rem 1.2rem;font-family:JetBrains Mono,monospace;font-size:.9rem;cursor:pointer;transition:all .3s ease;border-radius:4px;position:relative;overflow:hidden}.nav-links button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,var(--primary-glow),transparent);transition:left .5s ease}.nav-links button:hover:before{left:100%}.nav-links button:hover{color:var(--primary);border-color:var(--primary);box-shadow:0 0 15px var(--primary-glow)}.nav-links button.active{color:var(--primary);border-color:var(--primary);background:#00ff411a}.nav-icon{color:var(--primary);margin-right:.3rem}.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:8rem 2rem 4rem;position:relative;width:100%}.terminal-window{width:100%;max-width:600px;background:var(--card-bg);border:1px solid var(--border);border-radius:8px;margin-bottom:3rem;box-shadow:0 20px 60px #00ff411a;animation:fadeInUp .8s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.terminal-header{background:#0000004d;padding:.7rem 1rem;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:.5rem}.terminal-dot{width:12px;height:12px;border-radius:50%}.terminal-dot.red{background:#ff5f56}.terminal-dot.yellow{background:#ffbd2e}.terminal-dot.green{background:#27c93f}.terminal-title{margin-left:auto;font-size:.85rem;color:var(--text-dim)}.terminal-body{padding:1.5rem;font-size:.95rem}.terminal-line-typing{margin:.5rem 0;color:var(--text-dim)}.terminal-line{margin:.5rem 0;color:var(--text-dim);opacity:100;animation:fadeIn .4s}.terminal-line.success{color:var(--primary)}.cursor{animation:blink 1s infinite;color:var(--primary)}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.hero-content{text-align:center;max-width:800px;animation:fadeInUp 1s ease-out .3s both}.glitch-text{font-family:Orbitron,sans-serif;font-size:4rem;font-weight:900;color:var(--text);text-transform:uppercase;letter-spacing:4px;position:relative;text-shadow:0 0 20px var(--primary-glow),2px 2px 0 var(--secondary),-2px -2px 0 var(--accent);animation:glitch 3s infinite}@keyframes glitch{0%,90%,to{text-shadow:0 0 20px var(--primary-glow),2px 2px 0 var(--secondary),-2px -2px 0 var(--accent)}92%{text-shadow:0 0 20px var(--primary-glow),-2px 2px 0 var(--secondary),2px -2px 0 var(--accent)}94%{text-shadow:0 0 20px var(--primary-glow),2px -2px 0 var(--secondary),-2px 2px 0 var(--accent)}}.subtitle{margin:1.5rem 0}.typing-text{font-size:1.8rem;color:var(--secondary);border-right:3px solid var(--secondary);padding-right:.3rem;animation:typing 2s steps(25) 1s both,blink-border .75s step-end infinite}@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink-border{50%{border-color:transparent}}.hero-description{font-size:1.1rem;color:var(--text-dim);margin:2rem 0;line-height:1.8}.cta-buttons{display:flex;gap:1.5rem;justify-content:center;margin-top:2.5rem}.btn-primary,.btn-secondary{padding:1rem 2rem;font-family:JetBrains Mono,monospace;font-size:1rem;font-weight:600;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;position:relative;overflow:hidden}.btn-primary{background:var(--primary);color:var(--bg-dark)}.btn-primary:hover{box-shadow:0 0 30px var(--primary-glow);transform:translateY(-2px)}.btn-secondary{background:transparent;color:var(--primary);border:2px solid var(--primary)}.btn-secondary:hover{background:var(--primary);color:var(--bg-dark);box-shadow:0 0 30px var(--primary-glow);transform:translateY(-2px)}.button-container-right{display:flex;justify-content:flex-end;width:100%}.scan-line{position:absolute;width:100%;height:2px;background:linear-gradient(90deg,transparent,var(--primary),transparent);animation:scan 4s linear infinite}@keyframes scan{0%{top:0;opacity:.8}50%{opacity:.3}to{top:100%;opacity:.8}}section{min-height:100vh;padding:8rem 2rem 4rem;max-width:1200px;margin:0 auto;width:100%}.section-header{margin-bottom:3rem;animation:fadeInUp .6s ease-out}.section-header h2{font-family:Orbitron,sans-serif;font-size:2.5rem;color:var(--text);margin-bottom:1rem}.prompt{color:var(--primary);margin-right:.5rem}.header-line{height:2px;background:linear-gradient(90deg,var(--primary),transparent);box-shadow:0 0 10px var(--primary-glow);animation:expandWidth .8s ease-out .3s both}@keyframes expandWidth{0%{width:0}to{width:100%}}.about-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.about-card{background:var(--card-bg);border:1px solid var(--border);border-radius:8px;padding:2rem;transition:all .3s ease;animation:fadeInUp .6s ease-out both}.about-card:nth-child(1){animation-delay:.1s}.about-card:nth-child(2){animation-delay:.2s}.about-card:nth-child(3){animation-delay:.3s}.about-card:nth-child(4){animation-delay:.4s}.about-card:hover{border-color:var(--primary);box-shadow:0 10px 40px var(--primary-glow);transform:translateY(-5px)}.about-card.full-width{grid-column:1 / -1}.about-card h3{color:var(--primary);font-size:1.3rem;margin-bottom:1rem}.focus-list,.cert-list{list-style:none;padding-left:0}.focus-list li,.cert-list li{padding:.5rem 0;color:var(--text-dim);border-bottom:1px solid rgba(0,255,65,.1)}.cert-icon{color:var(--primary);margin-right:.5rem}.skills-grid{display:flex;flex-wrap:wrap;gap:.8rem}.skill-tag{background:#00ff411a;color:var(--primary);padding:.6rem 1.2rem;border-radius:20px;font-size:.9rem;border:1px solid var(--border);animation:fadeIn .5s ease-out both;transition:all .3s ease}.skill-tag:hover{background:var(--primary);color:var(--bg-dark);transform:translateY(-3px);box-shadow:0 5px 15px var(--primary-glow)}@keyframes fadeIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;margin-bottom:2rem}.project-card{background:var(--card-bg);border:1px solid var(--border);border-radius:8px;padding:2rem;transition:all .4s ease;animation:fadeInUp .6s ease-out both;position:relative;overflow:hidden}.project-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--primary),var(--secondary));transform:scaleX(0);transform-origin:left;transition:transform .4s ease}.project-card:hover:before{transform:scaleX(1)}.project-card:hover{border-color:var(--primary);box-shadow:0 15px 50px var(--primary-glow);transform:translateY(-8px)}.project-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:1rem}.project-card h3{color:var(--text);font-size:1.4rem;margin-bottom:.5rem}.status{padding:.3rem .8rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;white-space:nowrap}.status.completed{background:#00ff4133;color:var(--primary);border:1px solid var(--primary)}.status.in-progress{background:#00d9ff33;color:var(--secondary);border:1px solid var(--secondary)}.project-description{color:var(--text-dim);margin:1rem 0;line-height:1.7}.project-tech{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.5rem 0}.tech-badge{background:#0006;color:var(--secondary);padding:.4rem .9rem;border-radius:4px;font-size:.85rem;border:1px solid rgba(0,217,255,.3)}.project-link{background:transparent;color:var(--primary);border:1px solid var(--primary);padding:.7rem 1.5rem;border-radius:4px;font-family:JetBrains Mono,monospace;font-size:.9rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;margin-top:1rem}.project-link:hover{background:var(--primary);color:var(--bg-dark);transform:translate(5px)}.arrow{transition:transform .3s ease}.project-link:hover .arrow{transform:translate(5px)}.add-projects-note{text-align:center;padding:2rem;background:#00d9ff0d;border:1px dashed var(--secondary);border-radius:8px;color:var(--text-dim)}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem;animation:fadeInUp .6s ease-out}.contact-info h3{font-family:Orbitron,sans-serif;font-size:2rem;color:var(--primary);margin-bottom:1rem}.contact-methods{margin-top:2rem;display:flex;flex-direction:column;gap:1.5rem}.contact-method{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:var(--card-bg);border:1px solid var(--border);border-radius:8px;text-decoration:none;color:var(--text);transition:all .3s ease}.contact-method:hover{border-color:var(--primary);box-shadow:0 10px 30px var(--primary-glow);transform:translate(10px)}.contact-icon{font-size:2rem}.contact-method h4{color:var(--primary);font-size:1.1rem;margin-bottom:.3rem}.contact-method p{color:var(--text-dim);font-size:.9rem}.terminal-contact{background:var(--card-bg);border:1px solid var(--border);border-radius:8px;overflow:hidden;height:fit-content}.terminal-contact .terminal-body{background:#0000004d}.mono{font-family:Courier New,monospace;font-size:.85rem;color:var(--primary)}.footer{text-align:center;padding:2rem;background:var(--bg-darker);border-top:1px solid var(--border);color:var(--text-dim);font-size:.9rem}.footer-hash{margin-top:.5rem;font-family:Courier New,monospace;font-size:.75rem;color:var(--primary);opacity:.5}@media(max-width:768px){.navbar{flex-direction:column;gap:1rem;padding:1rem}.nav-links{flex-wrap:wrap;justify-content:center}.nav-links button{padding:.5rem 1rem;font-size:.85rem}.glitch-text{font-size:2.5rem}.typing-text{font-size:1.3rem}.cta-buttons{flex-direction:column}.section-header h2{font-size:2rem}.about-grid,.projects-grid,.contact-content{grid-template-columns:1fr}}@media(max-width:480px){.glitch-text{font-size:2rem;letter-spacing:2px}.hero-description{font-size:1rem}.btn-primary,.btn-secondary{width:100%;justify-content:center}}.project-detail{animation:fadeInUp .6s ease-out}.back-button{background:transparent;border:1px solid var(--primary);color:var(--primary);padding:.8rem 1.5rem;font-family:JetBrains Mono,monospace;font-size:.95rem;cursor:pointer;border-radius:6px;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;margin-bottom:2rem}.back-button:hover{background:var(--primary);color:var(--bg-dark);box-shadow:0 0 20px var(--primary-glow);transform:translate(-5px)}.back-button .arrow{transition:transform .3s ease}.back-button:hover .arrow{transform:translate(-5px)}.detail-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid var(--border)}.detail-title{font-family:Orbitron,sans-serif;font-size:3rem;color:var(--text);margin-bottom:1rem;line-height:1.2}.detail-subtitle{font-size:1.2rem;color:var(--text-dim);line-height:1.6}.detail-tech-stack{margin-top:2rem;margin-bottom:2rem}.detail-tech-stack h3{font-size:1.3rem;color:var(--primary);margin-bottom:1rem}.detail-content{display:grid;gap:2.5rem}.detail-section{animation:fadeInUp .6s ease-out both}.detail-section:nth-child(1){animation-delay:.1s}.detail-section:nth-child(2){animation-delay:.2s}.detail-section:nth-child(3){animation-delay:.3s}.detail-section:nth-child(4){animation-delay:.4s}.detail-section:nth-child(5){animation-delay:.5s}.detail-section h2{font-family:Orbitron,sans-serif;font-size:1.8rem;color:var(--text);margin-bottom:1.5rem}.detail-card{background:var(--card-bg);border:1px solid var(--border);border-radius:8px;padding:2rem;transition:all .3s ease}.detail-card:hover{border-color:var(--primary);box-shadow:0 10px 40px var(--primary-glow)}.detail-card p{color:var(--text-dim);line-height:1.8;font-size:1.05rem}.detail-list{list-style:none;padding-left:0}.detail-list li{color:var(--text-dim);padding:.8rem 0 .8rem 2rem;position:relative;line-height:1.7;border-bottom:1px solid rgba(0,255,65,.1)}.detail-list li:last-child{border-bottom:none}.detail-list li:before{content:"▸";position:absolute;left:0;color:var(--primary);font-weight:700}.detail-list.numbered{counter-reset:item}.detail-list.numbered li:before{content:counter(item) ".";counter-increment:item;color:var(--secondary);font-weight:600}.findings-list li{background:#00ff410d;margin:.8rem 0;padding:1rem 1rem 1rem 2.5rem;border-radius:6px;border-left:3px solid var(--primary);border-bottom:none}.finding-bullet{position:absolute;left:1rem;color:var(--primary);font-size:1.2rem}.detail-card.impact{background:linear-gradient(135deg,#00ff411a,#00d9ff1a);border-color:var(--primary)}.impact-text{font-size:1.2rem;font-weight:600;color:var(--primary);text-align:center;padding:1rem}.detail-links{display:flex;gap:1.5rem;padding-top:2rem;border-top:1px solid var(--border)}.detail-links a{text-decoration:none}@media(max-width:768px){.detail-header{flex-direction:column;gap:1rem}.detail-title{font-size:2rem}.detail-links{flex-direction:column}.detail-links .btn-primary,.detail-links .btn-secondary{width:100%;justify-content:center}}.security-impact-banner{background:linear-gradient(135deg,#00ff4126,#00d9ff26);border:2px solid var(--primary);border-radius:12px;padding:2rem;margin-bottom:3rem;box-shadow:0 10px 40px var(--primary-glow);animation:fadeInUp .6s ease-out}.security-impact-banner h3{color:var(--primary);font-size:1.4rem;margin-bottom:1rem;font-family:Orbitron,sans-serif}.security-impact-banner p{color:var(--text);font-size:1.1rem;line-height:1.8;font-weight:500}.architecture-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.architecture-layer{background:var(--card-bg);border:1px solid var(--border);border-radius:8px;padding:1.5rem;transition:all .3s ease}.architecture-layer:hover{border-color:var(--secondary);box-shadow:0 5px 20px #00d9ff33;transform:translateY(-3px)}.architecture-layer h4{color:var(--secondary);font-size:1.1rem;margin-bottom:1rem;font-family:Orbitron,sans-serif}.architecture-layer ul{list-style:none;padding:0}.architecture-layer li{color:var(--text-dim);padding:.4rem 0;font-size:.95rem;line-height:1.6}.architecture-layer li:before{content:"→";color:var(--primary);margin-right:.5rem}.deep-dive-card{background:var(--card-bg);border:1px solid var(--border);border-radius:8px;padding:2rem}.deep-dive-card h3{color:var(--primary);font-size:1.5rem;margin-bottom:2rem;text-align:center}.deep-dive-section{margin:2rem 0}.problem-heading{color:var(--accent);font-size:1.2rem;margin-bottom:1rem}.solution-heading{color:var(--primary);font-size:1.2rem;margin-bottom:1rem}.deep-dive-section p{color:var(--text-dim);line-height:1.8;font-size:1.05rem}.implementation-list{list-style:none;padding-left:0;margin-top:1rem}.implementation-list li{padding:.8rem .8rem .8rem 2rem;position:relative;color:var(--text-dim);background:#00ff410d;margin:.5rem 0;border-left:3px solid var(--primary);border-radius:4px}.implementation-list li:before{content:"✓";position:absolute;left:.7rem;color:var(--primary);font-weight:700}.impact-box{background:linear-gradient(135deg,#00ff411a,#00d9ff1a);padding:1.5rem;border-radius:8px;border-left:4px solid var(--secondary);margin-top:2rem;color:var(--text);font-size:1.05rem}.threat-table{overflow-x:auto}.threat-table table{width:100%;border-collapse:collapse;background:var(--card-bg);border-radius:8px;overflow:hidden}.threat-table thead{background:#00ff411a}.threat-table th{color:var(--primary);padding:1rem;text-align:left;font-weight:600;border-bottom:2px solid var(--border);font-size:.95rem}.threat-table td{padding:1.2rem 1rem;border-bottom:1px solid rgba(0,255,65,.1);color:var(--text-dim)}.threat-table tr:hover{background:#00ff410d}.threat-name{color:var(--text);font-weight:600}.risk-badge{padding:.3rem .8rem;border-radius:12px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;display:inline-block}.risk-critical{background:#ff006e33;color:var(--accent);border:1px solid var(--accent)}.risk-high{background:#ffa50033;color:orange;border:1px solid #ffa500}.risk-medium{background:#ff03;color:#ff0;border:1px solid #ffff00}.attack-desc,.mitigation-desc{font-size:.95rem;line-height:1.6}.status-mitigated{color:var(--primary);font-weight:600;white-space:nowrap}.code-snippet-box{margin:2rem 0}.code-snippet-box h4{color:var(--secondary);font-size:1.1rem;margin-bottom:1rem;text-transform:capitalize}.code-snippet-box pre{background:#0009;border:1px solid var(--border);border-radius:8px;padding:1.5rem;overflow-x:auto;font-family:JetBrains Mono,monospace;font-size:.9rem;line-height:1.6}.code-snippet-box code{color:var(--primary)}@media(max-width:968px){.architecture-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.architecture-grid{grid-template-columns:1fr}.security-impact-banner h3{font-size:1.2rem}.security-impact-banner p{font-size:1rem}.threat-table{font-size:.85rem}.threat-table th,.threat-table td{padding:.8rem .5rem}.code-snippet-box pre{font-size:.8rem;padding:1rem}}.cta-buttons a{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-width:180px}.cta-buttons button,.cta-buttons a{flex:1;min-width:180px}.competitions{padding:6rem 2rem;max-width:1400px;margin:0 auto}.competitions-grid{display:grid;gap:2rem;margin-top:3rem}.competition-card{background:#00ff9f08;border:1px solid rgba(0,255,159,.2);border-radius:8px;padding:2rem;animation:slideUp .6s ease-out;transition:all .3s ease}.competition-card:hover{transform:translateY(-5px);border-color:#00ff9f80;box-shadow:0 10px 30px #00ff9f1a}.competition-header{margin-bottom:1.5rem}.competition-header h3{color:#00ff9f;font-size:1.5rem;margin-bottom:.5rem}.competition-meta{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.5rem}.year-badge,.type-badge,.format-badge{padding:.25rem .75rem;border-radius:4px;font-size:.85rem;font-weight:500}.year-badge{background:#00ff9f1a;border:1px solid rgba(0,255,159,.3);color:#00ff9f}.type-badge{background:#64c8ff1a;border:1px solid rgba(100,200,255,.3);color:#64c8ff}.format-badge{background:#ff9f001a;border:1px solid rgba(255,159,0,.3);color:#ff9f00}.competition-description{color:#a0a0a0;line-height:1.6;margin-bottom:1.5rem}.competition-details{display:grid;gap:1.5rem}.detail-block h4{color:#00ff9f;font-size:1rem;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.detail-block ul{list-style:none;padding:0}.detail-block ul li{color:silver;padding:.5rem 0 .5rem 1.5rem;position:relative;line-height:1.5}.detail-block ul li:before{content:"▸";position:absolute;left:0;color:#00ff9f}
