:root,[data-theme=dark]{--bg-primary: #0a0a0a;--bg-secondary: #141414;--bg-card: #1a1a1a;--bg-card-hover: #222222;--text-primary: #ffffff;--text-secondary: #a0a0a0;--text-muted: #666666;--accent-primary: #22c55e;--accent-secondary: #3b82f6;--border-color: #2a2a2a;--border-hover: #3a3a3a;--gradient-1: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-2: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 40px rgba(0, 0, 0, .5);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--nav-bg: rgba(20, 20, 20, .8);--overlay-bg: rgba(0, 0, 0, .5)}[data-theme=light]{--bg-primary: #fafafa;--bg-secondary: #f1f1f1;--bg-card: #ffffff;--bg-card-hover: #f5f5f5;--text-primary: #0a0a0a;--text-secondary: #4a4a4a;--text-muted: #8a8a8a;--accent-primary: #16a34a;--accent-secondary: #2563eb;--border-color: #e2e2e2;--border-hover: #cfcfcf;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 40px rgba(0, 0, 0, .1);--nav-bg: rgba(255, 255, 255, .75);--overlay-bg: rgba(0, 0, 0, .3)}.page-not-found{display:flex;justify-content:center;align-items:center}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;overflow-x:hidden;transition:background-color .35s ease,color .35s ease}.app{position:relative;z-index:1;min-height:100vh}[class^=page-]{position:relative;min-height:100vh}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.geometric-bg{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:hidden}.wireframe{position:absolute;border:1px solid rgba(255,255,255,.05);background:transparent}.wireframe-1{width:300px;height:300px;right:10%;top:20%;transform:rotate(45deg);border-radius:30% 70% 70% 30%/30% 30% 70% 70%;animation:float 20s infinite ease-in-out}.wireframe-2{width:200px;height:200px;left:5%;top:60%;transform:rotate(-15deg);clip-path:polygon(50% 0%,100% 50%,50% 100%,0% 50%);animation:float 15s infinite ease-in-out reverse}.wireframe-3{width:150px;height:150px;right:20%;bottom:20%;border-radius:50%;border-style:dashed;animation:rotate 30s infinite linear}.wireframe-4{width:100px;height:100px;left:15%;top:30%;transform:rotate(30deg);clip-path:polygon(25% 0%,75% 0%,100% 50%,75% 100%,25% 100%,0% 50%);animation:pulse 4s infinite ease-in-out}.particles{position:absolute;width:100%;height:100%}.particle{position:absolute;width:4px;height:4px;background:#ffffff4d;border-radius:50%;animation:particle-float 10s infinite}.particle:nth-child(1){left:10%;top:20%;animation-delay:0s}.particle:nth-child(2){left:20%;top:80%;animation-delay:1s}.particle:nth-child(3){left:30%;top:40%;animation-delay:2s}.particle:nth-child(4){left:40%;top:60%;animation-delay:3s}.particle:nth-child(5){left:50%;top:30%;animation-delay:4s}.particle:nth-child(6){left:60%;top:70%;animation-delay:5s}.particle:nth-child(7){left:70%;top:50%;animation-delay:6s}.particle:nth-child(8){left:80%;top:20%;animation-delay:7s}.particle:nth-child(9){left:90%;top:80%;animation-delay:8s}.particle:nth-child(10){left:15%;top:50%;animation-delay:9s}.particle:nth-child(11){left:25%;top:30%;animation-delay:9s}@keyframes float{0%,to{transform:translateY(0) rotate(45deg)}50%{transform:translateY(-20px) rotate(55deg)}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:.3;transform:scale(1) rotate(30deg)}50%{opacity:.6;transform:scale(1.1) rotate(30deg)}}@keyframes particle-float{0%,to{transform:translateY(0) translate(0);opacity:.3}50%{transform:translateY(-100px) translate(50px);opacity:.6}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.5}}section>*{animation:fadeInUp .6s ease-out forwards}.navbar{position:fixed;top:20px;left:50%;transform:translate(-50%);z-index:1000;width:100%;max-width:980px;padding:0 20px;transition:top .3s ease}.navbar.scrolled{top:10px}.nav-container{display:flex;align-items:center;gap:32px;padding:12px 24px;background:var(--nav-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-color);border-radius:var(--radius-full);box-shadow:var(--shadow-lg);transition:background-color .35s ease,border-color .35s ease}.nav-logo{font-family:JetBrains Mono,monospace;font-size:1.4rem;font-weight:700;color:var(--text-primary);text-decoration:none;display:flex;align-items:center;gap:4px;flex-shrink:0}.nav-logo span{color:var(--accent-primary)}.nav-links{display:flex;flex:1;justify-content:center;gap:22px;list-style:none;overflow:hidden}.nav-links a{color:var(--text-secondary);text-decoration:none;font-size:.88rem;font-weight:500;white-space:nowrap;transition:color .3s ease;position:relative}.nav-links a:hover,.nav-links a.active{color:var(--text-primary)}.nav-links a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--accent-primary);transition:width .3s ease}.nav-links a:hover:after,.nav-links a.active:after{width:100%}.nav-actions{display:flex;align-items:center;gap:14px;flex-shrink:0}.nav-contact{padding:10px 20px;background:var(--text-primary);color:var(--bg-primary);text-decoration:none;border-radius:var(--radius-full);font-size:.88rem;font-weight:600;white-space:nowrap;transition:all .3s ease}.nav-contact:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.nav-search{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-color);border-radius:50%;color:var(--text-secondary);cursor:pointer;transition:all .3s ease}.nav-search:hover{border-color:var(--text-primary);color:var(--text-primary)}.mobile-menu-btn{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;z-index:1000}.mobile-menu-btn span{display:block;width:24px;height:2px;background:var(--text-primary);transition:all .3s ease;transform-origin:center}.mobile-menu-btn.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}.mobile-menu-btn.active span:nth-child(2){opacity:0}.mobile-menu-btn.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-links a:focus-visible,.mobile-nav-links a:focus-visible,.nav-contact:focus-visible,.mobile-menu-btn:focus-visible,.theme-toggle:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.nav-icon-links{display:flex;align-items:center;gap:6px;list-style:none;flex-shrink:0}.nav-icon-links a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;color:var(--text-secondary);text-decoration:none;transition:all .3s ease}.nav-icon-links a:hover,.nav-icon-links a.active{color:var(--text-primary);background:#ffffff0f}[data-theme=light] .nav-icon-links a:hover,[data-theme=light] .nav-icon-links a.active{background:#0000000d}.nav-icon-links a:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.theme-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:transparent;border:1px solid var(--border-color);border-radius:50%;color:var(--text-secondary);cursor:pointer;transition:all .3s ease;flex-shrink:0}.theme-toggle:hover{border-color:var(--text-primary);color:var(--text-primary);transform:translateY(-2px)}.mobile-nav-links a{display:flex;align-items:center;gap:12px}.mobile-nav-links a svg{flex-shrink:0;opacity:.8}@media (max-width: 1100px){.nav-icon-links{display:none}}.mobile-menu-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:var(--overlay-bg);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:998;opacity:0;transition:opacity .3s ease}.mobile-menu-overlay.active{display:block;opacity:1}.mobile-menu{position:fixed;top:0;right:-100%;width:80%;max-width:320px;height:100vh;background:var(--bg-secondary);border-left:1px solid var(--border-color);z-index:999;transition:right .3s ease,background-color .35s ease;display:flex;flex-direction:column;padding:24px}.mobile-menu.active{right:0}.mobile-menu-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;padding-bottom:20px;border-bottom:1px solid var(--border-color)}.mobile-menu-title{font-family:JetBrains Mono,monospace;font-size:1.2rem;font-weight:600;color:var(--text-primary)}.mobile-menu-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;transition:color .3s ease}.mobile-menu-close:hover{color:var(--text-primary)}.mobile-nav-links{list-style:none;flex:1}.mobile-nav-links li{margin-bottom:8px}.mobile-nav-links a{display:block;padding:16px;color:var(--text-secondary);text-decoration:none;font-size:1.1rem;font-weight:500;border-radius:var(--radius-md);transition:all .3s ease}.mobile-nav-links a:hover,.mobile-nav-links a.active{color:var(--text-primary);background:var(--bg-card);padding-left:24px}.mobile-menu-footer{margin-top:auto;padding-top:24px;border-top:1px solid var(--border-color)}.mobile-contact-btn{display:block;width:100%;padding:16px;background:var(--text-primary);color:var(--bg-primary);text-align:center;text-decoration:none;border-radius:var(--radius-full);font-weight:600;margin-bottom:24px;transition:all .3s ease}.mobile-contact-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.mobile-social-links{display:flex;justify-content:center;gap:20px}.mobile-social-links a{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:50%;color:var(--text-secondary);transition:all .3s ease}.mobile-social-links a:hover{border-color:var(--text-primary);color:var(--text-primary);transform:translateY(-2px)}.hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:120px 20px 40px;position:relative}.hero-content{max-width:900px}.hero-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#22c55e1a;border:1px solid rgba(34,197,94,.3);border-radius:var(--radius-full);font-size:.85rem;color:var(--accent-primary);margin-bottom:24px;font-family:JetBrains Mono,monospace}.hero-badge:before{content:"";width:8px;height:8px;background:var(--accent-primary);border-radius:50%;animation:pulse-dot 2s infinite}.hero-title{font-size:clamp(2.5rem,8vw,5rem);font-weight:700;line-height:1.1;margin-bottom:24px;letter-spacing:-.02em}.hero-title .line{display:block}.hero-title .highlight{background:linear-gradient(135deg,var(--text-primary) 0%,var(--text-muted) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-founder{font-size:1rem;font-weight:500;opacity:.8;margin-top:.5rem}.hero-subtitle{font-size:1.25rem;color:var(--text-secondary);max-width:600px;margin:0 auto 40px;line-height:1.7}.hero-cta{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 32px;font-size:1rem;font-weight:600;text-decoration:none;border-radius:var(--radius-full);transition:all .3s ease;border:none;cursor:pointer}.btn-primary{background:var(--text-primary);color:var(--bg-primary)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-secondary{background:transparent;color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{border-color:var(--text-primary);background:#ffffff0d}[data-theme=light] .btn-secondary:hover{background:#0000000a}section{padding:100px 20px;max-width:1200px;margin:0 auto}.section-header{padding:0 20px 40px;text-align:center;margin-bottom:10px}.section-title{font-size:clamp(2rem,5vw,3rem);font-weight:700;margin-bottom:16px;font-family:JetBrains Mono,monospace;text-align:center}.section-subtitle{color:var(--text-secondary);font-size:1.1rem}.page-header{max-width:1200px;height:100px;margin:0 auto;text-align:center}.page-header .section-header{margin-bottom:0}.about{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.about-image{position:relative}.about-image img{width:100%;max-width:700px;border-radius:var(--radius-lg);filter:grayscale(20%);transition:filter .3s ease}.about-image:hover img{filter:grayscale(0%)}.about-image:before{content:"";position:absolute;inset:-20px;border:1px solid var(--border-color);border-radius:var(--radius-lg);z-index:-1}.about-content h2{font-size:2.5rem;margin-bottom:24px}.about-content p{color:var(--text-secondary);margin-bottom:16px;font-size:1.05rem;line-height:1.8}.about-content strong{color:var(--text-primary)}.tech-stack{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.tech-tag{padding:6px 14px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-full);font-size:.85rem;color:var(--text-secondary);font-family:JetBrains Mono,monospace}.about-details{padding:60px 20px 100px;max-width:1200px;margin:0 auto}.about-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.about-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:32px;transition:all .3s ease;position:relative;overflow:hidden}.about-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,var(--accent-primary),transparent);transform:scaleX(0);transition:transform .3s ease}.about-card:hover{border-color:var(--border-hover);transform:translateY(-4px);box-shadow:var(--shadow-lg)}.about-card:hover:before{transform:scaleX(1)}.about-card h3{font-size:1.2rem;margin-bottom:16px;font-weight:600;font-family:JetBrains Mono,monospace}.about-card p{color:var(--text-secondary);font-size:.98rem;line-height:1.75}.about-card ul{list-style:none;display:flex;flex-direction:column;gap:10px}.about-card ul li{color:var(--text-secondary);font-size:.95rem;padding:8px 0 8px 18px;border-bottom:1px solid var(--border-color);position:relative}.about-card ul li:last-child{border-bottom:none}.about-card ul li:before{content:"→";position:absolute;left:0;color:var(--accent-primary)}.section-preview{padding:40px 20px 0;max-width:1200px;margin:0 auto}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,auto);gap:20px}.service-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:32px;transition:all .3s ease;position:relative;overflow:hidden}.service-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,var(--accent-primary),transparent);transform:scaleX(0);transition:transform .3s ease}.service-card:hover{border-color:var(--border-hover);transform:translateY(-4px);box-shadow:var(--shadow-lg)}.service-card:hover:before{transform:scaleX(1)}.service-card.large{grid-row:span 2;grid-column:span 1}.service-card.wide{grid-column:span 2}.service-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border-radius:var(--radius-md);margin-bottom:20px;font-size:1.5rem;color:var(--accent-primary)}.service-card h3{font-size:1.25rem;margin-bottom:12px;font-weight:600}.service-card p{color:var(--text-secondary);font-size:.95rem;line-height:1.6;margin-bottom:16px}.service-tags{display:flex;flex-wrap:wrap;gap:8px}.service-tag{font-size:.8rem;color:var(--text-muted);font-family:JetBrains Mono,monospace}.projects-controls{display:flex;flex-direction:column;gap:20px;margin-bottom:40px}.projects-search input{width:100%;max-width:480px;margin:0 auto;display:block;padding:14px 20px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-full);color:var(--text-primary);font-size:.95rem;font-family:inherit;transition:all .3s ease}.projects-search input:focus{outline:none;border-color:var(--accent-primary)}.projects-search input::placeholder{color:var(--text-muted)}.projects-filter{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.filter-btn{padding:10px 20px;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-full);color:var(--text-secondary);font-size:.9rem;cursor:pointer;transition:all .3s ease}.filter-btn:hover,.filter-btn.active{background:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:24px}.projects-empty{text-align:center;color:var(--text-muted);padding:60px 20px;font-size:.95rem}.project-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;transition:all .3s ease}.project-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:var(--border-hover)}.project-card__visual{position:relative;overflow:hidden}.project-card__visual .project-image{transition:transform .4s ease}.project-card:hover .project-card__visual .project-image{transform:scale(1.05)}.project-image{width:100%;height:200px;object-fit:cover;background:var(--bg-secondary)}.project-badge{position:absolute;top:12px;right:12px;padding:5px 12px;background:var(--accent-primary);color:#fff;font-size:.75rem;font-weight:600;border-radius:var(--radius-full);font-family:JetBrains Mono,monospace}.project-content{padding:24px}.project-meta{margin-bottom:8px}.project-category{font-size:.78rem;color:var(--accent-primary);font-family:JetBrains Mono,monospace;text-transform:uppercase;letter-spacing:.05em}.project-content h3{font-size:1.25rem;margin-bottom:8px}.project-content p{color:var(--text-secondary);font-size:.95rem;margin-bottom:16px}.project-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.project-tag{padding:4px 12px;background:#ffffff0d;border-radius:var(--radius-full);font-size:.8rem;color:var(--text-muted);font-family:JetBrains Mono,monospace}.project-links{display:flex;gap:12px}.project-link{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);text-decoration:none;transition:all .3s ease}.project-link:hover{border-color:var(--text-primary);color:var(--text-primary);background:#ffffff0d}.skills-container{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.skill-category{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:32px;transition:all .3s ease}.skill-category:hover{border-color:var(--border-hover);transform:translateY(-4px)}.skill-category h3{font-size:1.1rem;margin-bottom:20px;color:var(--accent-primary);font-family:JetBrains Mono,monospace;display:flex;align-items:center;gap:8px}.skill-category h3:before{content:"//";opacity:.5}.skill-list{list-style:none}.skill-list li{padding:8px 0;color:var(--text-secondary);border-bottom:1px solid var(--border-color);font-size:.95rem}.skill-list li:last-child{border-bottom:none}.skills-section{position:relative;padding:100px 20px;max-width:1200px;margin:0 auto}.divider-img{display:block;margin:0 auto 60px;opacity:.6;width:80px;height:auto}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:20px}.skill-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:32px;transition:all .3s ease;position:relative;overflow:hidden;opacity:0;animation:fadeInUp .6s ease-out forwards}.skill-card:nth-child(1){animation-delay:.1s}.skill-card:nth-child(2){animation-delay:.2s}.skill-card:nth-child(3){animation-delay:.3s}.skill-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,transparent,var(--accent-primary),transparent);transform:scaleX(0);transition:transform .3s ease}.skill-card:hover{border-color:var(--border-hover);transform:translateY(-4px);box-shadow:var(--shadow-lg)}.skill-card:hover:before{transform:scaleX(1)}.skill-card h3{font-size:1.25rem;margin-bottom:24px;font-weight:600;font-family:JetBrains Mono,monospace;display:flex;align-items:center;gap:8px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.skill-card h3:before{content:"//";opacity:.6;font-size:1rem}.skill-tags{display:flex;flex-direction:column;gap:16px}.skill-tag{background:#ffffff08;border-left:2px solid var(--accent-primary);padding:16px 20px;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.95rem;line-height:1.7;transition:all .3s ease;font-family:inherit;position:relative;overflow:hidden}.skill-tag:before{content:"";position:absolute;left:0;top:0;width:0;height:100%;background:linear-gradient(90deg,rgba(34,197,94,.05),transparent);transition:width .3s ease;z-index:0}.skill-tag:hover{transform:translate(4px);color:var(--text-primary);border-left-color:var(--accent-secondary)}.skill-tag:hover:before{width:100%}.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.testimonial-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:32px;position:relative;transition:all .3s ease}.testimonial-card:hover{border-color:var(--border-hover);transform:translateY(-4px)}.testimonial-card:before{content:'"';position:absolute;top:20px;left:24px;font-size:4rem;color:var(--accent-primary);opacity:.2;font-family:Georgia,serif;line-height:1}.testimonial-card h3{font-size:1.1rem;margin-bottom:12px;position:relative;z-index:1}.testimonial-text{color:var(--text-secondary);font-size:1rem;line-height:1.7;margin-bottom:24px;position:relative;z-index:1}.testimonial-author{display:flex;align-items:center;gap:16px}.testimonial-author img{width:48px;height:48px;border-radius:50%;object-fit:cover}.testimonial-info h4{font-size:1rem;margin-bottom:4px}.testimonial-info p{font-size:.85rem;color:var(--text-muted)}.study-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;max-width:1200px;margin:0 auto;padding:0 20px 100px}.case-study-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:32px;display:flex;flex-direction:column;transition:all .3s ease;position:relative;overflow:hidden}.case-study-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,var(--accent-primary),transparent);transform:scaleX(0);transition:transform .3s ease}.case-study-card:hover{border-color:var(--border-hover);transform:translateY(-6px);box-shadow:var(--shadow-lg)}.case-study-card:hover:before{transform:scaleX(1)}.case-study-card h3{font-size:1.3rem;margin-bottom:12px;font-weight:600}.case-study-card p{color:var(--text-secondary);font-size:.95rem;line-height:1.7;margin-bottom:20px;flex:1}.case-study-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.case-study-meta span{padding:4px 12px;background:#ffffff0d;border-radius:var(--radius-full);font-size:.78rem;color:var(--text-muted);font-family:JetBrains Mono,monospace}.case-study-card .btn{align-self:flex-start}.page-case-study-detail{max-width:800px;margin:0 auto;padding:0 20px 100px}.case-study-section{padding:36px 0;border-bottom:1px solid var(--border-color)}.case-study-section:last-of-type{border-bottom:none}.case-study-section h3{font-size:1.3rem;margin-bottom:14px;font-family:JetBrains Mono,monospace;display:flex;align-items:center;gap:8px}.case-study-section h3:before{content:"//";color:var(--accent-primary);opacity:.6;font-size:1rem}.case-study-section p{color:var(--text-secondary);font-size:1.02rem;line-height:1.85}.tag-list{list-style:none;display:flex;flex-wrap:wrap;gap:10px;padding:0}.tag-list li{padding:6px 16px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-full);font-size:.85rem;color:var(--text-secondary);font-family:JetBrains Mono,monospace;transition:all .3s ease}.tag-list li:hover{border-color:var(--border-hover);color:var(--text-primary)}.page-case-study-detail .case-study-section:last-child{display:flex;gap:16px;flex-wrap:wrap;border-bottom:none;padding-top:40px}.page-experience,.page-case-studies,.page-github,.page-resume,.page-achievements{padding-top:100px}.experience-summary{max-width:800px;margin:0 auto;padding:0 20px 60px;text-align:center}.experience-summary p{color:var(--text-secondary);font-size:1.1rem;line-height:1.85}.experience-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;max-width:1200px;margin:0 auto;padding:0 20px 100px}.experience-card{background:var(--bg-card);border:1px solid var(--border-color);border-left:2px solid var(--accent-primary);border-radius:var(--radius-lg);padding:32px;transition:all .3s ease;position:relative}.experience-card:hover{border-color:var(--border-hover);border-left-color:var(--accent-secondary);transform:translateY(-4px);box-shadow:var(--shadow-lg)}.experience-card h3{font-size:1.15rem;font-weight:600;margin-bottom:8px}.experience-card small{display:block;color:var(--accent-primary);font-family:JetBrains Mono,monospace;font-size:.8rem;letter-spacing:.05em;text-transform:uppercase;margin-bottom:16px}.experience-card p{color:var(--text-secondary);font-size:.95rem;line-height:1.75}.resume-actions{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;max-width:1200px;margin:0 auto;padding:0 20px 60px}.resume-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;max-width:1200px;margin:0 auto;padding:0 20px 100px}.resume-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:32px;transition:all .3s ease}.resume-card:hover{border-color:var(--border-hover);transform:translateY(-4px);box-shadow:var(--shadow-lg)}.resume-card h3{font-size:1.15rem;margin-bottom:16px;font-family:JetBrains Mono,monospace}.resume-card p{color:var(--text-secondary);font-size:.98rem;line-height:1.75}.resume-card ul{list-style:none;display:flex;flex-direction:column;gap:10px}.resume-card ul li{color:var(--text-secondary);font-size:.95rem;padding:8px 0 8px 18px;border-bottom:1px solid var(--border-color);position:relative}.resume-card ul li:last-child{border-bottom:none}.resume-card ul li:before{content:"→";position:absolute;left:0;color:var(--accent-primary)}.contact{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.page-contact .contact{padding-bottom:100px}.contact-info h2{font-size:2rem;margin-bottom:16px}.contact-info>p{color:var(--text-secondary);margin-bottom:32px}.contact-details{display:flex;flex-direction:column;gap:20px}.contact-item{display:flex;align-items:center;gap:16px;color:var(--text-secondary)}.contact-item svg{width:20px;height:20px;color:var(--accent-primary)}.contact-form{display:flex;flex-direction:column;gap:20px}.form-group{position:relative}.form-group input,.form-group textarea{width:100%;padding:16px 20px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem;font-family:inherit;transition:all .3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-primary);background:var(--bg-card-hover)}.form-group textarea{min-height:150px;resize:vertical}.form-status{padding:12px 16px;border-radius:var(--radius-md);margin-bottom:16px;font-size:.95rem;animation:fadeIn .3s ease}.form-status.success{background:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:var(--accent-primary)}.form-status.error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444}.submit-btn{padding:16px 32px;background:var(--text-primary);color:var(--bg-primary);border:none;border-radius:var(--radius-md);font-size:1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .3s ease}.submit-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.submit-btn:disabled{opacity:.7;cursor:not-allowed}.footer{background:var(--bg-secondary);border-top:1px solid var(--border-color);padding:60px 20px 30px;margin-top:100px}.footer-content{max-width:1200px;margin:0 auto 40px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}.footer-brand h3{font-family:JetBrains Mono,monospace;font-size:1.5rem;margin-bottom:8px}.footer-brand p{color:var(--text-secondary);margin-bottom:8px}.footer-brand .email,.footer-brand .phone{display:block;color:var(--text-muted);font-size:.9rem;margin-bottom:4px}.footer-links h4{font-size:1rem;margin-bottom:20px;color:var(--text-primary)}.footer-links ul{list-style:none}.footer-links li{margin-bottom:12px}.footer-links a{color:var(--text-secondary);text-decoration:none;font-size:.95rem;transition:color .3s ease}.footer-links a:hover{color:var(--text-primary)}.social-links{display:flex;gap:12px}.social-link{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);transition:all .3s ease}.social-link:hover{border-color:var(--text-primary);color:var(--text-primary);transform:translateY(-2px)}.footer-bottom{max-width:1200px;margin:0 auto;padding-top:30px;border-top:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;color:var(--text-muted);font-size:.9rem}.dev-tools-hint{position:fixed;bottom:20px;left:20px;display:flex;align-items:center;gap:8px;padding:10px 16px;background:#000c;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.85rem;color:var(--accent-primary);font-family:JetBrains Mono,monospace;z-index:100}.terminal-icon{color:var(--accent-primary)}.search-hint{position:fixed;bottom:20px;right:80px;display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.85rem;color:var(--text-secondary);z-index:100}.cmd-icon{padding:2px 6px;background:var(--bg-secondary);border-radius:4px;font-size:.75rem}.chat-bubble{position:fixed;bottom:20px;right:20px;width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:var(--accent-primary);border-radius:50%;color:var(--bg-primary);box-shadow:0 4px 12px #22c55e4d;transition:all .3s ease;z-index:100}.chat-bubble:hover{transform:scale(1.1);box-shadow:0 6px 20px #22c55e66}[data-theme=light] .hero-badge{background:#16a34a14;border-color:#16a34a40}[data-theme=light] .dev-tools-hint{background:#ffffffe6}[data-theme=light] .project-tag,[data-theme=light] .case-study-meta span{background:#0000000a}[data-theme=light] .skill-tag{background:#00000005}[data-theme=light] .service-icon{background:#0000000a}@media (max-width: 1024px){.about,.contact{grid-template-columns:1fr}.services-grid{grid-template-columns:1fr 1fr}.service-card.large{grid-row:span 1}.service-card.wide{grid-column:span 2}.skills-container,.testimonials-grid{grid-template-columns:1fr}.skills-grid{grid-template-columns:repeat(2,1fr);gap:20px}.footer-content{grid-template-columns:1fr 1fr}.about-grid,.study-grid,.experience-grid,.resume-grid{grid-template-columns:1fr}.page-header{padding:120px 20px 30px}}@media (max-width: 1100px){.nav-links{display:none}.mobile-menu-btn{display:flex}}@media (max-width: 768px){.navbar{top:10px;left:16px;right:16px;transform:none;width:auto;max-width:none;padding:0}.nav-container{padding:12px 16px;gap:16px}.nav-logo{font-size:1.3rem}.hero-title{font-size:2.5rem}.services-grid{grid-template-columns:1fr}.service-card.wide{grid-column:span 1}.projects-grid{grid-template-columns:1fr}.skills-section{padding:80px 16px}.skills-grid{grid-template-columns:1fr;gap:20px}.skill-card{padding:24px}.skill-card h3{font-size:1.1rem;margin-bottom:20px}.skill-tag{padding:12px 16px;font-size:.9rem}.footer-content{grid-template-columns:1fr;text-align:center}.social-links{justify-content:center}.footer-bottom{flex-direction:column;gap:16px;text-align:center}.dev-tools-hint,.search-hint{display:none}.page-header{padding:110px 16px 24px}.about-details,.section-preview{padding-left:16px;padding-right:16px}.about-card,.case-study-card,.experience-card,.resume-card{padding:24px}.study-grid,.experience-grid,.resume-grid{padding:0 16px 80px;gap:16px}.resume-actions{padding:0 16px 40px}.resume-actions .btn{flex:1;justify-content:center}.case-study-card h3{font-size:1.15rem}.page-case-study-detail{padding:0 16px 80px}.case-study-section{padding:28px 0}.case-study-section h3{font-size:1.15rem}.case-study-section p{font-size:.95rem}.experience-summary{padding:0 16px 40px}.experience-summary p{font-size:1rem}.contact-form{gap:16px}.form-group input,.form-group textarea{padding:14px 16px}.projects-search input{max-width:100%}}@media (max-width: 480px){.page-header{padding:100px 14px 20px}.about-card,.case-study-card,.experience-card,.resume-card{padding:20px}.case-study-card .btn,.page-case-study-detail .case-study-section:last-child .btn{width:100%;justify-content:center}.page-case-study-detail .case-study-section:last-child{flex-direction:column}.tag-list li{font-size:.78rem;padding:5px 12px}.theme-toggle__label{display:none}.theme-toggle{padding:8px}.resume-actions{flex-direction:column}}@media print{.navbar,.resume-actions,.footer,.dev-tools-hint,.search-hint,.chat-bubble{display:none!important}body{background:#fff;color:#000}.resume-grid{grid-template-columns:1fr}.resume-card{border:1px solid #ddd;box-shadow:none;break-inside:avoid}}.achievement-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1200px;margin:0 auto;padding:0 20px 100px}.achievement-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:32px;transition:all .3s ease;position:relative;overflow:hidden}.achievement-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,var(--accent-primary),transparent);transform:scaleX(0);transition:transform .3s ease}.achievement-card:hover{border-color:var(--border-hover);transform:translateY(-4px);box-shadow:var(--shadow-lg)}.achievement-card:hover:before{transform:scaleX(1)}.achievement-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border-radius:var(--radius-md);margin-bottom:20px;color:var(--accent-primary)}[data-theme=light] .achievement-icon{background:#0000000a}.achievement-card small{display:block;color:var(--accent-primary);font-family:JetBrains Mono,monospace;font-size:.78rem;letter-spacing:.05em;text-transform:uppercase;margin-bottom:10px}.achievement-card h3{font-size:1.1rem;font-weight:600;margin-bottom:12px}.achievement-card p{color:var(--text-secondary);font-size:.92rem;line-height:1.7}@media (max-width: 1024px){.achievement-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.achievement-grid{grid-template-columns:1fr;padding:0 16px 80px;gap:16px}.achievement-card{padding:24px}}
