.app-container, body { margin: 0; display: flex; } #mainButton, .lap-container { transform: translate(-50%, -50%); } #mainButton span, .welcome-text-lap { text-shadow: 0 0 20px #8b00ff, 0 0 40px #8b00ff, 0 0 60px #8b00ff; } #extra-part, #sub-part-right, #sub-part-up { transform: translate(-50%, -50%) translate(0, 0); } @keyframes gradientShift { 0%, 100% { background-position: 0 50%; } 50% { background-position: 100% 50%; } } @keyframes waveFlow1 { 0% { transform: translateX(-100%) translateY(10px) skewX(-5deg); } 25% { transform: translateX(-25%) translateY(-5px) skewX(2deg); } 50% { transform: translateX(0) translateY(8px) skewX(-3deg); } 75% { transform: translateX(25%) translateY(-3px) skewX(4deg); } 100% { transform: translateX(100%) translateY(10px) skewX(5deg); } } @keyframes waveFlow2 { 0% { transform: translateX(-100%) translateY(-8px) skewX(3deg); } 30% { transform: translateX(-40%) translateY(6px) skewX(-2deg); } 60% { transform: translateX(20%) translateY(-4px) skewX(3deg); } 100% { transform: translateX(100%) translateY(-8px) skewX(-3deg); } } @keyframes waveFlow3 { 0% { transform: translateX(-100%) translateY(6px) skewX(-2deg); } 40% { transform: translateX(-30%) translateY(-7px) skewX(4deg); } 80% { transform: translateX(30%) translateY(5px) skewX(-1deg); } 100% { transform: translateX(100%) translateY(6px) skewX(2deg); } } @keyframes waveFlow4 { 0% { transform: translateX(-100%) translateY(-12px) skewX(4deg); } 20% { transform: translateX(-60%) translateY(3px) skewX(-3deg); } 50% { transform: translateX(-10%) translateY(-8px) skewX(2deg); } 80% { transform: translateX(40%) translateY(4px) skewX(-2deg); } 100% { transform: translateX(100%) translateY(-12px) skewX(-4deg); } } @keyframes wavePulse { 0%, 100% { opacity: 0.4; } 50% { opacity: 0.9; } } @keyframes lapAppear { 0% { opacity: 0; transform: translate(-50%, -50%) scale(0.3); } 100% { opacity: 1; transform: translate(-50%, -50%) scale(1); } } @keyframes lapDisappear { 0% { opacity: 1; transform: translate(-50%, -50%) scale(1); } 100% { opacity: 0; transform: translate(-50%, -50%) scale(0.3); } } @keyframes lapPulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.05); } } @keyframes textPulse { 0%, 100% { transform: translateX(-50%) scale(1); opacity: 0.8; } 50% { transform: translateX(-50%) scale(1.05); opacity: 1; } } body { height: 100vh; justify-content: center; align-items: center; font-family: Arial, sans-serif; overflow: hidden; background-color: #000; } .lap-container { position: fixed; top: 50%; left: 50%; z-index: 10; animation: 1.5s ease-out lapAppear; transition: opacity 0.5s, transform 0.5s; display: flex; flex-direction: column; align-items: center; justify-content: center; } .click-text-lap, .welcome-text-lap { transform: translateX(-50%); z-index: 11; left: 50%; font-family: "Courier New", monospace; font-weight: 700; color: #8b00ff; white-space: nowrap; } .lap-container.disappearing { animation: 1s ease-in forwards lapDisappear; } .welcome-text-lap { position: absolute; top: -80px; font-size: 32px; transition: opacity 0.3s; } .lap-image-wrapper { width: 200px; height: 200px; display: flex; justify-content: center; align-items: center; cursor: pointer; transition: transform 0.3s; animation: 2s ease-in-out infinite lapPulse; overflow: visible; position: relative; background: 0 0; border: none; will-change: transform; } .lap-image-wrapper:hover { transform: scale(1.1); } .lap-image { width: 100%; height: 100%; object-fit: contain; filter: brightness(0) saturate(100%) invert(27%) sepia(97%) saturate(6663%) hue-rotate(268deg) brightness(105%) contrast(125%) drop-shadow(0 0 25px #8b00ff) drop-shadow(0 0 50px #8b00ff); } .click-text-lap { position: absolute; top: 250px; font-size: 28px; text-shadow: 0 0 20px #8b00ff, 0 0 40px #8b00ff; animation: 2s ease-in-out infinite textPulse; transition: opacity 0.5s; } @media (max-width: 768px) { .background-panel { width: 320px; height: 500px; } .lap-image-wrapper { width: 150px; height: 150px; } .welcome-text-lap { font-size: 24px; top: -70px; } .click-text-lap { font-size: 22px; top: 200px; } } .app-container { height: 100vh; justify-content: center; align-items: center; font-family: Arial, sans-serif; position: relative; z-index: 1; transition: opacity 0.8s, transform 0.8s; } .background-panel { position: absolute; width: 350px; height: 550px; background-color: rgba(255, 255, 255, 0.1); border: 3px solid #8b00ff; border-radius: 15px; backdrop-filter: blur(8px); z-index: 0; pointer-events: none; top: 50%; left: 50%; transform: translate(-50%, -50%) translateY(-10px); overflow: hidden; } #mainButton, .avatar-container { cursor: pointer; transition: transform 0.2s, box-shadow 0.2s; backdrop-filter: blur(5px); } .avatar-container, .user-text-with-cats { transform: translateX(-50%); position: absolute; z-index: 1; } .wave-container { position: absolute; bottom: 1px; left: 3px; right: 3px; height: 60px; z-index: 1; border-radius: 0 0 12px 12px; overflow: hidden; background: linear-gradient(180deg, transparent 0, rgba(139, 0, 255, 0.08) 30%, rgba(139, 0, 255, 0.15) 100%); } .wave-layer { position: absolute; bottom: 0; left: -50%; width: 200%; height: 100%; background: linear-gradient(90deg, transparent 0, rgba(139, 0, 255, 0.2) 20%, rgba(139, 0, 255, 0.6) 50%, rgba(139, 0, 255, 0.2) 80%, transparent 100%); border-radius: 50% 50% 0 0/100% 100% 0 0; will-change: transform, opacity; } .wave-layer-1 { animation: 4s linear infinite waveFlow1, 2s ease-in-out infinite wavePulse; height: 70%; bottom: -5px; background: linear-gradient(90deg, transparent 0, rgba(139, 0, 255, 0.5) 20%, rgba(139, 0, 255, 0.9) 50%, rgba(139, 0, 255, 0.5) 80%, transparent 100%); } .wave-layer-2 { animation: 6s linear infinite reverse waveFlow2, 3s ease-in-out infinite wavePulse; height: 55%; bottom: 5px; background: linear-gradient(90deg, transparent 0, rgba(139, 0, 255, 0.4) 25%, rgba(139, 0, 255, 0.7) 50%, rgba(139, 0, 255, 0.4) 75%, transparent 100%); } .wave-layer-3 { animation: 5s linear infinite waveFlow3, 2.5s ease-in-out infinite wavePulse; height: 40%; bottom: 10px; background: linear-gradient(90deg, transparent 0, rgba(139, 0, 255, 0.3) 30%, rgba(139, 0, 255, 0.6) 50%, rgba(139, 0, 255, 0.3) 70%, transparent 100%); } .wave-layer-4 { animation: 7s linear infinite reverse waveFlow4, 4s ease-in-out infinite wavePulse; height: 30%; bottom: 15px; background: linear-gradient(90deg, transparent 0, rgba(139, 0, 255, 0.2) 35%, rgba(139, 0, 255, 0.5) 50%, rgba(139, 0, 255, 0.2) 65%, transparent 100%); } .avatar-container, .part { background-color: rgba(255, 255, 255, 0.2); pointer-events: auto; overflow: hidden; } .avatar-container { position: relative; top: 30px; left: 50%; transform: translateX(-50%); width: 111px; height: 111px; border-radius: 50%; border: 2px solid #8b00ff; background-color: rgba(255, 255, 255, 0.2); cursor: pointer; transition: transform 0.2s, box-shadow 0.2s; backdrop-filter: blur(5px); pointer-events: auto; overflow: hidden; z-index: 1; } .lightning-overlay { position: absolute; top: -6px; left: -6px; width: 111%; height: 111%; z-index: 10; } .lightning-gif { width: 100%; height: 100%; object-fit: cover; filter: hue-rotate(250deg) saturate(2) brightness(1.2); } .avatar-image { width: 100%; height: 100%; object-fit: cover; border: none; display: block; } .stat-video-container { position: absolute; top: 25px; left: calc(43% + 33px); width: 80px; height: 60px; border-radius: 8px; overflow: hidden; z-index: 1; background: 0 0; border: none; backdrop-filter: none; } .stat-video-container video { width: 100%; height: 100%; object-fit: cover; background: 0 0; border: none; } .user-text-with-cats { top: 148px; left: 50%; display: flex; align-items: center; gap: 5px; pointer-events: none; } .user-text { font-family: "Courier New", monospace; font-size: 20px; font-weight: 700; color: #fff; text-shadow: 0 0 25px #8b00ff, 0 0 50px #8b00ff, 0 0 75px #8b00ff, 0 0 100px #8b00ff; text-align: center; letter-spacing: 1px; white-space: nowrap; } .bio-info, .motivational-text { pointer-events: none; text-align: left; } .bio-line, .motivational-line { font-family: "Courier New", monospace; font-weight: 700; text-shadow: 0 0 25px #8b00ff, 0 0 50px #8b00ff, 0 0 75px #8b00ff, 0 0 100px #8b00ff; letter-spacing: 0.5px; color: #fff; } .cat-left, .cat-right { width: 40px; height: 40px; object-fit: contain; filter: drop-shadow(0 0 10px #8b00ff) drop-shadow(0 0 20px #8b00ff); } .bio-info { position: absolute; top: 199px; left: 40%; transform: translateX(-59%); z-index: 1; } .bio-line { font-size: 14px; margin-bottom: 9px; } .skills-line { display: flex; align-items: center; gap: 3px; } .quote-line, .skills-icons { align-items: center; display: flex; } .skills-icons { gap: 4px; } .skill-icon { width: 19px; height: 19px; object-fit: contain; filter: brightness(1.2); transition: transform 0.2s; } .icon-image, .quote-icon-img { object-fit: contain; filter: brightness(0) saturate(100%) invert(27%) sepia(97%) saturate(6663%) hue-rotate(268deg) brightness(105%) contrast(125%); } .skill-icon:hover { transform: scale(1.2); filter: brightness(0) saturate(100%) invert(60%) sepia(91%) saturate(6663%) hue-rotate(268deg) brightness(105%) contrast(125%); } .quote-block { position: absolute; top: 185px; left: 37%; transform: translateX(-60%); width: 190px; background-color: rgba(139, 0, 255, 0.15); border-radius: 8px; padding: 12px; display: flex; align-items: flex-start; z-index: 1; pointer-events: none; backdrop-filter: blur(8px); border: 1px solid rgba(139, 0, 255, 0.4); } .quote-content { flex: 0 1 auto; display: flex; flex-direction: column; gap: 7px; } .quote-line { gap: 15px; } .quote-icon { width: 15px; height: 18px; border-radius: 4px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; position: relative; } #mainButton, .part { position: absolute; } .icon-image { width: 20px; height: 20px; } .quote-line span { font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; font-size: 14px; color: #e0e0e0; font-weight: 400; } .quote-mark { display: flex; align-items: flex-start; margin-left: 150px; margin-top: -10px; } .quote-icon-img { width: 18px; height: 18px; opacity: 0.6; } .motivational-text { position: absolute; top: 36%; left: 25%; transform: translate(-50%, -50%) translateY(-60px); z-index: 4; } .motivational-line { font-size: 15px; margin-bottom: 2px; white-space: nowrap; } .motivational-line:first-child { margin-left: 60px; } .motivational-line:nth-child(2) { margin-left: 108px; } .motivational-line:nth-child(3) { margin-left: 100px; } #container { position: relative; width: 400px; height: 400px; z-index: 2; top: 140px; } #mainButton { top: 50%; left: 50%; width: 222px; height: 50px; font-size: 1.5em; background: rgba(255, 255, 255, 0.2); border: 2px solid #8b00ff; border-radius: 8px; display: flex; justify-content: center; align-items: center; padding: 0 10px; box-shadow: none; z-index: 3; overflow: hidden; color: #fff; } .part, .sub-part { height: 40px; border: 2px solid #8b00ff; justify-content: center; font-weight: 700; text-shadow: 0 0 25px #8b00ff, 0 0 50px #8b00ff, 0 0 75px #8b00ff, 0 0 100px #8b00ff; font-family: "Courier New", monospace; } #mainButton span { font-family: "Courier New", monospace; color: #8b00ff; font-weight: 700; } .part { width: 140px; border-radius: 8px; opacity: 0; display: flex; align-items: center; font-size: 0.9em; color: #fff; z-index: 2; padding: 5px; cursor: pointer; transition: transform 0.3s, box-shadow 0.3s, opacity 0.3s; backdrop-filter: blur(5px); text-align: center; white-space: nowrap; } .extra-part, .sub-part { position: absolute; background-color: rgba(255, 255, 255, 0.2); opacity: 0; pointer-events: auto; display: flex; color: #fff; z-index: 1; padding: 3px; cursor: pointer; backdrop-filter: blur(5px); } .sub-part { width: 100px; border-radius: 6px; align-items: center; font-size: 1em; transition: transform 0.3s, box-shadow 0.2s, opacity 0.2s; } .extra-part { width: 45px; height: 45px; border: 2px solid #8b00ff; border-radius: 8px; justify-content: center; align-items: center; font-size: 0.8em; transition: transform 0.3s, box-shadow 0.3s, opacity 0.3s; } .telegram-icon-img { width: 25px; height: 25px; filter: drop-shadow(0 0 10px #8b00ff) drop-shadow(0 0 20px #8b00ff) drop-shadow(0 0 30px #8b00ff); } #part-bottom-left, #part-bottom-right, #part-top-left, #part-top-right { top: calc(50% + 0px); left: calc(50% + 0px); transform: translate(-50%, -50%) translate(0, 0); } #sub-part-right, #sub-part-up { top: calc(50% - 80px); left: calc(50% + 80px); } #extra-part { top: calc(50% + 80px); left: calc(50% + 120px); } #container.split #part-top-left { opacity: 1; transform: translate(-50%, -50%) translate(-80px, -80px); } #container.split #part-top-right { opacity: 1; transform: translate(-50%, -50%) translate(80px, -80px); } #container.split #part-bottom-left { opacity: 1; transform: translate(-50%, -50%) translate(-80px, 80px); } #container.split #part-bottom-right { opacity: 1; transform: translate(-50%, -50%) translate(80px, 80px); } #container.sub-split #sub-part-up { opacity: 1; transform: translate(-50%, -50%) translate(0, -75px); } #container.sub-split #sub-part-right { opacity: 1; transform: translate(-50%, -50%) translate(138px, 0); } #container.extra-split #extra-part { opacity: 1; transform: translate(-50%, -50%) translate(0, -60px); } .part.active { box-shadow: 0 0 15px #8b00ff inset, 0 0 30px #8b00ff; } @media (hover: hover) and (pointer: fine) { .avatar-container:hover { transform: translateX(-50%) scale(1.1); box-shadow: 0 0 20px #8b00ff, inset 0 0 40px #8b00ff; } #mainButton:hover { transform: translate(-50%, -50%) scale(1.1); box-shadow: 0 0 20px #8b00ff, inset 0 0 40px #8b00ff; } .part:hover { transform: scale(1.1); box-shadow: 0 0 30px #8b00ff inset, 0 0 60px #8b00ff; } .extra-part:hover, .sub-part:hover { transform: scale(1.1); box-shadow: 0 0 25px #8b00ff inset, 0 0 50px #8b00ff; } #container.split #part-top-left:hover { transform: translate(-50%, -50%) translate(-80px, -80px) scale(1.1); box-shadow: 0 0 30px #8b00ff inset, 0 0 60px #8b00ff; } #container.split #part-top-right:hover { transform: translate(-50%, -50%) translate(80px, -80px) scale(1.1); box-shadow: 0 0 30px #8b00ff inset, 0 0 60px #8b00ff; } #container.split #part-bottom-left:hover { transform: translate(-50%, -50%) translate(-80px, 80px) scale(1.1); box-shadow: 0 0 30px #8b00ff inset, 0 0 60px #8b00ff; } #container.split #part-bottom-right:hover { transform: translate(-50%, -50%) translate(80px, 80px) scale(1.1); box-shadow: 0 0 30px #8b00ff inset, 0 0 60px #8b00ff; } #container.sub-split #sub-part-up:hover { transform: translate(-50%, -50%) translate(0, -75px) scale(1.1); box-shadow: 0 0 25px #8b00ff inset, 0 0 50px #8b00ff; } #container.sub-split #sub-part-right:hover { transform: translate(-50%, -50%) translate(138px, 0) scale(1.1); box-shadow: 0 0 25px #8b00ff inset, 0 0 50px #8b00ff; } #container.extra-split #extra-part:hover { transform: translate(-50%, -50%) translate(0, -60px) scale(1.1); box-shadow: 0 0 25px #8b00ff inset, 0 0 50px #8b00ff; } } .copyright { position: fixed; bottom: 10px; left: 50%; transform: translateX(-50%); font-family: "Courier New", monospace; font-size: 12px; color: rgba(255, 255, 255, 0.6); text-shadow: 0 0 10px rgba(139, 0, 255, 0.5); z-index: 1000; pointer-events: none; white-space: nowrap; } @media (max-width: 768px) { .copyright { font-size: 10px; bottom: 5px; } }