:root{--primary: #8189ff;--primary-light: #9ca2ff;--secondary: #6a73ff;--accent: #ff8b8b;--text: #f0f0f0;--text-light: #d0d0d0;--bg: #121212;--card-bg: #1e1e1e;--border: #333333;--shadow: rgba(0, 0, 0, .3);--shadow-lg: rgba(0, 0, 0, .5);--transition: all .3s ease}.smokey-container{position:fixed;top:0;left:0;z-index:50;pointer-events:none;width:100%;height:100%;cursor:none}.smokey-canvas{width:100vw;height:100vh;display:block}.dark-mode{--primary: #8189ff;--primary-light: #9ca2ff;--secondary: #6a73ff;--accent: #ff8b8b;--text: #f0f0f0;--text-light: #d0d0d0;--bg: #121212;--card-bg: #1e1e1e;--border: #333333;--shadow: rgba(0, 0, 0, .3);--shadow-lg: rgba(0, 0, 0, .5)}body.dark-mode,body.light-mode{background-color:var(--bg);color:var(--text)}*{margin:0;padding:0;box-sizing:border-box;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif}body{background-color:var(--bg);color:var(--text);line-height:1.6;transition:var(--transition);position:relative;overflow-x:hidden}.portfolio{max-width:1200px;margin:0 auto;padding:2rem;position:relative}.theme-toggle{position:fixed;top:2rem;right:2rem;width:40px;height:40px;border-radius:50%;background:var(--primary);color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:1000;box-shadow:0 4px 6px var(--shadow);transition:var(--transition)}.theme-toggle:hover{background:var(--primary-light)}header{text-align:center;margin-bottom:3rem;padding-top:2rem}header h1{font-size:3rem;background:linear-gradient(45deg,var(--primary),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:.5rem;font-weight:800;letter-spacing:-.5px}.subtitle{font-size:1.2rem;color:var(--text-light);font-weight:400}.floating-nav{position:fixed;top:50%;right:1.5rem;transform:translateY(-50%);display:flex;flex-direction:column;gap:1rem;z-index:1000;background:rgba(var(--card-bg),.8);padding:1rem .5rem;border-radius:25px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 20px var(--shadow);border:1px solid var(--border);transition:var(--transition)}.nav-item{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text);background:rgba(var(--primary),.1);position:relative;transition:var(--transition)}.nav-item.active,.nav-item:hover{background:var(--primary);color:#fff}.nav-tooltip{position:absolute;right:100%;top:50%;transform:translateY(-50%);background:var(--primary);color:#fff;padding:.5rem 1rem;border-radius:5px;font-size:.9rem;white-space:nowrap;opacity:0;pointer-events:none;transition:var(--transition);margin-right:1rem}.nav-item:hover .nav-tooltip{opacity:1;margin-right:1.5rem}.hero{position:relative;display:flex;align-items:center;z-index:1}.hero-image-fixed{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;opacity:.7}.hero-content{position:relative;z-index:2;width:100%;max-width:1200px;margin:0 auto}.hero-text{padding:2rem;border-radius:15px;max-width:600px}.glow-effect{position:absolute;width:100%;height:100%;border-radius:inherit;background:radial-gradient(circle at center,rgba(255,255,255,.2) 0%,transparent 70%);animation:glow 3s infinite alternate;z-index:-1}@keyframes glow{0%{opacity:.3}to{opacity:.7}}.hero-text{flex:1}.hero-stats{display:flex;gap:20px;margin-top:2rem}.stat{text-align:center}.stat-number{font-size:2rem;font-weight:700;color:var(--primary);display:block}.stat-label{font-size:.9rem;color:var(--text-light);text-transform:uppercase;letter-spacing:1px}.section-title{text-align:center;font-size:2.5rem;margin:4rem 0 2rem;position:relative;font-weight:700}.section-title:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:100px;height:4px;background:linear-gradient(to right,var(--primary),var(--accent));border-radius:2px}.projects-section{margin:6rem 0}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem;margin-top:2rem}.project-card{background:var(--card-bg);border-radius:15px;overflow:hidden;box-shadow:0 10px 20px var(--shadow);transition:var(--transition);border:1px solid var(--border);position:relative}.project-image{height:200px;background-size:cover;background-position:center;position:relative}.project-links{position:absolute;bottom:20px;right:20px;display:flex;gap:10px}.project-links a{background:#ffffffe6;color:#000;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.project-links a:hover{background:var(--primary);color:#fff;transform:scale(1.1)}.project-info{padding:1.5rem}.project-info h3{margin-bottom:.5rem;font-size:1.5rem;color:var(--primary)}.project-info p{color:var(--text-light);margin-bottom:1rem}.project-features{margin:1rem 0}.project-features h4{margin-bottom:.5rem;font-size:1rem;color:var(--text)}.project-features ul{padding-left:1.2rem;margin-bottom:1rem}.project-features li{margin-bottom:.3rem;font-size:.9rem;color:var(--text-light)}.tech-tags{display:flex;flex-wrap:wrap;gap:.5rem}.tech-tags span{background:rgba(var(--primary),.1);color:var(--primary);padding:.3rem .8rem;border-radius:20px;font-size:.8rem;border:1px solid rgba(var(--primary),.3)}.skills-section{margin:6rem 0}.skills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem;margin-top:2rem}.skill-item{background:var(--card-bg);padding:1.5rem;border-radius:10px;box-shadow:0 5px 15px var(--shadow);display:flex;align-items:center;gap:1rem;border:1px solid var(--border);transition:var(--transition)}.skill-icon{font-size:2rem;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:rgba(var(--primary),.1);border-radius:50%;color:var(--primary)}.skill-info{flex:1}.skill-info h4{margin-bottom:.5rem;color:var(--text)}.skill-bar{width:100%;height:8px;background:var(--border);border-radius:4px;overflow:hidden;margin-bottom:.3rem}.skill-progress{height:100%;background:linear-gradient(to right,var(--primary),var(--secondary));border-radius:4px}.skill-level{font-size:.8rem;color:var(--text-light)}.contact-section{margin:6rem 0}.contact-container{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.contact-info{padding:2rem}.contact-info h3{font-size:1.8rem;margin-bottom:1rem;color:var(--primary)}.contact-info p{margin-bottom:2rem;line-height:1.8;color:var(--text-light)}.contact-details a{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;color:var(--primary);text-decoration:none;transition:var(--transition)}.contact-details a:hover{color:var(--primary-light)}.social-links{display:flex;gap:1rem;margin-top:2rem}.social-links a{color:var(--text);font-size:1.5rem;transition:var(--transition)}.social-links a:hover{color:var(--primary);transform:translateY(-5px)}.contact-form{background:var(--card-bg);padding:2rem;border-radius:15px;box-shadow:0 10px 30px var(--shadow);border:1px solid var(--border)}.form-group{margin-bottom:1.5rem}.form-group input,.form-group textarea{width:100%;padding:1rem;border:1px solid var(--border);border-radius:8px;font-size:1rem;transition:var(--transition);background:var(--bg);color:var(--text)}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px rgba(var(--primary),.2)}.form-group textarea{min-height:150px;resize:vertical}.contact-form button{background:linear-gradient(to right,var(--primary),var(--secondary));color:#fff;border:none;padding:1rem 2rem;border-radius:8px;font-size:1rem;cursor:pointer;width:100%;transition:var(--transition);font-weight:500}.contact-form button:hover{transform:translateY(-3px);box-shadow:0 5px 15px rgba(var(--primary),.4)}.back-to-top{position:fixed;bottom:1rem;left:1rem;width:50px;height:50px;border-radius:50%;background:var(--primary);color:#fff;border:none;font-size:1.5rem;cursor:pointer;box-shadow:0 4px 10px var(--shadow);display:flex;align-items:center;justify-content:center;z-index:1000;transition:var(--transition)}.back-to-top:hover{background:var(--primary-light);transform:translateY(-5px)}@media (max-width: 1024px){.contact-container{grid-template-columns:1fr}.hero-content{flex-direction:column;text-align:center}.hero-text p{max-width:100%}.hero-stats{justify-content:center}}@media (max-width: 768px){.hero{min-height:auto}.hero-text{max-width:100%;-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--card-bg)}.hero-image-fixed{opacity:.4;z-index:-1}.projects-grid{grid-template-columns:1fr}.floating-nav{bottom:1rem;top:auto;right:1rem;flex-direction:row;transform:none;padding:.5rem 1rem}.nav-tooltip{display:none}.section-title,.hero-text h2{font-size:2rem}.hero-text{max-width:100%;background:rgba(var(--card-bg),.9)}}@media (max-width: 480px){.portfolio{padding:1rem}header h1{font-size:2.2rem}.stat-number{font-size:1.5rem}}.modal-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:2000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.success-modal{background:var(--card-bg);border-radius:20px;padding:2.5rem;max-width:400px;width:90%;text-align:center;box-shadow:0 10px 30px #0003;border:1px solid var(--border)}.success-modal h3{font-size:1.8rem;margin:1.5rem 0 .5rem;color:var(--primary)}.success-modal p{color:var(--text-light);margin-bottom:2rem;line-height:1.6}.modal-icon{width:80px;height:80px;margin:0 auto;display:flex;align-items:center;justify-content:center}.modal-icon svg{width:100%;height:100%}.modal-close-btn{background:linear-gradient(to right,var(--primary),var(--secondary));color:#fff;border:none;padding:.8rem 2rem;border-radius:50px;font-size:1rem;cursor:pointer;transition:var(--transition);font-weight:500;margin-top:1rem;width:100%}.modal-close-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px rgba(var(--primary),.3)}@media (max-width: 480px){.success-modal{padding:1.5rem}.success-modal h3{font-size:1.5rem}.modal-icon{width:60px;height:60px;margin-top:-1rem}}.spinner-container{display:flex;align-items:center;justify-content:center;gap:.8rem}.spinner{width:1.2rem;height:1.2rem;border:3px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.contact-form button[disabled]{opacity:.8;cursor:not-allowed}.contact-form button.submitting{background:linear-gradient(to right,var(--primary),var(--primary))}.dark-mode .spinner{border-top-color:var(--primary-light)}
