:root{--bg: #000000;--fg: #00ff41;--muted: #22c55e;--brand: #00ff41;--card: #0a0a0a}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;color:var(--fg);background:var(--bg)}.bg-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:-1;opacity:.32;pointer-events:none}.container{min-height:100%;display:flex;flex-direction:column;max-width:820px;margin:0 auto;padding:64px 20px}header{text-align:center;margin-bottom:28px}.headline{font-size:40px;letter-spacing:-.02em;margin:0 0 6px}.greeting{color:var(--fg);text-shadow:0 0 8px rgba(0,255,65,.6),0 0 18px rgba(0,255,65,.5),0 0 32px rgba(0,255,65,.35)}.caret{display:inline-block;width:10px;margin-left:4px;color:var(--fg);text-shadow:0 0 10px rgba(0,255,65,.5);animation:blink 1.1s steps(1,start) infinite}.subtitle{color:var(--muted);margin:0}.section{margin:28px 0}.fade-in{opacity:0;transform:translateY(6px);animation:fadeInUp .5s ease forwards}@keyframes fadeInUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}.intro{font-size:18px;line-height:1.7;color:var(--fg);text-align:left;max-width:70ch;margin:0 auto;position:relative;min-height:5.1em}.intro .reserve{visibility:hidden;white-space:pre-wrap}.intro .typewriter-overlay{position:absolute;inset:0}.type-caret{display:inline-block;margin-left:2px;color:var(--fg);text-shadow:0 0 8px rgba(0,255,65,.6);animation:caretBlink 1s steps(1,start) infinite}@keyframes caretBlink{0%,49%{opacity:1}50%,to{opacity:0}}.links{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;padding:0;margin:0;list-style:none}.link-button{display:inline-flex;align-items:center;padding:12px 16px;border-radius:10px;background:linear-gradient(180deg,#0f0f0f,#0a0a0a);color:var(--fg);border:1px solid rgba(0,255,65,.35);text-decoration:none;box-shadow:0 6px #00ff4140,0 0 12px #00ff4147,0 0 24px #00ff412e;transition:transform .12s ease,background .12s ease,border-color .12s ease,box-shadow .12s ease,filter .12s ease;position:relative;overflow:hidden;will-change:transform,box-shadow,filter}.link-button svg{width:16px;height:16px;filter:drop-shadow(0 0 6px rgba(0,255,65,.25))}.link-button:hover{background:linear-gradient(180deg,#131313,#0c0c0c);border-color:#00ff4199;box-shadow:0 10px #00ff4147,0 0 22px #00ff4180,0 0 40px #00ff4159;transform:translateY(-3px)}.link-button:active{transform:translateY(2px);box-shadow:0 3px #00ff4140,0 0 8px #00ff4140;filter:brightness(.98)}.link-button:focus-visible{outline:none;box-shadow:0 6px #00ff4140,0 0 0 2px #000,0 0 0 4px #00ff4173}.link-button:after{content:"";position:absolute;left:50%;top:50%;width:8px;height:8px;background:radial-gradient(circle,#00ff4140,#00ff4100 70%);border-radius:50%;transform:translate(-50%,-50%) scale(0);opacity:0;pointer-events:none}.link-button:active:after{opacity:1;transform:translate(-50%,-50%) scale(12);transition:transform .4s ease,opacity .45s ease}.section-title{font-size:16px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin:0 0 12px;text-align:center}.skills{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;padding:0;margin:0;list-style:none}.skill-chip{padding:12px 14px;background:linear-gradient(180deg,#0f0f0f,#0a0a0a);border:2px solid rgba(0,255,65,.5);border-radius:12px;font-size:14px;color:var(--fg);box-shadow:0 3px #00ff4133,0 0 12px #00ff4147,0 0 22px #00ff4133}.skill-chip:hover{box-shadow:0 4px #00ff4138,0 0 20px #00ff4180,0 0 40px #00ff4159}.skills.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.icon-chip{display:inline-flex;align-items:center;gap:8px;padding:10px 12px}.icon-chip svg{width:18px;height:18px;filter:drop-shadow(0 0 6px rgba(0,255,65,.25))}.footer{margin-top:auto;padding-top:36px;text-align:center;color:var(--muted)}.floating-scroll{position:fixed;right:16px;bottom:16px;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid #2a2a2a;background:#111;color:#e5e7eb;cursor:pointer;z-index:50;transition:transform .14s ease,background-color .14s ease,border-color .14s ease}.floating-scroll:hover{transform:translateY(-1px);background:#161616;border-color:#3a3a3a}.floating-scroll:active{transform:translateY(0)}.floating-scroll svg{width:20px;height:20px;color:currentColor}@media (min-width: 769px){.floating-scroll{display:none}}
