:root{--primary-color: #6366f1;--primary-dark: #4338ca;--primary-light: #a5b4fc;--accent-color: #06b6d4;--accent-dark: #0891b2;--text-primary: #1f2937;--text-secondary: #6b7280;--text-light: #9ca3af;--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--border-color: #e5e7eb;--border-light: #f3f4f6;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;line-height:1.6;color:var(--text-primary);background:linear-gradient(-45deg, #fff, #f8fafc, #f1f5f9, #fff);background-size:400% 400%;animation:gradient-shift 15s ease infinite;overflow-x:hidden}.container{max-width:1200px;margin:0 auto;padding:0 2rem}@media (max-width: 768px){.container{padding:0 1rem}}@keyframes float{0%, 100%{transform:translateY(0px)}50%{transform:translateY(-20px)}}@keyframes fadeInUp{from{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%, 100%{opacity:1}50%{opacity:0.3}}@keyframes gradient{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}@keyframes border-pulse{0%, 100%{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes ripple{to{transform:scale(4);opacity:0}}@keyframes hue-rotate{0%{filter:hue-rotate(0deg)}100%{filter:hue-rotate(360deg)}}@keyframes sparkle{0%, 100%{transform:scale(0) rotate(0deg);opacity:0}50%{transform:scale(1) rotate(180deg);opacity:1}}@keyframes rainbow-flow{0%, 100%{background-position:0% 50%}50%{background-position:100% 50%}}.hero{padding:8rem 0 6rem;position:relative;background:linear-gradient(-45deg, #667eea, #764ba2, #6366f1, #06b6d4);background-size:400% 400%;animation:gradient 15s ease infinite;color:white;overflow:hidden}.hero::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background-image:linear-gradient(rgba(99,102,241,0.03) 1px, transparent 1px),linear-gradient(90deg, rgba(99,102,241,0.03) 1px, transparent 1px);background-size:50px 50px;background-position:-1px -1px;pointer-events:none;z-index:1}@media (max-width: 768px){.hero{padding:6rem 0 4rem}}.hero-animation{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.floating-elements{position:relative;width:100%;height:100%}.floating-element{position:absolute;font-size:2rem;animation:float 6s ease-in-out infinite;opacity:0.7}.floating-element:nth-child(1){top:20%;left:10%;animation-delay:0s}.floating-element:nth-child(2){top:60%;right:15%;animation-delay:2s}.floating-element:nth-child(3){top:40%;left:70%;animation-delay:4s}.hero-content{text-align:center;position:relative;z-index:2}.hero-title{margin-bottom:1rem}.hero-title .title-line{display:block;font-size:1.5rem;font-weight:400;opacity:0.9;margin-bottom:0.5rem}.hero-title .title-main{display:block;font-size:4rem;font-weight:800;background:linear-gradient(135deg, #fff 0%, #a5b4fc 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@media (max-width: 768px){.hero-title .title-main{font-size:2.5rem}}.hero-title .title-cursor{display:inline-block;font-weight:100;animation:pulse 1.5s infinite}.hero-subtitle{font-size:1.5rem;font-weight:500;margin-bottom:2rem;height:2rem}@media (max-width: 768px){.hero-subtitle{font-size:1.25rem}}.typing-text::after{content:'|';animation:pulse 1s infinite}.hero-description{font-size:1.25rem;opacity:0.95;max-width:600px;margin:0 auto 3rem;line-height:1.7}@media (max-width: 768px){.hero-description{font-size:1.1rem;margin-bottom:2rem}}.hero-actions{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap}.section{padding:6rem 0;position:relative}@media (max-width: 768px){.section{padding:4rem 0}}.section:nth-child(even){background:var(--bg-secondary)}.section-title{font-size:2.5rem;font-weight:700;text-align:center;margin-bottom:4rem;color:var(--text-primary);position:relative}@media (max-width: 768px){.section-title{font-size:2rem;margin-bottom:3rem}}.section-title .title-number{color:var(--primary-color);font-size:1.5rem;font-weight:600;margin-right:1rem}.about-content{max-width:1000px;margin:0 auto}.about-intro{font-size:1.25rem;color:var(--text-secondary);text-align:center;margin-bottom:3rem;line-height:1.7}.about-highlights{display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:2rem;margin-top:3rem}.highlight-item{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem;background:var(--bg-primary);border-radius:12px;box-shadow:var(--shadow-sm);transition:all 0.3s ease}.highlight-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.highlight-icon{font-size:2rem;flex-shrink:0}.highlight-text h4{font-size:1.1rem;font-weight:600;margin-bottom:0.5rem;color:var(--text-primary)}.highlight-text p{color:var(--text-secondary);font-size:0.9rem}.skills-container{max-width:1000px;margin:0 auto}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:2rem}.skill-category{background:var(--bg-primary);border-radius:16px;padding:2rem;box-shadow:var(--shadow-md);transition:all 0.3s ease;position:relative;overflow:hidden}.skill-category::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg, var(--primary-color), var(--accent-color))}.skill-category:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl)}.category-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.category-header .category-icon{font-size:1.5rem}.category-header h3{font-size:1.5rem;font-weight:600;color:var(--text-primary)}.tech-list{display:flex;flex-wrap:wrap;gap:0.75rem}.tech-item{background:var(--bg-secondary);color:var(--text-primary);padding:0.6rem 1.2rem;border-radius:20px;font-size:0.875rem;font-weight:500;border:2px solid transparent;transition:all 0.3s ease;cursor:default}.tech-item:hover{background:var(--primary-color);color:white;border-color:var(--primary-color);transform:scale(1.05)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(400px, 1fr));gap:3rem;margin-top:3rem}.project-card{background:var(--bg-primary);border-radius:20px;padding:2.5rem;box-shadow:var(--shadow-md);transition:all 0.4s ease;position:relative;overflow:hidden}.project-card::before{content:'';position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(45deg, var(--primary-color), var(--accent-color), var(--primary-color));background-size:200% 200%;border-radius:inherit;z-index:-1;opacity:0;transition:opacity 0.3s ease;animation:border-pulse 3s ease-in-out infinite}.project-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl)}.project-number{position:absolute;top:1.5rem;right:1.5rem;font-size:3rem;font-weight:800;color:var(--bg-secondary);z-index:1}.project-title{font-size:1.5rem;font-weight:700;margin-bottom:1rem;color:var(--text-primary);position:relative;z-index:2}.project-description{color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.6;position:relative;z-index:2}.project-tech{display:flex;flex-wrap:wrap;gap:0.5rem;margin-bottom:2rem;position:relative;z-index:2}.tech-tag{background:var(--bg-secondary);color:var(--text-secondary);padding:0.3rem 0.8rem;border-radius:12px;font-size:0.75rem;font-weight:500}.project-links{display:flex;gap:1.5rem;flex-wrap:wrap;position:relative;z-index:2}.project-link{display:flex;align-items:center;gap:0.5rem;color:var(--primary-color);text-decoration:none;font-weight:600;font-size:0.875rem;transition:all 0.2s ease}.project-link svg{width:16px;height:16px;transition:transform 0.2s ease}.project-link:hover{color:var(--primary-dark)}.project-link:hover svg{transform:scale(1.1)}.project-decoration{position:absolute;bottom:-50px;right:-50px;width:120px;height:120px;background:linear-gradient(135deg, var(--primary-light), var(--accent-color));border-radius:50%;opacity:0.1;transition:all 0.4s ease;z-index:1}.contact-content{text-align:center;max-width:600px;margin:0 auto}.contact-intro{font-size:1.25rem;color:var(--text-secondary);margin-bottom:3rem;line-height:1.7}.contact-cta{margin-bottom:3rem}.social-links{display:flex;gap:2rem;justify-content:center;flex-wrap:wrap}.social-link{display:flex;align-items:center;gap:0.75rem;color:var(--text-secondary);text-decoration:none;font-weight:500;padding:0.75rem 1.5rem;border-radius:12px;background:var(--bg-primary);box-shadow:var(--shadow-sm);transition:all 0.3s ease}.social-link svg{width:20px;height:20px}.social-link:hover{color:var(--primary-color);background:var(--bg-secondary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn{display:inline-flex;align-items:center;gap:0.75rem;padding:1rem 2rem;border-radius:12px;text-decoration:none;font-weight:600;font-size:0.875rem;transition:all 0.3s ease;border:2px solid transparent;cursor:pointer;position:relative;overflow:hidden}.btn::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);transition:left 0.5s}.btn:hover::before{left:100%}.btn-animated:hover .btn-icon{transform:scale(1.1) rotate(5deg)}.btn-primary{background:linear-gradient(135deg, #ff6b35, #f7931e, #ffcc02);color:#1a1a1a;box-shadow:var(--shadow-md);font-weight:700;text-shadow:0 1px 2px rgba(255,255,255,0.3)}.btn-primary:hover{background:linear-gradient(135deg, #ff8c42, #ffa726, #ffd54f);transform:translateY(-3px);box-shadow:var(--shadow-lg);color:#0a0a0a}.btn-outline{background:linear-gradient(135deg, rgba(255,107,53,0.2), rgba(247,147,30,0.2));color:#ff6b35;border:2px solid #ff6b35;backdrop-filter:blur(10px);font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,0.3)}.btn-outline:hover{background:linear-gradient(135deg, rgba(255,107,53,0.4), rgba(247,147,30,0.4));border-color:#ffa726;color:#ffa726;transform:translateY(-3px)}.btn-large{padding:1.25rem 2.5rem;font-size:1rem}header{background:rgba(255,255,255,0.95);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:100}.nav{display:flex;justify-content:space-between;align-items:center;padding:1rem 0}.brand-link{font-size:1.5rem;font-weight:700;color:var(--text-primary);text-decoration:none;background:linear-gradient(135deg, var(--primary-color), var(--accent-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nav-links{display:flex;gap:2rem}.nav-link{color:var(--text-secondary);text-decoration:none;font-weight:500;transition:all 0.2s ease;position:relative}.nav-link::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--primary-color);transition:width 0.3s ease}.nav-link:hover{color:var(--primary-color)}.nav-link:hover::after{width:100%}.main-content{min-height:calc(100vh - 120px)}footer{background:var(--text-primary);color:white;text-align:center;padding:2rem 0}footer p{margin:0;opacity:0.8}@media (max-width: 768px){.skills-grid{grid-template-columns:1fr;gap:1.5rem}.projects-grid{grid-template-columns:1fr;gap:2rem}.project-card{padding:2rem}.hero-actions{flex-direction:column;align-items:center}.btn{min-width:250px;justify-content:center}.nav-links{gap:1rem}.nav-link{font-size:0.875rem}.about-highlights{grid-template-columns:1fr}.social-links{gap:1rem}}.custom-cursor{position:fixed;width:20px;height:20px;border:2px solid var(--primary-color);border-radius:50%;pointer-events:none;z-index:9999;transition:all 0.1s ease;transform:translate(-50%, -50%)}.custom-cursor.cursor-hover{width:40px;height:40px;background-color:rgba(99,102,241,0.1)}@media (max-width: 768px){.custom-cursor{display:none}}.cursor-dot{position:fixed;width:4px;height:4px;background-color:var(--primary-color);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%, -50%)}.cursor-dot.cursor-hover{width:6px;height:6px}@media (max-width: 768px){.cursor-dot{display:none}}.terminal-container{background:#1a1a1a;border-radius:8px;padding:1rem;font-family:'Monaco', 'Menlo', 'Ubuntu Mono', monospace;color:#00ff00;margin:2rem 0;box-shadow:0 10px 30px rgba(0,0,0,0.3)}.terminal-container .terminal-header{display:flex;align-items:center;gap:0.5rem;margin-bottom:1rem;padding-bottom:0.5rem;border-bottom:1px solid #333}.terminal-container .terminal-header .terminal-dot{width:12px;height:12px;border-radius:50%}.terminal-container .terminal-header .terminal-dot.red{background:#ff5f56}.terminal-container .terminal-header .terminal-dot.yellow{background:#ffbd2e}.terminal-container .terminal-header .terminal-dot.green{background:#27ca3f}.terminal-container .terminal-header .terminal-title{color:#ccc;font-size:0.875rem;margin-left:auto}.terminal-container .terminal-output{min-height:200px}.terminal-container .terminal-output .terminal-line{margin:0.5rem 0}.terminal-container .terminal-output .terminal-line .terminal-prompt{color:#00ff00;font-weight:bold}.terminal-container .terminal-output .terminal-line .terminal-cursor{animation:blink 1s infinite}.terminal-container .terminal-output .terminal-output-line{color:#ccc;margin:0.25rem 0;margin-left:2rem;white-space:pre-line}@keyframes blink{0%, 50%{opacity:1}51%, 100%{opacity:0}}.code-preview-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.95);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity 0.3s ease;border-radius:inherit}.code-preview-overlay .code-preview{width:90%;max-width:400px;background:#1a1a1a;border-radius:8px;overflow:hidden;transform:scale(0.9);transition:transform 0.3s ease}.code-preview-overlay .code-preview .code-header{display:flex;align-items:center;padding:0.75rem;background:#2a2a2a;border-bottom:1px solid #333}.code-preview-overlay .code-preview .code-header .code-dots{display:flex;gap:0.5rem}.code-preview-overlay .code-preview .code-header .code-dots span{width:8px;height:8px;border-radius:50%}.code-preview-overlay .code-preview .code-header .code-dots span:nth-child(1){background:#ff5f56}.code-preview-overlay .code-preview .code-header .code-dots span:nth-child(2){background:#ffbd2e}.code-preview-overlay .code-preview .code-header .code-dots span:nth-child(3){background:#27ca3f}.code-preview-overlay .code-preview .code-header .code-title{color:#ccc;font-size:0.75rem;margin-left:auto}.code-preview-overlay .code-preview .code-content{padding:1rem}.code-preview-overlay .code-preview .code-content pre{margin:0;color:#00ff00;font-family:'Monaco', 'Menlo', 'Ubuntu Mono', monospace;font-size:0.75rem;line-height:1.4}.project-card:hover .code-preview-overlay .code-preview{transform:scale(1)}.project-card,.skill-category{transition:all 0.3s ease;transform-style:preserve-3d}.project-card:hover,.skill-category:hover{box-shadow:0 25px 50px rgba(0,0,0,0.15)}.glitch-effect{position:relative}.glitch-effect::before,.glitch-effect::after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%}.glitch-effect::before{animation:glitch-1 2s infinite;color:#ff0000;z-index:-1}.glitch-effect::after{animation:glitch-2 2s infinite;color:#00ffff;z-index:-2}@keyframes glitch-1{0%, 14%, 15%, 49%, 50%, 99%, 100%{transform:translate(0)}15%, 49%{transform:translate(-2px, 2px)}}@keyframes glitch-2{0%, 20%, 21%, 62%, 63%, 99%, 100%{transform:translate(0)}21%, 62%{transform:translate(2px, -2px)}}.neon-glow{text-shadow:0 0 5px currentColor, 0 0 10px currentColor, 0 0 15px currentColor, 0 0 20px currentColor;animation:neon-flicker 2s infinite alternate}@keyframes neon-flicker{0%, 18%, 22%, 25%, 53%, 57%, 100%{text-shadow:0 0 5px currentColor, 0 0 10px currentColor, 0 0 15px currentColor, 0 0 20px currentColor}20%, 24%, 55%{text-shadow:none}}.matrix-rain{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1;opacity:0.1}#particle-canvas{position:fixed !important;top:0 !important;left:0 !important;pointer-events:none !important;z-index:1 !important}.loading-spinner{display:inline-block;width:20px;height:20px;border:2px solid rgba(99,102,241,0.3);border-radius:50%;border-top-color:var(--primary-color);animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.floating-controls{position:fixed;right:2rem;bottom:2rem;display:flex;flex-direction:column;gap:1rem;z-index:1000}@media (max-width: 768px){.floating-controls{right:1rem;bottom:1rem}}.back-to-top{width:50px;height:50px;border-radius:50%;background:var(--primary-color);color:white;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);transition:all 0.3s ease;opacity:0;transform:translateY(20px)}.back-to-top.visible{opacity:1;transform:translateY(0)}.back-to-top:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-xl)}.back-to-top svg{width:20px;height:20px}.scroll-progress{width:4px;height:100px;background:rgba(99,102,241,0.2);border-radius:2px;overflow:hidden}.scroll-progress .scroll-progress-bar{width:100%;height:0%;background:linear-gradient(to top, var(--primary-color), var(--accent-color));border-radius:2px;transition:height 0.1s ease}.bg-shapes{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:-1;overflow:hidden}.shape{position:absolute;opacity:0.05;animation:float-slow 20s ease-in-out infinite}.shape.shape-1{top:10%;left:10%;width:200px;height:200px;background:linear-gradient(45deg, var(--primary-color), var(--accent-color));border-radius:30% 70% 70% 30% / 30% 30% 70% 70%;animation-delay:0s}.shape.shape-2{top:60%;right:10%;width:150px;height:150px;background:linear-gradient(135deg, var(--accent-color), var(--primary-light));border-radius:63% 37% 54% 46% / 55% 48% 52% 45%;animation-delay:-7s}.shape.shape-3{bottom:20%;left:20%;width:100px;height:100px;background:linear-gradient(225deg, var(--primary-light), var(--primary-color));border-radius:50%;animation-delay:-14s}@keyframes float-slow{0%, 100%{transform:translateY(0px) rotate(0deg)}33%{transform:translateY(-20px) rotate(120deg)}66%{transform:translateY(10px) rotate(240deg)}}.floating-elements .floating-element:nth-child(4){top:20%;right:15%;animation-delay:-1s}.floating-elements .floating-element:nth-child(5){bottom:30%;left:10%;animation-delay:-2.5s}.floating-elements .floating-element:nth-child(6){top:70%;right:25%;animation-delay:-4s}.glitch-effect{position:relative}.glitch-effect:hover::before,.glitch-effect:hover::after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%}.glitch-effect:hover::before{animation:glitch-1 0.3s infinite;color:#ff0000;z-index:-1}.glitch-effect:hover::after{animation:glitch-2 0.3s infinite;color:#00ffff;z-index:-2}.tech-item{position:relative;overflow:hidden}.tech-item::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);transition:left 0.5s ease}.tech-item:hover::before{left:100%}.terminal-container{position:relative}.terminal-container::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 20%, rgba(0,255,0,0.1) 0%, transparent 50%),radial-gradient(circle at 80% 80%, rgba(0,255,255,0.1) 0%, transparent 50%),linear-gradient(45deg, transparent 30%, rgba(0,255,0,0.05) 70%);border-radius:inherit;pointer-events:none}.hero{position:relative}.hero::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background-image:linear-gradient(rgba(99,102,241,0.03) 1px, transparent 1px),linear-gradient(90deg, rgba(99,102,241,0.03) 1px, transparent 1px);background-size:50px 50px;background-position:-1px -1px;pointer-events:none;z-index:1}.hero .hero-content{position:relative;z-index:2}.btn{position:relative;overflow:hidden}.btn::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);transition:left 0.5s ease}.btn:hover::before{left:100%}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(99,102,241,0.3)}.section-title{position:relative}.section-title:hover{text-shadow:0 0 20px rgba(99,102,241,0.5)}.section-title .title-number{position:relative}.section-title .title-number::after{content:attr(data-text);position:absolute;top:0;left:0;color:var(--primary-color);filter:blur(10px);opacity:0;transition:opacity 0.3s ease}.section-title:hover .title-number::after{opacity:0.7}.skill-category{position:relative;overflow:hidden}.skill-category::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg, rgba(99,102,241,0.1), rgba(6,182,212,0.1));opacity:0;transition:opacity 0.3s ease}.skill-category:hover::after{opacity:1}.skill-category .category-header{position:relative;z-index:1}.skill-category .tech-list{position:relative;z-index:1}.playground-section{background:linear-gradient(135deg, #667eea 0%, #764ba2 50%, #ff6b6b 100%);color:white;position:relative;overflow:hidden}.playground-section::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 20%, rgba(255,255,255,0.1) 0%, transparent 50%),radial-gradient(circle at 80% 80%, rgba(255,255,255,0.1) 0%, transparent 50%);pointer-events:none}.playground-section .section-title{color:white;text-shadow:0 2px 8px rgba(0,0,0,0.6),0 0 20px rgba(255,255,255,0.3);font-weight:700}.playground-section .playground-intro{text-align:center;font-size:1.2rem;margin-bottom:3rem;opacity:0.98;animation:pulse-glow 3s ease-in-out infinite;text-shadow:0 2px 4px rgba(0,0,0,0.3)}@keyframes pulse-glow{0%, 100%{text-shadow:0 0 10px rgba(255,255,255,0.5)}50%{text-shadow:0 0 20px rgba(255,255,255,0.8)}}.playground-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(320px, 1fr));gap:2rem;margin-top:2rem}.playground-item{background:rgba(255,255,255,0.35);border-radius:20px;padding:1.5rem;text-align:center;backdrop-filter:blur(15px);border:1px solid rgba(255,255,255,0.5);transition:transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275),box-shadow 0.3s ease,background 0.3s ease,border-color 0.3s ease;position:relative;will-change:transform}.playground-item::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg, transparent, rgba(255,255,255,0.2), transparent);transform:translateX(-100%);transition:transform 0.6s ease;border-radius:inherit;pointer-events:none;will-change:transform}.playground-item:hover::before{transform:translateX(100%)}.playground-item:hover{transform:translateY(-10px) scale(1.02);box-shadow:0 20px 40px rgba(0,0,0,0.3);background:rgba(255,255,255,0.45);border-color:rgba(255,255,255,0.7)}.playground-item .playground-title{font-size:1.1rem;font-weight:600;margin-bottom:1.5rem;background:linear-gradient(135deg, #6366f1, #8b5cf6, #06b6d4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 2px 6px rgba(0,0,0,0.3);filter:drop-shadow(0 0 8px rgba(99,102,241,0.4))}.magic-ball{perspective:1000px}.magic-ball .ball-sphere{width:150px;height:150px;margin:0 auto 1rem;background:radial-gradient(circle at 30% 30%, #4a4a4a, #000);border-radius:50%;position:relative;cursor:pointer;transition:transform 0.5s ease;box-shadow:0 10px 30px rgba(0,0,0,0.5)}.magic-ball .ball-sphere:hover{transform:rotateY(15deg) rotateX(10deg)}.magic-ball .ball-sphere .ball-window{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:80px;height:50px;background:#001122;border-radius:40px;display:flex;align-items:center;justify-content:center;border:2px solid #333}.magic-ball .ball-sphere .ball-window .ball-answer{color:#00ffff;font-size:0.7rem;text-align:center;opacity:0.9;animation:float-text 2s ease-in-out infinite}.magic-ball .ball-instruction{font-size:0.9rem;opacity:0.95;margin:0;color:#ffffff;text-shadow:0 1px 3px rgba(0,0,0,0.5)}@keyframes float-text{0%, 100%{transform:translateY(0px)}50%{transform:translateY(-2px)}}.color-symphony{display:flex;justify-content:center;gap:0.5rem;margin-bottom:1rem}.color-symphony .color-note{width:30px;height:80px;border-radius:15px;cursor:pointer;transition:all 0.3s ease;position:relative}.color-symphony .color-note:hover{transform:translateY(-10px) scale(1.1);box-shadow:0 10px 20px rgba(0,0,0,0.3)}.color-symphony .color-note.playing{animation:note-pulse 0.5s ease}@keyframes note-pulse{0%{transform:scale(1)}50%{transform:scale(1.2) translateY(-5px)}100%{transform:scale(1)}}.gravity-container .gravity-canvas{background:radial-gradient(ellipse at center, #1a1a2e 0%, #000 100%);border-radius:10px;border:2px solid rgba(255,255,255,0.2);margin-bottom:1rem}.gravity-container .gravity-controls{display:flex;gap:0.5rem;justify-content:center}.gravity-container .gravity-controls .gravity-btn{padding:0.5rem 1rem;background:linear-gradient(135deg, #e91e63, #9c27b0);border:2px solid #e91e63;border-radius:20px;color:white;cursor:pointer;transition:all 0.3s ease;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,0.5)}.gravity-container .gravity-controls .gravity-btn:hover{background:linear-gradient(135deg, #f06292, #ba68c8);border-color:#f06292;transform:translateY(-2px);box-shadow:0 6px 20px rgba(233,30,99,0.4)}.emoji-rain-container .emoji-canvas{background:linear-gradient(to bottom, #87CEEB 0%, #98FB98 100%);border-radius:10px;border:2px solid rgba(255,255,255,0.3);margin-bottom:1rem}.emoji-rain-container .rain-controls{display:flex;gap:0.3rem;justify-content:center}.emoji-rain-container .rain-controls .rain-btn{padding:0.4rem 0.8rem;background:linear-gradient(135deg, #00bcd4, #03a9f4);border:2px solid #00bcd4;border-radius:15px;color:white;cursor:pointer;font-size:0.8rem;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,0.5);transition:all 0.3s ease}.emoji-rain-container .rain-controls .rain-btn:hover{background:linear-gradient(135deg, #26c6da, #29b6f6);border-color:#26c6da;transform:scale(1.05);box-shadow:0 4px 15px rgba(0,188,212,0.4)}.dna-container .dna-helix{height:120px;position:relative;margin-bottom:1rem}.dna-container .dna-helix .dna-strand{position:absolute;top:0;left:50%;width:4px;height:100%;background:linear-gradient(to bottom, #ff6b6b, #4ecdc4, #45b7d1);transform-origin:center;animation:dna-spin 4s linear infinite}.dna-container .dna-helix .dna-strand.strand-1{transform:translateX(-20px)}.dna-container .dna-helix .dna-strand.strand-2{transform:translateX(20px);animation-delay:-2s}.dna-container .dna-helix .dna-strand::before{content:'';position:absolute;top:0;left:-10px;width:24px;height:100%;background:repeating-linear-gradient(0deg, transparent 0px, transparent 8px, rgba(255,255,255,0.3) 8px, rgba(255,255,255,0.3) 10px)}.dna-container .dna-controls{display:flex;gap:0.5rem;justify-content:center}.dna-container .dna-controls .dna-btn{padding:0.4rem 0.8rem;background:linear-gradient(135deg, #4caf50, #8bc34a);border:2px solid #4caf50;border-radius:15px;color:white;cursor:pointer;font-size:0.8rem;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,0.5);transition:all 0.3s ease}.dna-container .dna-controls .dna-btn:hover{background:linear-gradient(135deg, #66bb6a, #aed581);border-color:#66bb6a;transform:translateY(-2px);box-shadow:0 6px 20px rgba(76,175,80,0.4)}@keyframes dna-spin{0%{transform:translateX(-20px) rotateZ(0deg)}100%{transform:translateX(-20px) rotateZ(360deg)}}.fireworks-container .fireworks-canvas{background:radial-gradient(ellipse at center, #012 0%, #000 100%);border-radius:10px;border:2px solid rgba(255,255,255,0.2);margin-bottom:1rem}.fireworks-container .fireworks-btn{padding:0.8rem 1.5rem;background:linear-gradient(45deg, #ff3d71, #ff6b35, #feca57);border:2px solid #ff3d71;border-radius:25px;color:white;font-weight:700;cursor:pointer;transition:all 0.3s ease;box-shadow:0 5px 15px rgba(255,61,113,0.4);text-shadow:0 1px 3px rgba(0,0,0,0.5)}.fireworks-container .fireworks-btn:hover{background:linear-gradient(45deg, #ff5722, #ff8a50, #ffcc02);border-color:#ff5722;transform:translateY(-3px);box-shadow:0 8px 25px rgba(255,61,113,0.6)}.fireworks-container .fireworks-btn:active{transform:translateY(-1px)}.morphing-shapes{display:flex;justify-content:center;gap:1rem;margin-bottom:1rem}.morphing-shapes .morph-shape{width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;cursor:pointer;border-radius:50%;background:linear-gradient(135deg, #ff5722, #ff9800);transition:all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);border:2px solid #ff5722}.morphing-shapes .morph-shape:hover{transform:scale(1.2) rotate(15deg);background:linear-gradient(135deg, #ff7043, #ffb74d);border-color:#ff7043;box-shadow:0 6px 20px rgba(255,87,34,0.4)}.morphing-shapes .morph-shape.active{background:linear-gradient(45deg, #e91e63, #00bcd4);border-color:#e91e63;transform:scale(1.1);box-shadow:0 0 20px rgba(233,30,99,0.6)}.morph-instruction{font-size:0.9rem;opacity:0.95;margin:0;color:#ffffff;text-shadow:0 1px 3px rgba(0,0,0,0.5)}.wave-container .wave-canvas{background:linear-gradient(to bottom, #012, #036);border-radius:10px;border:2px solid rgba(255,255,255,0.2);margin-bottom:1rem}.wave-container .wave-controls{display:flex;flex-direction:column;align-items:center;gap:0.5rem}.wave-container .wave-controls .wave-slider{width:150px;accent-color:#4ecdc4}.wave-container .wave-controls label{font-size:0.8rem;opacity:0.95;color:#ffffff;text-shadow:0 1px 3px rgba(0,0,0,0.5)}.glitch-container .glitch-text{font-size:2rem;font-weight:bold;margin-bottom:1rem;position:relative;cursor:pointer}.glitch-container .glitch-text.glitching{animation:glitch-effect 0.3s ease-in-out}.glitch-container .glitch-controls{display:flex;gap:0.3rem;justify-content:center;flex-wrap:wrap}.glitch-container .glitch-controls .glitch-btn{padding:0.4rem 0.8rem;background:linear-gradient(135deg, #673ab7, #9c27b0);border:2px solid #673ab7;border-radius:15px;color:white;cursor:pointer;font-size:0.7rem;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,0.5);transition:all 0.3s ease}.glitch-container .glitch-controls .glitch-btn:hover{background:linear-gradient(135deg, #7986cb, #ba68c8);border-color:#7986cb;transform:scale(1.05);box-shadow:0 4px 15px rgba(103,58,183,0.4)}@keyframes glitch-effect{0%, 100%{transform:translate(0)}20%{transform:translate(-2px, 2px)}40%{transform:translate(-2px, -2px)}60%{transform:translate(2px, 2px)}80%{transform:translate(2px, -2px)}}@media (max-width: 768px){.playground-grid{grid-template-columns:1fr;gap:1.5rem}.playground-item{padding:1.2rem}.magic-ball .ball-sphere{width:120px;height:120px}.color-symphony .color-note{width:25px;height:60px}.morphing-shapes .morph-shape{width:35px;height:35px;font-size:1.2rem}.glitch-text{font-size:1.5rem}}.cube-container{perspective:1000px;height:200px;display:flex;justify-content:center;align-items:center}.cube{position:relative;width:120px;height:120px;transform-style:preserve-3d;animation:cube-rotate 20s infinite linear}.cube:hover{animation-play-state:paused}.cube-face{position:absolute;width:120px;height:120px;background:rgba(99,102,241,0.8);border:2px solid #fff;display:flex;align-items:center;justify-content:center;font-weight:bold;font-size:0.9rem;color:white}.cube-face.front{transform:rotateY(0deg) translateZ(60px)}.cube-face.back{transform:rotateY(180deg) translateZ(60px)}.cube-face.right{transform:rotateY(90deg) translateZ(60px)}.cube-face.left{transform:rotateY(-90deg) translateZ(60px)}.cube-face.top{transform:rotateX(90deg) translateZ(60px)}.cube-face.bottom{transform:rotateX(-90deg) translateZ(60px)}.cube-face.front{background:rgba(99,102,241,0.9)}.cube-face.back{background:rgba(6,182,212,0.9)}.cube-face.right{background:rgba(168,85,247,0.9)}.cube-face.left{background:rgba(239,68,68,0.9)}.cube-face.top{background:rgba(34,197,94,0.9)}.cube-face.bottom{background:rgba(249,115,22,0.9)}@keyframes cube-rotate{0%{transform:rotateX(0deg) rotateY(0deg)}100%{transform:rotateX(360deg) rotateY(360deg)}}.orbs-container{position:relative;height:200px;overflow:hidden}.orb{position:absolute;border-radius:50%;background:radial-gradient(circle at 30% 30%, rgba(255,255,255,0.8), transparent);box-shadow:0 0 20px rgba(255,255,255,0.5);animation:float-orb 6s ease-in-out infinite}.orb.orb-1{width:40px;height:40px;top:20%;left:10%;background:radial-gradient(circle at 30% 30%, rgba(99,102,241,0.8), rgba(99,102,241,0.2));animation-delay:0s}.orb.orb-2{width:60px;height:60px;top:60%;left:60%;background:radial-gradient(circle at 30% 30%, rgba(6,182,212,0.8), rgba(6,182,212,0.2));animation-delay:-2s}.orb.orb-3{width:30px;height:30px;top:10%;right:20%;background:radial-gradient(circle at 30% 30%, rgba(168,85,247,0.8), rgba(168,85,247,0.2));animation-delay:-4s}.orb.orb-4{width:50px;height:50px;bottom:10%;left:30%;background:radial-gradient(circle at 30% 30%, rgba(34,197,94,0.8), rgba(34,197,94,0.2));animation-delay:-1s}@keyframes float-orb{0%, 100%{transform:translateY(0px) scale(1);opacity:0.7}50%{transform:translateY(-20px) scale(1.1);opacity:1}}.morph-card{width:200px;height:150px;margin:0 auto;background:linear-gradient(45deg, rgba(99,102,241,0.8), rgba(6,182,212,0.8));border-radius:20px;display:flex;align-items:center;justify-content:center;transition:all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);cursor:pointer}.morph-card:hover{transform:scale(1.1) rotateY(15deg);border-radius:50px;background:linear-gradient(45deg, rgba(168,85,247,0.8), rgba(34,197,94,0.8))}.morph-card .morph-content{text-align:center}.morph-card .morph-content .morph-icon{font-size:2rem;margin-bottom:0.5rem}.morph-card .morph-content h4{margin:0.5rem 0;font-size:1.1rem}.morph-card .morph-content p{margin:0;font-size:0.9rem;opacity:0.8}.particles-demo{position:relative;height:200px;background:rgba(0,0,0,0.3);border-radius:10px;overflow:hidden;cursor:pointer}.particles-demo .particles-canvas{position:absolute;top:0;left:0;width:100%;height:100%}.particles-demo .particles-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);color:white;font-weight:bold;pointer-events:none;opacity:0.8}.button-3d-container{perspective:1000px;display:flex;justify-content:center;align-items:center;height:200px}.btn-3d{position:relative;background:none;border:none;cursor:pointer;font-size:1.2rem;font-weight:bold;transform-style:preserve-3d;transition:transform 0.2s ease}.btn-3d:hover{transform:rotateX(-10deg) rotateY(10deg)}.btn-3d:active{transform:rotateX(-10deg) rotateY(10deg) translateZ(-5px)}.btn-3d .btn-3d-top,.btn-3d .btn-3d-bottom{display:block;position:relative;padding:1rem 2rem;border-radius:10px;color:white}.btn-3d .btn-3d-top{background:linear-gradient(45deg, #6366f1, #8b5cf6);transform:translateZ(20px);box-shadow:0 5px 0 #4338ca}.btn-3d .btn-3d-bottom{position:absolute;top:0;left:0;background:#4338ca;transform:translateZ(-1px)}.holo-card{width:200px;height:150px;margin:0 auto;background:linear-gradient(45deg, transparent, rgba(255,255,255,0.1), transparent);border:1px solid rgba(255,255,255,0.3);border-radius:15px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;cursor:pointer}.holo-card::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent);transition:left 0.5s ease}.holo-card:hover::before{left:100%}.holo-card:hover{box-shadow:0 0 30px rgba(255,255,255,0.5);transform:scale(1.05)}.holo-card .holo-content{text-align:center;z-index:1}.holo-card .holo-content .holo-icon{font-size:2rem;margin-bottom:0.5rem}.holo-card .holo-content h4{margin:0.5rem 0;font-size:1.1rem}.holo-card .holo-content p{margin:0;font-size:0.9rem;opacity:0.8}@media (max-width: 768px){.playground-grid{grid-template-columns:1fr;gap:1.5rem}.playground-item{padding:1.5rem}.cube{width:100px;height:100px}.cube-face{width:100px;height:100px;font-size:0.8rem}.morph-card,.holo-card{width:180px;height:130px}}
