@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;600;700&family=IBM+Plex+Mono:wght@400;600&family=Inter:wght@300;400;500;600&display=swap";
:root{--bg-deep:#020817;--bg-card:#0f172a;--bg-elevated:#1e293b;--border:#1e293b;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-muted:#475569;--text-dim:#334155;--accent-blue:#0ea5e9;--accent-purple:#7c3aed;--accent-indigo:#6366f1;--accent-red:#dc2626;--accent-green:#22c55e;--accent-amber:#f59e0b}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg-deep);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,sans-serif}textarea:focus{outline:none}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:var(--bg-card)}::-webkit-scrollbar-thumb{background:var(--bg-elevated);border-radius:3px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:.8s linear infinite spin}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}.fadeIn{animation:.4s forwards fadeIn}.skill-btn{cursor:pointer;transition:all .15s}.skill-btn:hover{filter:brightness(1.15);transform:translateY(-1px)}::selection{color:var(--text-primary);background:#7c3aed4d}
