*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #6366f1;--secondary-color: #8b5cf6;--accent-color: #06b6d4;--success-color: #10b981;--warning-color: #f59e0b;--text-primary: #1f2937;--text-secondary: #6b7280;--text-light: #9ca3af;--background-primary: #ffffff;--background-secondary: #f8fafc;--background-dark: #0f172a;--background-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--tech-gradient: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #06b6d4 100%);--border-color: #e5e7eb;--shadow-light: 0 1px 3px rgba(0, 0, 0, .1);--shadow-medium: 0 4px 6px rgba(0, 0, 0, .1);--shadow-large: 0 10px 25px rgba(0, 0, 0, .15);--shadow-tech: 0 20px 40px rgba(99, 102, 241, .15)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--background-primary);color:var(--text-primary);line-height:1.6;overflow-x:hidden}html{scroll-behavior:smooth}.ant-layout{background:var(--background-primary)}.ant-layout-header{background:var(--background-primary);box-shadow:var(--shadow-medium);position:fixed;top:0;left:0;right:0;z-index:1000;padding:0 50px;border-bottom:1px solid var(--border-color)}.ant-layout-content{margin-top:70px;background:var(--background-primary)}.portfolio-section{padding:120px 50px;max-width:1400px;margin:0 auto;position:relative}.portfolio-section h2{text-align:center;margin-bottom:80px;font-size:3.5rem;background:var(--tech-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:800;letter-spacing:-.05em;position:relative;text-shadow:0 4px 8px rgba(99,102,241,.1)}.portfolio-section h2:before{content:"";position:absolute;top:-20px;left:50%;transform:translate(-50%);width:100px;height:4px;background:var(--tech-gradient);border-radius:2px;box-shadow:0 4px 12px #6366f14d}.portfolio-section h2:after{content:"";position:absolute;bottom:-20px;left:50%;transform:translate(-50%);width:60px;height:3px;background:var(--accent-color);border-radius:2px}.ant-typography h1{font-weight:700!important;letter-spacing:-.025em!important}.ant-typography h2,.ant-typography h3{font-weight:600!important;letter-spacing:-.025em!important}.ant-typography h4,.ant-typography h5{font-weight:500!important;letter-spacing:-.025em!important}.ant-btn-primary{background:var(--tech-gradient)!important;border:none!important;font-weight:600!important;letter-spacing:.025em!important;height:56px!important;padding:0 40px!important;border-radius:12px!important;box-shadow:var(--shadow-tech)!important;transition:all .4s cubic-bezier(.4,0,.2,1)!important;position:relative!important;overflow:hidden!important}.ant-btn-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.ant-btn-primary:hover:before{left:100%}.ant-btn-primary:hover{transform:translateY(-3px) scale(1.02)!important;box-shadow:0 25px 50px #6366f140!important}.ant-card{border:none!important;border-radius:20px!important;box-shadow:var(--shadow-large)!important;transition:all .4s cubic-bezier(.4,0,.2,1)!important;background:#ffffffe6!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;position:relative!important;overflow:hidden!important}.ant-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--tech-gradient);border-radius:20px 20px 0 0}.ant-card:hover{box-shadow:var(--shadow-tech)!important;transform:translateY(-8px) scale(1.02)!important;background:#fffffff2!important}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes glow{0%,to{box-shadow:0 0 20px #6366f14d}50%{box-shadow:0 0 40px #6366f199}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}.fade-in-up{animation:fadeInUp .8s cubic-bezier(.4,0,.2,1)}.float{animation:float 3s ease-in-out infinite}.pulse{animation:pulse 2s ease-in-out infinite}.glow{animation:glow 2s ease-in-out infinite}.slide-in-left{animation:slideInLeft .8s cubic-bezier(.4,0,.2,1)}.slide-in-right{animation:slideInRight .8s cubic-bezier(.4,0,.2,1)}@media (max-width: 768px){.ant-layout-header{padding:0 20px}.portfolio-section{padding:80px 20px}.portfolio-section h2{font-size:2.25rem}}.project-card:hover{transform:translateY(-3px);transition:transform .3s ease}.skill-card:hover{transform:translateY(-2px);transition:transform .3s ease}.portfolio-section:nth-child(2n){background:var(--background-secondary)}.tech-shape{position:absolute;border-radius:50%;background:var(--tech-gradient);opacity:.1;animation:float 6s ease-in-out infinite}.tech-shape-1{width:200px;height:200px;top:10%;right:10%;animation-delay:0s}.tech-shape-2{width:150px;height:150px;bottom:20%;left:5%;animation-delay:2s}.tech-shape-3{width:100px;height:100px;top:50%;left:10%;animation-delay:4s}.tech-grid{position:absolute;top:0;left:0;right:0;bottom:0;background-image:linear-gradient(rgba(99,102,241,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(99,102,241,.1) 1px,transparent 1px);background-size:50px 50px;pointer-events:none;opacity:.3}.tech-dots{position:absolute;width:4px;height:4px;background:var(--primary-color);border-radius:50%;animation:pulse 2s ease-in-out infinite}.tech-dots:nth-child(1){top:20%;left:20%;animation-delay:0s}.tech-dots:nth-child(2){top:40%;right:30%;animation-delay:.5s}.tech-dots:nth-child(3){bottom:30%;left:30%;animation-delay:1s}.tech-dots:nth-child(4){bottom:10%;right:20%;animation-delay:1.5s}.section-divider{height:2px;background:var(--tech-gradient);margin:80px 0;border-radius:1px;position:relative;overflow:hidden}.section-divider:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.8),transparent);animation:slideInLeft 2s ease-in-out infinite}
