@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Orbitron:wght@300;400;500;600;700;800&display=swap";/*! tailwindcss v4.1.10 | MIT License | https://tailwindcss.com */.visible{visibility:visible}.container{width:100%}.italic{font-style:italic}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,visibility,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}:root{--primary-color:#e8e8e8;--secondary-color:#252525;--accent-color:#2a2d68;--text-primary:#f5f5f5;--text-secondary:#e5e7eb;--bg-primary:#1a1a1a;--bg-secondary:#252525;--border-color:#374151;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a;--color-mode:light;--color-mode-toggle:dark;--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px;--z-index-1:10;--z-index-2:20;--z-index-3:30;--z-index-4:40;--z-index-5:50;--font-color-primary:#f5f5f5;--font-color-secondary:#e5e7eb;--font-color-tertiary:#d1d5db;--font-color-quaternary:#9ca3af;--font-color-quinary:#6b7280;--font-color-senary:#374151;--font-color-primary-dark:#1f2937;--font-color-secondary-dark:#374151;--font-color-tertiary-dark:#4b5563;--font-color-quaternary-dark:#6b7280;--font-color-quinary-dark:#9ca3af}:root [data-theme=dark]{--font-color-primary:#f5f5f5;--font-color-secondary:#e5e7eb;--font-color-tertiary:#d1d5db;--font-color-quaternary:#9ca3af;--font-color-quinary:#6b7280}.App.light{--primary-color:#1f2937;--secondary-color:#f8fafc;--accent-color:#3b82f6;--text-primary:#1f2937;--text-secondary:#6b7280;--bg-primary:#fff;--bg-secondary:#f8fafc;--border-color:#e5e7eb}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text-primary);background-color:var(--bg-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6}h1{color:var(--text-primary);font-family:Orbitron,sans-serif;font-size:7rem;font-weight:900}@media (max-width:768px){h1{font-size:3rem}}h2{color:var(--text-primary);font-family:Orbitron,sans-serif;font-size:4rem;font-weight:900}h3,h4,h5,h6{color:var(--text-primary);font-weight:600;line-height:1.2}p{color:var(--text-secondary);line-height:1.7}a{color:var(--primary-color);text-decoration:none;transition:color .3s}a:hover{color:var(--accent-color)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--text-secondary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-primary)}::-moz-selection{background:var(--accent-color);color:var(--bg-primary)}::selection{background:var(--accent-color);color:var(--bg-primary)}:focus{outline:2px solid var(--accent-color);outline-offset:2px}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;color:var(--text-primary);position:relative;background:transparent;overflow:hidden}.hero:before{content:"";position:absolute;right:1rem;bottom:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Ccircle cx='30' cy='30' r='2'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");opacity:.3}.hero-content{width:100%;max-width:100vw;height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-sizing:border-box;position:relative}@media (max-width: 768px){.hero-content{padding:1rem}}.hero-text{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.5rem}.hero-subtitle{font-size:2rem;font-weight:400;margin:0;opacity:.9;color:var(--text-secondary)}.hero-buttons{display:flex;gap:1rem;margin-top:1rem}.hero-image{display:flex;justify-content:center;align-items:center;width:100vw;height:100vh;-o-object-fit:cover;object-fit:cover;position:absolute;top:0;left:0;z-index:1}.image-placeholder{width:300px;height:300px;border-radius:50%;background:#ffffff1a;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(255,255,255,.2);font-size:1.2rem;color:var(--text-primary)}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.hero-avatar{width:200px;height:200px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;margin-top:1rem;border:2px solid var(--text-primary);box-shadow:0 0 10px var(--text-primary);position:absolute;top:20vh;right:35vw;z-index:-1}.hero-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}@media (max-width: 768px){.hero-avatar{top:25vh;right:30vw;width:150px;height:150px}}@media (max-width: 480px){.hero-avatar{top:18vh;right:35vw;width:120px;height:120px}}.menu{position:absolute;bottom:2rem;right:2rem}.menu ul{list-style:none;padding:0;margin:0;display:flex;justify-content:flex-end;align-items:flex-end;align-content:flex-end;align-self:flex-end;gap:2rem}.menu li{font-family:Inter,sans-serif;font-style:italic;font-size:1rem;cursor:pointer;position:relative;font-weight:100;color:var(--text-primary);transition:color .3s ease}.menu li:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--text-primary);transition:width .3s ease}.menu li:hover:after,.menu li.active:after{width:100%}.menu li.active{color:var(--text-primary);font-weight:300}@media (max-width: 768px){.menu ul{flex-direction:column;gap:1rem}}.about{min-height:100vh;max-width:800px;justify-self:center;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:2rem;box-sizing:border-box;background:transparent;color:var(--text-primary)}.about p{color:var(--text-primary);font-weight:300;line-height:1.5;text-align:right;max-width:800px;margin-top:2rem}.about-title{display:flex;justify-self:flex-start;align-self:flex-start;padding:1rem;flex-direction:column}.about-content{display:flex;flex-direction:column;align-items:end;justify-content:end;background-color:var(--bg-secondary);padding:2rem;border-radius:1rem;box-shadow:0 0 10px var(--bg-secondary)}@media (max-width: 768px){.about-content{padding:1rem;min-width:90%}}.square-btn{background:#ffffff59;border-radius:4px;backdrop-filter:blur(5.9px);-webkit-backdrop-filter:blur(5.9px);border:1px solid var(--primary-color);color:var(--primary-color);padding:.5rem 1rem;cursor:pointer;font-size:16px;font-weight:500;margin-top:1rem;transition:all .3s ease;box-shadow:0 4px 30px #0000001a,0 0 5px #007bff33}.square-btn:hover:not(:disabled){background:var(--primary-color, #e8e8e8);color:var(--secondary-color, #252525);transform:translateY(-1px);box-shadow:0 0 10px #007bff99,0 0 20px #007bff66,0 0 30px #007bff33}.square-btn:active:not(:disabled){transform:translateY(0)}.square-btn:disabled,.square-btn.disabled{background:#80808033;border-color:#80808080;color:#808080b3;cursor:not-allowed;transform:none;box-shadow:0 2px 15px #0000000d}.link{text-decoration:none;color:var(--primary-color);font-size:1rem;font-weight:500;margin-top:1rem;transition:all .3s ease;font-family:Orbitron,sans-serif;font-weight:900;font-size:.7rem}.link:hover{color:var(--primary-color);transform:translateY(-1px);text-decoration:underline;text-decoration-color:var(--primary-color);text-decoration-thickness:2px;text-underline-offset:4px}.global-background{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:-10;overflow:hidden}.background-video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;position:absolute;top:0;left:0;pointer-events:none;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.background-video::-webkit-media-controls{display:none!important}.background-video::-webkit-media-controls-panel{display:none!important}.background-video::-webkit-media-controls-play-button{display:none!important}.background-video::-webkit-media-controls-start-playback-button{display:none!important}@media (max-width: 768px){.background-video{min-width:100%;min-height:100%;width:auto;height:auto;transform:translateZ(0);backface-visibility:hidden;perspective:1000}}.background-overlay-dark{position:absolute;top:0;left:0;width:100%;height:100%;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Ccircle cx='30' cy='30' r='2'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");opacity:.3;pointer-events:none}.background-overlay-light{position:absolute;top:0;left:0;width:100%;height:100%;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23000000' fill-opacity='0.05'%3E%3Ccircle cx='30' cy='30' r='2'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");opacity:.3;pointer-events:none}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;color:var(--text-primary)}.App{position:relative;min-height:100vh;overflow-x:hidden}main{position:relative;z-index:1;min-height:100vh}.section{padding:5rem 0;min-height:50vh;display:flex;align-items:center}.section:nth-child(2n){background:#f8fafc}.container{max-width:1200px;margin:0 auto;padding:2rem 2rem 0;text-align:center}.container h2{font-size:2.5rem;margin-bottom:2rem;color:#1f2937;font-weight:700}.container p{font-size:1.1rem;color:#6b7280;max-width:600px;margin:0 auto}html{scroll-behavior:smooth}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.section{animation:fadeInUp .6s ease-out}@media (max-width: 768px){.container{padding:0 1rem}.container h2{font-size:2rem}.section{padding:3rem 0}}.contact{min-height:100vh;max-width:800px;justify-self:center;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:2rem;box-sizing:border-box;background:transparent;color:var(--text-primary)}.contact-title{display:flex;justify-self:flex-start;align-self:flex-start;padding:1rem;flex-direction:column}.contact:before{content:"";position:absolute;right:2rem;bottom:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Ccircle cx='30' cy='30' r='2'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");opacity:.3}.contact-content{display:flex;flex-direction:column;align-items:start;justify-content:start;box-sizing:border-box;position:relative;background-color:var(--bg-secondary);padding:var(--space-xl);border-radius:1rem;box-shadow:0 0 10px var(--bg-secondary);margin-bottom:var(--space-xl);max-width:100%}.contact-content .content-wrapper{text-align:left;width:100%}.contact-content .content-wrapper p{font-size:var(--font-size-base);line-height:1.8;margin-bottom:var(--space-lg);color:var(--text-secondary);font-weight:400}.contact-content .content-wrapper p:last-of-type{margin-bottom:0}.contact-content .content-wrapper ul{margin:var(--space-lg) 0;padding-left:var(--space-lg)}.contact-content .content-wrapper ul li{font-size:var(--font-size-base);line-height:1.7;margin-bottom:var(--space-sm);color:var(--text-secondary);position:relative}.contact-content .content-wrapper ul li:before{content:"▸";color:var(--accent-color);font-weight:700;position:absolute;left:-1.2rem}@media (max-width: 768px){.contact-content{padding:var(--space-lg);min-width:90%}.contact-content .content-wrapper p,.contact-content .content-wrapper ul li{font-size:var(--font-size-sm)}}.contact-links{display:flex;background-color:var(--bg-secondary);padding:var(--space-lg);border-radius:1rem;box-shadow:0 0 10px var(--bg-secondary);font-family:Orbitron,sans-serif;font-weight:400;margin-bottom:var(--space-xl);justify-content:center}.contact-links a{color:var(--text-primary);text-decoration:none;padding:var(--space-sm) var(--space-sm);border-radius:.5rem;transition:all .3s ease;position:relative}.contact-links a:hover{color:var(--accent-color);background-color:#ffffff0d;transform:translateY(-2px)}.contact-links a:not(:last-child):after{content:"|";margin-left:var(--space-lg);color:var(--text-secondary);opacity:.5}.contact-form{margin:20px 0;animation:slideIn .3s ease-in-out;background-color:var(--bg-secondary);padding:1.5rem;border-radius:1rem;box-shadow:0 0 10px var(--bg-secondary);color:var(--text-primary);font-family:Orbitron,sans-serif;font-weight:900}.contact-form .form-group{margin-bottom:20px}.contact-form .form-group label{display:block;margin-bottom:5px;font-weight:500}.contact-form .form-group input,.contact-form .form-group textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:16px}.contact-form .form-group input:focus,.contact-form .form-group textarea:focus{outline:none;border-color:var(--accent-color)}.contact-form .form-group textarea{resize:vertical;min-height:120px}.contact-form .form-group.recaptcha-group{display:flex;justify-content:center;margin:25px 0}.contact-form .form-group.recaptcha-group>div{border-radius:4px;overflow:hidden;box-shadow:0 2px 8px #0000001a;transition:transform .2s ease}.contact-form .form-group.recaptcha-group>div:hover{transform:translateY(-1px)}.contact-form .form-result{margin:15px 0;padding:12px 16px;border-radius:6px;font-size:14px;font-weight:500;text-align:center;animation:fadeIn .3s ease-in-out}.contact-form .form-result.success{background-color:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:#22c55e}.contact-form .form-result.error{background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444}.contact-form .submit-btn{background-color:var(--secondary-color);color:var(--text-primary);padding:12px 30px;border:none;border-radius:4px;cursor:pointer;font-size:32px}.contact-form .submit-btn:hover{background-color:var(--accent-color)}.contact-form-buttons{display:flex;align-content:center;justify-content:space-between;width:100%;margin-top:1rem}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.contact-form .form-group.recaptcha-group{overflow-x:auto}.contact-form .form-group.recaptcha-group>div{min-width:304px}}.projects{height:100vh;padding:2rem;color:var(--text-primary)}.projects .projects-container{display:flex;max-width:1200px;margin:0 auto;gap:4rem}.projects .projects-title{flex:0 0 40%;position:sticky;top:2rem;height:-moz-fit-content;height:fit-content;display:flex;flex-direction:column;justify-content:space-between;min-height:80vh}.projects .projects-title .contact-prompt{margin-top:auto;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start}.projects .projects-title .contact-prompt .contact-button{background:var(--accent-color);border:none;padding:.75rem 1.5rem;border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:1rem;transition:transform .2s ease}.projects .projects-title .contact-prompt .contact-button:hover{transform:translateY(-2px)}.projects .projects-content{flex:1;overflow:hidden}.projects .projects-scroll{height:100%;overflow-y:auto;padding-right:1rem;scrollbar-width:none}.projects .project-card{background:var(--bg-secondary);border-radius:12px;padding:1.5rem;margin-bottom:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--bg-secondary);cursor:pointer;transition:all .3s ease}.projects .project-card:hover{transform:translateY(-5px);box-shadow:0 15px 30px #0000004d}.projects .project-card:hover .project-overlay{opacity:1}.projects .project-card .project-image{width:100%;height:200px;background:var(--bg-secondary);border-radius:8px;margin-bottom:1.5rem;position:relative}.projects .project-card .project-image .project-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:var(--bg-secondary);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;border-radius:8px}.projects .project-card .project-image .project-overlay span{color:var(--text-primary);font-size:1.1rem;font-weight:500}.projects .project-card .project-info h3{color:var(--text-primary);font-size:1.5rem;margin-bottom:.75rem;font-weight:600}.projects .project-card .project-info p{color:var(--text-primary);line-height:1.6;font-size:.95rem}.projects .project-card .tech-stack{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.projects .project-card .tech-stack .tech-badge{background:var(--bg-secondary);color:var(--text-primary);padding:.3rem .8rem;border-radius:15px;font-size:.8rem;border:1px solid var(--bg-secondary)}@media (max-width: 968px){.projects .projects-container{flex-direction:column;height:auto}.projects .projects-title{position:static;flex:none;min-height:auto;margin-bottom:2rem}.projects .projects-content{height:auto}.projects .projects-scroll{display:flex;overflow-x:auto;overflow-y:hidden;height:auto;gap:1rem;padding-bottom:1rem;scrollbar-width:none}.projects .projects-scroll .project-card{flex:0 0 300px;margin-bottom:0}}.projects .modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--bg-secondary);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;justify-content:center;align-items:center;z-index:1000}.projects .modal-content{background:var(--bg-secondary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--bg-secondary);border-radius:12px;padding:2rem;overflow-y:auto;width:100%;position:relative}.projects .modal-content h2{color:var(--text-primary);margin-bottom:1.5rem;text-align:center}.projects .modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:var(--text-primary);font-size:2rem;cursor:pointer;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.projects .modal-close:hover{opacity:.7}.projects .contact-form .form-group{margin-bottom:1.5rem}.projects .contact-form .form-group label{display:block;color:var(--text-primary);margin-bottom:.5rem;font-weight:500}.projects .contact-form .form-group input,.projects .contact-form .form-group textarea{width:100%;padding:.75rem;border:1px solid var(--bg-secondary);border-radius:6px;background:var(--bg-secondary);color:var(--text-primary);font-size:1rem}.projects .contact-form .form-group input::-moz-placeholder,.projects .contact-form .form-group textarea::-moz-placeholder{color:var(--text-primary)}.projects .contact-form .form-group input::placeholder,.projects .contact-form .form-group textarea::placeholder{color:var(--text-primary)}.projects .contact-form .form-group input:focus,.projects .contact-form .form-group textarea:focus{outline:none;border-color:var(--accent-color)}.projects .contact-form .contact-form-buttons{text-align:center;margin-top:2rem}.project-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;justify-content:center;align-items:center;z-index:1000;padding:1rem}.project-modal{border:1px solid rgba(255,255,255,.051);border-radius:12px;width:90vw;height:85vh;max-width:1200px;display:flex;flex-direction:column;overflow:hidden;align-items:center;padding:1rem;box-shadow:0 25px 50px #00000080}.modal-footer{display:flex;justify-content:center;align-items:center;padding:1rem;gap:1rem;width:50%}.modal-tabs{display:flex;gap:.5rem}.tab-btn{padding:.5rem 1rem;background:transparent;border:1px solid rgba(255,255,255,.2);color:#ffffffb3;border-radius:6px;cursor:pointer;transition:all .3s ease;font-size:.9rem}.tab-btn:hover{background:#ffffff1a;color:var(--text-primary)}.tab-btn.active{background:#ffffff1a;color:var(--text-primary);border-color:#fff6}.close-btn{background:none;border:none;color:var(--text-primary);font-size:2rem;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease;margin-top:1rem}.close-btn:hover{background:#ffffff1a;transform:rotate(90deg)}.modal-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;margin:1rem}.iframe-container{position:relative;flex:1;background:var(--text-primary)}.iframe-container iframe{width:100%;height:100%}.iframe-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:#666}.iframe-loading .spinner{width:40px;height:40px;border:3px solid #f3f3f3;border-top:3px solid #666;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.iframe-overlay{position:absolute;top:1rem;right:1rem;z-index:10}.open-external{background:#000c;color:var(--text-primary);padding:.5rem 1rem;border-radius:6px;text-decoration:none;font-size:.9rem;transition:all .3s ease}.open-external:hover{background:#000000e6;transform:translateY(-2px)}.project-details{padding:2rem;color:var(--text-primary);overflow-y:auto}.project-details h2{color:var(--text-primary);margin-bottom:1rem;font-size:2rem}.project-details .project-description{color:var(--text-primary);line-height:1.6;margin-bottom:2rem;font-size:1.1rem}.project-details .tech-stack{margin-bottom:2rem}.project-details .tech-stack h3{color:var(--text-primary);margin-bottom:1rem;font-size:1.2rem}.project-details .tech-stack .tech-badges{display:flex;flex-wrap:wrap;gap:.5rem}.project-details .tech-stack .tech-badge{background:var(--secondary-color);color:var(--text-primary);padding:.5rem 1rem;border-radius:20px;font-size:.9rem;border:1px solid var(--primary-color)}.project-details .tech-stack .tech-badge:hover{background:var(--primary-color);color:var(--secondary-color);transform:translateY(-1px);box-shadow:0 0 10px var(--primary-color),0 0 20px var(--primary-color),0 0 30px var(--primary-color)}.project-details .project-links{display:flex;gap:1rem;flex-wrap:wrap}.project-details .project-link{padding:.75rem 1.5rem;border-radius:8px;text-decoration:none;font-weight:500;transition:all .3s ease;border:2px solid transparent}.project-details .project-link.live-link{background:linear-gradient(135deg,#667eea,#764ba2);color:var(--text-primary)}.project-details .project-link.live-link:hover{transform:translateY(-2px);box-shadow:0 10px 20px #667eea4d}.project-details .project-link.github-link{background:transparent;color:var(--text-primary);border-color:#ffffff4d}.project-details .project-link.github-link:hover{background:#ffffff1a;border-color:var(--text-primary)}@media (max-width: 768px){.project-modal-overlay{padding:1rem}.project-modal{width:95vw;height:90vh}.modal-header{padding:1rem;flex-direction:column;gap:1rem}.tab-btn{font-size:.8rem;padding:.4rem .8rem}.project-details{padding:1.5rem}.project-details h2{font-size:1.5rem}}.toggle-switch{position:fixed;top:1.9rem;right:1rem;z-index:1000;width:60px;height:30px;--light: #d8dbe0;--dark: #28292c;--link: rgb(27, 129, 112);--link-hover: rgb(24, 94, 82)}.switch-label{position:absolute;width:100%;height:30px;background-color:var(--dark);border:2px solid var(--dark);border-radius:15px;cursor:pointer}.checkbox{position:absolute;display:none}.slider{position:absolute;width:100%;height:100%;border-radius:15px;transition:.3s}.checkbox:checked~.slider{background-color:var(--light)}.slider:before{content:"";position:absolute;top:5px;left:5px;width:18px;height:18px;border-radius:50%;background-color:var(--dark);box-shadow:inset 7px -2px 0 0 var(--light);transition:.3s}.checkbox:checked~.slider:before{transform:translate(30px);background-color:var(--dark);box-shadow:none}.menu-button{position:fixed;top:1rem;left:1rem;z-index:1000}.menu-icon-button{width:50px;height:50px;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:50%;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.menu-icon-button:hover{background:var(--accent-color);border-color:var(--accent-color);transform:translateY(-2px);box-shadow:0 4px 12px #0003}.menu-icon-button:active{transform:translateY(0)}.menu-icon{font-size:1.2rem;color:var(--text-primary);transition:color .3s ease}.menu-icon-button:hover .menu-icon{color:#fff}@media (max-width: 768px){.menu-button{top:.75rem;left:.75rem}.toggle-switch{top:1.3rem;right:.75rem}.menu-icon-button{width:45px;height:45px}.menu-icon{font-size:1rem}}.navigation-menu{position:fixed;top:70px;left:1rem;z-index:1001;opacity:0;transform:translateY(-10px) scale(.95);transition:all .3s cubic-bezier(.4,0,.2,1)}.navigation-menu.menu-visible{opacity:1;transform:translateY(0) scale(1)}.menu-content{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;padding:.5rem;min-width:160px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 10px 25px #0003,0 4px 10px #0000001a}.menu-item{display:block;padding:.75rem 1rem;color:var(--text-primary);text-decoration:none;border-radius:8px;transition:all .2s ease;font-size:.9rem;font-weight:500}.menu-item:hover{background:var(--accent-color);color:#fff;transform:translate(4px)}.menu-item:active{transform:translate(2px) scale(.98)}.navigation-menu:before{content:"";position:absolute;top:-8px;left:20px;width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:8px solid var(--border-color)}.navigation-menu:after{content:"";position:absolute;top:-6px;left:21px;width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid var(--bg-secondary)}@media (max-width: 768px){.navigation-menu{top:60px;left:.75rem}.menu-content{min-width:140px;padding:.4rem}.menu-item{padding:.6rem .8rem;font-size:.85rem}}.App.light .menu-content{background:#fffffff2;border-color:var(--border-color)}.App.light .navigation-menu:after{border-bottom-color:#fffffff2}.App.dark .menu-content{background:#252525f2;border-color:var(--border-color)}.App.dark .navigation-menu:after{border-bottom-color:#252525f2}
