:root {--bg-primary:#0a0a0f;--bg-secondary:#12121a;--bg-terminal:#0d0d14;--bg-card:#14141f;--gold:#d4af37;--gold-dim:rgba(212,175,55,.4);--gold-glow:rgba(212,175,55,.15);--green:#00ff88;--green-dim:rgba(0,255,136,.3);--text-primary:#e8e8e8;--text-secondary:#7a7a8a;--text-dim:#4a4a5a;--border:rgba(255,255,255,.06);--border-glow:rgba(212,175,55,.2)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh}.container{max-width:1100px;margin:0 auto;padding:0 24px}.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 0}.terminal-window{width:100%;max-width:800px;background:var(--bg-terminal);border-radius:12px;border:1px solid var(--border);box-shadow:0 0 0 1px rgba(0,0,0,.5),
        0 25px 50px rgba(0,0,0,.5),
        0 0 100px var(--gold-glow);overflow:hidden;animation:fadeInUp .8s ease-out}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.terminal-header{background:var(--bg-secondary);padding:12px 16px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border)}.terminal-buttons{display:flex;gap:8px}.terminal-buttons span{width:12px;height:12px;border-radius:50%}.btn-close{background:#ff5f57}.btn-min{background:#febc2e}.btn-max{background:#28c840}.terminal-title{flex:1;text-align:center;color:var(--text-secondary);font-size:.85rem;font-family:'SF Mono','Fira Code',monospace}.terminal-body{padding:20px 24px;font-family:'SF Mono','Fira Code','Consolas',monospace;font-size:.85rem;max-height:70vh;overflow-y:auto}.terminal-history{margin-top:16px}.terminal-line{margin-bottom:4px;line-height:1.5;display:block}.terminal-line .output{color:var(--text-secondary);white-space:pre-wrap;font-family:'SF Mono','Fira Code','Consolas',monospace;display:inline;overflow-wrap:break-word;word-break:break-word}.terminal-line .command{color:var(--green);display:inline}.terminal-line .output.bold{font-weight:700;color:#fff}.terminal-line .output.section-title{font-weight:800;color:var(--gold);text-transform:uppercase;letter-spacing:.05em;display:block;margin-top:12px}.skill-badge{background:rgba(255,255,255,.1);color:var(--text-primary);padding:2px 8px;border-radius:4px;margin-right:6px;margin-bottom:6px;display:inline-block;font-size:.8rem;border:1px solid rgba(255,255,255,.1)}.terminal-input-line{display:flex;align-items:center;margin-top:12px;padding-top:12px;border-top:1px dashed var(--border)}.terminal-input{flex:1;background:transparent;border:none;outline:none;color:var(--green);font-family:'SF Mono','Fira Code','Consolas',monospace;font-size:.85rem;caret-color:var(--gold)}.terminal-input:placeholder {color:var(--text-dim)}.send-btn{display:none;background:transparent;border:none;color:var(--green);font-size:1.2rem;padding:0 12px;cursor:pointer;transition:transform .2s ease}.send-btn:active {transform:scale(0.9)}.boot-line{opacity:0;animation:fadeIn .1s ease forwards}.boot-prefix{color:var(--green);margin-right:4px}.cursor-blink{color:var(--gold);animation:blink 1s step-end infinite;margin-left:2px}@keyframes blink{0%,
    100%{opacity:1}50%{opacity:0}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.prompt{color:var(--gold);margin-right:8px;font-weight:700}.command{color:var(--green)}.terminal-link{color:var(--gold);text-decoration:none;border-bottom:1px dashed var(--gold-dim);transition:all .2s ease}.terminal-link:hover {color:#fff;border-bottom-color:var(--gold);text-shadow:0 0 8px var(--gold-dim)}.terminal-output{margin:24px 0;padding:16px 0;border-top:1px dashed var(--border);border-bottom:1px dashed var(--border)}.ascii-logo{color:var(--gold);font-size:.55rem;line-height:1.2;overflow-x:auto;text-align:center;animation:glow 2s ease-in-out infinite alternate}@keyframes glow{from{text-shadow:0 0 5px var(--gold-glow)}to{text-shadow:0 0 20px var(--gold-dim)}}.tagline{text-align:center;color:var(--text-secondary);font-size:.9rem;letter-spacing:.3em;margin-top:16px;font-family:'Inter',sans-serif}.subtitle{text-align:center;color:var(--text-dim);font-size:.85rem;margin-top:8px;font-family:'Inter',sans-serif}.typing .cursor{animation:blink 1s step-end infinite;color:var(--gold)}@keyframes blink{0%,
    100%{opacity:1}50%{opacity:0}}.projects{padding:80px 0}.section-header{display:flex;flex-direction:column;align-items:center;gap:24px;margin-bottom:48px}.projects h2,.tech-stack h2{font-size:1.5rem;font-weight:500;color:var(--text-secondary);font-family:'SF Mono','Fira Code',monospace}.filter-tabs{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.filter-tabs button{background:var(--bg-card);border:1px solid var(--border);color:var(--text-secondary);padding:10px 20px;border-radius:8px;font-size:.875rem;cursor:pointer;transition:all .2s ease;font-family:'Inter',sans-serif}.filter-tabs button:hover {border-color:var(--border-glow);color:var(--text-primary)}.filter-tabs button.active{background:var(--gold);color:#000;border-color:var(--gold);font-weight:600}.project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px}.project-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:24px;transition:all .3s ease;position:relative;overflow:hidden}.project-card:before {content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--green));opacity:0;transition:opacity .3s ease}.project-card:hover {border-color:var(--border-glow);transform:translateY(-4px);box-shadow:0 20px 40px rgba(0,0,0,.3)}.project-card:hover:before {opacity:1}.card-header{margin-bottom:12px}.category-badge{background:var(--gold-glow);color:var(--gold);font-size:.7rem;font-weight:600;padding:4px 10px;border-radius:4px;text-transform:uppercase;letter-spacing:.05em}.project-card h3{font-size:1.1rem;font-weight:600;margin-bottom:10px;color:var(--text-primary)}.project-card p{font-size:.875rem;color:var(--text-secondary);margin-bottom:16px;line-height:1.6}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px}.tag{background:rgba(255,255,255,.05);color:var(--text-dim);font-size:.7rem;font-weight:500;padding:4px 8px;border-radius:4px}.links{display:flex;gap:10px}.btn{padding:10px 18px;border-radius:6px;font-size:.8rem;font-weight:500;text-decoration:none;transition:all .2s ease}.btn-primary{background:var(--gold);color:#000}.btn-primary:hover {background:#e6c547;transform:scale(1.02)}.btn-secondary{background:transparent;color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover {border-color:var(--gold-dim);color:var(--gold)}.tech-stack{padding:60px 0;background:var(--bg-secondary);margin:0 -24px;padding-left:24px;padding-right:24px}.tech-stack h2{text-align:center;margin-bottom:40px}.tech-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;max-width:700px;margin:0 auto}.tech-item{display:flex;align-items:center;gap:8px;background:var(--bg-card);border:1px solid var(--border);padding:10px 16px;border-radius:8px;transition:all .2s ease}.tech-item:hover {border-color:var(--border-glow);transform:translateY(-2px)}.tech-icon{font-size:1.1rem}.tech-name{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.footer{padding:50px 24px;border-top:1px solid var(--border)}.footer-content{display:flex;flex-direction:column;align-items:center;gap:20px}.footer-brand{display:flex;align-items:center;gap:12px;font-weight:500}.footer-logo{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--gold);color:#000;font-weight:700;border-radius:8px}.footer-links{display:flex;gap:32px}.footer-links a{color:var(--text-secondary);text-decoration:none;display:flex;align-items:center;gap:6px;transition:color .2s ease;font-size:.9rem}.footer-links a:hover {color:var(--gold)}.link-icon{font-size:1rem}.footer-meta{text-align:center;color:var(--text-dim);font-size:.8rem}.footer-meta p{margin:4px 0}.copyright{opacity:.6}@media (max-width: 768px){.ascii-logo{font-size:.35rem}.terminal-body{padding:16px}.terminal-line{margin-bottom:16px;line-height:1.6;font-size:.75rem}.terminal-line .command,.terminal-line .output{font-size:.75rem}.cmd-name{font-weight:800;color:var(--gold)}.send-btn{display:block}.project-grid{grid-template-columns:1fr}.filter-tabs{gap:6px}.filter-tabs button{padding:8px 14px;font-size:.8rem}.footer-links{gap:20px}}@media (max-width: 480px){.ascii-logo{display:none}.terminal-output:before {content:'VANGUARD';display:block;font-size:2rem;font-weight:700;color:var(--gold);text-align:center;letter-spacing:.2em}}