Spaces:
Running
Running
<html lang="en"> | |
<head> | |
<meta charset="UTF-8"> | |
<meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
<title>Handball Heroes - Youth Sports Academy</title> | |
<script src="https://cdn.tailwindcss.com"></script> | |
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" rel="stylesheet"> | |
<style> | |
@keyframes pulse { | |
0% { transform: scale(1); } | |
50% { transform: scale(1.05); } | |
100% { transform: scale(1); } | |
} | |
.pulse-animation { | |
animation: pulse 2s infinite; | |
} | |
.gradient-bg { | |
background: linear-gradient(135deg, #6B46C1 0%, #4299E1 100%); | |
} | |
.live-badge { | |
box-shadow: 0 0 10px rgba(239, 68, 68, 0.7); | |
} | |
.slide-up { | |
transform: translateY(100%); | |
transition: transform 0.3s ease-out; | |
} | |
.slide-up.show { | |
transform: translateY(0); | |
} | |
.coach-card:hover .coach-overlay { | |
opacity: 1; | |
} | |
.progress-ring { | |
transition: stroke-dashoffset 0.5s; | |
transform: rotate(-90deg); | |
transform-origin: 50% 50%; | |
} | |
</style> | |
</head> | |
<body class="bg-gray-50 font-sans"> | |
<!-- Global Container --> | |
<div class="max-w-md mx-auto bg-white min-h-screen relative overflow-hidden"> | |
<!-- App Header --> | |
<header class="gradient-bg text-white p-4 flex justify-between items-center sticky top-0 z-10"> | |
<div class="flex items-center space-x-2"> | |
<i class="fas fa-handshake-alt text-2xl"></i> | |
<h1 class="text-xl font-bold">Handball Heroes</h1> | |
</div> | |
<div class="flex items-center space-x-4"> | |
<button class="p-2 rounded-full bg-white bg-opacity-20"> | |
<i class="fas fa-bell"></i> | |
</button> | |
<div class="w-8 h-8 rounded-full bg-white bg-opacity-20 flex items-center justify-center"> | |
<i class="fas fa-user"></i> | |
</div> | |
</div> | |
</header> | |
<main class="pb-20"> | |
<!-- Navigation Tabs --> | |
<div class="flex justify-around items-center border-b"> | |
<button class="py-3 px-4 border-b-2 border-purple-600 text-purple-600 font-medium"> | |
<i class="fas fa-home mr-1"></i> Home | |
</button> | |
<button class="py-3 px-4 text-gray-600 font-medium"> | |
<i class="fas fa-chart-line mr-1"></i> Training | |
</button> | |
<button class="py-3 px-4 text-gray-600 font-medium"> | |
<i class="fas fa-calendar-alt mr-1"></i> Events | |
</button> | |
<button class="py-3 px-4 text-gray-600 font-medium"> | |
<i class="fas fa-user mr-1"></i> Profile | |
</button> | |
</div> | |
<!-- Content --> | |
<div class="p-4 space-y-6"> | |
<!-- Live Section --> | |
<div class="relative rounded-xl overflow-hidden shadow-md"> | |
<img src="https://images.unsplash.com/photo-1540747913346-19e32dc3e97e?ixlib=rb-1.2.1&auto=format&fit=crop&w=1000&q=80" | |
alt="Handball Match" class="w-full h-40 object-cover"> | |
<div class="absolute top-4 left-4 bg-red-500 text-white px-3 py-1 rounded-full text-xs font-bold flex items-center live-badge"> | |
<span class="h-2 w-2 bg-white rounded-full mr-2 animate-pulse"></span> | |
LIVE NOW | |
</div> | |
<div class="absolute bottom-0 left-0 right-0 bg-gradient-to-t from-black to-transparent p-4 text-white"> | |
<h2 class="font-bold text-xl">Intermediate Handball Skills</h2> | |
<p class="text-sm opacity-90">Coach Michael • 150 watching</p> | |
</div> | |
<button class="absolute right-4 bottom-4 bg-red-500 text-white p-2 rounded-full shadow-lg"> | |
<i class="fas fa-play"></i> | |
</button> | |
</div> | |
<!-- Events Section --> | |
<div> | |
<div class="flex justify-between items-center mb-2"> | |
<h3 class="font-bold text-gray-700">Upcoming Events</h3> | |
<button class="text-purple-600 text-sm font-medium">See All</button> | |
</div> | |
<div class="space-y-3"> | |
<!-- Event Card - Warm Up --> | |
<div class="bg-gradient-to-r from-yellow-50 to-orange-50 border border-orange-100 rounded-lg p-3 flex justify-between items-start"> | |
<div class="flex items-start space-x-3"> | |
<div class="bg-orange-100 text-orange-800 p-3 rounded-lg text-center"> | |
<div class="font-bold text-lg">15</div> | |
<div class="text-xs uppercase">JUN</div> | |
</div> | |
<div> | |
<div class="flex items-center mb-1"> | |
<span class="bg-orange-100 text-orange-800 px-2 py-1 rounded-full text-xs font-medium mr-2">Warm Up</span> | |
<span class="text-xs text-gray-500">9:00 AM</span> | |
</div> | |
<h4 class="font-bold text-gray-800">Pre-season Training Camp</h4> | |
<p class="text-sm text-gray-600 mt-1">Skills development for ages 10-12</p> | |
</div> | |
</div> | |
<button class="bg-white text-orange-500 p-1 rounded-full shadow"> | |
<i class="fas fa-chevron-right text-xs"></i> | |
</button> | |
</div> | |
<!-- Event Card - Paid --> | |
<div class="bg-gradient-to-r from-green-50 to-teal-50 border border-teal-100 rounded-lg p-3 flex justify-between items-start"> | |
<div class="flex items-start space-x-3"> | |
<div class="bg-teal-100 text-teal-800 p-3 rounded-lg text-center"> | |
<div class="font-bold text-lg">22</div> | |
<div class="text-xs uppercase">JUN</div> | |
</div> | |
<div> | |
<div class="flex items-center mb-1"> | |
<span class="bg-teal-100 text-teal-800 px-2 py-1 rounded-full text-xs font-medium mr-2">Paid</span> | |
<span class="text-xs text-gray-500">10:30 AM</span> | |
</div> | |
<h4 class="font-bold text-gray-800">Summer Tournament</h4> | |
<p class="text-sm text-gray-600 mt-1">Regional qualifier • Team selection</p> | |
</div> | |
</div> | |
<button class="bg-white text-teal-500 p-1 rounded-full shadow"> | |
<i class="fas fa-chevron-right text-xs"></i> | |
</button> | |
</div> | |
</div> | |
</div> | |
<!-- Brand Section --> | |
<div> | |
<div class="flex justify-between items-center mb-2"> | |
<h3 class="font-bold text-gray-700">Our Club</h3> | |
</div> | |
<div class="grid grid-cols-3 gap-3"> | |
<!-- Coaches --> | |
<div class="bg-purple-50 border border-purple-100 rounded-lg p-3 text-center"> | |
<div class="bg-purple-100 text-purple-600 w-12 h-12 rounded-full flex items-center justify-center mx-auto mb-2"> | |
<i class="fas fa-users text-xl"></i> | |
</div> | |
<h4 class="font-bold text-sm">Coaches</h4> | |
</div> | |
<!-- About --> | |
<div class="bg-blue-50 border border-blue-100 rounded-lg p-3 text-center"> | |
<div class="bg-blue-100 text-blue-600 w-12 h-12 rounded-full flex items-center justify-center mx-auto mb-2"> | |
<i class="fas fa-info-circle text-xl"></i> | |
</div> | |
<h4 class="font-bold text-sm">About Us</h4> | |
</div> | |
<!-- Courses --> | |
<div class="bg-green-50 border border-green-100 rounded-lg p-3 text-center"> | |
<div class="bg-green-100 text-green-600 w-12 h-12 rounded-full flex items-center justify-center mx-auto mb-2"> | |
<i class="fas fa-graduation-cap text-xl"></i> | |
</div> | |
<h4 class="font-bold text-sm">Courses</h4> | |
</div> | |
</div> | |
</div> | |
<!-- Highlights Section --> | |
<div class="pt-2"> | |
<h3 class="font-bold text-gray-700 mb-3">Recent Highlights</h3> | |
<div class="relative"> | |
<div class="flex space-x-3 overflow-x-auto pb-4"> | |
<!-- Highlight Card 1 --> | |
<div class="flex-shrink-0 w-40 h-48 rounded-xl overflow-hidden shadow-md relative"> | |
<img src="https://images.unsplash.com/photo-1552674605-db6ffd4facb5?ixlib=rb-1.2.1&auto=format&fit=crop&w=400&q=80" | |
alt="Training session" class="w-full h-full object-cover"> | |
<div class="absolute bottom-0 left-0 right-0 bg-gradient-to-t from-black to-transparent p-3"> | |
<div class="flex items-center text-white"> | |
<i class="fas fa-play-circle mr-1"></i> | |
<span class="text-xs">02:45</span> | |
</div> | |
<p class="text-white text-xs font-medium mt-1">Goalkeeper training</p> | |
</div> | |
<div class="absolute top-2 right-2 bg-black bg-opacity-50 rounded-full p-1"> | |
<i class="fas fa-heart text-white text-xs"></i> | |
</div> | |
</div> | |
<!-- Highlight Card 2 --> | |
<div class="flex-shrink-0 w-40 h-48 rounded-xl overflow-hidden shadow-md relative"> | |
<img src="https://images.unsplash.com/photo-1517649763962-0c623066013b?ixlib=rb-1.2.1&auto=format&fit=crop&w=400&q=80" | |
alt="Team celebration" class="w-full h-full object-cover"> | |
<div class="absolute bottom-0 left-0 right-0 bg-gradient-to-t from-black to-transparent p-3"> | |
<div class="flex items-center text-white"> | |
<i class="fas fa-play-circle mr-1"></i> | |
<span class="text-xs">01:22</span> | |
</div> | |
<p class="text-white text-xs font-medium mt-1">Championship win</p> | |
</div> | |
<div class="absolute top-2 right-2 bg-black bg-opacity-50 rounded-full p-1"> | |
<i class="fas fa-heart text-white text-xs"></i> | |
</div> | |
</div> | |
<!-- Highlight Card 3 --> | |
<div class="flex-shrink-0 w-40 h-48 rounded-xl overflow-hidden shadow-md relative"> | |
<img src="https://images.unsplash.com/photo-1518621736915-f3b1c41bfd00?ixlib=rb-1.2.1&auto=format&fit=crop&w=400&q=80" | |
alt="Training group" class="w-full h-full object-cover"> | |
<div class="absolute bottom-0 left-0 right-0 bg-gradient-to-t from-black to-transparent p-3"> | |
<div class="flex items-center text-white"> | |
<i class="fas fa-play-circle mr-1"></i> | |
<span class="text-xs">03:11</span> | |
</div> | |
<p class="text-white text-xs font-medium mt-1">Teambuilding exercise</p> | |
</div> | |
<div class="absolute top-2 right-2 bg-black bg-opacity-50 rounded-full p-1"> | |
<i class="fas fa-heart text-white text-xs"></i> | |
</div> | |
</div> | |
</div> | |
</div> | |
</div> | |
</div> | |
</main> | |
<!-- Bottom Navigation --> | |
<nav class="fixed bottom-0 left-0 right-0 bg-white border-t flex justify-around py-3 px-4 shadow-md"> | |
<button class="text-purple-600 flex flex-col items-center"> | |
<i class="fas fa-home text-lg"></i> | |
<span class="text-xs mt-1">Home</span> | |
</button> | |
<button class="text-gray-500 flex flex-col items-center"> | |
<i class="fas fa-dumbbell text-lg"></i> | |
<span class="text-xs mt-1">Training</span> | |
</button> | |
<button class="text-gray-500 flex flex-col items-center"> | |
<i class="fas fa-calendar-alt text-lg"></i> | |
<span class="text-xs mt-1">Events</span> | |
</button> | |
<button class="text-gray-500 flex flex-col items-center"> | |
<i class="fas fa-comment-dots text-lg"></i> | |
<span class="text-xs mt-1">Chat</span> | |
</button> | |
<button class="text-gray-500 flex flex-col items-center"> | |
<i class="fas fa-user text-lg"></i> | |
<span class="text-xs mt-1">Profile</span> | |
</button> | |
</nav> | |
<!-- Event Popup (Hidden by default) --> | |
<div id="eventPopup" class="fixed inset-0 bg-black bg-opacity-50 z-50 flex items-end slide-up"> | |
<div class="bg-white rounded-t-3xl w-full max-h-[80vh] overflow-y-auto"> | |
<div class="p-4"> | |
<div class="flex justify-between items-center mb-4"> | |
<h3 class="font-bold text-lg">Tournament Registration</h3> | |
<button id="closePopup" class="text-gray-500"> | |
<i class="fas fa-times"></i> | |
</button> | |
</div> | |
<div class="mb-6"> | |
<img src="https://images.unsplash.com/photo-1540747913346-19e32dc3e97e?ixlib=rb-1.2.1&auto=format&fit=crop&w=1000&q=80" | |
alt="Tournament" class="w-full rounded-xl mb-4"> | |
<div class="grid grid-cols-2 gap-4 mb-4"> | |
<div> | |
<p class="text-gray-500 text-sm">Date</p> | |
<p class="font-medium">June 22, 2023</p> | |
</div> | |
<div> | |
<p class="text-gray-500 text-sm">Time</p> | |
<p class="font-medium">10:30 AM - 4:00 PM</p> | |
</div> | |
<div> | |
<p class="text-gray-500 text-sm">Location</p> | |
<p class="font-medium">City Sports Complex</p> | |
</div> | |
<div> | |
<p class="text-gray-500 text-sm">Fee</p> | |
<p class="font-medium">$49.99</p> | |
</div> | |
</div> | |
<div class="mb-4"> | |
<p class="text-gray-500 text-sm mb-1">Participant</p> | |
<div class="flex items-center justify-between bg-gray-100 p-3 rounded-lg"> | |
<div class="flex items-center"> | |
<div class="w-10 h-10 rounded-full bg-purple-100 text-purple-600 flex items-center justify-center mr-3"> | |
<i class="fas fa-user"></i> | |
</div> | |
<div> | |
<p class="font-medium">Alex Johnson</p> | |
<p class="text-xs text-gray-500">Age 12</p> | |
</div> | |
</div> | |
<i class="fas fa-chevron-down text-gray-500"></i> | |
</div> | |
</div> | |
<button class="w-full bg-purple-600 text-white py-3 rounded-lg font-bold flex items-center justify-center mb-2"> | |
<i class="fas fa-wallet mr-2"></i> Pay & Register Now | |
</button> | |
<p class="text-center text-gray-500 text-sm">You'll receive confirmation within 24 hours</p> | |
</div> | |
</div> | |
</div> | |
</div> | |
</div> | |
<script> | |
// Toggle event popup | |
document.addEventListener('DOMContentLoaded', function() { | |
const popup = document.getElementById('eventPopup'); | |
const closeBtn = document.getElementById('closePopup'); | |
// For demonstration, show popup after 1.5 seconds | |
setTimeout(() => { | |
popup.classList.add('show'); | |
}, 1500); | |
closeBtn.addEventListener('click', () => { | |
popup.classList.remove('show'); | |
setTimeout(() => { | |
popup.style.display = 'none'; | |
}, 300); | |
}); | |
// Simulate live pulse animation | |
const liveBadge = document.querySelector('.live-badge'); | |
setInterval(() => { | |
liveBadge.classList.toggle('pulse-animation'); | |
}, 4000); | |
// Navigation tabs functionality | |
const tabs = document.querySelectorAll('header + div button, nav button'); | |
tabs.forEach(tab => { | |
tab.addEventListener('click', function() { | |
tabs.forEach(t => t.classList.remove('text-purple-600')); | |
tabs.forEach(t => t.classList.add('text-gray-500')); | |
this.classList.remove('text-gray-500'); | |
this.classList.add('text-purple-600'); | |
// In a real app, you would load the appropriate content here | |
}); | |
}); | |
}); | |
</script> | |
<p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - 🧬 <a href="https://enzostvs-deepsite.hf.space?remix=seascheng/handball-3" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body> | |
</html> |