@charset "UTF-8";.boot-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0a0a0a;z-index:10000;display:flex;align-items:center;justify-content:center}.boot-terminal{width:600px;max-width:90vw;background:#0f172a;border:1px solid rgba(16,185,129,.3);border-radius:8px;overflow:hidden;box-shadow:0 0 40px #10b9811a,0 20px 60px #00000080}.boot-header{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#10b9810d;border-bottom:1px solid rgba(16,185,129,.1)}.boot-dot{width:12px;height:12px;border-radius:50%}.boot-dot.red{background:#ff5f56}.boot-dot.yellow{background:#ffbd2e}.boot-dot.green{background:#27c93f}.boot-title{margin-left:12px;font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted)}.boot-content{padding:20px;height:300px;overflow-y:auto;font-family:var(--font-mono);font-size:.875rem;line-height:1.6}.boot-line{margin-bottom:4px}.boot-line.boot-info{color:var(--text-dim)}.boot-line.boot-success{color:#00ff41}.boot-line.boot-warning{color:#ffb000}.boot-line.boot-error{color:#ff5f56}.boot-cursor{padding:0 20px 20px}.boot-cursor .cursor-block{font-family:var(--font-mono);font-size:.875rem;color:#00ff41;animation:blink 1s step-end infinite}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.typing-cursor{display:inline-block;font-family:var(--font-mono);color:var(--accent);margin-left:2px}.terminal-prompt{color:#00ff41;font-family:var(--font-mono);font-weight:600}.terminal-command{color:var(--text);font-family:var(--font-mono)}.terminal-output{color:var(--text-dim);font-family:var(--font-mono);margin:8px 0;padding-left:16px}.hero-secret-terminal{position:absolute;bottom:100px;right:60px;width:280px;background:#0f172ae6;border:1px solid rgba(16,185,129,.2);border-radius:6px;padding:12px;backdrop-filter:blur(10px)}@media (max-width: 1024px){.hero-secret-terminal{display:none}}.secret-terminal-header{font-family:var(--font-mono);font-size:.65rem;color:var(--text-muted);margin-bottom:8px;text-transform:uppercase;letter-spacing:.1em}.secret-input-line{display:flex;align-items:center;gap:8px;margin-bottom:8px}.secret-prompt{color:#00ff41;font-family:var(--font-mono);font-size:.8rem;font-weight:600}.secret-input{flex:1;background:transparent;border:none;border-bottom:1px solid rgba(16,185,129,.3);color:var(--text);font-family:var(--font-mono);font-size:.8rem;padding:4px 0;outline:none}.secret-input:focus{border-bottom-color:var(--accent)}.secret-input::placeholder{color:var(--text-muted);font-size:.7rem}.secret-output{max-height:150px;overflow-y:auto;font-family:var(--font-mono);font-size:.75rem;line-height:1.5}.secret-cmd-line{color:var(--text-dim);margin-bottom:4px}.secret-response{color:#00d4ff;margin-bottom:8px}.secret-response pre{margin:0;font-size:.6rem;line-height:1.3;color:var(--accent)}.secret-error{color:#ff5f56}.terminal-window{background:#0f172a99;border:1px solid rgba(16,185,129,.2);border-radius:8px;overflow:hidden;backdrop-filter:blur(10px)}.terminal-window .terminal-header{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#10b9810d;border-bottom:1px solid rgba(16,185,129,.1)}.terminal-window .terminal-header .terminal-btn{width:10px;height:10px;border-radius:50%}.terminal-window .terminal-header .terminal-btn.close{background:#ff5f56}.terminal-window .terminal-header .terminal-btn.minimize{background:#ffbd2e}.terminal-window .terminal-header .terminal-btn.maximize{background:#27c93f}.terminal-window .terminal-header .terminal-title{margin-left:8px;font-family:var(--font-mono);font-size:.7rem;color:var(--text-muted)}.terminal-window .terminal-body{padding:16px;font-family:var(--font-mono);font-size:.85rem;line-height:1.6;color:var(--text-dim)}.btn-terminal{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:transparent;border:1px solid rgba(16,185,129,.4);border-radius:6px;color:var(--accent);font-family:var(--font-mono);font-size:.85rem;text-decoration:none;transition:all .3s ease;cursor:pointer}.btn-terminal:hover{background:#10b9811a;border-color:var(--accent);box-shadow:0 0 20px #10b98133;transform:translateY(-2px)}.scan-lines{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999;opacity:.03;background:repeating-linear-gradient(0deg,rgba(0,0,0,.1),rgba(0,0,0,.1) 1px,transparent 1px,transparent 2px)}@keyframes glitch{0%{transform:translate(0);text-shadow:-2px 0 #ff00c1,2px 0 #00fff9}25%{transform:translate(-2px,2px);text-shadow:2px 0 #ff00c1,-2px 0 #00fff9}50%{transform:translate(2px,-2px);text-shadow:-2px 0 #ff00c1,2px 0 #00fff9}75%{transform:translate(-2px,-2px);text-shadow:2px 0 #ff00c1,-2px 0 #00fff9}to{transform:translate(0);text-shadow:-2px 0 #ff00c1,2px 0 #00fff9}}.glitch-text:hover{animation:glitch .3s cubic-bezier(.25,.46,.45,.94) both infinite}.terminal-progress{display:flex;align-items:center;gap:12px;font-family:var(--font-mono);font-size:.8rem;color:var(--text-dim)}.terminal-progress .progress-bar{width:200px;height:8px;background:#10b9811a;border-radius:4px;overflow:hidden}.terminal-progress .progress-bar .progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),#00d4ff);width:0%;transition:width .5s ease;position:relative}.terminal-progress .progress-bar .progress-fill:after{content:"";position:absolute;top:0;right:0;bottom:0;width:20px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3));animation:shimmer 1.5s infinite}@keyframes shimmer{0%{transform:translate(-20px)}to{transform:translate(20px)}}.hero-terminal-window{background:#0f172acc;border:1px solid rgba(16,185,129,.3);border-radius:8px;padding:0;max-width:400px;box-shadow:0 0 30px #10b9811a}.hero-terminal-window .terminal-body{padding:20px 24px;font-family:var(--font-mono);font-size:.85rem;color:var(--text-dim)}.hero-terminal-window .terminal-body p{margin:0 0 10px}.hero-terminal-window .terminal-body p:last-child{margin-bottom:0}.hero-terminal-window .terminal-body p.active{color:var(--terminal-green)}.success-text{color:var(--terminal-green);font-weight:600}.btn-terminal{display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 28px;background:transparent;border:1px solid rgba(16,185,129,.4);border-radius:6px;text-decoration:none;transition:all .3s ease;cursor:pointer}.btn-terminal .btn-prompt{font-family:var(--font-mono);font-size:.7rem;color:var(--text-muted);letter-spacing:.05em}.btn-terminal .btn-command{font-family:var(--font-mono);font-size:.9rem;color:var(--accent);font-weight:500}.btn-terminal:hover{background:#10b9811a;border-color:var(--accent);box-shadow:0 0 25px #10b98133;transform:translateY(-2px)}.btn-terminal:hover .btn-command{color:var(--terminal-green)}.scroll-text{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.1em;color:var(--text-muted)}.terminal-cmd{font-family:var(--font-mono);color:var(--terminal-green);font-size:.9rem;margin-bottom:24px}.about-terminal{margin-bottom:32px;max-width:800px}.about-terminal .about-terminal-body p{margin-bottom:16px;line-height:1.7}.about-terminal .about-terminal-body p:last-of-type{margin-bottom:24px}.about-terminal .about-terminal-body .terminal-highlight{color:var(--terminal-cyan);font-weight:600}.terminal-meta{display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:.8rem;color:var(--text-dim);margin-bottom:8px}.terminal-meta .meta-icon{font-size:1rem}.terminal-meta .meta-text.status-online{color:var(--terminal-green)}.terminal-meta .meta-text.status-online:before{content:"● ";animation:pulse 2s infinite}.terminal-divider{font-family:var(--font-mono);font-size:.8rem;color:var(--text-dim);margin:12px 0;opacity:.6}.terminal-credentials{font-family:var(--font-mono);margin-top:8px}.terminal-credentials .terminal-cmd-line{color:var(--terminal-green);font-size:.85rem;margin-bottom:8px}.terminal-credentials .terminal-credential{color:var(--text-muted);font-size:.8rem;line-height:1.6}.terminal-credentials .terminal-credential:first-of-type{color:var(--terminal-cyan)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.projects-terminal{max-width:1000px;margin:0 auto}.projects-filter{display:flex;align-items:center;gap:12px;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid rgba(16,185,129,.1)}.projects-filter .filter-prompt{font-family:var(--font-mono);color:var(--terminal-green);font-size:.9rem;font-weight:600}.projects-filter .filter-input{flex:1;background:transparent;border:none;border-bottom:1px solid rgba(16,185,129,.3);color:var(--text);font-family:var(--font-mono);font-size:.9rem;padding:4px 0;outline:none}.projects-filter .filter-input::placeholder{color:var(--text-muted)}.projects-filter .filter-input:focus{border-bottom-color:var(--accent)}.terminal-project{background:#0f172a80;border:1px solid rgba(16,185,129,.15);border-radius:8px;padding:20px;transition:all .3s ease}.terminal-project:hover{border-color:var(--accent);box-shadow:0 4px 20px #10b9811a;transform:translateY(-4px)}.terminal-project:hover .project-readme-hint{opacity:1}.terminal-project .project-card-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.terminal-project .project-file-icon{font-size:1.5rem;opacity:.8}.terminal-project .project-info{flex:1}.terminal-project .project-name{font-family:var(--font-mono);font-size:1.1rem;font-weight:600;color:var(--text);margin-bottom:2px}.terminal-project .project-path{font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted)}.terminal-project .github-link{color:var(--text-muted);transition:color .2s}.terminal-project .github-link:hover{color:var(--accent)}.terminal-project .github-link svg{width:20px;height:20px}.terminal-project .project-meta{display:flex;gap:16px;font-family:var(--font-mono);font-size:.7rem;color:var(--text-muted);margin-bottom:12px}.terminal-project .project-meta .project-permissions{color:var(--terminal-cyan)}.terminal-project .project-desc{color:var(--text-dim);font-size:.9rem;line-height:1.6;margin-bottom:16px}.terminal-project .project-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.terminal-project .project-tags .tag{font-family:var(--font-mono);font-size:.7rem;padding:4px 10px;background:#10b9811a;border:1px solid rgba(16,185,129,.2);border-radius:4px;color:var(--accent)}.terminal-project .project-readme-hint{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted);opacity:.5;transition:opacity .3s}.terminal-project .project-readme-hint .readme-icon{font-size:.9rem}.skills-terminal{max-width:900px;margin:0 auto}.install-progress{display:flex;align-items:center;gap:16px;margin-bottom:24px;padding:16px;background:#10b9810d;border-radius:6px;font-family:var(--font-mono);font-size:.85rem}.install-progress .install-status{color:var(--text-dim);white-space:nowrap}.install-progress .progress-bar{flex:1;height:6px;background:#10b9811a;border-radius:3px;overflow:hidden}.install-progress .progress-bar .progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--terminal-cyan));width:0%;transition:width 1.5s ease}.install-progress .install-percent{color:var(--terminal-green);font-weight:600}.install-success{display:flex;align-items:center;gap:8px;margin-top:24px;padding:12px 16px;background:#00ff411a;border:1px solid rgba(0,255,65,.2);border-radius:6px;font-family:var(--font-mono);font-size:.85rem;color:var(--terminal-green)}.install-success .success-icon{font-weight:600}.skill-package{background:#0f172a80;border:1px solid rgba(16,185,129,.15);border-radius:8px;padding:20px;transition:all .3s ease}.skill-package:hover{border-color:var(--accent);box-shadow:0 4px 20px #10b9811a}.skill-package .package-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-family:var(--font-mono);font-size:.85rem}.skill-package .package-header .package-manager{color:var(--terminal-amber);font-weight:600}.skill-package .package-header .package-name{color:var(--text-dim)}.skill-package .package-progress{display:flex;align-items:center;gap:12px;margin-bottom:16px;font-family:var(--font-mono);font-size:.7rem}.skill-package .package-progress .package-status{color:var(--text-muted);white-space:nowrap}.skill-package .package-progress .package-bar{flex:1;height:4px;background:#10b9811a;border-radius:2px;overflow:hidden}.skill-package .package-progress .package-bar .package-fill{height:100%;background:var(--accent);width:0%;transition:width .8s ease}.skill-package .package-skills{display:flex;flex-wrap:wrap;gap:8px}.skill-package .skill-package-item{display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:.75rem;padding:6px 12px;background:#10b98114;border:1px solid rgba(16,185,129,.15);border-radius:4px;color:var(--text-dim);animation:fadeInUp .3s ease forwards;opacity:0;transform:translateY(10px)}.skill-package .skill-package-item .skill-check{color:var(--terminal-green);font-size:.7rem}.skill-package .skill-package-item .skill-name{color:var(--text)}.skill-package .package-success{margin-top:12px;font-family:var(--font-mono);font-size:.7rem;color:var(--terminal-green);opacity:0;animation:fadeIn .5s ease 1s forwards}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{to{opacity:1}}.terminal-file{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#0f172a99;border:1px solid rgba(16,185,129,.2);transition:all .3s ease}.terminal-file:hover{border-color:var(--accent);box-shadow:0 0 20px #10b98126;transform:translateY(-4px)}.terminal-file .file-icon{font-size:2rem;margin-bottom:12px;opacity:.8}.terminal-file .stat-number{font-family:var(--font-mono);font-size:2.5rem;font-weight:700;color:var(--accent);margin-bottom:4px}.terminal-file .stat-number.glitch-number{position:relative}.terminal-file .stat-number.glitch-number:after{content:"%";font-size:1.5rem;margin-left:2px}.terminal-file .stat-label{font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted);font-weight:600}.terminal-file .stat-sublabel{font-family:var(--font-mono);font-size:.65rem;color:var(--text-dim);margin-top:4px}.system-navbar{background:#0f172ae6!important;border-bottom:1px solid rgba(16,185,129,.2)!important;font-family:var(--font-mono)!important}.system-navbar .nav-status{display:flex;align-items:center;gap:10px}.system-navbar .nav-status .status-indicator{width:8px;height:8px;border-radius:50%}.system-navbar .nav-status .status-indicator.online{background:var(--terminal-green);box-shadow:0 0 8px var(--terminal-green);animation:pulse 2s infinite}.system-navbar .nav-status .nav-path{font-size:.8rem;color:var(--terminal-cyan);font-weight:500}.system-navbar .terminal-nav{display:flex;gap:24px;list-style:none}.system-navbar .terminal-nav a{font-family:var(--font-mono);font-size:.75rem;color:var(--text-dim);text-decoration:none;text-transform:lowercase;transition:color .2s;position:relative}.system-navbar .terminal-nav a:hover{color:var(--accent)}.system-navbar .terminal-nav a:before{content:"./";opacity:.5}.system-navbar .nav-right{display:flex;align-items:center;gap:20px}.system-navbar .nav-right .terminal-resume{display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:.75rem;color:var(--text-dim);text-decoration:none;transition:color .2s}.system-navbar .nav-right .terminal-resume:hover{color:var(--accent)}.system-navbar .nav-right .terminal-resume .resume-icon{font-size:.9rem}.system-navbar .nav-right .nav-clock{font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted);min-width:70px;text-align:right}.contact-terminal{max-width:700px;margin:0 auto}.contact-terminal-body .contact-header{margin-bottom:32px}.contact-terminal-body .contact-header .contact-headline{font-size:1.75rem;font-weight:600;margin-bottom:12px;color:var(--text)}.contact-terminal-body .contact-header .contact-headline em{color:var(--terminal-cyan);font-style:normal}.contact-terminal-body .contact-header .contact-sub{color:var(--text-dim);line-height:1.7}.terminal-form .form-group{margin-bottom:24px}.terminal-form .terminal-label{display:block;font-family:var(--font-mono);font-size:.8rem;color:var(--terminal-green);margin-bottom:8px}.terminal-form .terminal-label .terminal-prompt{margin-right:8px}.terminal-form .terminal-input{width:100%;background:#0f172a99;border:1px solid rgba(16,185,129,.2);border-radius:6px;padding:12px 16px;color:var(--text);font-family:var(--font-mono);font-size:.9rem;outline:none;transition:all .3s}.terminal-form .terminal-input::placeholder{color:var(--text-muted)}.terminal-form .terminal-input:focus{border-color:var(--accent);box-shadow:0 0 15px #10b9811a}.terminal-form textarea.terminal-input{min-height:120px;resize:vertical}.terminal-form .terminal-btn-submit{display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 28px;background:transparent;border:1px solid rgba(16,185,129,.4);border-radius:6px;cursor:pointer;transition:all .3s}.terminal-form .terminal-btn-submit .btn-prompt{font-family:var(--font-mono);font-size:.7rem;color:var(--text-muted)}.terminal-form .terminal-btn-submit .btn-command{font-family:var(--font-mono);font-size:.9rem;color:var(--accent);font-weight:500}.terminal-form .terminal-btn-submit:hover{background:#10b9811a;border-color:var(--accent);box-shadow:0 0 25px #10b98133}.terminal-form .terminal-btn-submit:hover .btn-command{color:var(--terminal-green)}:root{--bg: #0f172a;--bg-2: #1e293b;--bg-card: #1e293b;--bg-card-hover: #334155;--accent: #10b981;--accent-dim: rgba(16,185,129,.15);--accent-glow: rgba(16,185,129,.08);--accent-border: rgba(16,185,129,.25);--text: #f8fafc;--text-dim: #cbd5e1;--text-muted: #94a3b8;--border: rgba(255,255,255,.06);--font-mono: "JetBrains Mono", monospace;--font-heading: "Instrument Serif", serif;--font-body: "Plus Jakarta Sans", sans-serif;--terminal-green: #00ff41;--terminal-cyan: #00d4ff;--terminal-amber: #ffb000;--terminal-red: #ff5f56;--terminal-yellow: #ffbd2e}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-body);min-height:100vh;overflow-x:hidden;cursor:default}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--accent-border);border-radius:2px}::selection{background:var(--accent-dim);color:var(--accent)}#bg-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.4}nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:20px 60px;background:#0a0a0ad9;backdrop-filter:blur(20px);border-bottom:1px solid var(--border);transition:padding .3s}nav.scrolled{padding:14px 60px}.nav-logo{font-family:var(--font-mono);font-weight:800;font-size:1.2rem;color:var(--accent);letter-spacing:-.05em;text-decoration:none}.nav-links{display:flex;gap:36px;list-style:none}.nav-links a{font-family:var(--font-mono);font-size:.75rem;text-decoration:none;color:var(--text-dim);letter-spacing:.08em;text-transform:uppercase;transition:color .2s;position:relative}.nav-links a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--accent);transition:width .3s}.nav-links a:hover{color:var(--accent)}.nav-links a:hover:after{width:100%}.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px}.hamburger span{width:22px;height:1px;background:var(--text-dim);transition:all .3s}section{position:relative;z-index:1}#hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:80px 60px 0}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.hero-name{font-family:var(--font-heading);font-weight:400;font-weight:800;font-size:clamp(2.8rem,7vw,5.5rem);color:var(--text);line-height:1.05;letter-spacing:-.03em;opacity:0;transform:translateY(30px);animation:fadeUp .8s .3s forwards}.hero-tagline{font-family:var(--font-mono);font-size:clamp(1rem,2vw,1.35rem);color:var(--accent);margin-top:16px;opacity:0;transform:translateY(20px);animation:fadeUp .8s .5s forwards}.hero-sub{font-family:var(--font-body);font-size:1rem;color:var(--text-dim);margin-top:16px;max-width:520px;line-height:1.7;opacity:0;transform:translateY(20px);animation:fadeUp .8s .7s forwards}.hero-ctas{display:flex;gap:16px;margin-top:44px;opacity:0;transform:translateY(20px);animation:fadeUp .8s .9s forwards}.hero-scroll{position:absolute;bottom:40px;left:60px;display:flex;align-items:center;gap:12px;font-family:var(--font-mono);font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;opacity:0;animation:fadeUp 1s 1.4s forwards}.hero-scroll-line{width:40px;height:1px;background:var(--text-muted)}@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}.section-label{font-family:var(--font-mono);font-size:.72rem;color:var(--accent);text-transform:lowercase;letter-spacing:.05em;margin-bottom:56px;display:flex;align-items:center;gap:12px}.section-label:before{content:"";width:2px;height:16px;background:var(--accent);display:block}#about{padding:130px 60px;background:var(--bg-2)}.bento-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;align-items:start}.bento-card{background:#1e293b66;backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:36px 40px;transition:all .3s ease;position:relative;overflow:hidden}.bento-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.02) 0%,transparent 100%);pointer-events:none}.bento-card:hover{transform:translateY(-2px);box-shadow:0 8px 32px #0000004d,0 0 0 1px #ffffff1f;border-color:#10b98140}.bento-span-2-col{grid-column:span 2}.bento-span-3-col{grid-column:span 3}.bento-span-2-row{grid-row:span 2}#projects{padding:130px 60px;background:var(--bg)}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}#skills{padding:130px 60px;background:var(--bg-2)}.skills-bento-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}#contact{padding:130px 60px;background:var(--bg)}.contact-socials{display:flex;gap:20px;margin-top:52px;padding-top:36px;border-top:1px solid var(--border)}.social-link{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.7rem;text-decoration:none;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;transition:color .2s}.social-link svg{width:16px;height:16px}.social-link:hover{color:var(--accent)}footer{padding:28px 60px;background:#070707;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1}.footer-text{font-family:var(--font-mono);font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.12em}.footer-text span{color:var(--accent)}.footer-status{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em}.status-dot{width:6px;height:6px;border-radius:50%;background:#0f8;box-shadow:0 0 8px #0f8;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}.mobile-menu{display:none;position:fixed;inset:0;background:#0a0a0af7;z-index:99;flex-direction:column;justify-content:center;align-items:center;gap:36px}.mobile-menu.open{display:flex}.mobile-menu a{font-family:var(--font-mono);font-size:1.4rem;text-decoration:none;color:var(--text-dim);text-transform:uppercase;letter-spacing:.1em;transition:color .2s}.mobile-menu a:hover{color:var(--accent)}.modal-overlay{position:fixed;inset:0;background:#0a0a0ad9;backdrop-filter:blur(16px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:40px;opacity:0;pointer-events:none;transition:opacity .3s ease}.modal-overlay.modal-open{opacity:1;pointer-events:all}.modal-container{background:#1e293bcc;backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:16px;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;position:relative;transform:scale(.95);transition:transform .3s ease;box-shadow:0 20px 60px #00000080}.modal-overlay.modal-open .modal-container{transform:scale(1)}.modal-close{position:absolute;top:20px;right:20px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:var(--text-dim);width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;z-index:10}.modal-close:hover{background:#ffffff1a;color:var(--accent);border-color:var(--accent-border)}.modal-close svg{width:18px;height:18px}.modal-header{padding:32px 40px 24px;border-bottom:1px solid rgba(255,255,255,.06);display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.modal-title-group{flex:1}.modal-title{font-family:var(--font-heading);font-size:1.75rem;font-weight:700;color:var(--text);line-height:1.2;margin:0}.modal-date{font-family:var(--font-mono);font-size:.72rem;color:var(--text-muted);margin-top:8px;letter-spacing:.05em}.modal-links{display:flex;gap:12px}.modal-link-btn{font-family:var(--font-mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);border:1px solid var(--border);padding:10px 20px;text-decoration:none;transition:all .2s ease;background:#ffffff05;border-radius:8px}.modal-link-btn:hover{color:var(--accent);border-color:var(--accent-border);background:var(--accent-glow)}.modal-body{padding:32px 40px}.modal-section{margin-bottom:32px}.modal-section:last-child{margin-bottom:0}.modal-section-title{font-family:var(--font-mono);font-size:.7rem;color:var(--accent);text-transform:uppercase;letter-spacing:.12em;margin-bottom:16px;display:flex;align-items:center;gap:8px}.modal-section-title:before{content:"";width:8px;height:8px;background:var(--accent);border-radius:50%}.modal-problem{font-size:1rem;line-height:1.8;color:var(--text-dim);margin:0}.modal-diagram{background:#0f172a99;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:24px;min-height:200px;display:flex;align-items:center;justify-content:center}.modal-diagram img{max-width:100%;height:auto;border-radius:8px;display:block}.modal-diagram-placeholder{display:flex;flex-direction:column;align-items:center;gap:16px;color:var(--text-muted);border:2px dashed rgba(255,255,255,.1);padding:32px;border-radius:12px;min-width:300px}.modal-diagram-placeholder svg{width:48px;height:48px;opacity:.5}.modal-diagram-placeholder span{font-family:var(--font-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.modal-stack{display:flex;flex-wrap:wrap;gap:10px}.modal-stack-item{font-family:var(--font-mono);font-size:.72rem;color:var(--text);background:#0f172a99;border:1px solid rgba(255,255,255,.08);padding:8px 16px;border-radius:6px;transition:all .2s ease}.modal-stack-item:hover{border-color:var(--accent-border);color:var(--accent);background:var(--accent-glow)}@media (max-width: 900px){nav{padding:18px 28px}nav.scrolled{padding:14px 28px}.nav-links,.terminal-nav,.nav-resume,.terminal-resume,.nav-right{display:none}.hamburger{display:flex}.nav-status .nav-path{display:none}#hero{padding:80px 28px 0}#about,#projects,#skills,#contact{padding:90px 28px}footer{padding:24px 28px}.bento-grid,.skills-bento-grid{grid-template-columns:repeat(2,1fr);gap:20px}.projects-grid{grid-template-columns:1fr}.hero-scroll{left:28px}.contact-socials{flex-wrap:wrap}.modal-overlay{padding:20px}.modal-container{max-height:85vh}.modal-header{flex-direction:column;padding:24px 28px}.modal-body{padding:24px 28px}.modal-links{width:100%;justify-content:flex-start}.bento-span-2-col,.bento-span-3-col{grid-column:span 1}.bento-span-2-row{grid-row:span 1}}@media (max-width: 500px){.hero-ctas{flex-direction:column}.bento-grid,.skills-bento-grid{grid-template-columns:1fr;gap:16px}.bento-card,.terminal-file{padding:24px 28px}.skill-package{padding:16px}.hero-terminal-window{max-width:100%}.terminal-window{border-radius:6px}.terminal-body{padding:12px}.boot-terminal{width:95vw}.boot-content{height:200px;font-size:.75rem}}
