*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{--bg-primary:#0a0a0a;--bg-secondary:#111111;--bg-tertiary:#1a1a1a;--accent:#00ff00;--accent-dim:#00cc00;--text-primary:#ffffff;--text-secondary:#ffffff;--text-muted:#aaaaaa;--terminal-bg:#0d1117;--border-color:#333333;--red:#ff5f56;--yellow:#ffbd2e;--green:#27c93f;--scanline-opacity:0.03}
body.light-theme{--bg-primary:#f5f5f5;--bg-secondary:#ffffff;--bg-tertiary:#e8e8e8;--text-primary:#1a1a1a;--text-secondary:#1a1a1a;--text-muted:#666666;--terminal-bg:#e8e8e8;--border-color:#cccccc;--scanline-opacity:0.01}
body.light-theme .scanline{background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,100,0,var(--scanline-opacity)) 2px,rgba(0,100,0,var(--scanline-opacity)) 4px)}
body.light-theme a:hover{text-shadow:0 0 10px rgba(0,150,0,0.5)}
body.light-theme .glitch{text-shadow:0 0 10px #00aa00}
body.light-theme .nav-links a{color:#444}
body.light-theme .nav-links a:hover{color:#00aa00}
html{scroll-behavior:smooth}
body{font-family:'Courier New',Consolas,monospace;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh;overflow-x:hidden}
#matrix-bg{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.scanline{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,255,0,var(--scanline-opacity)) 2px,rgba(0,255,0,var(--scanline-opacity)) 4px);z-index:9999}
a{color:var(--accent);text-decoration:none;transition:all 0.3s ease}
a:hover{text-shadow:0 0 10px var(--accent)}
a:focus{outline:2px solid var(--accent);outline-offset:2px}
.navbar{position:fixed;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:rgba(10,10,10,0.95);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color);z-index:1000}
.nav-brand{font-size:1.2rem;font-weight:bold;color:var(--accent);display:flex;align-items:center;gap:10px}
.nav-logo{width:160px;height:160px;object-fit:contain;border-radius:8px;margin-right:10px}
.nav-brand a{display:flex;align-items:center;text-decoration:none}
.nav-brand span{color:var(--accent);font-size:1.2rem;font-weight:bold}
.nav-links{display:flex;gap:2rem;list-style:none}
.nav-links a{color:var(--text-secondary);font-size:0.9rem;text-transform:uppercase;letter-spacing:1px}
.nav-links a:hover{color:var(--accent)}
.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:5px}
.hamburger{width:25px;height:3px;background:var(--accent);transition:all 0.3s ease}
.nav-toggle.active .hamburger:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.nav-toggle.active .hamburger:nth-child(2){opacity:0}
.nav-toggle.active .hamburger:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}
@media (max-width:900px){.nav-links{position:fixed;top:60px;left:0;right:0;background:rgba(10,10,10,0.98);flex-direction:column;padding:2rem;gap:1rem;transform:translateY(-100%);opacity:0;visibility:hidden;transition:all 0.3s ease}.nav-links.active{transform:translateY(0);opacity:1;visibility:visible}.nav-toggle{display:flex}.nav-links a{font-size:1rem}}
.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:6rem 2rem 2rem;background:radial-gradient(ellipse at center,var(--bg-secondary) 0%,var(--bg-primary) 70%)}
.hero-content{max-width:800px;width:100%}
.terminal-header{display:flex;align-items:center;gap:8px;padding:10px 15px;background:var(--bg-tertiary);border-radius:8px 8px 0 0;border-bottom:1px solid var(--border-color)}
.dot{width:12px;height:12px;border-radius:50%}
.dot.red{background:var(--red)}
.dot.yellow{background:var(--yellow)}
.dot.green{background:var(--green)}
.terminal-title{margin-left:auto;color:var(--text-secondary);font-size:0.85rem}
.terminal-body{background:var(--terminal-bg);padding:2rem;border-radius:0 0 8px 8px;border:1px solid var(--border-color);border-top:none;font-size:1rem}
.prompt{color:var(--accent)}
.output{color:var(--text-secondary);padding-left:2rem;margin-bottom:1rem}
.typed-text{margin-bottom:0.5rem}
.glitch{font-size:3.5rem;font-weight:bold;color:var(--text-primary);position:relative;text-shadow:0 0 10px var(--accent);animation:glitch 2s infinite}
@keyframes glitch{0%,90%,100%{text-shadow:0 0 10px var(--accent)}92%{text-shadow:-2px 0 var(--red),2px 0 var(--accent)}94%{text-shadow:2px 0 var(--red),-2px 0 var(--accent)}}
.subtitle{color:var(--accent);font-size:1.2rem;margin:0.5rem 0 1.5rem}
.section{padding:5rem 2rem;max-width:1200px;margin:0 auto}
.section-title{font-size:2rem;margin-bottom:2rem;color:var(--text-primary)}
.subsection-title{font-size:1.2rem;margin:2rem 0 1rem;color:var(--accent);font-weight:normal}
.subsection-title:first-of-type{margin-top:0}
.hash{color:var(--accent)}
.about-content{display:grid;grid-template-columns:250px 1fr;gap:3rem;align-items:center}
@media (max-width:768px){.about-content{grid-template-columns:1fr;text-align:center}}
.profile-image{width:250px;height:250px;border:2px solid var(--accent);border-radius:8px;overflow:hidden;position:relative;box-shadow:0 0 30px rgba(0,255,0,0.3);margin:0 auto 2rem}
@media (max-width:768px){.profile-image{width:200px;height:200px}}
.profile-image::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(45deg,transparent 0%,rgba(0,255,0,0.1) 50%,transparent 100%);z-index:2;pointer-events:none}
.profile-image img{width:100%;height:100%;object-fit:cover;filter:grayscale(30%) contrast(1.2)}
.about-text p{color:#e0e0e0;margin-bottom:1.5rem;font-size:1.1rem}
.about-text .highlight{color:#fff;font-weight:bold;background:rgba(0,100,0,0.3);padding:0.75rem 1rem;border-left:3px solid var(--accent);margin-bottom:1.5rem;border-radius:0 8px 8px 0}
.about-list{list-style:none}
.about-list li{padding:0.75rem 0.75rem;color:#fff;background:rgba(0,0,0,0.6);margin-bottom:0.5rem;border-radius:6px;border-left:2px solid var(--accent)}
.bullet{color:var(--accent);margin-right:10px;font-weight:bold}
.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}
.skill-card{background:var(--bg-secondary);padding:1.5rem;border-radius:8px;border:1px solid var(--border-color);transition:all 0.3s ease}
.skill-card:hover{border-color:var(--accent);box-shadow:0 0 20px rgba(0,255,0,0.1)}
.skill-icon{font-size:2rem;margin-bottom:1rem}
.skill-card h3{font-size:1rem;margin-bottom:1rem;color:var(--text-primary)}
.skill-bar{height:6px;background:var(--bg-tertiary);border-radius:3px;overflow:hidden}
.skill-progress{height:100%;background:linear-gradient(90deg,var(--accent-dim),var(--accent));width:var(--progress);border-radius:3px;animation:loadBar 1s ease-out forwards}
@keyframes loadBar{from{width:0}to{width:var(--progress)}}
.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}
.project-card{background:var(--bg-secondary);padding:1.5rem;border-radius:8px;border:1px solid var(--border-color);transition:all 0.3s ease}
.project-card:hover{border-color:var(--accent);transform:translateY(-5px);box-shadow:0 10px 30px rgba(0,0,0,0.3)}
.project-image{width:100%;height:auto;max-height:200px;overflow:hidden;border-radius:4px;margin-bottom:1rem;border:1px solid var(--border-color)}
.project-image img{width:100%;height:100%;object-fit:cover;filter:contrast(1.1) saturate(0.9);transition:all 0.3s ease}
.project-card:hover .project-image img{filter:contrast(1.2) saturate(1)}
.project-header{display:flex;align-items:center;gap:10px;margin-bottom:1rem}
.project-icon{font-size:1.5rem}
.project-card h3{font-size:1.1rem;color:var(--text-primary)}
.project-card p{color:var(--text-secondary);font-size:0.9rem;margin-bottom:1rem}
.project-link{display:inline-block;color:var(--accent);font-size:0.85rem;text-decoration:none;transition:all 0.3s ease;margin-right:1rem}
.project-link:hover{text-shadow:0 0 10px var(--accent)}
.project-tags{display:flex;gap:8px;flex-wrap:wrap}
.tag{background:var(--bg-tertiary);color:var(--accent);padding:4px 12px;border-radius:20px;font-size:0.75rem;border:1px solid var(--accent)}
.cert-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}
.cert-card{background:var(--bg-secondary);padding:1.5rem;border-radius:8px;border:1px solid var(--border-color);transition:all 0.3s ease;text-align:center}
.cert-card:hover{border-color:var(--accent);box-shadow:0 0 20px rgba(0,255,0,0.1)}
.cert-icon{font-size:2.5rem;margin-bottom:1rem}
.cert-card h3{font-size:1rem;color:var(--text-primary);margin-bottom:0.5rem}
.cert-issuer{color:var(--text-secondary);font-size:0.85rem;margin-bottom:1rem}
.cert-status{display:inline-block;background:transparent;color:var(--accent);padding:4px 12px;border-radius:20px;font-size:0.75rem;border:1px solid var(--accent)}
.ctf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}
.ctf-card{background:var(--bg-secondary);padding:1.5rem;border-radius:8px;border:1px solid var(--border-color);transition:all 0.3s ease;text-align:center;text-decoration:none;display:block}
.ctf-card:hover{border-color:var(--accent);transform:translateY(-5px);box-shadow:0 10px 30px rgba(0,0,0,0.3)}
.ctf-logo{font-size:2.5rem;margin-bottom:1rem}
.ctf-card h3{font-size:1rem;color:var(--text-primary);margin-bottom:0.5rem}
.ctf-card p{color:var(--text-secondary);font-size:0.85rem;margin-bottom:1rem}
.ctf-badge{display:inline-block;background:var(--accent);color:var(--bg-primary);padding:4px 12px;border-radius:20px;font-size:0.75rem;font-weight:bold}
.contact-content{max-width:600px;margin:0 auto}
.terminal-box{border-radius:8px;overflow:hidden;box-shadow:0 10px 40px rgba(0,0,0,0.3)}
.contact-terminal .output a{color:var(--accent)}
.contact-terminal .output a:hover{text-decoration:underline}
.footer{background:var(--bg-secondary);border-top:1px solid var(--border-color);padding:2rem;text-align:center}
.footer-content p{color:var(--text-secondary);font-size:0.9rem;margin:0.5rem 0}
.score{color:var(--accent);font-weight:bold;cursor:pointer}
.footer-note{color:var(--text-secondary);font-style:italic}
.footer-legal{margin-top:1rem;display:flex;justify-content:center;gap:1rem;align-items:center;flex-wrap:wrap}
.footer-legal a{color:var(--accent);font-size:0.85rem}
.footer-legal a:hover{text-decoration:underline}
.footer-legal span{color:var(--text-secondary)}
.footer-disclaimer{color:var(--text-secondary);font-size:0.7rem;opacity:0.7;margin-top:1rem;max-width:600px;margin-left:auto;margin-right:auto}
@media (max-width:768px){.glitch{font-size:2rem}.section{padding:3rem 1rem}.nav-logo{width:192px;height:192px}}
@media (prefers-reduced-motion:reduce){.glitch{animation:none}.skill-progress{animation:none;width:var(--progress)}html{scroll-behavior:auto}}
.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:var(--bg-secondary);border-top:2px solid var(--accent);padding:1.5rem;z-index:9998;transform:translateY(100%);transition:transform 0.3s ease}
.cookie-banner.show{transform:translateY(0)}
.cookie-content{max-width:1200px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem;justify-content:space-between}
.cookie-text h3{color:var(--accent);margin-bottom:0.5rem;font-size:1rem}
.cookie-text p{color:var(--text-secondary);font-size:0.85rem;line-height:1.5}
.cookie-text a{color:var(--accent);text-decoration:underline}
.cookie-buttons{display:flex;gap:0.5rem;flex-wrap:wrap}
.cookie-buttons button{padding:0.75rem 1.5rem;border:none;border-radius:4px;cursor:pointer;font-family:inherit;font-size:0.85rem;transition:all 0.3s ease}
.btn-accept{background:var(--accent);color:var(--bg-primary);font-weight:bold}
.btn-accept:hover{box-shadow:0 0 15px var(--accent)}
.btn-reject{background:transparent;color:var(--text-primary);border:1px solid var(--border-color)}
.btn-reject:hover{border-color:var(--accent)}
.btn-settings{background:transparent;color:var(--accent);border:1px solid var(--accent)}
.btn-settings:hover{background:rgba(0,255,0,0.1)}
@media (max-width:768px){.cookie-content{flex-direction:column;text-align:center}.cookie-buttons{width:100%;justify-content:center}}
.cookie-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.9);z-index:9999;display:none;justify-content:center;align-items:center}
.cookie-modal.show{display:flex}
.cookie-modal-content{background:var(--bg-secondary);border:2px solid var(--accent);border-radius:12px;padding:2rem;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;position:relative}
.cookie-modal-content h3{color:var(--accent);margin-bottom:1.5rem;text-align:center}
.cookie-preference-item{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;padding:1rem;margin-bottom:1rem}
.cookie-preference-item label{display:flex;align-items:center;gap:0.5rem;color:var(--text-primary);cursor:pointer}
.cookie-preference-item label span{color:var(--text-primary)}
.cookie-preference-item p{color:var(--text-secondary);font-size:0.8rem;margin-top:0.5rem;margin-left:1.5rem}
.cookie-modal-close{position:absolute;top:1rem;right:1rem;background:transparent;border:1px solid var(--accent);color:var(--accent);font-size:1.5rem;width:35px;height:35px;border-radius:50%;cursor:pointer;transition:all 0.3s ease}
.cookie-modal-close:hover{background:var(--accent);color:var(--bg-primary)}
.cookie-modal-buttons{margin-top:1.5rem;text-align:center}
.cookie-modal-buttons button{background:var(--accent);color:var(--bg-primary);border:none;padding:0.75rem 2rem;border-radius:4px;cursor:pointer;font-family:inherit;font-weight:bold;transition:all 0.3s ease}
.cookie-modal-buttons button:hover{box-shadow:0 0 15px var(--accent)}
.cookie-btn{background:var(--accent);color:var(--bg-primary);border:none;padding:0.5rem 1rem;border-radius:4px;cursor:pointer;font-family:inherit;margin-top:1rem}
.easter-egg-hint{color:var(--text-secondary);font-size:0.75rem;opacity:0.5;cursor:pointer;transition:opacity 0.3s ease}
.easter-egg-hint:hover{opacity:1;color:var(--accent)}
.easter-egg-panel{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.95);z-index:10000;display:none;justify-content:center;align-items:center;animation:fadeIn 0.3s ease}
.easter-egg-panel.show{display:flex}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
.easter-egg-content{background:var(--bg-secondary);border:2px solid var(--accent);border-radius:12px;padding:2rem;max-width:900px;max-height:80vh;overflow-y:auto;position:relative;box-shadow:0 0 50px rgba(0,255,0,0.3)}
.easter-egg-content h2{color:var(--accent);text-align:center;margin-bottom:2rem;font-size:1.5rem;text-shadow:0 0 10px var(--accent)}
.easter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}
.easter-item{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem;text-align:center;transition:all 0.3s ease}
.easter-item:hover{border-color:var(--accent);transform:scale(1.05);box-shadow:0 0 20px rgba(0,255,0,0.2)}
.easter-icon{font-size:3rem;margin-bottom:1rem}
.easter-item h3{color:var(--text-primary);font-size:1rem;margin-bottom:0.5rem}
.easter-item p{color:var(--text-secondary);font-size:0.85rem;line-height:1.4}
.close-easter{position:absolute;top:1rem;right:1rem;background:transparent;border:1px solid var(--accent);color:var(--accent);font-size:1.5rem;width:35px;height:35px;border-radius:50%;cursor:pointer;transition:all 0.3s ease}
.close-easter:hover{background:var(--accent);color:var(--bg-primary)}
.secret-code-hint{color:var(--text-secondary);font-size:0.7rem;opacity:0.4;cursor:pointer;transition:all 0.3s ease}
.secret-code-hint:hover{opacity:1;color:var(--accent)}
.secret-code-panel{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.95);z-index:10001;display:none;justify-content:center;align-items:center}
.secret-code-panel.show{display:flex}
.secret-code-content{background:var(--bg-secondary);border:2px solid var(--red);border-radius:8px;padding:2rem;text-align:center;box-shadow:0 0 30px rgba(255,0,0,0.3)}
.secret-code-content h3{color:var(--red);margin-bottom:1rem;font-size:1.2rem}
.secret-code-content p{color:var(--text-secondary);margin-bottom:1rem}
.secret-code-content input{background:var(--bg-primary);border:1px solid var(--accent);color:var(--text-primary);padding:0.75rem 1rem;font-size:1.5rem;font-family:'Courier New',monospace;border-radius:4px;width:150px;text-align:center;margin-bottom:1rem}
.secret-code-content input:focus{outline:none;box-shadow:0 0 10px var(--accent)}
.secret-code-content button{background:var(--accent);color:var(--bg-primary);border:none;padding:0.75rem 1.5rem;font-family:'Courier New',monospace;font-weight:bold;cursor:pointer;transition:all 0.3s ease;display:block;margin:0 auto}
.secret-code-content button:hover{box-shadow:0 0 20px var(--accent)}
.error-msg{color:var(--red);font-size:0.85rem;margin-top:0.5rem}
.success-msg{color:var(--accent);font-size:0.9rem;margin-top:0.5rem;text-align:center}
.success-title{color:gold;font-size:1.2rem;font-weight:bold}
.hash-box{background:var(--bg-primary);border:1px solid var(--accent);border-radius:8px;padding:1rem;margin-bottom:1.5rem;text-align:center}
.hash-label{color:var(--text-secondary);font-size:0.85rem;margin-bottom:0.5rem}
.hash-value{font-family:'Courier New',monospace;font-size:0.7rem;color:var(--accent);word-break:break-all;background:var(--bg-secondary);padding:0.5rem;border-radius:4px;display:block;margin:0.5rem 0}
.hash-hint{color:var(--text-secondary);font-size:0.8rem;font-style:italic}
.challenge-intro{color:var(--text-secondary);font-size:0.9rem;margin-bottom:1rem}
.mr-robot-panel{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.95);z-index:10003;display:flex;justify-content:center;align-items:center;animation:fadeIn 0.3s ease}
.mr-robot-content{background:#0a0a0a;border:2px solid #e00;border-radius:12px;padding:2rem;max-width:700px;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 0 50px rgba(255,0,0,0.3);text-align:center}
.mr-robot-ascii pre{color:#e00;font-size:0.5rem;line-height:1;text-shadow:0 0 10px rgba(255,0,0,0.5)}
.room27-panel{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.98);z-index:10002;display:none;justify-content:center;align-items:center;overflow-y:auto;padding:2rem}
.room27-panel.show{display:flex}
.room27-content{background:var(--bg-primary);border:2px solid var(--accent);border-radius:12px;padding:2rem;max-width:950px;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 0 60px rgba(0,255,0,0.4)}
.room27-header{text-align:center;margin-bottom:2rem}
.room27-status{color:var(--accent);font-size:0.85rem;padding:0.25rem 1rem;border:1px solid var(--accent);border-radius:20px;display:inline-block;margin-bottom:1rem}
.room27-header h2{color:var(--text-primary);font-size:1.75rem}
.room27-terminal{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
@media (max-width:768px){.room27-terminal{grid-template-columns:1fr}}
.room27-ascii pre{color:var(--accent);font-size:0.6rem;line-height:1.2;background:var(--bg-secondary);padding:1rem;border-radius:4px;overflow-x:auto}
.room27-info{display:flex;flex-direction:column;gap:1rem}
.challenge-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}
.challenge-card h4{color:var(--accent);font-size:0.95rem;margin-bottom:0.5rem}
.challenge-card p{color:var(--text-secondary);font-size:0.85rem;margin-bottom:0.25rem}
.challenge-hint{color:var(--accent);font-style:italic}
.challenge-card.success{border-color:var(--accent);background:rgba(0,255,0,0.05)}
.challenge-card.success h4{color:gold}
.legal-page{padding-top:80px}
.legal-date{color:var(--text-secondary);font-size:0.9rem;margin-bottom:2rem}
.legal-content{background:var(--bg-secondary);padding:2rem;border-radius:8px;border:1px solid var(--border-color);max-width:800px;margin:0 auto}
.legal-content h2{color:var(--accent);margin-top:2rem;margin-bottom:1rem;font-size:1.2rem}
.legal-content h2:first-of-type{margin-top:1rem}
.legal-content h3{color:var(--text-primary);margin-top:1.5rem;margin-bottom:0.75rem;font-size:1rem}
.legal-content p{color:var(--text-secondary);line-height:1.7;margin-bottom:1rem}
.legal-content ul{color:var(--text-secondary);margin-left:1.5rem;margin-bottom:1rem}
.legal-content li{margin-bottom:0.5rem}
.legal-content strong{color:var(--text-primary)}
.legal-content table{width:100%;border-collapse:collapse;margin:1rem 0}
.legal-content th,.legal-content td{border:1px solid var(--border-color);padding:0.75rem;text-align:left;color:var(--text-secondary)}
.legal-content th{background:var(--bg-tertiary);color:var(--accent)}
.legal-content code{background:var(--bg-tertiary);padding:0.2rem 0.5rem;border-radius:3px;color:var(--accent);font-size:0.9rem}
.legal-footer{margin-top:3rem;padding-top:1rem;border-top:1px solid var(--border-color);text-align:center;color:var(--text-secondary)}
.legal-footer a{color:var(--accent);margin:0 0.5rem}
.legal-footer a:hover{text-decoration:underline}
@media (max-width:768px){.legal-content{padding:1.5rem}}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
*:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important}}
.cookie-settings-btn:hover{text-decoration:underline}
.cert-completed{border-color:var(--accent)!important;background:rgba(0,255,0,0.05)!important}
.cert-status.completed{background:var(--accent)!important;color:var(--bg-primary)!important;font-weight:700}
.cert-link{display:inline-block;margin-top:0.75rem;color:var(--accent);font-size:0.8rem;text-decoration:none;transition:all 0.3s ease}
.cert-link:hover{text-shadow:0 0 10px var(--accent)}
.skill-completed{border-color:var(--accent)!important;background:rgba(0,255,0,0.05)!important}
.skill-card p{margin:0}
.github-section{margin-top:3rem}
.github-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;margin-top:1rem}
.github-card{background:var(--bg-secondary);padding:1rem;border-radius:8px;border:1px solid var(--border-color);transition:all 0.3s ease}
.github-card:hover{border-color:var(--accent)}
.github-card h4{color:var(--text-primary);margin-bottom:0.5rem;font-size:0.95rem}
.github-card p{color:var(--text-secondary);font-size:0.85rem;margin-bottom:0.5rem}
.github-card .repo-stats{display:flex;gap:1rem;color:var(--text-secondary);font-size:0.8rem}
.github-loading{text-align:center;color:var(--text-secondary);padding:2rem}
.writeups-placeholder{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}
.writeup-card{background:var(--bg-secondary);padding:1.5rem;border-radius:8px;border:1px solid var(--border-color);text-align:center}
.writeup-card.coming-soon{opacity:0.7}
.writeup-icon{font-size:2.5rem;margin-bottom:1rem}
.writeup-card h3{color:var(--text-primary);font-size:1rem;margin-bottom:0.5rem}
.writeup-card p{color:var(--text-secondary);font-size:0.85rem}
.tools-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}
.tool-category{background:var(--bg-secondary);padding:1.5rem;border-radius:8px;border:1px solid var(--border-color)}
.tools-list{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:0.5rem}
.tool-tag{background:var(--bg-tertiary);color:var(--accent);padding:0.4rem 0.8rem;border-radius:20px;font-size:0.8rem;border:1px solid transparent;transition:all 0.3s ease}
.tool-tag:hover{border-color:var(--accent);background:rgba(0,255,0,0.1)}
.timeline{position:relative;padding-left:2rem}
.timeline::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--border-color)}
.timeline-item{position:relative;padding-bottom:2rem}
.timeline-item:last-child{padding-bottom:0}
.timeline-marker{position:absolute;left:-2.5rem;width:2rem;height:2rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:bold;font-size:0.9rem}
.timeline-item.completed .timeline-marker{background:var(--accent);color:var(--bg-primary)}
.timeline-item.in-progress .timeline-marker{background:#ffbd2e;color:var(--bg-primary)}
.timeline-item.planned .timeline-marker{background:var(--bg-tertiary);color:var(--text-secondary);border:2px solid var(--border-color)}
.timeline-content{background:var(--bg-secondary);padding:1rem;border-radius:8px;border:1px solid var(--border-color);margin-left:1rem}
.timeline-content h4{color:var(--text-primary);margin-bottom:0.25rem}
.timeline-date{color:var(--accent);font-size:0.85rem;margin-bottom:0.5rem}
.timeline-desc{color:var(--text-secondary);font-size:0.9rem}
.theme-toggle{background:none;border:1px solid var(--border-color);color:var(--text-primary);padding:0.5rem;border-radius:4px;cursor:pointer;transition:all 0.3s ease}
.theme-toggle:hover{border-color:var(--accent)}
.theme-icon{font-size:1rem}
.contact-honeypot{position:absolute;left:-9999px}
.contact-note{color:var(--text-secondary);font-size:0.9rem}
.contact-email-obfuscated{color:var(--accent);font-family:monospace}
.project-icon-large{font-size:4rem;text-align:center;margin-bottom:1rem}
@media (max-width:768px){.glitch{font-size:2rem}.section{padding:3rem 1rem 2rem}.section-title{font-size:1.5rem}.hero{padding:5rem 1rem 2rem}.terminal-body{padding:1rem;font-size:0.9rem}.subtitle{font-size:1rem}.nav-brand{font-size:1rem}.nav-brand img{width:32px;height:32px}.skills-grid{grid-template-columns:1fr;gap:1rem}.skill-card{padding:1rem}.skill-icon{font-size:1.5rem}.skill-card h3{font-size:0.9rem}.cert-grid{grid-template-columns:1fr;gap:1rem}.cert-card{padding:1rem}.cert-icon{font-size:2rem}.cert-card h3{font-size:0.95rem}.cert-issuer{font-size:0.8rem}.ctf-grid{grid-template-columns:1fr;gap:1rem}.projects-grid{grid-template-columns:1fr}.project-card{padding:1rem}.project-image{max-height:none}.project-header{flex-wrap:wrap}.project-tags{flex-wrap:wrap}.about-list li{font-size:0.9rem;padding:0.5rem}.about-text p{font-size:1rem}.footer-content p{font-size:0.85rem}.footer-legal{flex-direction:column;gap:0.5rem}.easter-egg-panel,.secret-code-panel,.mr-robot-panel,.room27-panel{padding:1rem}.easter-egg-content,.secret-code-content,.mr-robot-content,.room27-content{padding:1rem;max-width:95%;margin:1rem}.easter-egg-content h2,.room27-header h2{font-size:1.2rem}.easter-grid{grid-template-columns:1fr;gap:1rem}.easter-item{padding:1rem}.github-grid{grid-template-columns:1fr}.writeups-placeholder{grid-template-columns:1fr}.tools-grid{grid-template-columns:1fr}.timeline{padding-left:1.5rem}.timeline-marker{left:-2rem;width:1.5rem;height:1.5rem;font-size:0.8rem}}