:root{font-family:Poppins,sans-serif;font-size:16px;line-height:24px;font-weight:500;color-scheme:light dark;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;--color-text-light: #242424;--color-background-light: #fff;--color-background-icon-light: #f4f4f4;--color-text-dark: #fff;--color-background-dark: #242424;--color-background-icon-dark: #454545}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}.light-theme{--color-text: var(--color-text-light);--color-background: var(--color-background-light);--color-background-icon: var(--color-background-icon-light)}.dark-theme{--color-text: var(--color-text-dark);--color-background: var(--color-background-dark);--color-background-icon: var(--color-background-icon-dark)}.experience{position:fixed;width:100vw;height:100vh;z-index:-1}.experience-canvas{width:100%;height:100%}.experience-canvas{touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}@media (max-width: 480px){.experience-canvas{touch-action:manipulation;-webkit-tap-highlight-color:transparent}body{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}header{padding:8px 10px}#logo img{width:40px;height:40px}.side-nav{right:15px;bottom:20px;font-size:12px}.side-nav li a{padding:8px 6px}.side-nav li a svg{width:18px;height:18px}.contact-menu__dropdown{width:280px;right:40px;padding:15px}.footer-buttons{flex-wrap:wrap;gap:8px;justify-content:center}.cv-download-btn,.github-btn,.linkedin-btn,.telegram-btn{padding:4px 8px;font-size:9px}.cv-download-btn svg,.github-btn svg,.linkedin-btn svg,.telegram-btn svg{width:12px;height:12px}}@media (min-width: 481px) and (max-width: 768px){.experience-canvas{touch-action:manipulation;-webkit-tap-highlight-color:transparent}body{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}header{padding:10px 12px}#logo img{width:50px;height:50px}.side-nav{right:20px;bottom:30px;font-size:13px}.side-nav li a{padding:9px 7px}.side-nav li a svg{width:20px;height:20px}.contact-menu__dropdown{width:300px;right:50px;padding:18px}.footer-buttons{gap:10px}.cv-download-btn,.github-btn,.linkedin-btn,.telegram-btn{padding:5px 9px;font-size:10px}}@media (min-width: 769px) and (max-width: 992px){.experience-canvas{touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}header{padding:12px 16px}#logo img{width:60px;height:60px}.side-nav{right:25px;bottom:35px;font-size:14px}.side-nav li a{padding:10px 8px}.side-nav li a svg{width:22px;height:22px}.contact-menu__dropdown{width:320px;right:60px;padding:20px}}@media (min-width: 993px){.experience-canvas{touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}}header{position:fixed;top:0;left:0;width:100%;display:flex;align-items:center;padding:10px 14px;z-index:2}.main-nav{flex-grow:1;text-align:right}.dark-theme #logo img{filter:brightness(0) invert(1)}.main-nav ul,.side-nav ul{margin:0;padding:0}.main-nav li,.side-nav li{display:inline-block}.side-nav li+li{margin-top:10px}.main-nav li a{color:var(--color-text);display:flex;text-decoration:none;padding:8px 16px}.main-nav li a svg{margin-right:5px;fill:red}.side-nav{position:fixed;bottom:40px;right:30px;writing-mode:vertical-rl;font-size:14px;z-index:2}.side-nav li a,.play-game-link{padding:10px 8px;color:var(--color-text);display:inline-block;text-decoration:none;background-color:var(--color-background);position:relative}.side-nav li>a:after,.play-game-link :after{content:"";position:absolute;top:-3px;left:-3px;width:calc(100% + 6px);height:calc(100% + 6px);border:1px solid var(--color-background)}.side-nav li a svg{fill:var(--color-text)}.play-game-link{position:fixed;bottom:50px;left:30px;writing-mode:vertical-rl;transform:rotate(180deg)}.play-game-link svg{transform:rotate(90deg);fill:var(--color-text)}.side-nav li:hover>a,.side-nav li a:focus,.play-game-link:hover,.play-game-link:focus{opacity:.75}.contact-menu{position:relative;margin-top:24px}.contact-menu__dropdown{position:absolute;bottom:0;right:56px;background-color:var(--color-background);border-radius:8px;writing-mode:lr-tb;color:var(--color-text);padding:20px;width:300px;text-align:center;display:none;box-shadow:-2px 0 40px #0000001a}.contact-menu__dropdown--open{display:block}.contact-menu__dropdown:before{content:"";position:absolute;bottom:24px;left:100%;border:10px solid transparent;border-left-color:var(--color-background)}.contact-menu__dropdown>svg{fill:var(--color-text)}.side-nav .contact-menu__dropdown a{padding:0;transition:all ease .2s}.side-nav .contact-menu__dropdown a:hover{opacity:.8}.contact-menu__dropdown .seperator{display:flex;align-items:center;padding:16px 0}#contact-email{display:flex;justify-content:center;align-items:center}#contact-email span{margin-right:4px}.seperator .line{flex-grow:1;border-bottom:1px solid #eee}.seperator .text{padding:0 8px}.social-icons li+li{margin-left:8px}.social-icons li a{background-color:var(--color-background-icon);border-radius:50%;width:35px;height:35px;display:flex;justify-content:center;align-items:center}.social-icons li a svg{fill:var(--color-text)}.section--about{display:none}.section--experience{display:none;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:100;color:var(--color-text);text-align:center;max-width:600px;padding:20px}.experience-item{margin-bottom:30px;padding:20px;background:rgba(255,255,255,.1);border-radius:10px;backdrop-filter:blur(10px)}.experience-item h3{margin:0 0 10px;font-size:1.5em;color:var(--color-text)}.experience-item .company{font-weight:500;margin:5px 0;color:var(--color-text);opacity:.8}.experience-item .duration{font-size:.9em;margin:5px 0;color:var(--color-text);opacity:.6}.experience-item .description{margin:10px 0 0;line-height:1.6;color:var(--color-text);opacity:.9}#close-btn{position:fixed;bottom:5%;left:calc(50% - 20px);fill:#fff;background-color:#000c;border-radius:50%;padding:6px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0000004d;backdrop-filter:blur(10px);transition:all .3s ease}#close-btn svg{margin-left:2px;margin-top:1px}#close-btn:hover{background-color:#000000e6;transform:scale(1.1);box-shadow:0 6px 16px #0006}footer{position:fixed;bottom:5px;left:0;width:100%;text-align:center;color:var(--color-text);font-size:12px;z-index:1;transition:opacity .3s ease}footer.hidden{opacity:0;pointer-events:none}.footer-content{display:flex;flex-direction:column;align-items:center;gap:6px}.footer-content p{margin:0}.footer-buttons{display:flex;gap:15px;align-items:center}.cv-download-btn,.github-btn,.linkedin-btn,.telegram-btn{display:flex;align-items:center;gap:6px;padding:6px 10px;background-color:transparent;color:var(--color-text);text-decoration:none;border-radius:6px;font-size:11px;font-weight:500;transition:all .3s ease;border:1px solid var(--color-text)}.cv-download-btn:hover,.github-btn:hover,.linkedin-btn:hover,.telegram-btn:hover{background-color:#ffffff1a;color:var(--color-text);transform:translateY(-2px);border-color:#ffffff4d}.cv-download-btn svg,.github-btn svg{width:14px;height:14px}.cursor{width:30px;height:30px;margin-left:-15px;margin-top:-15px;border:1px solid #fff;border-radius:50%;z-index:300;display:flex;justify-content:center;align-items:center}.cursor-circle{width:18px;height:18px;background-color:#000;border-radius:50%}@media (max-width: 992px){header{padding:6px 12px}#logo img{width:50px;height:50px}.main-nav li a{padding:6px 10px}.side-nav{right:22px}footer{font-size:10px}.footer-buttons{gap:10px;flex-wrap:wrap}.cv-download-btn,.github-btn,.linkedin-btn,.telegram-btn{padding:5px 8px;font-size:10px;min-width:auto}.cv-download-btn svg,.github-btn svg,.linkedin-btn svg,.telegram-btn svg{width:12px;height:12px}.project-details{max-width:90vw;padding:20px;margin:10px}.project-details h3{font-size:20px}.project-details p{font-size:14px}.project-details .project-links{flex-direction:column;gap:10px}.project-details .project-links a{padding:8px 16px;font-size:14px}}.dg.ac{z-index:100!important}#loader-wrapper{position:fixed;top:0;left:0;width:100%;height:100%;z-index:200;background-color:#fff;display:flex;align-items:center;justify-content:center}.loader{width:48px;height:48px;margin:auto;position:relative}.loader:before{content:"";width:48px;height:5px;background:#f0808050;position:absolute;top:60px;left:0;border-radius:50%;animation:shadow324 .5s linear infinite}.loader:after{content:"";width:100%;height:100%;background:#f08080;position:absolute;top:0;left:0;border-radius:4px;animation:jump7456 .5s linear infinite}@keyframes jump7456{15%{border-bottom-right-radius:3px}25%{transform:translateY(9px) rotate(22.5deg)}50%{transform:translateY(18px) scaleY(.9) rotate(45deg);border-bottom-right-radius:40px}75%{transform:translateY(9px) rotate(67.5deg)}to{transform:translateY(0) rotate(90deg)}}@keyframes shadow324{0%,to{transform:scale(1)}50%{transform:scaleX(1.2)}}.contact-form{display:flex;flex-direction:column;gap:15px;width:100%;max-width:300px;margin:0 auto}.form-group{display:flex;flex-direction:column}.form-group input,.form-group textarea{padding:10px 12px;border:1px solid #bbb;border-radius:6px;background-color:#ffffffe6;color:#000;font-size:14px;transition:all .3s ease;backdrop-filter:blur(10px)}.form-group input::placeholder,.form-group textarea::placeholder{color:#999}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#999;background-color:#fff;box-shadow:0 0 0 2px #9999994d}.form-group textarea{resize:vertical;min-height:80px;font-family:inherit}.send-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;background-color:#000;color:#fff;border:1px solid #000;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s ease;margin-top:10px}.send-btn:hover{background-color:#333;border-color:#333;transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.send-btn svg{width:16px;height:16px}.project-details{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(0,0,0,.95);color:#fff;padding:30px;border-radius:15px;max-width:500px;z-index:2000;opacity:0;visibility:hidden;transition:all .3s ease;backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);box-shadow:0 20px 40px #00000080}.project-details.active{opacity:1;visibility:visible}.project-details h3{margin:0 0 15px;font-size:24px;color:#fff;text-align:center}.project-details p{margin:0 0 20px;line-height:1.6;color:#ccc}.project-details .project-links{display:flex;gap:15px;justify-content:center}.project-details .project-links a{padding:10px 20px;background:rgba(255,255,255,.1);color:#fff;text-decoration:none;border-radius:8px;border:1px solid rgba(255,255,255,.3);transition:all .3s ease}.project-details .project-links a:hover{background:rgba(255,255,255,.2);transform:translateY(-2px)}.project-details .close-details{position:absolute;top:15px;right:20px;background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:5px;border-radius:50%;transition:all .3s ease}.project-details .close-details:hover{background:rgba(255,255,255,.1);transform:scale(1.1)}.project-hover{cursor:pointer}.project-border{position:relative}.project-border:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(45deg,#ff6b6b,#4ecdc4,#45b7d1,#96ceb4);border-radius:8px;z-index:-1;opacity:0;transition:opacity .3s ease}.project-border:hover:before{opacity:1}.loading-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin .8s linear infinite;margin-right:8px;vertical-align:middle}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.field-error{color:#ff4757;font-size:.8em;margin-top:4px}.success-message{background:#2ed573;color:#fff;padding:12px 20px;border-radius:8px;margin-top:15px;text-align:center;font-weight:500;z-index:1000;position:relative;display:block;width:100%;box-sizing:border-box;animation:slideIn .3s ease-out}.error-message{background:#ff4757;color:#fff;padding:12px 20px;border-radius:8px;margin-top:15px;text-align:center;font-weight:500;z-index:1000;position:relative;display:block;width:100%;box-sizing:border-box;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
