/* assets/css/style.css */
:root {
    --bg-body: #121212;
    --bg-card: #1e1e1e;
    --bg-hover: #2d2d2d;
    --bg-nav: #0f0f0f;
    --text-main: #d4d4d4;
    --text-muted: #9e9e9e;
    --text-heading: #ffffff;
    --accent-blue: #3b82f6;
    --accent-purple: #a78bfa;
    --border-color: #333333;
    --shadow-card: 0 8px 24px rgba(0, 0, 0, 0.5);
}

.custom-cursor {
    cursor: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDIiIGhlaWdodD0iNDIiIHZpZXdCb3g9IjAgMCA5NyAxMDciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik05Mi42MjU2IDg4LjM2MjRMODkuNTU0NSA3Ni44OTg0TDgzLjkwMzYgNzguNDEyNEw4MC45MzE2IDY3LjMxOTRMODguMDEyNiA2NS40MjE0TDk2LjM1NjUgNTcuMDc4NEw5NC43OTk2IDUxLjI2NTRMOTMuMjg1NSA0NS42MTQ0TDg3LjYzMzYgNDcuMTI4NEw4Ni4xMjA2IDQxLjQ3NzRMODAuNDY5NiA0Mi45OTE0TDc4Ljk1NTUgMzcuMzQwNEw3My4zMDM2IDM4Ljg1NDRMNzEuNzg5NSAzMy4yMDM0TDY2LjEzODYgMzQuNzE3NEw2NC42MjM1IDI5LjA2NjRMNTguOTcyNiAzMC41ODE0TDU3LjQ1ODUgMjQuOTI5NEw1MS44MDc1IDI2LjQ0MzRMNTAuMjkzNiAyMC43OTM0TDQ0LjY0MjYgMjIuMzA3NEw0My4xMjc2IDE2LjY1NTRMMzcuNDc2NSAxOC4xNjk0TDM1Ljk2MjUgMTIuNTE5NEwzMC4zMTE1IDE0LjAzMzRMMjguNzk2NSA4LjM4MTQyTDIzLjE0NjYgOS44OTY0MkwyMS42MzE2IDQuMjQ1NDJMMTUuOTgwNiA1Ljc1OTQyTDE0LjQ2NjYgMC4xMDc0MjJMOC42NTQ1NSAxLjY2NTQyTDAuMzEwNTQ3IDEwLjAwOTRMMjYuMDk0NiAxMDYuMjRMMzEuOTA3NSAxMDQuNjgyTDM3LjU1OTUgMTAzLjE2OEw0NS45MDI1IDk0LjgyNDRMNDUuMjI4NiA5Mi4zMDg0TDQ5LjgxOTYgODcuNzE4NEw1MC4wMzk1IDg3LjY1OTRMNDkuMzY1NSA4NS4xNDM0TDUwLjQzODUgODQuMDY5NEw1Mi44MzY2IDkzLjAxNzRMNTguNDg3NiA5MS41MDM0TDYxLjUxNjUgMTAyLjgwNkw2Ny4xNjY2IDEwMS4yOTJMNjguNjgxNiAxMDYuOTQyTDgwLjE0NDYgMTAzLjg3MUw4OC40ODk2IDk1LjUyNzRMODcuODE0NiA5My4wMTE0TDkyLjQwNTYgODguNDIxNEw5Mi42MjU2IDg4LjM2MjRaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNNjkuNTI4MiA5Ny4yMDQzTDYzLjg3NzIgOTguNzE4M0w2MC44NDkyIDg3LjQxNTNMNTUuMTk3MiA4OC45MzAzTDUyLjE2NzIgNzcuNjIxM0w0NS42NDQyIDg0LjE0NjNMNDYuMjg0MiA4Ni41MzQzTDQxLjUwNzIgOTEuMzExM0w0Mi4xODEyIDkzLjgyNzNMMzUuODMxMiAxMDAuMTc1TDI4LjQ1NjIgMTAyLjE1Mkw0LjAzMzIgMTEuMDA2M0wxMC4zODIyIDQuNjU4MzFMMTIuMTA3MiA0LjE5NTMxTDEzLjYyMjIgOS44NDczMUwxOS4yNzMyIDguMzMyMzFMMjAuNzg3MiAxMy45ODMzTDI2LjQzODIgMTIuNDY5M0wyNy45NTIyIDE4LjEyMDNMMzMuNjAzMiAxNi42MDYzTDM1LjExNzIgMjIuMjU3M0w0MC43NjkyIDIwLjc0MzNMNDIuMjgzMiAyNi4zOTQzTDQ3LjkzNDIgMjQuODgwM0w0OS40NDgyIDMwLjUzMTNMNTUuMDk5MiAyOS4wMTczTDU2LjYxMzIgMzQuNjY4M0w2Mi4yNjUyIDMzLjE1NDNMNjMuNzc5MiAzOC44MDUzTDY5LjQzMDIgMzcuMjkwM0w3MC45NDQyIDQyLjk0MjNMNzYuNTk1MiA0MS40MjgzTDc4LjEwOTIgNDcuMDc5M0w4My43NjAyIDQ1LjU2NDNMODUuMjc0MiA1MS4yMTUzTDkwLjkyNjIgNDkuNzAyM0w5Mi42MzUyIDU2LjA4MDNMODYuMjg2MiA2Mi40MjkzTDc2Ljg0NDIgNjQuOTYwM0w4MS41NDQyIDgyLjQ5OTNMODcuMTk1MiA4MC45ODUzTDg4Ljg3MDIgODcuMjM3M0w4NC4wOTMyIDkyLjAxNDNMODQuNzY3MiA5NC41MjkzTDc4LjQxOTIgMTAwLjg3OEw3MS4wNDIyIDEwMi44NTVMNjkuNTI4MiA5Ny4yMDQzWiIgZmlsbD0id2hpdGUiLz4KPHBhdGggZD0iTTg3LjU3NDggNDcuMjI5OUw4Ni4wNjA4IDQxLjU3ODlMODAuNDA5OCA0My4wOTI5TDc4Ljg5NTggMzcuNDQxOUw3My4yNDQ4IDM4Ljk1NjlMNzEuNzMwOCAzMy4zMDU5TDY2LjA3OTggMzQuODE5OUw2NC41NjQ4IDI5LjE2ODlMNTguOTEzOCAzMC42ODI5TDU3LjM5OTggMjUuMDMxOUw1MS43NDg4IDI2LjU0NTlMNTAuMjM0OCAyMC44OTQ5TDQ0LjU4MzggMjIuNDA4OUw0My4wNjg4IDE2Ljc1NzlMMzcuNDE3OCAxOC4yNzE5TDM1LjkwMzggMTIuNjIwOUwzMC4yNTI4IDE0LjEzNDlMMjguNzM3OCA4LjQ4Mzk0TDIzLjA4NzggOS45OTc5NEwyMS41NzM4IDQuMzQ2OTRMMTUuOTIyOCA1Ljg2MTk0TDE0LjQwODggMC4yMTA5MzhMOC43NTc4MSAxLjcyNDk0TDM0LjQ5OTggOTcuNzkzOUw0MC4xNTA4IDk2LjI3OTlMNDUuODAxOCA5NC43NjQ5TDQ0LjI4NjggODkuMTEzOUw0OS45Mzc4IDg3LjU5OTlMNDguNDIyOCA4MS45NDg5TDU0LjA3MzggODAuNDMzOUw1Mi41NTk4IDc0Ljc4MjlMNTguMjEwOCA3My4yNjg5TDYxLjIzODggODQuNTcwOUw2Ni44ODk4IDgzLjA1NTlMNjkuOTE3OCA5NC4zNTg5TDc1LjU2ODggOTIuODQ0OUw3Ny4wODI4IDk4LjQ5NTlMODguMzg1OCA5NS40Njc5TDg2Ljg3MTggODkuODE2OUw5Mi41MjI4IDg4LjMwMjlMODkuNDk1OCA3Ni45OTk5TDgzLjg0NDggNzguNTEzOUw4MC44MTY4IDY3LjIxMTlMNzUuMTY1OCA2OC43MjY5TDczLjY1MTggNjMuMDc1OUw5Ni4yNTY4IDU3LjAxODlMOTQuNzQyOCA1MS4zNjc5TDkzLjIyNzggNDUuNzE2OUw4Ny41NzQ4IDQ3LjIyOTlaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBkPSJNMTQuNDA1NCAwLjIwOTM5NUw4Ljc1MzkxIDEuNzIzNjNMMzQuNDkzNiA5Ny43OTAxTDQwLjE0NTEgOTYuMjc1OUwxNC40MDU0IDAuMjA5Mzk1WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTIxLjU3NTMgNC4zNDI2TDE1LjkyMzggNS44NTc0MkwxNy40Mzg0IDExLjUwNzlMMjMuMDg5OSA5Ljk5MzExTDIxLjU3NTMgNC4zNDI2WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTI4LjczNDUgOC40ODQwN0wyMy4wODQgOS45OTgwNUwyNC41OTggMTUuNjQ4NkwzMC4yNDg1IDE0LjEzNDZMMjguNzM0NSA4LjQ4NDA3WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTM1LjkwMzQgMTIuNjE5TDMwLjI1MiAxNC4xMzM4TDMxLjc2NjUgMTkuNzg0M0wzNy40MTggMTguMjY5NUwzNS45MDM0IDEyLjYxOVoiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik00My4wNjU1IDE2Ljc1NjNMMzcuNDE0MSAxOC4yNzA1TDM4LjkyODMgMjMuOTIyTDQ0LjU3OTggMjIuNDA3N0w0My4wNjU1IDE2Ljc1NjNaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNNTAuMjI4NiAyMC44OTQyTDQ0LjU3ODEgMjIuNDA4Mkw0Ni4wOTIxIDI4LjA1ODdMNTEuNzQyNiAyNi41NDQ3TDUwLjIyODYgMjAuODk0MloiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik01Ny4zOTI3IDI1LjAzNjhMNTEuNzQyMiAyNi41NTA4TDUzLjI1NjQgMzIuMjAyM0w1OC45MDY5IDMwLjY4ODNMNTcuMzkyNyAyNS4wMzY4WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTY0LjU2MTYgMjkuMTY2NEw1OC45MTAyIDMwLjY4MDdMNjAuNDI0MSAzNi4zMzEyTDY2LjA3NTYgMzQuODE2OUw2NC41NjE2IDI5LjE2NjRaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNNzEuNzI0NyAzMy4zMDQ0TDY2LjA3NDIgMzQuODE4NEw2Ny41ODg1IDQwLjQ2OThMNzMuMjM5IDM4Ljk1NTlMNzEuNzI0NyAzMy4zMDQ0WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTc4Ljg5MTcgMzcuNDM3OUw3My4yNDAyIDM4Ljk1MjFMNzQuNzU0MiA0NC42MDI3TDgwLjQwNTcgNDMuMDg4NEw3OC44OTE3IDM3LjQzNzlaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNODYuMDU4NyA0MS41ODExTDgwLjQwODIgNDMuMDk1N0w4MS45MjI4IDQ4Ljc0NjJMODcuNTczMyA0Ny4yMzE3TDg2LjA1ODcgNDEuNTgxMVoiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik05My4yMjE4IDQ1LjcxMDRMODcuNTcwMyA0Ny4yMjQ2TDg5LjA4NDYgNTIuODc2MUw5NC43MzYgNTEuMzYxOUw5My4yMjE4IDQ1LjcxMDRaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNOTQuNzM1OSA1MS4zNjU4TDY2LjQ4MDUgNTguOTM2NUw2Ny45OTQ3IDY0LjU4OEw5Ni4yNTAyIDU3LjAxNzNMOTQuNzM1OSA1MS4zNjU4WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTczLjY0NzYgNjMuMDcwN0w2Ny45OTYxIDY0LjU4NUw2OS41MTAzIDcwLjIzNjRMNzUuMTYxOCA2OC43MjIyTDczLjY0NzYgNjMuMDcwN1oiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik01Ni42OTI1IDY3LjYxNDdMNTEuMDQxIDY5LjEyODlMNTIuNTU1IDc0Ljc3OTRMNTguMjA2NSA3My4yNjUyTDU2LjY5MjUgNjcuNjE0N1oiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik02My44NjQ0IDcxLjc1MThMNTguMjEyOSA3My4yNjY2TDYxLjI0MjMgODQuNTY4Nkw2Ni44OTM4IDgzLjA1MzhMNjMuODY0NCA3MS43NTE4WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTcyLjUzMzMgODEuNTQzNkw2Ni44ODI4IDgzLjA1NzZMNjkuOTExIDk0LjM1OTZMNzUuNTYxNSA5Mi44NDU2TDcyLjUzMzMgODEuNTQzNloiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik04Ni44NjY0IDg5LjgxMTZMNzUuNTY0NSA5Mi44Mzk4TDc3LjA3ODQgOTguNDkwM0w4OC4zODA0IDk1LjQ2MjFMODYuODY2NCA4OS44MTE2WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTgwLjgxMTYgNjcuMjA3NEw3NS4xNjAyIDY4LjcyMTdMNzguMTg4NCA4MC4wMjM3TDgzLjgzOTkgNzguNTA5NEw4MC44MTE2IDY3LjIwNzRaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNODkuNTAxNyA3Ny4wMTI3TDgzLjg0OTYgNzguNTI2NEw4Ni44NzY3IDg5LjgyOTVMOTIuNTI4NyA4OC4zMTU5TDg5LjUwMTcgNzcuMDEyN1oiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik01Mi41NjI2IDc0Ljc3NzRMNDYuOTEyMSA3Ni4yOTJMNDguNDI2NyA4MS45NDI1TDU0LjA3NzIgODAuNDI3OUw1Mi41NjI2IDc0Ljc3NzRaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNNDguNDE4MSA4MS45NDVMNDIuNzY3NiA4My40NTlMNDQuMjgxOCA4OS4xMTA1TDQ5LjkzMjMgODcuNTk2NUw0OC40MTgxIDgxLjk0NVoiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik00NC4yODgyIDg5LjExMDJMMzguNjM2NyA5MC42MjVMNDAuMTUxNSA5Ni4yNzY1TDQ1LjgwMyA5NC43NjE3TDQ0LjI4ODIgODkuMTEwMloiIGZpbGw9ImJsYWNrIi8+Cjwvc3ZnPg==') 16 16, auto !important;
}

.custom-cursor a,
.custom-cursor button,
.custom-cursor input[type="submit"],
.custom-cursor input[type="button"],
.custom-cursor input[type="reset"],
.custom-cursor [role="button"],
.custom-cursor .cursor-pointer,
.custom-cursor select,
.custom-cursor label[for],
.custom-cursor summary,
.custom-cursor details,
.custom-cursor input[type="checkbox"],
.custom-cursor input[type="radio"],
.custom-cursor [onclick],
.custom-cursor [tabindex="0"],
.custom-cursor .skill-item {
    cursor: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDIiIGhlaWdodD0iNDIiIHZpZXdCb3g9IjAgMCAxMTYgMTM3IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8cGF0aCBkPSJNMTE0LjcyMSA5NC4xNjE5TDExMS4wMiA4MC4zNDM5TDExNS42MDkgNzUuNzUxOUwxMTUuODMgNzUuNjkzOUwxMDUuMTg4IDM1Ljk3NDlMOTkuNTM1MyAzNy40ODg5TDk4LjAyMTMgMzEuODM3OUw5Mi4zNzEzIDMzLjM1MTlMOTAuODU1MyAyNy43MDA5TDc5LjQ5MzMgMzAuNzI4OUw3OC4wMzkzIDI1LjA3NzlMNjEuMDg2MyAyOS42MjA5TDU5LjU3MjMgMjMuOTY5OUw0OC4yNzAzIDI2Ljk5NzlMNDIuMjEzMyA0LjM5Mjg2TDM2LjU2MzMgNS45MDc4NkwzNS4wNDczIDAuMjU1ODU5TDIzLjU4NDMgMy4zMjc4NkwxOS40NDczIDEwLjQ5MzlMMTkuNDYxMyAxMC41NDA5TDExLjEwMzMgMTguODM2OUwyMS42OTEzIDU4LjM0NjlMOC45NTcyOCA2MS43NTk5TDAuNjEzMjgxIDcwLjEwMzlMMi4xNzAyOSA3NS45MTU5TDUuMTk5MjggODcuMjE3OUwxMC44NTAzIDg1LjcwMzlMMTIuMzYzMyA5MS4zNTQ5TDE4LjAxNjMgODkuODQwOUwyMS4wNDMzIDEwMS4xNDNMMjYuNjk1MyA5OS42Mjg5TDI5LjcyMzMgMTEwLjkzMUwzNS4zNzUzIDEwOS40MTdMMzguNDAyMyAxMjAuNzE5TDQ0LjA1NTMgMTE5LjIwNUw0Ny4wODIzIDEzMC41MDdMNDguNTk4MyAxMzYuMTU4TDk5LjQ1NzMgMTIyLjUzMUwxMDUuMjY4IDEyMC45NzNMMTEzLjYxMyAxMTIuNjI5TDEwOS45MSA5OC44MTA5TDExNC41MDIgOTQuMjE5OUwxMTQuNzIxIDk0LjE2MTlaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNNDYuNDEzOSAxMTUuMTE4TDQwLjc2MzkgMTE2LjYzMUwzNy43MzM5IDEwNS4zMjlMMzIuMDg0IDEwNi44NDNMMjkuMDU0OSA5NS41NDE4TDIzLjQwMzkgOTcuMDU0N0wyMC4zNzQ5IDg1Ljc1MjhMMTQuNzI0OSA4Ny4yNjc4TDEzLjIwOSA4MS42MTU3TDcuNTU4OTMgODMuMTI5OEw0LjMzNTk0IDcxLjEwMDdMMTAuNjg0OSA2NC43NTE3TDI1Ljc3ODkgNjAuNzA2N0wxNC44Mjc5IDE5Ljg0MjhMMjMuMTkyOSAxMS41Mzc4TDMyLjY4NzkgNC4zNDM3NUwzNC4yMDA5IDkuOTk1NzVMMzkuODUyOSA4LjQ4MDc1TDQ1LjkwOTkgMzEuMDg1N0w1Ny4yMTMgMjguMDU2N0w1OC43MjY5IDMzLjcwODdMNzUuNjc5OSAyOS4xNjU3TDc3LjE5MjkgMzQuODE2N0w4OC40OTU5IDMxLjc4ODdMOTAuMDA5OSAzNy40Mzg4TDk1LjY2MTkgMzUuOTI0OEw5Ny4xNzU5IDQxLjU3NTdMMTAyLjgyOCA0MC4wNjI4TDExMi4wNzQgNzQuNTY4N0wxMDcuMjk3IDc5LjM0NTdMMTEwLjk2NSA5My4wMzY4TDEwNi4xODggOTcuODEzN0wxMDkuODg5IDExMS42MzJMMTAzLjU0MSAxMTcuOThMNTAuOTU2OSAxMzIuMDcxTDQ2LjQxMzkgMTE1LjExOFoiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGQ9Ik05OS40NzY2IDM3LjU5MDRMOTcuOTYyNiAzMS45Mzk0TDkyLjMxMjYgMzMuNDUzNEw5MC43OTY2IDI3LjgwMjRMNzkuNDkzNiAzMC44MzE0TDc3Ljk3OTYgMjUuMTgwNEw2MS4wMjY2IDI5LjcyMzRMNTkuNTEyNiAyNC4wNzI0TDQ4LjIxMDYgMjcuMDk5NEw0Mi4xNTM2IDQuNDk1NEwzNi41MDM2IDYuMDA5NEwzNC45ODc2IDAuMzU4Mzk4TDIzLjY4NDYgMy4zODc0TDI1LjIwMDYgOS4wMzg0TDE5LjU0ODYgMTAuNTUyNEwzMy4xNzc2IDYxLjQxMjRMMjcuNTI3NiA2Mi45MjY0TDI2LjAxMzYgNTcuMjc1NEw5LjA1ODU5IDYxLjgxODRMMTAuNTcyNiA2Ny40Njk0TDExLjMzMDYgNzAuMjk1NEwxMy42MDI2IDc4Ljc3MjRMMTkuMjUyNiA3Ny4yNTc0TDIwLjc2ODYgODIuOTA4NEwyNi40MTg2IDgxLjM5NDRMMjkuNDQ3NiA5Mi42OTY0TDM1LjA5NzYgOTEuMTgyNEwzOC4xMjY2IDEwMi40ODRMNDMuNzc2NiAxMDAuOTdMNDYuODAzNiAxMTIuMjcyTDUyLjQ1NTYgMTEwLjc1OEw1NS40ODI2IDEyMi4wNkw1Ni45OTg2IDEyNy43MTFMMTA3Ljg1OCAxMTQuMDgzTDExMy41MDggMTEyLjU2OEwxMDguOTY3IDk1LjYxNTRMMTE0LjYxNyA5NC4xMDE0TDExMC4wNzQgNzcuMTQ3NEwxMTUuNzI2IDc1LjYzMzRMMTA1LjEyNiAzNi4wNzU0TDk5LjQ3NjYgMzcuNTkwNFoiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGQ9Ik0yNS4xOTA1IDkuMDQ2MzFMMTkuNTM5MSAxMC41NjA1TDM3LjcwODQgNzguMzcyNUw0My4zNTk4IDc2Ljg1ODNMMjUuMTkwNSA5LjA0NjMxWiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTM0Ljk4MDcgMC4zNjhMMjMuNjc3NyAzLjM5NjQ4TDI1LjE5MiA5LjA0Nzk3TDM2LjQ5NSA2LjAxOTQ4TDM0Ljk4MDcgMC4zNjhaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNNDIuMTQ1NiA0LjQ3Njk3TDM2LjQ5NDEgNS45OTEyMUw1MC4xMjEgNTYuODQ5N0w1NS43NzI1IDU1LjMzNTVMNDIuMTQ1NiA0LjQ3Njk3WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTU5LjUwMTIgMjQuMDcxNEw0OC4xOTkyIDI3LjA5OTZMNDkuNzEzNSAzMi43NTExTDYxLjAxNTQgMjkuNzIyOUw1OS41MDEyIDI0LjA3MTRaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNNjguMjA4NyAzMy44NTM1TDYyLjU1NjYgMzUuMzY3Mkw2Ny4wOTcxIDUyLjMyMTVMNzIuNzQ5MiA1MC44MDc4TDY4LjIwODcgMzMuODUzNVoiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik03Ny45NjkxIDI1LjE4MzZMNjEuMDE3NiAyOS43MjU2TDYyLjUzMTYgMzUuMzc2MUw3OS40ODMxIDMwLjgzNDJMNzcuOTY5MSAyNS4xODM2WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTg2LjY1MTUgMzQuOTUxNkw4MSAzNi40NjU4TDg1LjUzOTQgNTMuNDA3N0w5MS4xOTA4IDUxLjg5MzVMODYuNjUxNSAzNC45NTE2WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTkwLjc4NzMgMjcuODEzM0w3OS40ODQ0IDMwLjg0MThMODAuOTk4NiAzNi40OTMzTDkyLjMwMTYgMzMuNDY0OEw5MC43ODczIDI3LjgxMzNaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNOTcuOTYxMSAzMS45NDkzTDkyLjMxMDUgMzMuNDYzOUw5My44MjUxIDM5LjExNDRMOTkuNDc1NiAzNy41OTk4TDk3Ljk2MTEgMzEuOTQ5M1oiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik0xMDUuMTQ3IDM2LjA2ODFMOTkuNDk0MSAzNy41ODJMMTEwLjA4OSA3Ny4xNDI2TDExNS43NDIgNzUuNjI4N0wxMDUuMTQ3IDM2LjA2ODFaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNMTEwLjA3NiA3Ny4xMjhMMTA0LjQyNiA3OC42NDI2TDEwOC45NyA5NS41OTYxTDExNC42MjEgOTQuMDgxNUwxMTAuMDc2IDc3LjEyOFoiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik0xMDguOTY0IDk1LjYyNjhMMTAzLjMxMiA5Ny4xNDE2TDEwNy44NTYgMTE0LjA5NEwxMTMuNTA4IDExMi41NzlMMTA4Ljk2NCA5NS42MjY4WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTEwNi4zMzEgMTA4LjQzN0w1NS40NzI3IDEyMi4wNjNMNTYuOTg2OSAxMjcuNzE1TDEwNy44NDUgMTE0LjA4OEwxMDYuMzMxIDEwOC40MzdaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNMzMuMTcwMSA2MS4zOTMyTDI3LjUxOTUgNjIuOTA3MkwyOS4wMzM1IDY4LjU1NzdMMzQuNjg0IDY3LjA0MzhMMzMuMTcwMSA2MS4zOTMyWiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTI2LjAwMzMgNTcuMjc1Nkw5LjA0ODgzIDYxLjgxODRMMTAuNTYyOCA2Ny40Njg5TDI3LjUxNzMgNjIuOTI2MkwyNi4wMDMzIDU3LjI3NTZaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNMTYuMjE5OSA2NS45NjI3TDEwLjU2ODQgNjcuNDc3NUwxMy41OTc3IDc4Ljc3OTVMMTkuMjQ5MiA3Ny4yNjQ3TDE2LjIxOTkgNjUuOTYyN1oiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik0yNC44OTE3IDc1Ljc1NDNMMTkuMjQwMiA3Ny4yNjg2TDIwLjc1NDUgODIuOTJMMjYuNDA1OSA4MS40MDU4TDI0Ljg5MTcgNzUuNzU0M1oiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik0zMi4wNTc3IDc5Ljg5MUwyNi40MDYyIDgxLjQwNTNMMjkuNDM0NSA5Mi43MDczTDM1LjA4NTkgOTEuMTkzTDMyLjA1NzcgNzkuODkxWiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTQwLjc0MDQgODkuNjU0TDM1LjA4OTggOTEuMTY4TDM4LjExODEgMTAyLjQ3TDQzLjc2ODYgMTAwLjk1Nkw0MC43NDA0IDg5LjY1NFoiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik00OS40MjEgOTkuNDM0TDQzLjc2OTUgMTAwLjk0OEw0Ni43OTc3IDExMi4yNUw1Mi40NDkyIDExMC43MzZMNDkuNDIxIDk5LjQzNFoiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik01OC4xMDI2IDEwOS4yMjFMNTIuNDUxMiAxMTAuNzM1TDU1LjQ3OTQgMTIyLjAzN0w2MS4xMzA5IDEyMC41MjNMNTguMTAyNiAxMDkuMjIxWiIgZmlsbD0iYmxhY2siLz4KPC9zdmc+') 16 16, pointer !important;
}

.skill-item {
    cursor: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDIiIGhlaWdodD0iNDIiIHZpZXdCb3g9IjAgMCA5NyAxMDciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik05Mi42MjU2IDg4LjM2MjRMODkuNTU0NSA3Ni44OTg0TDgzLjkwMzYgNzguNDEyNEw4MC45MzE2IDY3LjMxOTRMODguMDEyNiA2NS40MjE0TDk2LjM1NjUgNTcuMDc4NEw5NC43OTk2IDUxLjI2NTRMOTMuMjg1NSA0NS42MTQ0TDg3LjYzMzYgNDcuMTI4NEw4Ni4xMjA2IDQxLjQ3NzRMODAuNDY5NiA0Mi45OTE0TDc4Ljk1NTUgMzcuMzQwNEw3My4zMDM2IDM4Ljg1NDRMNzEuNzg5NSAzMy4yMDM0TDY2LjEzODYgMzQuNzE3NEw2NC42MjM1IDI5LjA2NjRMNTguOTcyNiAzMC41ODE0TDU3LjQ1ODUgMjQuOTI5NEw1MS44MDc1IDI2LjQ0MzRMNTAuMjkzNiAyMC43OTM0TDQ0LjY0MjYgMjIuMzA3NEw0My4xMjc2IDE2LjY1NTRMMzcuNDc2NSAxOC4xNjk0TDM1Ljk2MjUgMTIuNTE5NEwzMC4zMTE1IDE0LjAzMzRMMjguNzk2NSA4LjM4MTQyTDIzLjE0NjYgOS44OTY0MkwyMS42MzE2IDQuMjQ1NDJMMTUuOTgwNiA1Ljc1OTQyTDE0LjQ2NjYgMC4xMDc0MjJMOC42NTQ1NSAxLjY2NTQyTDAuMzEwNTQ3IDEwLjAwOTRMMjYuMDk0NiAxMDYuMjRMMzEuOTA3NSAxMDQuNjgyTDM3LjU1OTUgMTAzLjE2OEw0NS45MDI1IDk0LjgyNDRMNDUuMjI4NiA5Mi4zMDg0TDQ5LjgxOTYgODcuNzE4NEw1MC4wMzk1IDg3LjY1OTRMNDkuMzY1NSA4NS4xNDM0TDUwLjQzODUgODQuMDY5NEw1Mi44MzY2IDkzLjAxNzRMNTguNDg3NiA5MS41MDM0TDYxLjUxNjUgMTAyLjgwNkw2Ny4xNjY2IDEwMS4yOTJMNjguNjgxNiAxMDYuOTQyTDgwLjE0NDYgMTAzLjg3MUw4OC40ODk2IDk1LjUyNzRMODcuODE0NiA5My4wMTE0TDkyLjQwNTYgODguNDIxNEw5Mi42MjU2IDg4LjM2MjRaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNNjkuNTI4MiA5Ny4yMDQzTDYzLjg3NzIgOTguNzE4M0w2MC44NDkyIDg3LjQxNTNMNTUuMTk3MiA4OC45MzAzTDUyLjE2NzIgNzcuNjIxM0w0NS42NDQyIDg0LjE0NjNMNDYuMjg0MiA4Ni41MzQzTDQxLjUwNzIgOTEuMzExM0w0Mi4xODEyIDkzLjgyNzNMMzUuODMxMiAxMDAuMTc1TDI4LjQ1NjIgMTAyLjE1Mkw0LjAzMzIgMTEuMDA2M0wxMC4zODIyIDQuNjU4MzFMMTIuMTA3MiA0LjE5NTMxTDEzLjYyMjIgOS44NDczMUwxOS4yNzMyIDguMzMyMzFMMjAuNzg3MiAxMy45ODMzTDI2LjQzODIgMTIuNDY5M0wyNy45NTIyIDE4LjEyMDNMMzMuNjAzMiAxNi42MDYzTDM1LjExNzIgMjIuMjU3M0w0MC43NjkyIDIwLjc0MzNMNDIuMjgzMiAyNi4zOTQzTDQ3LjkzNDIgMjQuODgwM0w0OS40NDgyIDMwLjUzMTNMNTUuMDk5MiAyOS4wMTczTDU2LjYxMzIgMzQuNjY4M0w2Mi4yNjUyIDMzLjE1NDNMNjMuNzc5MiAzOC44MDUzTDY5LjQzMDIgMzcuMjkwM0w3MC45NDQyIDQyLjk0MjNMNzYuNTk1MiA0MS40MjgzTDc4LjEwOTIgNDcuMDc5M0w4My43NjAyIDQ1LjU2NDNMODUuMjc0MiA1MS4yMTUzTDkwLjkyNjIgNDkuNzAyM0w5Mi42MzUyIDU2LjA4MDNMODYuMjg2MiA2Mi40MjkzTDc2Ljg0NDIgNjQuOTYwM0w4MS41NDQyIDgyLjQ5OTNMODcuMTk1MiA4MC45ODUzTDg4Ljg3MDIgODcuMjM3M0w4NC4wOTMyIDkyLjAxNDNMODQuNzY3MiA5NC41MjkzTDc4LjQxOTIgMTAwLjg3OEw3MS4wNDIyIDEwMi44NTVMNjkuNTI4MiA5Ny4yMDQzWiIgZmlsbD0id2hpdGUiLz4KPHBhdGggZD0iTTg3LjU3NDggNDcuMjI5OUw4Ni4wNjA4IDQxLjU3ODlMODAuNDA5OCA0My4wOTI5TDc4Ljg5NTggMzcuNDQxOUw3My4yNDQ4IDM4Ljk1NjlMNzEuNzMwOCAzMy4zMDU5TDY2LjA3OTggMzQuODE5OUw2NC41NjQ4IDI5LjE2ODlMNTguOTEzOCAzMC42ODI5TDU3LjM5OTggMjUuMDMxOUw1MS43NDg4IDI2LjU0NTlMNTAuMjM0OCAyMC44OTQ5TDQ0LjU4MzggMjIuNDA4OUw0My4wNjg4IDE2Ljc1NzlMMzcuNDE3OCAxOC4yNzE5TDM1LjkwMzggMTIuNjIwOUwzMC4yNTI4IDE0LjEzNDlMMjguNzM3OCA4LjQ4Mzk0TDIzLjA4NzggOS45OTc5NEwyMS41NzM4IDQuMzQ2OTRMMTUuOTIyOCA1Ljg2MTk0TDE0LjQwODggMC4yMTA5MzhMOC43NTc4MSAxLjcyNDk0TDM0LjQ5OTggOTcuNzkzOUw0MC4xNTA4IDk2LjI3OTlMNDUuODAxOCA5NC43NjQ5TDQ0LjI4NjggODkuMTEzOUw0OS45Mzc4IDg3LjU5OTlMNDguNDIyOCA4MS45NDg5TDU0LjA3MzggODAuNDMzOUw1Mi41NTk4IDc0Ljc4MjlMNTguMjEwOCA3My4yNjg5TDYxLjIzODggODQuNTcwOUw2Ni44ODk4IDgzLjA1NTlMNjkuOTE3OCA5NC4zNTg5TDc1LjU2ODggOTIuODQ0OUw3Ny4wODI4IDk4LjQ5NTlMODguMzg1OCA5NS40Njc5TDg2Ljg3MTggODkuODE2OUw5Mi41MjI4IDg4LjMwMjlMODkuNDk1OCA3Ni45OTk5TDgzLjg0NDggNzguNTEzOUw4MC44MTY4IDY3LjIxMTlMNzUuMTY1OCA2OC43MjY5TDczLjY1MTggNjMuMDc1OUw5Ni4yNTY4IDU3LjAxODlMOTQuNzQyOCA1MS4zNjc5TDkzLjIyNzggNDUuNzE2OUw4Ny41NzQ4IDQ3LjIyOTlaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBkPSJNMTQuNDA1NCAwLjIwOTM5NUw4Ljc1MzkxIDEuNzIzNjNMMzQuNDkzNiA5Ny43OTAxTDQwLjE0NTEgOTYuMjc1OUwxNC40MDU0IDAuMjA5Mzk1WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTIxLjU3NTMgNC4zNDI2TDE1LjkyMzggNS44NTc0MkwxNy40Mzg0IDExLjUwNzlMMjMuMDg5OSA5Ljk5MzExTDIxLjU3NTMgNC4zNDI2WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTI4LjczNDUgOC40ODQwN0wyMy4wODQgOS45OTgwNUwyNC41OTggMTUuNjQ4NkwzMC4yNDg1IDE0LjEzNDZMMjguNzM0NSA4LjQ4NDA3WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTM1LjkwMzQgMTIuNjE5TDMwLjI1MiAxNC4xMzM4TDMxLjc2NjUgMTkuNzg0M0wzNy40MTggMTguMjY5NUwzNS45MDM0IDEyLjYxOVoiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik00My4wNjU1IDE2Ljc1NjNMMzcuNDE0MSAxOC4yNzA1TDM4LjkyODMgMjMuOTIyTDQ0LjU3OTggMjIuNDA3N0w0My4wNjU1IDE2Ljc1NjNaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNNTAuMjI4NiAyMC44OTQyTDQ0LjU3ODEgMjIuNDA4Mkw0Ni4wOTIxIDI4LjA1ODdMNTEuNzQyNiAyNi41NDQ3TDUwLjIyODYgMjAuODk0MloiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik01Ny4zOTI3IDI1LjAzNjhMNTEuNzQyMiAyNi41NTA4TDUzLjI1NjQgMzIuMjAyM0w1OC45MDY5IDMwLjY4ODNMNTcuMzkyNyAyNS4wMzY4WiIgZmlsbD0iYmxhY2siLz4KPHBathIGQ9Ik02NC41NjE2IDI5LjE2NjRMNTguOTEwMiAzMC42ODA3TDYwLjQyNDEgMzYuMzMxMkw2Ni4wNzU2IDM0LjgxNjlMNjQuNTYxNiAyOS4xNjY0WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTcxLjcyNDcgMzMuMzA0NEw2Ni4wNzQyIDM0LjgxODRMNjcuNTg4NSA0MC40Njk4TDczLjIzOSAzOC45NTU5TDcxLjcyNDcgMzMuMzA0NFoiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik03OC44OTE3IDM3LjQzNzlMNzMuMjQwMiAzOC45NTIxTDc0Ljc1NDIgNDQuNjAyN0w4MC40MDU3IDQzLjA4ODRMNzguODkxNyAzNy40Mzc5WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTg2LjA1ODcgNDEuNTgxMUw4MC40MDgyIDQzLjA5NTdMODEuOTIyOCA0OC43NDYyTDg3LjU3MzMgNDcuMjMxN0w4Ni4wNTg3IDQxLjU4MTFaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNOTMuMjIxOCA0NS43MTA0TDg3LjU3MDMgNDcuMjI0Nkw4OS4wODQ2IDUyLjg3NjFMOTQuNzM2IDUxLjM2MTlMOTMuMjIxOCA0NS43MTA0WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTk0LjczNTkgNTEuMzY1OEw2Ni40ODA1IDU4LjkzNjVMNjcuOTk0NyA2NC41ODhMOTYuMjUwMiA1Ny4wMTczTDk0LjczNTkgNTEuMzY1OFoiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik03My42NDc2IDYzLjA3MDdMNjcuOTk2MSA2NC41ODVMNjkuNTEwMyA3MC4yMzY0TDc1LjE2MTggNjguNzIyMkw3My42NDc2IDYzLjA3MDdaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNNTYuNjkyNSA2Ny42MTQ3TDUxLjA0MSA2OS4xMjg5TDUyLjU1NSA3NC43Nzk0TDU4LjIwNjUgNzMuMjY1Mkw1Ni42OTI1IDY3LjYxNDdaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNNjMuODY0NCA3MS43NTE4TDU4LjIxMjkgNzMuMjY2Nkw2MS4yNDIzIDg0LjU2ODZMNjYuODkzOCA4My4wNTM4TDYzLjg2NDQgNzEuNzUxOFoiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik03Mi41MzMzIDgxLjU0MzZMNjYuODgyOCA4My4wNTc2TDY5LjkxMSA5NC4zNTk2TDc1LjU2MTUgOTIuODQ1Nkw3Mi41MzMzIDgxLjU0MzZaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNODYuODY2NCA4OS44MTE2TDc1LjU2NDUgOTIuODM5OEw3Ny4wNzg0IDk4LjQ5MDNMODguMzgwNCA5NS40NjIxTDg2Ljg2NjQgODkuODExNloiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik04MC44MTE2IDY3LjIwNzRMNzUuMTYwMiA2OC43MjE3TDc4LjE4ODQgODAuMDIzN0w4My44Mzk5IDc4LjUwOTRMODAuODExNiA2Ny4yMDc0WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTg5LjUwMTcgNzcuMDEyN0w4My44NDk2IDc4LjUyNjRMODYuODc2NyA4OS44Mjk1TDkyLjUyODcgODguMzE1OUw4OS41MDE3IDc3LjAxMjdaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNNTIuNTYyNiA3NC43Nzc0TDQ2LjkxMjEgNzYuMjkyTDQ4LjQyNjcgODEuOTQyNUw1NC4wNzcyIDgwLjQyNzlMNTIuNTYyNiA3NC43Nzc0WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTQ4LjQxODEgODEuOTQ1TDQyLjc2NzYgODMuNDU5TDQ0LjI4MTggODkuMTEwNUw0OS45MzIzIDg3LjU5NjVMNDguNDE4MSA4MS45NDVaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNNDQuMjg4MiA4OS4xMTAyTDM4LjYzNjcgOTAuNjI1TDQwLjE1MTUgOTYuMjc2NUw0NS44MDMgOTQuNzYxN0w0NC4yODgyIDg5LjExMDJaIiBmaWxsPSJibGFjayIvPgo8L3N2Zz4=') 16 16, pointer !important;
    transition: all 0.2s ease;
}

.skill-item:hover {
    cursor: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDIiIGhlaWdodD0iNDIiIHZpZXdCb3g9IjAgMCAxMTYgMTM3IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8cGF0aCBkPSJNMTE0LjcyMSA5NC4xNjE5TDExMS4wMiA4MC4zNDM5TDExNS42MDkgNzUuNzUxOUwxMTUuODMgNzUuNjkzOUwxMDUuMTg4IDM1Ljk3NDlMOTkuNTM1MyAzNy40ODg5TDk4LjAyMTMgMzEuODM3OUw5Mi4zNzEzIDMzLjM1MTlMOTAuODU1MyAyNy43MDA5TDc5LjQ5MzMgMzAuNzI4OUw3OC4wMzkzIDI1LjA3NzlMNjEuMDg2MyAyOS42MjA5TDU5LjU3MjMgMjMuOTY5OUw0OC4yNzAzIDI2Ljk5NzlMNDIuMjEzMyA0LjM5Mjg2TDM2LjU2MzMgNS45MDc4NkwzNS4wNDczIDAuMjU1ODU5TDIzLjU4NDMgMy4zMjc4NkwxOS40NDczIDEwLjQ5MzlMMTkuNDYxMyAxMC41NDA5TDExLjEwMzMgMTguODM2OUwyMS42OTEzIDU4LjM0NjlMOC45NTcyOCA2MS43NTk5TDAuNjEzMjgxIDcwLjEwMzlMMi4xNzAyOSA3NS45MTU5TDUuMTk5MjggODcuMjE3OUwxMC44NTAzIDg1LjcwMzlMMTIuMzYzMyA5MS4zNTQ5TDE4LjAxNjMgODkuODQwOUwyMS4wNDMzIDEwMS4xNDNMMjYuNjk1MyA5OS42Mjg5TDI5LjcyMzMgMTEwLjkzMUwzNS4zNzUzIDEwOS40MTdMMzguNDAyMyAxMjAuNzE5TDQ0LjA1NTMgMTE5LjIwNUw0Ny4wODIzIDEzMC41MDdMNDguNTk4MyAxMzYuMTU4TDk5LjQ1NzMgMTIyLjUzMUwxMDUuMjY4IDEyMC45NzNMMTEzLjYxMyAxMTIuNjI5TDEwOS45MSA5OC44MTA5TDExNC41MDIgOTQuMjE5OUwxMTQuNzIxIDk0LjE2MTlaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNNDYuNDEzOSAxMTUuMTE4TDQwLjc2MzkgMTE2LjYzMUwzNy43MzM5IDEwNS4zMjlMMzIuMDg0IDEwNi44NDNMMjkuMDU0OSA5NS41NDE4TDIzLjQwMzkgOTcuMDU0N0wyMC4zNzQ5IDg1Ljc1MjhMMTQuNzI0OSA4Ny4yNjc4TDEzLjIwOSA4MS42MTU3TDcuNTU4OTMgODMuMTI5OEw0LjMzNTk0IDcxLjEwMDdMMTAuNjg0OSA2NC43NTE3TDI1Ljc3ODkgNjAuNzA2N0wxNC44Mjc5IDE5Ljg0MjhMMjMuMTkyOSAxMS41Mzc4TDMyLjY4NzkgNC4zNDM3NUwzNC4yMDA5IDkuOTk1NzVMMzkuODUyOSA4LjQ4MDc1TDQ1LjkwOTkgMzEuMDg1N0w1Ny4yMTMgMjguMDU2N0w1OC43MjY5IDMzLjcwODdMNzUuNjc5OSAyOS4xNjU3TDc3LjE5MjkgMzQuODE2N0w4OC40OTU5IDMxLjc4ODdMOTAuMDA5OSAzNy40Mzg4TDk1LjY2MTkgMzUuOTI0OEw5Ny4xNzU5IDQxLjU3NTdMMTAyLjgyOCA0MC4wNjI4TDExMi4wNzQgNzQuNTY4N0wxMDcuMjk3IDc5LjM0NTdMMTEwLjk2NSA5My4wMzY4TDEwNi4xODggOTcuODEzN0wxMDkuODg5IDExMS42MzJMMTAzLjU0MSAxMTcuOThMNTAuOTU2OSAxMzIuMDcxTDQ2LjQxMzkgMTE1LjExOFoiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGQ9Ik05OS40NzY2IDM3LjU5MDRMOTcuOTYyNiAzMS45Mzk0TDkyLjMxMjYgMzMuNDUzNEw5MC43OTY2IDI3LjgwMjRMNzkuNDkzNiAzMC44MzE0TDc3Ljk3OTYgMjUuMTgwNEw2MS4wMjY2IDI5LjcyMzRMNTkuNTEyNiAyNC4wNzI0TDQ4LjIxMDYgMjcuMDk5NEw0Mi4xNTM2IDQuNDk1NEwzNi41MDM2IDYuMDA5NEwzNC45ODc2IDAuMzU4Mzk4TDIzLjY4NDYgMy4zODc0TDI1LjIwMDYgOS4wMzg0TDE5LjU0ODYgMTAuNTUyNEwzMy4xNzc2IDYxLjQxMjRMMjcuNTI3NiA2Mi45MjY0TDI2LjAxMzYgNTcuMjc1NEw5LjA1ODU5IDYxLjgxODRMMTAuNTcyNiA2Ny40Njk0TDExLjMzMDYgNzAuMjk1NEwxMy42MDI2IDc4Ljc3MjRMMTkuMjUyNiA3Ny4yNTc0TDIwLjc2ODYgODIuOTA4NEwyNi40MTg2IDgxLjM5NDRMMjkuNDQ3NiA5Mi42OTY0TDM1LjA5NzYgOTEuMTgyNEwzOC4xMjY2IDEwMi40ODRMNDMuNzc2NiAxMDAuOTdMNDYuODAzNiAxMTIuMjcyTDUyLjQ1NTYgMTEwLjc1OEw1NS40ODI2IDEyMi4wNkw1Ni45OTg2IDEyNy43MTFMMTA3Ljg1OCAxMTQuMDgzTDExMy41MDggMTEyLjU2OEwxMDguOTY3IDk1LjYxNTRMMTE0LjYxNyA5NC4xMDE0TDExMC4wNzQgNzcuMTQ3NEwxMTUuNzI2IDc1LjYzMzRMMTA1LjEyNiAzNi4wNzU0TDk5LjQ3NjYgMzcuNTkwNFoiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGQ9Ik0yNS4xOTA1IDkuMDQ2MzFMMTkuNTM5MSAxMC41NjA1TDM3LjcwODQgNzguMzcyNUw0My4zNTk4IDc2Ljg1ODNMMjUuMTkwNSA5LjA0NjMxWiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTM0Ljk4MDcgMC4zNjhMMjMuNjc3NyAzLjM5NjQ4TDI1LjE5MiA5LjA0Nzk3TDM2LjQ5NSA2LjAxOTQ4TDM0Ljk4MDcgMC4zNjhaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNNDIuMTQ1NiA0LjQ3Njk3TDM2LjQ5NDEgNS45OTEyMUw1MC4xMjEgNTYuODQ5N0w1NS43NzI1IDU1LjMzNTVMNDIuMTQ1NiA0LjQ3Njk3WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTU5LjUwMTIgMjQuMDcxNEw0OC4xOTkyIDI3LjA5OTZMNDkuNzEzNSAzMi43NTExTDYxLjAxNTQgMjkuNzIyOUw1OS41MDEyIDI0LjA3MTRaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNNjguMjA4NyAzMy44NTM1TDYyLjU1NjYgMzUuMzY3Mkw2Ny4wOTcxIDUyLjMyMTVMNzIuNzQ5MiA1MC44MDc4TDY4LjIwODcgMzMuODUzNVoiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik03Ny45NjkxIDI1LjE4MzZMNjEuMDE3NiAyOS43MjU2TDYyLjUzMTYgMzUuMzc2MUw3OS40ODMxIDMwLjgzNDJMNzcuOTY5MSAyNS4xODM2WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTg2LjY1MTUgMzQuOTUxNkw4MSAzNi40NjU4TDg1LjUzOTQgNTMuNDA3N0w5MS4xOTA4IDUxLjg5MzVMODYuNjUxNSAzNC45NTE2WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTkwLjc4NzMgMjcuODEzM0w3OS40ODQ0IDMwLjg0MThMODAuOTk4NiAzNi40OTMzTDkyLjMwMTYgMzMuNDY0OEw5MC43ODczIDI3LjgxMzNaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNOTcuOTYxMSAzMS45NDkzTDkyLjMxMDUgMzMuNDYzOUw5My44MjUxIDM5LjExNDRMOTkuNDc1NiAzNy41OTk4TDk3Ljk2MTEgMzEuOTQ5M1oiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik0xMDUuMTQ3IDM2LjA2ODFMOTkuNDk0MSAzNy41ODJMMTEwLjA4OSA3Ny4xNDI2TDExNS43NDIgNzUuNjI4N0wxMDUuMTQ3IDM2LjA2ODFaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNMTEwLjA3NiA3Ny4xMjhMMTA0LjQyNiA3OC42NDI2TDEwOC45NyA5NS41OTYxTDExNC42MjEgOTQuMDgxNUwxMTAuMDc2IDc3LjEyOFoiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik0xMDguOTY0IDk1LjYyNjhMMTAzLjMxMiA5Ny4xNDE2TDEwNy44NTYgMTE0LjA5NEwxMTMuNTA4IDExMi41NzlMMTA4Ljk2NCA5NS42MjY4WiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTEwNi4zMzEgMTA4LjQzN0w1NS40NzI3IDEyMi4wNjNMNTYuOTg2OSAxMjcuNzE1TDEwNy44NDUgMTE0LjA4OEwxMDYuMzMxIDEwOC40MzdaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNMzMuMTcwMSA2MS4zOTMyTDI3LjUxOTUgNjIuOTA3MkwyOS4wMzM1IDY4LjU1NzdMMzQuNjg0IDY3LjA0MzhMMzMuMTcwMSA2MS4zOTMyWiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTI2LjAwMzMgNTcuMjc1Nkw5LjA0ODgzIDYxLjgxODRMMTAuNTYyOCA2Ny40Njg5TDI3LjUxNzMgNjIuOTI2MkwyNi4wMDMzIDU3LjI3NTZaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNMTYuMjE5OSA2NS45NjI3TDEwLjU2ODQgNjcuNDc3NUwxMy41OTc3IDc4Ljc3OTVMMTkuMjQ5MiA3Ny4yNjQ3TDE2LjIxOTkgNjUuOTYyN1oiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik0yNC44OTE3IDc1Ljc1NDNMMTkuMjQwMiA3Ny4yNjg2TDIwLjc1NDUgODIuOTJMMjYuNDA1OSA4MS40MDU4TDI0Ljg5MTcgNzUuNzU0M1oiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik0zMi4wNTc3IDc5Ljg5MUwyNi40MDYyIDgxLjQwNTNMMjkuNDM0NSA5Mi43MDczTDM1LjA4NTkgOTEuMTkzTDMyLjA1NzcgNzkuODkxWiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTQwLjc0MDQgODkuNjU0TDM1LjA4OTggOTEuMTY4TDM4LjExODEgMTAyLjQ3TDQzLjc2ODYgMTAwLjk1Nkw0MC43NDA0IDg5LjY1NFoiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik00OS40MjEgOTkuNDM0TDQzLjc2OTUgMTAwLjk0OEw0Ni43OTc3IDExMi4yNUw1Mi40NDkyIDExMC43MzZMNDkuNDIxIDk5LjQzNFoiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik01OC4xMDI2IDEwOS4yMjFMNTIuNDUxMiAxMTAuNzM1TDU1LjQ3OTQgMTIyLjAzN0w2MS4xMzA5IDEyMC41MjNMNTguMTAyNiAxMDkuMjIxWiIgZmlsbD0iYmxhY2siLz4KPC9zdmc+') 16 16, pointer !important;
    transform: translateX(-4px) scale(1.02);
    background: rgba(37, 99, 235, 0.08);
    border-color: rgba(37, 99, 235, 0.2);
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    min-height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    background: radial-gradient(circle at 10% 20%, #0f172a, #020617);
    padding: 1.8rem;
}

.resume-card {
    max-width: 1050px;
    width: 100%;
    background: rgba(15, 23, 42, 0.6);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-radius: 3rem;
    padding: 2rem 2.5rem;
    box-shadow: 0 30px 60px -20px rgba(0, 0, 0, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.03);
    transition: 0.3s;
}

.header-section {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.8rem;
    padding-bottom: 1.2rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.04);
    gap: 1rem;
    flex-wrap: wrap;
}

.header-left {
    display: flex;
    align-items: center;
    gap: 0.8rem;
}

.avatar-small {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    flex-shrink: 0;
    background: linear-gradient(135deg, #2563eb, #7c3aed);
    padding: 2px;
    box-shadow: 0 8px 20px -8px rgba(37, 99, 235, 0.3);
}

.avatar-small img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid #0f172a;
    background: #1e293b;
    display: block;
}

.header-info {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
}

.header-name {
    font-size: 1.1rem;
    font-weight: 600;
    color: #f0f9ff;
    letter-spacing: -0.3px;
    line-height: 1.2;
}

.header-title {
    font-size: 0.7rem;
    color: #94a3b8;
    background: rgba(37, 99, 235, 0.1);
    padding: 0.1rem 0.6rem;
    border-radius: 20px;
    border: 1px solid rgba(37, 99, 235, 0.08);
    display: inline-block;
    width: fit-content;
}

.header-title i {
    color: #60a5fa;
}

.github-link {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    color: #94a3b8;
    text-decoration: none;
    font-size: 0.85rem;
    padding: 0.4rem 1rem 0.4rem 0.8rem;
    border-radius: 40px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.05);
    transition: all 0.25s ease;
    flex-shrink: 0;
}

.github-link:hover {
    color: #e2e8f0;
    background: rgba(37, 99, 235, 0.08);
    border-color: rgba(37, 99, 235, 0.2);
    transform: translateY(-2px);
    box-shadow: 0 8px 25px -10px rgba(37, 99, 235, 0.2);
}

.github-link i {
    font-size: 1.1rem;
}

.github-link i.fa-github {
    color: #cbd5e1;
}

.github-link:hover i.fa-github {
    color: #ffffff;
}

.skills-wrapper {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 2rem 3rem;
}

.skill-list {
    flex: 1;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 0.7rem 1rem;
    min-width: 200px;
    width: 100%;
}

.skill-item {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.4rem 0.8rem 0.4rem 0.6rem;
    background: rgba(255, 255, 255, 0.02);
    border-radius: 40px;
    border: 1px solid rgba(255, 255, 255, 0.03);
    transition: 0.2s ease;
    cursor: default;
    backdrop-filter: blur(2px);
    font-size: 0.85rem;
}

.skill-item:hover {
    background: rgba(37, 99, 235, 0.08);
    border-color: rgba(37, 99, 235, 0.2);
    transform: translateX(-4px) scale(1.02);
    box-shadow: 0 6px 18px -10px rgba(37, 99, 235, 0.25);
}

.skill-icon {
    width: 26px;
    height: 26px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: rgba(255, 255, 255, 0.02);
    border-radius: 30px;
    color: #94a3b8;
    font-size: 0.8rem;
    transition: 0.2s;
    flex-shrink: 0;
}

.skill-item:hover .skill-icon {
    color: #60a5fa;
    background: rgba(37, 99, 235, 0.15);
}

.skill-name {
    color: #e2e8f0;
    font-weight: 400;
    font-size: 0.8rem;
    flex: 1;
    white-space: nowrap;
}

.skill-tooltip {
    position: fixed;
    background: rgba(15, 23, 42, 0.95);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(37, 99, 235, 0.25);
    border-radius: 16px;
    padding: 1rem 1.4rem;
    min-width: 180px;
    max-width: 280px;
    box-shadow: 0 20px 50px -12px rgba(0, 0, 0, 0.8), 0 0 0 1px rgba(37, 99, 235, 0.05);
    pointer-events: none;
    z-index: 9999;
    opacity: 0;
    transform: scale(0.92) translateY(8px);
    transition: opacity 0.2s ease, transform 0.2s ease;
    display: none;
    color: #e2e8f0;
}

.skill-tooltip.visible {
    opacity: 1;
    transform: scale(1) translateY(0);
    display: block;
}

.skill-tooltip .tooltip-title {
    font-size: 0.85rem;
    font-weight: 600;
    color: #93bbfc;
    margin-bottom: 0.6rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    padding-bottom: 0.4rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.skill-tooltip .tooltip-title i {
    color: #60a5fa;
}

.skill-tooltip .tooltip-items {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.skill-tooltip .tooltip-item {
    background: rgba(37, 99, 235, 0.08);
    border: 1px solid rgba(37, 99, 235, 0.1);
    border-radius: 20px;
    padding: 0.15rem 0.7rem;
    font-size: 0.7rem;
    color: #cbd5e1;
    white-space: nowrap;
}

.skill-tooltip .tooltip-item.highlight {
    background: rgba(37, 99, 235, 0.15);
    border-color: rgba(37, 99, 235, 0.25);
    color: #93bbfc;
}

.extra-section {
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid rgba(255, 255, 255, 0.03);
    display: flex;
    flex-wrap: wrap;
    gap: 1.8rem 3rem;
    color: #94a3b8;
    font-size: 0.9rem;
}

.extra-block {
    display: flex;
    align-items: center;
    gap: 0.8rem;
}

.extra-block i {
    color: #3b82f6;
    font-size: 1.1rem;
    width: 28px;
    text-align: center;
}

.extra-block span {
    color: #cbd5e1;
}

.extra-block .highlight {
    color: #e2e8f0;
    font-weight: 400;
    background: rgba(255, 255, 255, 0.02);
    padding: 0.1rem 0.8rem;
    border-radius: 40px;
    border: 1px solid rgba(255, 255, 255, 0.02);
}

.footer-note {
    margin-top: 1.5rem;
    text-align: center;
    color: #334155;
    font-size: 0.7rem;
    letter-spacing: 0.5px;
    opacity: 0.4;
}

@media (max-width: 780px) {
    .resume-card {
        padding: 1.5rem;
        border-radius: 2rem;
    }

    .header-section {
        flex-direction: column;
        align-items: center;
        gap: 0.8rem;
    }

    .header-left {
        width: 100%;
        justify-content: center;
    }

    .github-link {
        width: 100%;
        justify-content: center;
    }

    .skills-wrapper {
        flex-direction: column;
        align-items: center;
    }

    .skill-list {
        grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
        width: 100%;
    }

    .extra-section {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.8rem;
    }
}

@media (max-width: 480px) {
    .skill-list {
        grid-template-columns: 1fr 1fr;
    }

    .skill-name {
        font-size: 0.75rem;
    }

    .skill-tooltip {
        min-width: 150px;
        max-width: 220px;
        padding: 0.8rem 1rem;
    }

    .github-link span {
        display: none;
    }

    .header-name {
        font-size: 0.95rem;
    }

    .avatar-small {
        width: 40px;
        height: 40px;
    }
}