* { margin: 0; padding: 0; box-sizing: border-box; } body, html { height: 100%; overflow: hidden; font-family: 'Arial', sans-serif; cursor: none; /* Hide default cursor */ } /* Custom animated cursor */ .custom-cursor { position: fixed; width: 32px; height: 32px; pointer-events: none; z-index: 9999; opacity: 1; mix-blend-mode: difference; } .custom-cursor::before { content: ''; position: absolute; top: 50%; left: 50%; width: 100%; height: 100%; background: conic-gradient(from 0deg, #87CEEB, #6BB6FF, #ADD8E6, #87CEEB); border-radius: 50%; transform: translate(-50%, -50%); animation: cursorRotate 3s linear infinite; } .custom-cursor::after { content: ''; position: absolute; top: 50%; left: 50%; width: 8px; height: 8px; background: radial-gradient(circle, #ffffff 0%, #f0f8ff 100%); border-radius: 50%; transform: translate(-50%, -50%); box-shadow: 0 0 8px rgba(255, 255, 255, 0.8), inset 0 1px 2px rgba(255, 255, 255, 0.6); } .custom-cursor.clicking { transform: scale(0.7); } .custom-cursor.clicking::before { animation-duration: 0.5s; filter: brightness(1.3); } .custom-cursor.clicking::after { width: 12px; height: 12px; background: radial-gradient(circle, #87CEEB 0%, #6BB6FF 100%); box-shadow: 0 0 12px rgba(135, 206, 235, 0.9), inset 0 1px 3px rgba(255, 255, 255, 0.4); } .custom-cursor.hovering { transform: scale(1.3); } .custom-cursor.hovering::before { background: conic-gradient(from 0deg, #ADD8E6, #87CEEB, #6BB6FF, #4A90E2, #ADD8E6); animation-duration: 1s; filter: drop-shadow(0 0 10px rgba(135, 206, 235, 0.6)); } .custom-cursor.hovering::after { width: 10px; height: 10px; background: radial-gradient(circle, #ffffff 0%, #87CEEB 100%); box-shadow: 0 0 15px rgba(135, 206, 235, 0.8), inset 0 2px 4px rgba(255, 255, 255, 0.5); } @keyframes cursorRotate { 0% { transform: translate(-50%, -50%) rotate(0deg); } 100% { transform: translate(-50%, -50%) rotate(360deg); } } .loading-container { position: relative; width: 100vw; height: 100vh; display: flex; align-items: center; justify-content: center; } /* Background Video Styling */ #background-video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: 1; } /* Overlay for content */ .overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.4); z-index: 2; display: flex; align-items: center; justify-content: center; } /* Loading Content */ .loading-content { text-align: center; color: white; z-index: 3; max-width: 600px; padding: 20px; } .loading-content h1 { font-size: 3rem; margin-bottom: 2rem; text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.8); font-weight: bold; } /* Loading Bar Container (now just for percentage text) */ .loading-bar-container { margin: 2rem 0; } .loading-text { font-size: 1.5rem; color: #ffffff; text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.8); font-weight: bold; } /* Music Control Info */ .music-control-info { margin-top: 3rem; padding: 1.5rem; background: rgba(0, 0, 0, 0.6); border-radius: 10px; border: 1px solid rgba(255, 255, 255, 0.2); } .music-controls { display: flex; justify-content: center; align-items: center; gap: 1rem; margin-bottom: 1rem; } .music-btn { background: linear-gradient(45deg, #333, #555); color: #fff; border: none; padding: 12px 20px; border-radius: 8px; font-weight: bold; font-size: 0.9rem; cursor: pointer; transition: all 0.3s ease; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.2); min-width: 100px; } .music-btn:hover { background: linear-gradient(45deg, #87CEEB, #6BB6FF); transform: translateY(-2px); box-shadow: 0 6px 12px rgba(135, 206, 235, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.2); } .music-btn:active { transform: translateY(0); box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.1); } .play-pause-btn { background: linear-gradient(45deg, #87CEEB, #6BB6FF); font-size: 1rem; min-width: 120px; } .play-pause-btn:hover { background: linear-gradient(45deg, #6BB6FF, #4A90E2); } .play-pause-btn.paused { background: linear-gradient(45deg, #FFB6C1, #FF91A4); } .play-pause-btn.paused:hover { background: linear-gradient(45deg, #FF91A4, #FF6B8A); } .music-control-info p { font-size: 0.9rem; margin-bottom: 0.5rem; color: #ffffff; opacity: 0.8; } .space-hint { margin-top: 0.5rem; font-size: 0.8rem; opacity: 0.7; } .key { background: linear-gradient(45deg, #87CEEB, #6BB6FF); color: #fff; padding: 4px 8px; border-radius: 4px; font-weight: bold; border: 1px solid rgba(135, 206, 235, 0.5); box-shadow: 0 2px 4px rgba(135, 206, 235, 0.3); } .music-status { margin-top: 1rem; display: flex; justify-content: center; align-items: center; gap: 1rem; flex-wrap: wrap; } #current-track { font-size: 1rem; font-weight: bold; color: #ffffff; background: linear-gradient(45deg, rgba(135, 206, 235, 0.3), rgba(107, 182, 255, 0.3)); padding: 4px 12px; border-radius: 6px; border: 1px solid rgba(135, 206, 235, 0.4); } #music-status-text { font-size: 1.1rem; font-weight: bold; color: #87CEEB; text-shadow: 0 0 5px rgba(135, 206, 235, 0.5); transition: all 0.3s ease; } #music-status-text.paused { color: #FFB6C1; text-shadow: 0 0 5px rgba(255, 182, 193, 0.5); } /* Responsive Design */ @media (max-width: 768px) { .loading-content h1 { font-size: 2rem; } .loading-content { padding: 15px; max-width: 90%; } .music-control-info { margin-top: 2rem; padding: 1rem; } .music-controls { flex-direction: column; gap: 0.5rem; } .music-btn { width: 100%; min-width: auto; } .music-status { flex-direction: column; gap: 0.5rem; } } /* Additional styling for better visual appeal */ .loading-content { animation: fadeIn 1s ease-in-out; } @keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }