@import"https://fonts.googleapis.com/css2?family=VT323&family=Fira+Code:wght@300;400;500;700&display=swap";:root{--phosphor-green: #36d399;--phosphor-green-dim: #2db080;--phosphor-green-glow: rgba(54, 211, 153, .3);--phosphor-amber: #ffd700;--phosphor-amber-dim: #ccac00;--phosphor-amber-glow: rgba(255, 215, 0, .3);--terminal-black: #0a0a0a;--terminal-dark: #0d1117;--terminal-gray: #1a1a1a}*{margin:0;padding:0;box-sizing:border-box}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100px;left:50%;transform:translate(-50%);background:var(--phosphor-amber);color:var(--terminal-black);padding:12px 24px;font-family:Fira Code,monospace;font-size:14px;text-decoration:none;z-index:10001;transition:top .2s ease}.skip-link:focus{top:10px;outline:2px solid var(--phosphor-green);outline-offset:2px}html{background:var(--terminal-black)}body{font-family:Fira Code,Courier New,monospace;background:var(--terminal-black);color:var(--phosphor-green);min-height:100vh;overflow-x:hidden;position:relative}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:repeating-linear-gradient(0deg,rgba(0,0,0,.15),rgba(0,0,0,.15) 1px,transparent 1px,transparent 2px);pointer-events:none;z-index:9999}body:after{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse at center,transparent 0%,rgba(0,0,0,.4) 100%);pointer-events:none;z-index:9998;animation:flicker .6s infinite}@keyframes flicker{0%{opacity:.97}50%{opacity:1}to{opacity:.98}}@media(prefers-reduced-motion:reduce){body:after{animation:none;opacity:1}body:before{display:none}.cursor{animation:none;opacity:1}.status-dot{animation:none}.boot-sequence>*{animation:none;opacity:1}.glitch:before,.glitch:after{display:none}.grid-bg{display:none}.nav-link,.project-card,.project-link{transition:none}}.terminal-container{max-width:1200px;margin:0 auto;padding:20px;position:relative}.ascii-header{font-family:Fira Code,monospace;font-size:clamp(6px,1.2vw,12px);line-height:1.1;color:var(--phosphor-green);text-align:center;margin-bottom:30px;white-space:pre;text-shadow:0 0 10px var(--phosphor-green-glow);overflow-x:auto}.responsive-header{display:none;font-family:VT323,monospace;color:var(--phosphor-green);text-align:center;margin-bottom:30px;text-shadow:0 0 10px var(--phosphor-green-glow)}.responsive-header .company-name{font-size:clamp(24px,6vw,48px);letter-spacing:2px;display:block;margin-bottom:5px}.responsive-header .company-subtitle{font-size:clamp(14px,3vw,20px);color:var(--phosphor-green-dim);letter-spacing:4px}.mobile-header{display:none;font-family:VT323,monospace;font-size:32px;color:var(--phosphor-green);text-align:center;margin-bottom:20px;text-shadow:0 0 10px var(--phosphor-green-glow)}.terminal-window{background:var(--terminal-dark);border:1px solid var(--phosphor-green-dim);border-radius:4px;margin-bottom:20px;box-shadow:0 0 20px var(--phosphor-green-glow),inset 0 0 60px #00ff4105}.terminal-header{background:linear-gradient(180deg,#1a1a1a,#0d0d0d);padding:8px 15px;border-bottom:1px solid var(--phosphor-green-dim);display:flex;align-items:center;gap:8px}.terminal-btn{width:12px;height:12px;border-radius:50%;border:none}.terminal-btn.close{background:#ff5f57}.terminal-btn.min{background:#ffbd2e}.terminal-btn.max{background:#28ca41}.terminal-title{flex:1;text-align:center;font-size:12px;color:var(--phosphor-green-dim);font-family:Fira Code,monospace}.terminal-body{padding:20px;min-height:200px}.prompt-line{display:flex;align-items:flex-start;margin-bottom:10px;flex-wrap:wrap}.prompt-user{color:var(--phosphor-green)}.prompt-at{color:var(--phosphor-green-dim)}.prompt-host{color:var(--phosphor-amber)}.prompt-path{color:#0af}.prompt-symbol{color:var(--phosphor-green);margin-left:5px}.cursor{display:inline-block;width:10px;height:18px;background:var(--phosphor-green);animation:blink 1s step-end infinite;vertical-align:middle;margin-left:2px}@keyframes blink{50%{opacity:0}}.nav-terminal{margin-bottom:30px}.nav-commands{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px}.nav-link{color:var(--phosphor-green);text-decoration:none;padding:8px 15px;border:1px solid var(--phosphor-amber-dim);background:transparent;font-family:Fira Code,monospace;font-size:14px;transition:all .2s ease;position:relative;overflow:hidden}.nav-link:before{content:"> ";color:var(--phosphor-amber)}.nav-link:hover,.nav-link:focus:not(:focus-visible){background:var(--phosphor-amber);color:var(--terminal-black);border-color:var(--phosphor-amber);box-shadow:0 0 20px var(--phosphor-amber-glow);text-shadow:none}.nav-link:hover:before,.nav-link:focus:before{color:var(--terminal-black)}.nav-link.active{background:var(--phosphor-amber-dim);color:var(--terminal-black);border-color:var(--phosphor-amber)}.nav-link.active:before{color:var(--terminal-black)}.nav-link.external-link:after,.project-link.external-link:after{content:"";display:inline-block;width:12px;height:12px;margin-left:6px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300ff41' stroke-width='2'%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'/%3E%3Cpolyline points='15,3 21,3 21,9'/%3E%3Cline x1='10' y1='14' x2='21' y2='3'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;vertical-align:middle}.nav-link.external-link:hover:after,.nav-link.external-link:focus:after,.project-link.external-link:hover:after,.project-link.external-link:focus:after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a0a0a' stroke-width='2'%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'/%3E%3Cpolyline points='15,3 21,3 21,9'/%3E%3Cline x1='10' y1='14' x2='21' y2='3'/%3E%3C/svg%3E")}.section-header{font-family:VT323,monospace;font-size:24px;color:var(--phosphor-amber);margin-bottom:20px;text-shadow:0 0 10px var(--phosphor-amber-glow);border-bottom:1px dashed var(--phosphor-amber-dim);padding-bottom:10px}.section-header:before{content:"## ";color:var(--phosphor-green)}.terminal-text{font-size:14px;line-height:1.8;color:var(--phosphor-green)}.terminal-text p{margin-bottom:15px}.highlight{color:var(--phosphor-amber);text-shadow:0 0 5px var(--phosphor-amber-glow)}.comment{color:#666;font-style:italic}.project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-top:20px}.project-card{border:1px solid var(--phosphor-green-dim);background:#00ff4105;padding:0;transition:all .3s ease;position:relative}.project-card:hover{border-color:var(--phosphor-green);box-shadow:0 0 30px var(--phosphor-green-glow)}.project-card-header{background:linear-gradient(180deg,rgba(0,255,65,.1) 0%,transparent 100%);padding:15px;border-bottom:1px solid var(--phosphor-green-dim)}.project-name{font-family:VT323,monospace;font-size:28px;color:var(--phosphor-amber);text-shadow:0 0 10px var(--phosphor-amber-glow);margin-bottom:5px}.project-tagline{font-size:12px;color:var(--phosphor-green-dim);font-style:italic}.project-card-body{padding:15px}.project-description{font-size:13px;line-height:1.6;margin-bottom:15px;color:var(--phosphor-green)}.project-features{list-style:none;margin-bottom:15px}.project-features li{font-size:12px;padding:5px 0 5px 20px;position:relative;color:var(--phosphor-green-dim)}.project-features li:before{content:">";position:absolute;left:0;color:var(--phosphor-amber)}.project-link{display:inline-block;color:var(--phosphor-green);text-decoration:none;font-size:13px;padding:8px 15px;border:1px solid var(--phosphor-amber);transition:all .2s ease}.project-link:hover,.project-link:focus:not(:focus-visible){background:var(--phosphor-amber);color:var(--terminal-black);box-shadow:0 0 15px var(--phosphor-amber-glow)}.project-link:before{content:"$ ";color:var(--phosphor-amber)}.project-link:hover:before,.project-link:focus:before{color:var(--terminal-black)}.status-line{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px dotted var(--phosphor-green-dim);margin-top:10px;font-size:12px}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--phosphor-green);animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1;box-shadow:0 0 5px var(--phosphor-green)}50%{opacity:.5;box-shadow:0 0 15px var(--phosphor-green)}}.status-text{color:var(--phosphor-green-dim)}.contact-form{max-width:600px}.form-group{margin-bottom:20px}.form-label{display:block;margin-bottom:8px;color:var(--phosphor-amber);font-size:14px}.form-label:before{content:"> ";color:var(--phosphor-green)}.form-input,.form-textarea{width:100%;background:var(--terminal-black);border:1px solid var(--phosphor-green-dim);color:var(--phosphor-green);font-family:Fira Code,monospace;font-size:14px;padding:12px;transition:all .2s ease}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--phosphor-amber);box-shadow:0 0 10px var(--phosphor-amber-glow)}.form-input::placeholder,.form-textarea::placeholder{color:#666}.form-textarea{min-height:150px;resize:vertical}.form-submit{background:transparent;border:2px solid var(--phosphor-amber);color:var(--phosphor-amber);font-family:Fira Code,monospace;font-size:16px;padding:12px 30px;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:2px}.form-submit:hover,.form-submit:focus:not(:focus-visible){background:var(--phosphor-amber);color:var(--terminal-black);box-shadow:0 0 20px var(--phosphor-amber-glow)}.form-submit:before{content:"$ "}.info-block{background:#00ff4108;border-left:3px solid var(--phosphor-amber);padding:15px;margin:20px 0;font-size:13px}.info-block dt{color:var(--phosphor-amber);font-weight:400;display:inline}.info-block dt:before{content:":: ";color:var(--phosphor-green-dim)}.info-block dd{display:inline;color:var(--phosphor-green);margin-left:10px}.info-block dd:after{content:"";display:block;margin-bottom:8px}.glitch{position:relative}.glitch:before,.glitch:after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%}.glitch:before{animation:glitch-1 2s infinite linear alternate-reverse;color:#f0f;z-index:-1}.glitch:after{animation:glitch-2 3s infinite linear alternate-reverse;color:#0ff;z-index:-2}@keyframes glitch-1{0%,to{clip-path:inset(0 0 95% 0);transform:translate(-2px)}20%{clip-path:inset(30% 0 60% 0);transform:translate(2px)}40%{clip-path:inset(70% 0 20% 0);transform:translate(-2px)}60%{clip-path:inset(10% 0 80% 0);transform:translate(2px)}80%{clip-path:inset(50% 0 40% 0);transform:translate(-2px)}}@keyframes glitch-2{0%,to{clip-path:inset(95% 0 0 0);transform:translate(2px)}20%{clip-path:inset(60% 0 30% 0);transform:translate(-2px)}40%{clip-path:inset(20% 0 70% 0);transform:translate(2px)}60%{clip-path:inset(80% 0 10% 0);transform:translate(-2px)}80%{clip-path:inset(40% 0 50% 0);transform:translate(2px)}}.grid-bg{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;opacity:.03;overflow:hidden;background-image:radial-gradient(circle at center,var(--phosphor-green) 1px,transparent 1px);background-size:30px 30px}.grid-bg:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle at 20% 30%,var(--phosphor-green) 1px,transparent 1px),radial-gradient(circle at 70% 60%,var(--phosphor-green) 1px,transparent 1px),radial-gradient(circle at 40% 80%,var(--phosphor-green) 1px,transparent 1px);background-size:100% 100%;animation:dot-flicker 4s ease-in-out infinite}@keyframes dot-flicker{0%,to{opacity:0}10%,12%{opacity:.5}20%,22%{opacity:0}50%,52%{opacity:.3}70%,72%{opacity:0}85%,87%{opacity:.4}}.data-viz{font-family:VT323,monospace;font-size:10px;color:var(--phosphor-green-dim);line-height:1;margin:20px 0;opacity:.75}.terminal-footer{margin-top:40px;padding-top:20px;border-top:1px solid var(--phosphor-green-dim);text-align:center;font-size:12px;color:var(--phosphor-green-dim)}.terminal-footer a{color:var(--phosphor-amber);text-decoration:none}.terminal-footer a:hover,.terminal-footer a:focus:not(:focus-visible){text-decoration:underline}.boot-sequence{animation:fadeIn .5s ease forwards}.boot-sequence>*{opacity:0;animation:bootLine .3s ease forwards}.boot-sequence>*:nth-child(1){animation-delay:.1s}.boot-sequence>*:nth-child(2){animation-delay:.2s}.boot-sequence>*:nth-child(3){animation-delay:.3s}.boot-sequence>*:nth-child(4){animation-delay:.4s}.boot-sequence>*:nth-child(5){animation-delay:.5s}@keyframes bootLine{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animation-toggle{position:fixed;bottom:20px;right:20px;background:var(--terminal-dark);border:1px solid var(--phosphor-amber);color:var(--phosphor-amber);font-family:Fira Code,monospace;font-size:11px;padding:8px 12px;cursor:pointer;z-index:10000;transition:all .2s ease}.animation-toggle:hover,.animation-toggle:focus:not(:focus-visible){background:var(--phosphor-amber);color:var(--terminal-black)}body.animations-disabled .grid-bg,body.animations-disabled .grid-bg:before{animation:none;display:none}body.animations-disabled .cursor{animation:none;opacity:1}body.animations-disabled .status-dot{animation:none}body.animations-disabled .glitch:before,body.animations-disabled .glitch:after{display:none}body.animations-disabled .boot-sequence>*{animation:none;opacity:1}@media(max-width:1000px){.ascii-header{display:none}.responsive-header{display:block}}@media(max-width:768px){.terminal-container{padding:10px}.terminal-body{padding:15px}.nav-commands{flex-direction:column}.nav-link{text-align:center}.project-grid{grid-template-columns:1fr}.prompt-line{font-size:12px}.section-header{font-size:20px}.terminal-text{font-size:13px}.glitch:before,.glitch:after{display:none}}@media(max-width:480px){.mobile-header{display:block}.responsive-header{display:none}.terminal-header{padding:6px 10px}.terminal-btn{width:10px;height:10px}.animation-toggle{font-size:10px;padding:6px 10px}}@media(min-width:481px)and (max-width:1000px){.mobile-header{display:none}}@media(min-width:1001px){.mobile-header,.responsive-header{display:none}}::selection{background:var(--phosphor-amber);color:var(--terminal-black)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--terminal-black)}::-webkit-scrollbar-thumb{background:var(--phosphor-amber-dim);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--phosphor-amber)}*:focus-visible{outline:2px solid var(--phosphor-amber);outline-offset:2px}
