@import"https://fonts.googleapis.com/css2?family=Press+Start+2P&family=Pixelify+Sans:wght@400;700&family=VT323&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root.light{--background-color: #ffffff;--text-color: #213547;--primary-color: #646cff;--primary-hover: #747bff;--button-bg: #f9f9f9;--button-border: #e0e0e0;--accent-color: #535bf2}:root.dark{--background-color: #000000;--text-color: rgba(255, 255, 255, .87);--primary-color: #646cff;--primary-hover: #535bf2;--button-bg: #111111;--button-border: #222222;--accent-color: #747bff}html,body{margin:0;padding:0;min-width:320px;min-height:100vh;overflow:hidden}body{background-color:var(--background-color);color:var(--text-color);transition:background-color .3s ease,color .3s ease}a{font-weight:500;color:var(--primary-color);text-decoration:inherit}a:hover{color:var(--primary-hover)}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid var(--button-border);padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:var(--button-bg);color:var(--text-color);cursor:pointer;transition:border-color .25s,background-color .3s ease}button:hover{border-color:var(--primary-color)}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}*{margin:0;padding:0;box-sizing:border-box;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.app-container{min-height:100vh;width:100%;padding:2rem}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em var(--primary-color))}.logo.react:hover{filter:drop-shadow(0 0 2em var(--accent-color))}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){.logo.react{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:var(--text-color);opacity:.8}code{background-color:var(--button-bg);padding:.2em .4em;border-radius:4px;font-family:monospace}.theme-toggle{background:none;border:none;cursor:pointer;padding:.5rem;font-size:1.5rem;transition:transform .2s ease;position:fixed;top:1rem;right:1rem;z-index:1000;outline:none}.theme-toggle:hover{transform:scale(1.1)}.theme-toggle:focus{outline:none}.theme-toggle:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.stars-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;perspective:1000px;will-change:transform}.star-layer{position:absolute;width:100%;height:100%;transform-style:preserve-3d;will-change:transform}.star{position:absolute;width:var(--size);height:var(--size);left:var(--left);top:var(--top);border-radius:50%;will-change:transform,opacity;animation:starTravel var(--duration) linear infinite;animation-delay:var(--delay);transform-style:preserve-3d;backface-visibility:hidden}.star.dark{background-color:#fff;box-shadow:0 0 2px #fff}.star.light{background-color:#000;box-shadow:0 0 2px #000}@keyframes starTravel{0%{transform:translateZ(1000px) scale(0);opacity:0}5%{opacity:1}95%{opacity:1}to{transform:translateZ(0) scale(1);opacity:0}}.box-grid-container{display:flex;flex-direction:column;align-items:center;gap:2rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.box-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;padding:2rem;width:100%;max-width:650px;min-width:400px;position:relative;z-index:1}.reset-button{padding:.8rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;animation:fadeIn .3s ease forwards}.reset-button.dark{background-color:transparent;border:2px solid white;color:#fff}.reset-button.dark:hover{background-color:#fff;color:#535bf2}.reset-button.light{background-color:transparent;border:2px solid black;color:#000}.reset-button.light:hover{background-color:#000;color:#535bf2}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.box{aspect-ratio:1;min-width:170px;min-height:120px;border:2px solid;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:.95rem;transition:all .3s ease;text-align:center;padding:.75rem;word-wrap:break-word;overflow-wrap:break-word;cursor:pointer;animation:slideIn 1s ease forwards;opacity:0;position:relative}.box-link{text-decoration:none;color:inherit;width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:absolute;top:0;left:0;right:0;bottom:0;border-radius:10px;padding:.5rem;font-family:monospace}.box:nth-child(1){animation-delay:.2s;transform:translate(-100vw)}.box:nth-child(2){animation-delay:.4s;transform:translate(100vw)}.box:nth-child(3){animation-delay:.6s;transform:translate(-100vw)}.box:nth-child(4){animation-delay:.8s;transform:translate(100vw)}.box.exit:nth-child(1){animation:slideOutLeft .5s ease forwards}.box.exit:nth-child(2){animation:slideOutRight .5s ease forwards}.box.exit:nth-child(3){animation:slideOutLeft .5s ease forwards}.box.exit:nth-child(4){animation:slideOutRight .5s ease forwards}@keyframes slideIn{0%{opacity:0}to{opacity:1;transform:translate(0)}}@keyframes slideOutLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-100vw)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100vw)}}.box.dark{border-color:#fff;color:#fff;background-color:transparent}.box.dark:hover,.box.dark .box-link:hover{background-color:#fff;color:#535bf2}.box.light{border-color:#000;color:#000;background-color:transparent}.box.light:hover,.box.light .box-link:hover{background-color:#000;color:#535bf2}.app-container{min-height:100vh;width:100%;padding:2rem;position:relative}.back-button{position:fixed;top:1.5rem;left:1.5rem;z-index:1000;background:none;border:none;cursor:pointer;padding:.5rem;width:3rem;height:3rem;border-radius:50%;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.back-button.dark{background:#ffffff1a;box-shadow:0 0 15px #fff3}.back-button.light{background:#0000001a;box-shadow:0 0 15px #0003}.back-button:hover{transform:scale(1.1)}.back-button.dark:hover{background:#fff3;box-shadow:0 0 20px #ffffff4d}.back-button.light:hover{background:#0003;box-shadow:0 0 20px #0000004d}.arrow{font-size:1.5rem;transition:transform .3s ease}.back-button:hover .arrow{transform:translate(-3px)}.back-button.dark .arrow{color:#fff;text-shadow:0 0 10px rgba(255,255,255,.5)}.back-button.light .arrow{color:#000;text-shadow:0 0 10px rgba(0,0,0,.3)}.static-stars-container{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;overflow:hidden;background-color:#000}.static-star{position:absolute;border-radius:50%;opacity:.8;animation:starBlink linear infinite;background-color:#fff;box-shadow:0 0 4px #fffc}@keyframes starBlink{0%,to{opacity:.8;transform:scale(1)}50%{opacity:.2;transform:scale(.8)}}.portfolio-page-container{position:relative;width:100vw;height:100vh;overflow:auto;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;font-family:"Press Start 2P",VT323,Pixelify Sans,Courier New,monospace;letter-spacing:.3px;-webkit-font-smoothing:none;-moz-osx-font-smoothing:grayscale}.crt-layer{position:relative;width:80%;height:90%;min-height:300px;border-radius:12px;overflow:auto;z-index:5;border:3px solid rgba(80,255,120,.35);box-shadow:0 0 24px #50ff782e,inset 0 0 40px #28c85a1f;background:repeating-linear-gradient(to bottom,#0000,#0000 2px,#0000001f,#0000001f 4px),linear-gradient(0deg,#143c1473,#143c1473);-webkit-backdrop-filter:blur(1px) saturate(105%);backdrop-filter:blur(1px) saturate(105%);margin-top:2rem}.crt-layer{overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch}.crt-layer::-webkit-scrollbar{height:8px;width:8px}.crt-layer::-webkit-scrollbar-track{background:#0003}.crt-layer::-webkit-scrollbar-thumb{background:#50ff7873;border-radius:6px}.crt-layer::-webkit-scrollbar-thumb:hover{background:#50ff78a6}.rpg-dialogue{position:absolute;top:20px;right:220px;z-index:14;animation:floatY 4s ease-in-out infinite}.rpg-inner{position:relative;padding:12px 14px;background:repeating-linear-gradient(to bottom,#000f14d9,#000f14d9 2px,#000000e6,#000000e6 4px);border:2px solid #00eaff;box-shadow:0 0 10px #00eaff99,0 0 24px #00eaff59,inset 0 0 12px #00eaff33;image-rendering:pixelated}.rpg-inner:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border:2px solid rgba(0,234,255,.5);filter:drop-shadow(0 0 6px rgba(0,234,255,.5));pointer-events:none}.rpg-text{color:#bffaff;font-size:10px;line-height:1.5;max-width:320px;white-space:pre-wrap;animation:crtFlicker 6s infinite steps(60)}.rpg-text .cursor{display:inline-block;margin-left:4px;width:6px;animation:blink .9s step-end infinite}.rpg-pointer{position:absolute;top:100%;right:18px;width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:10px solid rgba(0,15,20,.9);filter:drop-shadow(0 -2px 4px rgba(0,234,255,.5))}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes crtFlicker{0%,to{opacity:.98}50%{opacity:.94}}@keyframes floatY{0%{transform:translateY(0)}50%{transform:translateY(-4px)}to{transform:translateY(0)}}@media (max-width: 900px){.rpg-dialogue{right:140px}.rpg-text{max-width:240px;font-size:9px}}@media (max-width: 700px){.rpg-dialogue{display:none}}.photo-frame{position:absolute;top:20px;right:20px;width:180px;height:200px;border:3px solid #a15035;border-radius:10px;box-shadow:0 0 10px #a1503559,inset 0 0 18px #a150352e;background:linear-gradient(180deg,#a150350f,#0000);overflow:hidden;z-index:12;display:flex;align-items:center;justify-content:center}.photo-frame .photo{width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block}.photo-email{position:absolute;top:228px;right:20px;z-index:12;font-family:monospace;font-size:.6rem}.photo-email a{color:#ffd54a;text-decoration:none;text-shadow:0 0 8px rgba(255,213,74,.35);font-family:"Press Start 2P",VT323,Pixelify Sans,Courier New,monospace!important;letter-spacing:.5px;-webkit-font-smoothing:none;-moz-osx-font-smoothing:grayscale}.crt-layer .photo-email a{font-family:"Press Start 2P",VT323,Pixelify Sans,Courier New,monospace!important}.photo-email a:hover{text-decoration:underline}@media (max-width: 768px){.photo-frame{width:130px;height:190px;top:10px;right:10px}.photo-email{top:206px;right:10px;font-size:.9rem}}.social-icons{position:relative;display:flex;flex-direction:column;gap:10px;width:100%;align-items:center;padding-top:70px}.experience{position:relative;margin:100px 16px 20px;padding:14px 16px;color:#d8ffe9;width:calc(100% - 32px);max-width:none;box-sizing:border-box}.experience h2{margin:0 0 10px;font-size:30px;color:#a4fff1;text-shadow:0 0 8px rgba(0,234,255,.35)}.exp-item{background:linear-gradient(180deg,#0a1e1473,#00000059);border:2px solid rgba(80,255,120,.35);box-shadow:0 0 16px #50ff782e,inset 0 0 18px #28c85a1f;border-radius:8px;padding:12px 14px}.exp-header{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.exp-header .company{font-weight:700;color:#baffc7}.exp-header .dates{font-size:11px;opacity:.85}.title{margin-top:6px;margin-bottom:6px;font-size:12px}.bullets{margin:0;padding-left:16px;display:grid;gap:8px}.bullets li{line-height:1.6}.used{margin-top:4px;font-size:11px;color:#c9ffd7;opacity:.95}@media (max-width: 900px){.experience{margin:220px 12px 20px;padding:12px;width:calc(100% - 24px)}.experience h2{font-size:13px}.title{font-size:11.5px}}@media (max-width: 700px){.experience{margin:180px 10px 18px;width:calc(100% - 20px)}}.domain{position:relative;margin:10px 16px 24px;padding:14px 16px;color:#d8ffe9;width:calc(100% - 32px);max-width:none;box-sizing:border-box}.domain h2{margin:0 0 10px;font-size:30px;color:#a4fff1;text-shadow:0 0 8px rgba(0,234,255,.35)}.domain-item{background:linear-gradient(180deg,#0a1e1473,#00000059);border:2px solid rgba(80,255,120,.35);box-shadow:0 0 16px #50ff782e,inset 0 0 18px #28c85a1f;border-radius:8px;padding:12px 14px}.domain-bullets{margin:0;padding-left:16px;display:grid;gap:8px}.domain-bullets li{line-height:1.6}.projects{position:relative;margin:10px 16px 20px;padding:14px 16px;color:#d8ffe9;width:calc(100% - 32px);box-sizing:border-box}.projects h2{margin:0 0 14px;font-size:30px;color:#a4fff1;text-shadow:0 0 8px rgba(0,234,255,.35)}.project-scroll{display:flex;gap:18px;overflow-x:auto;padding-block:10px;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:rgba(80,255,120,.35) transparent}.project-card{flex:0 0 300px;background:linear-gradient(180deg,#0a1e1473,#00000059);border:2px solid rgba(80,255,120,.35);box-shadow:0 0 16px #50ff782e,inset 0 0 18px #28c85a1f;border-radius:8px;padding:16px;transition:transform .25s ease,box-shadow .25s ease}.project-card:hover{transform:translateY(-6px);box-shadow:0 0 22px #50ff7866,inset 0 0 22px #28c85a33}.project-title{font-size:16px;color:#baffc7;margin-bottom:8px}.project-overview{font-size:13px;line-height:1.6;color:#d6ffe0;opacity:.9;margin-bottom:10px}.project-links{display:flex;gap:10px}.project-links a{color:#89ffc0;font-size:12.5px;text-decoration:none;border-bottom:1px dashed rgba(80,255,120,.4);transition:color .25s,border-color .25s}.project-links a:hover{color:#fff;border-color:#fff}.project-scroll::-webkit-scrollbar{height:8px}.project-scroll::-webkit-scrollbar-thumb{background-color:#50ff7859;border-radius:8px}.project-scroll::-webkit-scrollbar-track{background:transparent}@media (max-width: 900px){.projects{margin:220px 12px 20px;padding:12px}.projects h2{font-size:20px}.project-card{flex:0 0 260px}}@media (max-width: 700px){.projects{margin:180px 10px 18px}.project-card{flex:0 0 240px}}.social-icons .row{display:flex;gap:16px}.social-icons .row-top,.social-icons .row-bottom{justify-content:center}.icon-circle{width:60px;height:60px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:#ffd54a;border:2px solid rgba(255,213,74,.9);box-shadow:0 0 12px #ffd54a73,inset 0 0 10px #ffd54a33;background:radial-gradient(circle at 50% 50%,#ffd54a14,#0000 60%),transparent;position:relative}.icon-circle:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(to bottom,#ffffff0d,#ffffff0d,#0000,#0000 3px);border-radius:50%;pointer-events:none}.icon{width:28px;height:28px;display:block;object-fit:contain}.bootdev{font-weight:800;font-size:22px;letter-spacing:.5px}@media (max-width: 768px){.icon-circle{width:48px;height:48px}.icon{width:22px;height:22px}.social-icons{padding-left:160px}}.hawk-img{position:absolute;top:20px;left:80px;margin-left:23px;max-width:150px;max-height:150px;z-index:10;border:2px solid transparent;transition:all .3s ease}.hawk-img:hover{transform:scale(1.05);border-color:#535bf2}.name-img{position:absolute;top:180px;left:60px;max-width:200px;max-height:100px;z-index:10;border:2px solid transparent;transition:all .3s ease}.crt-layer .hawk-img{left:20px;top:20px}.crt-layer .name-img{left:20px;top:180px}.name-img:hover{transform:scale(1.05);border-color:#535bf2}.static-top-left{position:absolute;top:20px;left:80px}.static-below-hawk{position:absolute;top:180px;left:60px}.portfolio-page-container.dark .hawk-img,.portfolio-page-container.dark .name-img{filter:brightness(1.2)}@media (max-width: 768px){.hawk-img{max-width:100px;max-height:100px}.name-img{max-width:150px;max-height:75px;top:130px}}.cli-container{min-height:100vh;display:flex;justify-content:center;align-items:center;padding:2rem;position:relative;background-color:transparent}.terminal{width:100%;max-width:800px;height:500px;border-radius:8px;overflow:hidden;box-shadow:0 10px 30px #0003;position:relative;z-index:1}.terminal-header{background-color:#2d2d2d;padding:.8rem 1rem;display:flex;align-items:center;position:relative;height:40px}.terminal-buttons{display:flex;gap:.5rem;position:absolute;left:1rem;top:50%;transform:translateY(-50%)}.terminal-button{width:12px;height:12px;border-radius:50%;display:inline-block}.terminal-button.close{background-color:#ff5f56}.terminal-button.minimize{background-color:#ffbd2e}.terminal-button.maximize{background-color:#27c93f}.terminal-title{color:#fff;font-size:.9rem;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.terminal-content{background-color:#1e1e1e;height:calc(100% - 40px);padding:1rem;overflow-y:auto;font-family:Courier New,monospace;color:#fff}.terminal-line{margin-bottom:.5rem;white-space:pre-wrap}.command-text{color:#ffbd2e}.error-text{color:#ff5f56}.terminal-input-line{display:flex;align-items:center;gap:.5rem}.prompt{color:#0f0}.terminal-input-line input{background:transparent;border:none;color:#fff;font-family:Courier New,monospace;font-size:1rem;flex-grow:1;outline:none}.terminal-content::-webkit-scrollbar{width:8px}.terminal-content::-webkit-scrollbar-track{background:#1e1e1e}.terminal-content::-webkit-scrollbar-thumb{background:#333;border-radius:4px}.terminal-content::-webkit-scrollbar-thumb:hover{background:#444}.blog-page-inner{position:relative;min-height:100%;padding:5rem 0 3rem;box-sizing:border-box}.blog-page-inner .rpg-dialogue{position:relative;top:auto;right:auto;margin:0 16px 20px auto;max-width:fit-content;animation:floatY 4s ease-in-out infinite}.blogs-section{margin-top:0}.blog-intro{font-size:12px;line-height:1.6;color:#c8f5d8;opacity:.88;margin:0 0 14px;max-width:42em}.blog-card-list{display:flex;flex-direction:column;gap:18px;padding-block:4px;width:100%}.blogs-section .blog-card-list .blog-card{flex:none;width:100%;max-width:none;box-sizing:border-box}.blog-card-title-link{display:block;text-decoration:none;color:inherit;border-bottom:1px dashed rgba(80,255,120,.4);padding-bottom:6px;margin-bottom:10px;transition:color .25s ease,border-color .25s ease,text-shadow .25s ease}.blog-card-title-link:hover{color:#fff;border-color:#ffffff8c;text-shadow:0 0 12px rgba(80,255,120,.4)}.copyright{position:fixed;bottom:10px;left:50%;transform:translate(-50%);width:auto;text-align:center;color:#ffd54a;font-size:15px;font-family:"Press Start 2P",VT323,Pixelify Sans,monospace;letter-spacing:.8px;image-rendering:pixelated;text-shadow:0 0 6px rgba(255,213,74,.35);opacity:.85;z-index:9999}@media (max-width: 700px){.blog-page-inner{padding-top:4rem}.blog-page-inner .rpg-dialogue{margin-left:12px;margin-right:12px}}
