*{box-sizing:border-box;scrollbar-width:none;-ms-overflow-style:none;margin:0;padding:0}::-webkit-scrollbar{display:none}:root{--bg-primary:#0a0a0a;--bg-secondary:#0a0a0a;--text-primary:#fff;--text-secondary:#9ca3af;--text-tertiary:#6b7280;--border-color:#2a2a2a;--accent:#3b82f6;--card-bg:#121212;--hover-bg:#191919}.light-mode{--bg-primary:#fff;--bg-secondary:#f9fafb;--text-primary:#111827;--text-secondary:#6b7280;--text-tertiary:#9ca3af;--border-color:#e5e7eb;--accent:#3b82f6;--card-bg:#f9fafb;--hover-bg:#f3f4f6}.light-mode body{background-color:var(--bg-primary);color:var(--text-primary)}.light-mode .app{background-color:var(--bg-primary)}html{font-family:DM Mono,monospace}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary);font-family:inherit;font-size:16px;line-height:1.6;transition:background-color .3s,color .3s}button,input,textarea,select{font-family:inherit}a{color:var(--text-primary);text-decoration:none;transition:color .2s}a:hover{color:var(--text-secondary)}.navbar{z-index:1000;background-color:#0000;transition:all .3s;position:fixed;top:0;left:0;right:0}.navbar.scrolled{-webkit-backdrop-filter:blur(10px);background-color:#171717cc}.light-mode .navbar.scrolled{background-color:#fffc}.navbar-container{justify-content:center;align-items:center;max-width:700px;margin:0 auto;padding:1rem 1.5rem;display:flex}.navbar-links{align-items:center;gap:1rem;display:flex}.navbar-link{width:40px;height:40px;color:var(--text-secondary);border:1px solid var(--border-color);cursor:pointer;background-color:#0000;border-radius:.5rem;justify-content:center;align-items:center;transition:all .2s;display:flex}.navbar-link:hover{color:var(--text-primary);background-color:var(--hover-bg);border-color:var(--text-tertiary)}.theme-toggle{font:inherit}.section-container{max-width:700px;margin:0 auto;padding:4rem 1.5rem}.about.section-container{max-width:min(1280px,100%)}@media (max-width:768px){.section-container{padding:3rem 1.25rem}}.hero{text-align:center;justify-content:center;align-items:center;min-height:32vh;padding:5rem 1.5rem;display:flex}.hero-container{max-width:700px;margin:0 auto}.hero-name{color:var(--text-primary);letter-spacing:-.03em;margin-bottom:1.5rem;font-size:3rem;font-weight:600}@media (max-width:768px){.hero-name{font-size:2rem}.navbar{padding-bottom:2rem}}.hero-title{color:var(--text-secondary);margin-bottom:2.5rem;font-size:1.125rem;font-weight:400;line-height:1.6}.hero-socials{justify-content:center;gap:1rem;margin-bottom:3rem;display:flex}.hero-social-link{border:1px solid var(--border-color);width:40px;height:40px;color:var(--text-secondary);background-color:#0000;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.hero-social-link:hover{background-color:var(--hover-bg);color:var(--text-primary);border-color:var(--text-tertiary)}.contact-btn{background-color:var(--text-primary);border:1px solid var(--text-primary);color:var(--bg-primary);cursor:pointer;border-radius:.5rem;align-items:center;gap:.625rem;padding:.875rem 1.5rem;font-size:.9375rem;font-weight:500;transition:all .2s;display:inline-flex}.contact-btn:hover{color:var(--text-primary);border-color:var(--text-primary);background-color:#0000}.contact-btn-primary{background-color:var(--text-primary);border-color:var(--text-primary);color:var(--bg-primary)}.contact-btn-primary:hover{color:var(--text-primary);background-color:#0000}.profile-image-container{display:none}.section-header{margin-bottom:3rem}.section-title{color:var(--text-primary);letter-spacing:-.02em;margin-bottom:1rem;font-size:1.5rem;font-weight:400}.section-subtitle{color:var(--text-secondary);max-width:650px;font-size:1rem;line-height:1.6}.projects{padding:5rem 1.5rem}.projects-container{max-width:700px;margin:0 auto}.projects-header{text-align:left;margin-bottom:3rem}.projects-title{color:var(--text-primary);letter-spacing:-.03em;margin-bottom:1rem;font-size:2rem;font-weight:600}.projects-line{background-color:var(--text-primary);width:60px;height:3px;margin:0}.projects-grid,.experience-cards{grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:1.25rem;display:grid}@media (max-width:768px){.projects-grid,.experience-cards{grid-template-columns:1fr}}.project-card,.experience-card{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:1rem;flex-direction:column;gap:1rem;padding:1.5rem;transition:all .2s;display:flex}.project-card:hover,.experience-card:hover{border-color:var(--text-tertiary);background-color:var(--hover-bg)}.project-card-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.project-card-icon{flex:1;align-items:center;gap:.75rem;display:flex}.project-name-link{align-items:center;gap:.375rem;text-decoration:none;display:flex;position:relative}.project-card-name{color:var(--text-primary);margin:0;font-size:1.125rem;font-weight:600;position:relative}.project-card-name:after{content:"";background-color:var(--text-primary);width:0;height:1px;transition:width .3s;position:absolute;bottom:-2px;left:0}.project-name-link:hover .project-card-name:after{width:100%}.inline-external-icon{color:var(--text-tertiary);flex-shrink:0;transition:transform .3s,color .3s}.project-name-link:hover .inline-external-icon{color:var(--text-primary);transform:translate(2px,-2px)}.project-logo-bg{border-radius:.625rem;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex;overflow:hidden}.project-logo-img{object-fit:contain;width:100%;height:100%;padding:.375rem}.project-icon{font-size:1.5rem}.project-external-link{color:var(--text-tertiary);justify-content:center;align-items:center;transition:color .2s;display:flex}.project-external-link:hover{color:var(--text-primary)}.external-link-icon{color:var(--text-tertiary);margin-left:auto}.project-updated-badge{color:#60a5fa;background-color:#3b82f61a;border:1px solid #3b82f64d;border-radius:.375rem;padding:.25rem .625rem;font-size:.75rem;font-weight:500}.project-github-link{color:var(--text-tertiary);justify-content:center;align-items:center;transition:color .2s;display:flex}.project-github-link:hover{color:var(--text-primary)}.project-card-description{color:var(--text-secondary);margin:0;font-size:.9375rem;line-height:1.6}.project-card-tags{flex-wrap:wrap;gap:.5rem;display:flex}.project-tag{border:1px solid var(--border-color);color:var(--text-secondary);background-color:#ffffff0d;border-radius:.5rem;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.8125rem;font-weight:400;display:inline-flex}.tag-icon{font-size:1rem}.project-header,.experience-card-header{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.project-logo,.experience-card-logo-bg{border-radius:.625rem;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex;overflow:hidden}.project-logo img,.experience-card-logo{object-fit:contain;width:100%;height:100%;padding:.375rem}.project-name,.experience-card-company{color:var(--text-primary);font-size:1rem;font-weight:500}.project-description,.experience-card-description{color:var(--text-secondary);margin-bottom:1.25rem;font-size:.9375rem;line-height:1.6}.experience-card-description p{margin-bottom:.75rem}.experience-card-description p:last-child{margin-bottom:0}.experience-card-screenshot{background-color:var(--bg-secondary);border-radius:.5rem;justify-content:center;align-items:center;min-height:200px;margin-bottom:1.25rem;display:flex;overflow:hidden}.project-tags{flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem;display:flex}.project-tag{background-color:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary);border-radius:.375rem;padding:.25rem .75rem;font-size:.75rem}.project-link,.experience-card-btn{color:var(--text-secondary);align-items:center;gap:.5rem;font-size:.875rem;text-decoration:none;transition:color .2s;display:inline-flex}.project-link:hover,.experience-card-btn:hover{color:var(--text-primary)}.about{padding:10rem 1.5rem 5rem}.about-container{max-width:100%;margin:0 auto}.about-header{text-align:left;margin-bottom:2.5rem}.about-title{color:var(--text-primary);letter-spacing:-.03em;margin-bottom:1rem;font-size:2rem;font-weight:600}@media (max-width:768px){.about-title{font-size:1.5rem}}.about-line{background-color:var(--text-primary);width:60px;height:3px;margin:0}.about-with-avatar{grid-template-columns:minmax(0,1.4fr) auto;align-items:center;gap:2rem 3rem;margin-bottom:3rem;display:grid}.about-copy{text-align:left}.about-copy .about-intro,.about-copy .about-description,.about-copy .about-passion{margin-bottom:1.25rem}.about-copy .about-passion:last-child{margin-bottom:0}.about-avatar-column{justify-content:center;align-items:flex-start;display:flex}.about-avatar-stack{flex-direction:column;align-items:center;gap:0;display:flex}.about-avatar-card{border:1px solid var(--border-color);border-radius:12px;flex-shrink:0;width:176px;height:176px;overflow:hidden;box-shadow:0 4px 24px #00000040}.about-avatar-img{object-fit:cover;width:100%;height:100%;display:block}.about-discord-caption-wrap{opacity:0;max-height:0;margin-top:0;transition:max-height .4s,opacity .35s,margin-top .35s;overflow:hidden}.about-avatar-stack:hover .about-discord-caption-wrap,.about-avatar-stack:focus-within .about-discord-caption-wrap{opacity:1;max-height:3rem;margin-top:.75rem}.about-discord-link{justify-content:center;align-items:center;gap:.375rem;text-decoration:none;display:flex}.about-discord-link .about-discord-label{color:var(--text-primary);white-space:nowrap;margin:0;font-size:1.0625rem;font-weight:600;position:relative}.about-discord-link .about-discord-label:after{content:"";background-color:var(--text-primary);width:0;height:1px;transition:width .3s;position:absolute;bottom:-2px;left:0}.about-discord-link:hover .about-discord-label:after{width:100%}.about-discord-link .inline-external-icon{color:var(--text-tertiary);flex-shrink:0;transition:transform .3s,color .3s}.about-discord-link:hover .inline-external-icon{color:var(--text-primary);transform:translate(2px,-2px)}@media (max-width:900px){.about-with-avatar{grid-template-columns:1fr;justify-items:center;gap:2rem}.about-copy{text-align:center;order:1}.about-avatar-column{order:2}}@media (hover:none) and (pointer:coarse){.about-discord-caption-wrap{opacity:1;max-height:3rem;margin-top:.75rem;transition:none}}.about-text,.about-centered-text{text-align:left;margin-bottom:3rem}.about-intro,.about-description,.about-passion{color:var(--text-secondary);margin-bottom:1.5rem;font-size:1.0625rem;line-height:1.7}.about-stats{flex-wrap:wrap;justify-content:center;gap:3rem;display:flex}.stat-item{text-align:center}.stat-number{color:var(--text-primary);margin-bottom:.5rem;font-size:2.5rem;font-weight:700}.stat-label{color:var(--text-secondary);font-size:.9375rem}.technologies{padding:5rem 1.5rem}.technologies-container{max-width:700px;margin:0 auto}.technologies-header{text-align:left;margin-bottom:3rem}.technologies-title{color:var(--text-primary);letter-spacing:-.03em;margin-bottom:1rem;font-size:2rem;font-weight:600}@media (max-width:768px){.technologies-title{font-size:1.5rem}}.technologies-line{background-color:var(--text-primary);width:60px;height:3px;margin:0 0 1.5rem}.technologies-subtitle{color:var(--text-secondary);font-size:1.0625rem;line-height:1.6}.tech-panel{margin-top:2rem}.tech-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;display:grid}.tech-item{background-color:var(--card-bg);border:1px solid var(--border-color);text-align:center;border-radius:.75rem;flex-direction:column;align-items:center;padding:1.5rem 1rem;transition:all .2s;display:flex}.tech-item:hover{border-color:var(--text-tertiary);background-color:var(--hover-bg);transform:translateY(-2px)}.tech-icon{margin-bottom:.75rem;font-size:2.5rem}.tech-icon-img{object-fit:contain;width:3rem;height:3rem;margin-bottom:.75rem}.tech-name{color:var(--text-primary);font-size:.875rem;font-weight:500}.contact{padding:5rem 1.5rem}.contact-container{max-width:700px;margin:0 auto}.contact-header{text-align:left;margin-bottom:3rem}.contact-main-title{color:var(--text-primary);letter-spacing:-.03em;margin-bottom:1rem;font-size:2rem;font-weight:600}@media (max-width:768px){.contact-main-title{font-size:1.5rem}}.contact-line{background-color:var(--text-primary);width:60px;height:3px;margin:0 0 1.5rem}.contact-description{color:var(--text-secondary);font-size:1.0625rem;line-height:1.6}.contact-buttons{flex-wrap:wrap;justify-content:flex-start;gap:1rem;display:flex}.contact-btn-secondary{border-color:var(--border-color);color:var(--text-primary);background-color:#0000}.contact-btn-secondary:hover{background-color:var(--hover-bg);border-color:var(--text-tertiary);color:var(--text-primary)}.footer{border-top:1px solid var(--border-color);text-align:center;padding:2rem 1.5rem}.footer-content{max-width:700px;margin:0 auto}.footer-text{color:var(--text-tertiary);font-size:.875rem}.footer-socials{justify-content:center;gap:1rem;margin-bottom:1rem;display:flex}.footer-social-link{width:32px;height:32px;color:var(--text-secondary);justify-content:center;align-items:center;transition:color .2s;display:flex}.footer-social-link:hover{color:var(--text-primary)}.animate-in{animation:.6s ease-out fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}[data-parallax],[data-stagger-child],[data-scroll-fade]{will-change:transform,opacity}.marquee-container{margin:2rem 0;padding:1.5rem 0;overflow:hidden}.marquee-container .overflow-hidden{scrollbar-width:none;-ms-overflow-style:none}.marquee-container .overflow-hidden::-webkit-scrollbar{display:none}.animate-marquee{gap:1.5rem;width:max-content;animation:20s linear infinite marquee;display:flex}.marquee-container .group{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:.75rem;flex-shrink:0;justify-content:center;align-items:center;width:90px;min-width:90px;height:90px;min-height:90px;transition:all .3s;display:flex;position:relative}.marquee-container .group:hover,.marquee-container .group:focus{border-color:var(--text-tertiary);background-color:var(--hover-bg);outline:none;transform:translateY(-4px)}.marquee-container img{object-fit:contain;filter:grayscale();width:48px;height:48px;transition:filter .3s,transform .3s}.marquee-container .group:hover img,.marquee-container .group:focus img{filter:grayscale(0%);transform:scale(1.1)}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (max-width:768px){.hero{padding:4rem 1.25rem 3rem}.hero-name{font-size:1.5rem}.section-title,.about-title,.technologies-title,.contact-title{font-size:1.25rem}.tech-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}}@media (max-width:480px){.section-container,.technologies,.about,.contact{padding:5rem 1rem}.hero{padding:3rem 1rem 2.5rem}.project-card,.experience-card{padding:1.25rem}.tech-grid{grid-template-columns:repeat(2,1fr)}}html,body,*{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar{display:none}body::-webkit-scrollbar{display:none}::-webkit-scrollbar{display:none}#root{width:100%;min-height:100vh}.app{box-sizing:border-box;background-color:#0a0a0a;flex-direction:column;width:100vw;min-width:0;min-height:100vh;display:flex}@media (max-width:600px){.app{width:100vw;min-height:100vh;padding:0 .5rem;overflow-x:hidden}#root{width:100vw;min-height:100vh;padding:0}}.contact{color:#fff;align-items:center;min-height:100vh;padding:4rem 2rem;display:flex}[data-theme=light] .contact{color:#000}.contact-container{width:100%;max-width:1200px;margin:0 auto}.contact-content{grid-template-columns:1fr 1fr;gap:4rem;display:grid}.contact-left{flex-direction:column;gap:2rem;display:flex}.contact-title{color:#fff;margin:0;font-size:3rem;font-weight:700}[data-theme=light] .contact-title{color:#000}.contact-subtitle{color:#a0a0a0;margin:0;font-size:1.1rem;line-height:1.6}[data-theme=light] .contact-subtitle{color:#666}.contact-info{flex-direction:column;gap:1.5rem;margin-top:1rem;display:flex}.contact-info-item{align-items:flex-start;gap:1rem;display:flex}.contact-info-item svg{color:#fff;margin-top:.2rem}[data-theme=light] .contact-info-item svg{color:#000}.contact-info-label{color:gray;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem;font-size:.85rem}[data-theme=light] .contact-info-label{color:#999}.contact-info-value{color:#fff;font-size:1.1rem;text-decoration:none}[data-theme=light] .contact-info-value{color:#000}.contact-info-value:hover{color:#e0e0e0}[data-theme=light] .contact-info-value:hover{color:#333}.contact-social{border-top:1px solid #333;margin-top:2rem;padding-top:2rem}[data-theme=light] .contact-social{border-top:1px solid #e0e0e0}.contact-social-title{color:gray;text-transform:uppercase;letter-spacing:.1em;margin-bottom:1rem;font-size:.75rem}[data-theme=light] .contact-social-title{color:#999}.contact-social-links{flex-wrap:wrap;gap:1.5rem;display:flex}.contact-social-links a{color:#fff;font-size:.95rem;text-decoration:underline;transition:color .2s}[data-theme=light] .contact-social-links a{color:#000}.contact-social-links a:hover{color:#ccc}[data-theme=light] .contact-social-links a:hover{color:#444}.contact-discord{color:#a0a0a0;margin-top:1.5rem;font-size:.95rem}[data-theme=light] .contact-discord{color:#666}.contact-discord span{color:#fff;background:#2a2a2a;border-radius:4px;padding:.2rem .5rem;font-family:inherit}[data-theme=light] .contact-discord span{color:#000;background:#e8e8e8}.contact-right{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:12px;padding:2.5rem}[data-theme=light] .contact-right{background:#f8f8f8;border:1px solid #e0e0e0}.contact-form{flex-direction:column;gap:1.5rem;display:flex}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:#ccc;font-size:.95rem;font-weight:500}[data-theme=light] .form-group label{color:#333}.form-group input,.form-group textarea{color:#fff;background:#0a0a0a;border:1px solid #333;border-radius:8px;padding:.875rem 1rem;font-family:inherit;font-size:1rem;transition:all .2s}[data-theme=light] .form-group input,[data-theme=light] .form-group textarea{color:#000;background:#fff;border:1px solid #d0d0d0}.form-group input::placeholder,.form-group textarea::placeholder{color:#666}[data-theme=light] .form-group input::placeholder,[data-theme=light] .form-group textarea::placeholder{color:#999}.form-group input:focus,.form-group textarea:focus{background:#0f0f0f;border-color:#555;outline:none}[data-theme=light] .form-group input:focus,[data-theme=light] .form-group textarea:focus{background:#fff;border-color:#999}.form-group input.error,.form-group textarea.error{border-color:#f44}.form-group textarea{resize:none;min-height:120px;line-height:1.5}.error-message{color:#f44;margin-top:-.25rem;font-size:.85rem}.contact-submit-btn{color:#000;cursor:pointer;background:#fff;border:none;border-radius:8px;margin-top:.5rem;padding:1rem 2rem;font-size:1rem;font-weight:600;transition:all .2s}[data-theme=light] .contact-submit-btn{color:#fff;background:#000}.contact-submit-btn:hover:not(:disabled){background:#e0e0e0;transform:translateY(-1px)}[data-theme=light] .contact-submit-btn:hover:not(:disabled){background:#333}.contact-submit-btn:disabled{opacity:.6;cursor:not-allowed}.submit-status{text-align:center;border-radius:8px;padding:1rem;font-size:.95rem;animation:.3s slideIn}.submit-status.success{color:#4ade80;background:#1a4d2e;border:1px solid #2d5f3f}.submit-status.error{color:#ff6b6b;background:#4d1a1a;border:1px solid #5f2d2d}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.contact-response-time{text-align:center;color:gray;margin:0;font-size:.85rem}[data-theme=light] .contact-response-time{color:#999}@media (max-width:768px){.contact{padding:3rem 1rem}.contact-content{grid-template-columns:1fr;gap:3rem}.contact-title{font-size:2.5rem}.contact-right{padding:2rem 1.5rem}}@media (max-width:480px){.contact{padding:2rem 1rem}.contact-title{font-size:2rem}.contact-subtitle{font-size:1rem}.contact-right{padding:1.5rem 1rem}.contact-social-links{gap:1rem}}
