EDUrocks/EDUrocks-3.0-frontend-source-code
07
1<!DOCTYPE html>2<html lang="en" class="scroll-smooth">3<head>4 <meta charset="UTF-8">5 <meta name="viewport" content="width=device-width, initial-scale=1.0">6 <title>Stuff - EDUrocks 3.0</title>7 <meta name="viewport" content="width=device-width, initial-scale=1.0">8 <meta name="title" content="HMH - Interactive Learning Resources">9 <meta name="description" content="Truffled is an educational platform offering interactive activities, brain-training challenges, and creative learning tools for students.">10 <meta property="og:type" content="website">11 <meta property="og:url" content="https://hmh.com/">12 <meta property="og:title" content="HMH - Interactive Learning Resources">13 <meta property="og:description" content="Explore engaging educational content, problem-solving challenges, and interactive tools designed to support learning.">14 <meta property="og:image" content="https://hmh.lol/png/logo.png">15 <meta name="twitter:card" content="summary_large_image">16 <meta name="twitter:url" content="https://hmh.lol/">17 <meta name="twitter:title" content="HMH - Interactive Learning Resources">18 <meta name="twitter:description" content="A safe and clean educational site offering interactive activities and learning-focused tools.">19 <meta name="twitter:image" content="https://HMH.com/png/logo.png">20 <link rel="canonical" href="https://HMH.com/">21 <meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Advanced Theoretical Lunchroom Logistics 401 | EduCorp</title><meta name="description" content="An exhaustive study into the thermodynamics of lukewarm pizza and the sociology of assigned seating in secondary education environments, covering grades K-12 through post-doc cafeteria analysis."><meta name="keywords" content="education, lunch, pizza, thermodynamics, seating charts, social anxiety, cafeteria, tray stacking, milk carton physics, straw mechanics, food fight theory, detention avoidance, nutritional lies, vending machine economics, janitorial appreciation, spork history, recess optimization, bell schedule algorithms, locker combination probability, gym sock entropy, chalkboard screeching acoustics, glue stick chemistry"><meta name="author" content="Professor J. P. McSloppy"><meta name="generator" content="EduSite MegaBuilder v9.2 (Beta)"><meta name="robots" content="index, follow, noarchive, nosnippet"><meta name="googlebot" content="notranslate"><meta property="og:type" content="website"><meta property="og:title" content="Syllabus: The Art of Napkin Folding in Higher Ed"><meta property="og:description" content="Discover the hidden curriculum of cafeteria etiquette and napkin geometry. Required reading for all incoming freshmen."><meta property="og:url" content="https://www.fake-edu-site.org/courses/lunch-401"><meta property="og:site_name" content="University of Nowhere"><meta property="og:image" content="https://www.fake-edu-site.org/assets/img/sad_sandwich.jpg"><meta property="og:image:alt" content="A very sad sandwich sitting alone on a plastic tray"><meta name="twitter:card" content="summary_large_image"><meta name="twitter:site" content="@EduCorp"><meta name="twitter:creator" content="@ProfMcSloppy"><meta name="twitter:title" content="10 Ways to Fail Recess"><meta name="twitter:description" content="Number 7 involves the swing set and a severe violation of Newtonian physics."><meta name="twitter:image" content="https://www.fake-edu-site.org/assets/img/swing_fail.png"><meta name="dcterms.title" content="Advanced Lunch Logistics"><meta name="dcterms.creator" content="McSloppy, J.P."><meta name="dcterms.subject" content="Cafeteria Science"><meta name="dcterms.description" content="A peer-reviewed study of tater tots and their impact on standardized testing scores."><meta name="dcterms.publisher" content="EduCorp Publishing"><meta name="dcterms.date" content="2025-01-01"><meta name="dcterms.type" content="Text"><meta name="dcterms.format" content="text/html"><meta name="dcterms.identifier" content="urn:isbn:978-0-123-45678-9"><meta name="dcterms.language" content="en"><meta name="dcterms.rights" content="Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported"><meta name="application-name" content="EduPortal V9"><meta name="msapplication-TileColor" content="#ff0000"><meta name="msapplication-config" content="/browserconfig.xml"><meta name="theme-color" content="#ffffff"><meta name="apple-mobile-web-app-title" content="Lunch 401"><meta name="apple-mobile-web-app-capable" content="yes"><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"><meta name="format-detection" content="telephone=no"><meta name="educational-level" content="Post-Graduate"><meta name="audience" content="Students, Teachers, Cafeteria Ladies, Janitors"><meta name="difficulty" content="Impossible"><meta name="time-required" content="P45M"><meta name="typical-age-range" content="18-99"><meta name="learning-resource-type" content="Syllabus"><meta name="interactivity-type" content="Expositive"><meta name="is-based-on-url" content="https://www.wikipedia.org/wiki/Spork"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta http-equiv="Content-Language" content="en-US"><meta http-equiv="Cache-Control" content="no-store">22 <link rel="icon" href="./filestorage/photos/favicon.ico" type="image/x-icon">23 <link rel="preconnect" href="https://fonts.googleapis.com">24 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>25 <link href="https://fonts.googleapis.com/css2?family=Pacifico&family=Inter:wght@400;500;600;700;800;900&display=swap" rel="stylesheet">26 <script src="https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4"></script>27 <script src="./assets/js/aws-detection.js"></script>28 <script src="./assets/js/ip-restriction.js"></script>29 <style type="text/tailwindcss">30 @theme {31 --color-edu-dark: #011630;32 --color-edu-dark-secondary: #3C1642;33 --color-edu-dark-accent: #58355E;34 --color-edu-text: #e8d5e0;35 --color-edu-text-secondary: #c4a5b8;36 --color-edu-pink: #F4154D;37 --color-edu-pink-light: #FA0F71;38 --color-edu-rose: #FF1F84;39 40 --font-pacifico: 'Pacifico', cursive;41 --font-inter: 'Inter', sans-serif;42 43 --animate-gradient: gradient 6s ease infinite;44 --animate-fade-in: fadeIn 0.5s ease-in-out;45 --animate-slide-down: slideDown 0.4s ease-out;46 --animate-slide-up: slideUp 0.3s ease-out;47 48 @keyframes gradient {49 0%, 100% { background-position: 0% 50% }50 50% { background-position: 100% 50% }51 }52 @keyframes fadeIn {53 0% { opacity: 0; transform: translateY(10px) }54 100% { opacity: 1; transform: translateY(0) }55 }56 @keyframes slideDown {57 0% { opacity: 0; transform: translateY(-20px) }58 100% { opacity: 1; transform: translateY(0) }59 }60 @keyframes slideUp {61 0% { opacity: 0; transform: translateY(20px) }62 100% { opacity: 1; transform: translateY(0) }63 }64 }65 </style>66 <style>67 @font-face {68 font-family: 'Verdana_ROT13';69 src: url('assets/fonts/Verdana_ROT13.eot?#iefix') format('embedded-opentype'),70 url('assets/fonts/Verdana_ROT13.woff') format('woff'),71 url('assets/fonts/Verdana_ROT13.ttf') format('truetype'),72 url('assets/fonts/Verdana_ROT13.svg#Verdana_ROT13') format('svg');73 font-weight: normal;74 font-style: normal;75 }76 .rot13 {77 font-family: 'Verdana_ROT13', Verdana, sans-serif;78 }79 body {80 font-family: 'Inter', sans-serif;81 }82 .gradient-text {83 background: linear-gradient(45deg, #F4154D, #FA0F71, #e8d5e0, #FA0F71, #F4154D);84 background-size: 200% 200%;85 -webkit-background-clip: text;86 background-clip: text;87 -webkit-text-fill-color: transparent;88 animation: gradient 6s ease infinite;89 }90 .card-hover {91 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);92 }93 .card-hover:hover {94 transform: translateY(-8px) scale(1.02);95 }96 /* Quote hyperlink styling */97 #quote-text a {98 color: #FA0F71;99 text-decoration: underline;100 transition: color 0.3s ease;101 }102 #quote-text a:hover {103 color: #e8d5e0;104 }105 </style>106</head>107<body class="bg-edu-dark text-edu-text min-h-screen">108 109 <nav class="bg-edu-dark-accent border-b-2 border-edu-pink/20 sticky top-0 z-40 backdrop-blur-lg">110 <div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">111 <div class="flex flex-col md:flex-row items-center justify-between py-4 gap-4">112 <a href="index.html" class="font-pacifico text-2xl md:text-3xl gradient-text">EDUrocks 3.0</a>113 <div class="flex flex-wrap items-center justify-center gap-2">114 <a href="index.html" class="rot13 px-4 py-2 rounded-full text-edu-text-secondary text-sm font-medium transition-all hover:bg-edu-pink hover:text-edu-text hover:scale-105">Ubzr</a>115 <a href="page1.html" class="rot13 px-4 py-2 rounded-full bg-edu-pink text-edu-text text-sm font-medium transition-all hover:bg-edu-pink-light hover:scale-105">Tnzrf</a>116 <a href="edum/index.html" class="rot13 px-4 py-2 rounded-full text-edu-text-secondary text-sm font-medium transition-all hover:bg-edu-pink hover:text-edu-text hover:scale-105">Zbivrf & GI</a>117 <a href="#" id="pr0xy-link" class="rot13 px-4 py-2 rounded-full text-edu-text-secondary text-sm font-medium transition-all hover:bg-edu-pink hover:text-edu-text hover:scale-105">Cebkl</a>118 <a href="#" id="ai-chat-link" class="rot13 px-4 py-2 rounded-full text-edu-text-secondary text-sm font-medium transition-all hover:bg-edu-pink hover:text-edu-text hover:scale-105">NV Pung</a>119 <a href="page2.html" class="rot13 px-4 py-2 rounded-full text-edu-text-secondary text-sm font-medium transition-all hover:bg-edu-pink hover:text-edu-text hover:scale-105">Erdhrfg</a>120 <a href="page7.html" class="rot13 px-4 py-2 rounded-full text-edu-text-secondary text-sm font-medium transition-all hover:bg-edu-pink hover:text-edu-text hover:scale-105">Nccf</a>121 </div>122 </div>123 </div>124 </nav>125 126 127 <div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8">128 129 <div class="text-center mb-8">130 <h1 class="text-4xl md:text-5xl font-black gradient-text mb-4">Our Stuff</h1>131 <p class="text-edu-text-secondary text-lg">Sum Sum IDK</p>132 </div>133 134 135 <div class="bg-edu-dark-secondary/50 backdrop-blur border border-edu-pink/20 rounded-2xl p-6 mb-8">136 <div class="flex flex-col lg:flex-row gap-4">137 138 <div class="flex-1">139 <input140 type="text"141 id="gameSearch"142 placeholder="Search for stuff..."143 class="w-full bg-edu-dark-accent text-edu-text border border-edu-pink/20 rounded-full px-6 py-3 focus:outline-none focus:border-edu-pink transition-all placeholder-edu-text-secondary/50">144 </div>145 146 147 <div class="flex flex-wrap gap-3">148 149 <button150 id="allGxmesBtn"151 class="bg-edu-pink hover:bg-edu-pink-light text-edu-text rounded-full px-5 py-3 font-medium transition-all whitespace-nowrap filter-btn active">152 All Stuff153 </button>154 <button155 id="favoritesBtn"156 class="bg-edu-dark-accent hover:bg-edu-pink text-edu-text border border-edu-pink/20 rounded-full px-5 py-3 font-medium transition-all whitespace-nowrap filter-btn">157 ⭐ Favorites158 </button>159 160 161 <button162 id="sortButton"163 class="bg-edu-pink hover:bg-edu-pink-light text-edu-text rounded-full px-5 py-3 font-medium transition-all whitespace-nowrap flex items-center gap-2">164 <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">165 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"></path>166 </svg>167 Newest First168 </button>169 170 171 <div class="bg-edu-dark-accent border border-edu-pink/20 rounded-full px-5 py-3 font-medium text-edu-text-secondary flex items-center whitespace-nowrap">172 <span id="gameCounter">0 Stuff</span>173 </div>174 </div>175 </div>176 </div>177 178 179 <div class="gxme-grid grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-5 gap-4 md:gap-6">180 181 <div class="gxme-item random-game-btn group relative bg-gradient-to-br from-edu-pink to-edu-pink-light border-2 border-edu-pink-light rounded-xl p-4 cursor-pointer overflow-hidden transition-all hover:shadow-2xl hover:scale-105" onclick="window.EDUrocksGxmes?.playRandomGame(event)">182 <div class="absolute inset-0 bg-gradient-to-r from-transparent via-white/10 to-transparent -translate-x-full group-hover:translate-x-full transition-transform duration-1000"></div>183 <img id="random-game-img" src="./filestorage/photos/minecraft.png" alt="Random Thing" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3" loading="lazy" decoding="async">184 <p class="text-center font-bold text-edu-text text-sm md:text-base">Random Thing (works now)</p>185 </div>186 187 188 189 <a href="./filestorage/gd/minecraft/index.html"190 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"191 data-game-id="minecraft"192 data-game-url="./filestorage/gd/minecraft/index.html">193 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>194 195 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all">196 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">197 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>198 </svg>199 </button>200 <img src="./filestorage/photos/minecraft.png" alt="Minecraft" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">201 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Minecraft (1.20.4)</p>202 </a>203 204 205 <a href="./filestorage/gd/slope/index.html"206 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"207 data-game-id="slope"208 data-game-url="./filestorage/gd/slope/index.html"209 >210 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>211 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'slope', 'Slope', './filestorage/photos/slope.png')">212 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">213 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>214 </svg>215 </button>216 <img src="./filestorage/photos/slope.png" alt="Slope" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">217 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Slope</p>218 </a>219 220 221 <a href="./filestorage/gd/amongus/index.html"222 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"223 data-game-id="amongus"224 data-game-url="./filestorage/gd/amongus/index.html"225 >226 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>227 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'amongus', 'Among Us', './filestorage/photos/amongus.png')">228 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">229 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>230 </svg>231 </button>232 <img src="./filestorage/photos/amongus.png" alt="Among Us" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">233 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Among Us</p>234 </a>235 236 237 238 239 <a href="./filestorage/gd/1/index.html"240 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"241 data-game-id="1"242 data-game-url="./filestorage/gd/1/index.html"243 >244 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>245 246 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, '1', 'One / 1', './filestorage/gd/1/cover.png')">247 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">248 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>249 </svg>250 </button>251 <img src="./filestorage/gd/1/cover.png" alt="One / 1" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">252 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">One / 1</p>253 </a>254 255 256 <a href="./filestorage/gd/baldisbasics/index.html"257 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"258 data-game-id="baldisbasics"259 data-game-url="./filestorage/gd/baldisbasics/index.html"260 >261 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>262 263 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'baldisbasics', 'Baldi\'s Basics', './filestorage/photos/baldisbasics.png')">264 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">265 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>266 </svg>267 </button>268 <img src="./filestorage/photos/baldisbasics.png" alt="Baldi's Basics" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">269 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Baldi's Basics</p>270 </a>271 272 273 <a href="./filestorage/gd/ballisticchickens/index.html"274 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"275 data-game-id="ballisticchickens"276 data-game-url="./filestorage/gd/ballisticchickens/index.html"277 >278 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>279 280 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'ballisticchickens', 'Ballistic Chickens', './filestorage/photos/ballisticchickens.png')">281 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">282 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>283 </svg>284 </button>285 <img src="./filestorage/photos/ballisticchickens.png" alt="Ballistic Chickens" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">286 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Ballistic Chickens</p>287 </a>288 289 290 <a href="./filestorage/gd/basketball-stars/index.html"291 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"292 data-game-id="basketball-stars"293 data-game-url="./filestorage/gd/basketball-stars/index.html"294 >295 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>296 297 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'basketball-stars', 'Basketball Stars', './filestorage/photos/basketball-stars.png')">298 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">299 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>300 </svg>301 </button>302 <img src="./filestorage/photos/basketball-stars.png" alt="Basketball Stars" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">303 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Basketball Stars</p>304 </a>305 306 307 <a href="./filestorage/gd/bit-planes/index.html"308 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"309 data-game-id="bit-planes"310 data-game-url="./filestorage/gd/bit-planes/index.html"311 >312 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>313 314 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'bit-planes', 'Bit Planes', './filestorage/photos/bit-planes.png')">315 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">316 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>317 </svg>318 </button>319 <img src="./filestorage/photos/bit-planes.png" alt="Bit Planes" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">320 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Bit Planes</p>321 </a>322 323 324 <a href="./filestorage/gd/bitlife/index.html"325 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"326 data-game-id="bitlife"327 data-game-url="./filestorage/gd/bitlife/index.html"328 >329 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>330 331 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'bitlife', 'BitLife', './filestorage/photos/bitlife.png')">332 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">333 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>334 </svg>335 </button>336 <img src="./filestorage/photos/bitlife.png" alt="BitLife" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">337 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">BitLife</p>338 </a>339 340 341 <a href="./filestorage/gd/blackjack/index.html"342 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"343 data-game-id="blackjack"344 data-game-url="./filestorage/gd/blackjack/index.html"345 >346 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>347 348 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'blackjack', 'Blackjack', './filestorage/photos/blackjack.png')">349 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">350 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>351 </svg>352 </button>353 <img src="./filestorage/photos/blackjack.png" alt="Blackjack" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">354 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Blackjack</p>355 </a>356 357 358 <a href="./filestorage/gd/blockblast/index.html"359 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"360 data-game-id="blockblast"361 data-game-url="./filestorage/gd/blockblast/index.html"362 >363 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>364 365 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'blockblast', 'Block Blast', './filestorage/photos/blockblast.png')">366 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">367 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>368 </svg>369 </button>370 <img src="./filestorage/photos/blockblast.png" alt="Block Blast" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">371 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Block Blast</p>372 </a>373 374 375 <a href="./filestorage/gd/btd/index.html"376 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"377 data-game-id="btd"378 data-game-url="./filestorage/gd/btd/index.html"379 >380 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>381 382 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'btd', 'Bloons Tower Defense 1', './filestorage/gd/btd/logo.webp')">383 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">384 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>385 </svg>386 </button>387 <img src="./filestorage/gd/btd/logo.webp" alt="Bloons Tower Defense 1" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">388 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Bloons Tower Defense 1</p>389 </a>390 391 392 <a href="./filestorage/gd/btd2/index.html"393 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"394 data-game-id="btd2"395 data-game-url="./filestorage/gd/btd2/index.html"396 >397 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>398 399 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'btd2', 'Bloons Tower Defense 2', './filestorage/gd/btd2/logo.webp')">400 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">401 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>402 </svg>403 </button>404 <img src="./filestorage/gd/btd2/logo.webp" alt="Bloons Tower Defense 2" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">405 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Bloons Tower Defense 2</p>406 </a>407 408 409 <a href="./filestorage/gd/btd3/index.html"410 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"411 data-game-id="btd3"412 data-game-url="./filestorage/gd/btd3/index.html"413 >414 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>415 416 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'btd3', 'Bloons Tower Defense 3', './filestorage/gd/btd3/icon.png')">417 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">418 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>419 </svg>420 </button>421 <img src="./filestorage/gd/btd3/icon.png" alt="Bloons Tower Defense 3" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">422 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Bloons Tower Defense 3</p>423 </a>424 425 426 <a href="./filestorage/gd/btd4/index.html"427 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"428 data-game-id="btd4"429 data-game-url="./filestorage/gd/btd4/index.html"430 >431 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>432 433 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'btd4', 'Bloons Tower Defense 4', './filestorage/gd/btd4/logo.jpg')">434 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">435 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>436 </svg>437 </button>438 <img src="./filestorage/gd/btd4/logo.jpg" alt="Bloons Tower Defense 4" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">439 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Bloons Tower Defense 4</p>440 </a>441 442 443 <a href="./filestorage/gd/btd5/index.html"444 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"445 data-game-id="btd5"446 data-game-url="./filestorage/gd/btd5/index.html"447 >448 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>449 450 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'btd5', 'Bloons Tower Defense 5', './filestorage/photos/BTD.png')">451 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">452 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>453 </svg>454 </button>455 <img src="./filestorage/photos/BTD.png" alt="Bloons Tower Defense 5" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">456 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Bloons Tower Defense 5</p>457 </a>458 459 460 <a href="./filestorage/gd/buckshot-roulette/index.html"461 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"462 data-game-id="buckshot-roulette"463 data-game-url="./filestorage/gd/buckshot-roulette/index.html"464 >465 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>466 467 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'buckshot-roulette', 'Buckshot Roulette', './filestorage/photos/buckshot-roulette.png')">468 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">469 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>470 </svg>471 </button>472 <img src="./filestorage/photos/buckshot-roulette.png" alt="Buckshot Roulette" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">473 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Buckshot Roulette</p>474 </a>475 476 477 <a href="./filestorage/gd/chrome-dino/index.html"478 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"479 data-game-id="chrome-dino"480 data-game-url="./filestorage/gd/chrome-dino/index.html"481 >482 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>483 484 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'chrome-dino', 'Chrome Dino', './filestorage/photos/chrome-dino.png')">485 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">486 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>487 </svg>488 </button>489 <img src="./filestorage/photos/chrome-dino.png" alt="Chrome Dino" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">490 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Chrome Dino</p>491 </a>492 493 494 <a href="./filestorage/gd/cluster-rush/index.html"495 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"496 data-game-id="cluster-rush"497 data-game-url="./filestorage/gd/cluster-rush/index.html"498 >499 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>500 501 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'cluster-rush', 'Cluster Rush', './filestorage/photos/cluster-rush.png')">502 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">503 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>504 </svg>505 </button>506 <img src="./filestorage/photos/cluster-rush.png" alt="Cluster Rush" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">507 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Cluster Rush</p>508 </a>509 510 511 <a href="./filestorage/gd/cookie-clicker/index.html"512 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"513 data-game-id="cookie-clicker"514 data-game-url="./filestorage/gd/cookie-clicker/index.html"515 >516 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>517 518 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'cookie-clicker', 'Cookie Clicker', './filestorage/photos/cookie-clicker.png')">519 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">520 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>521 </svg>522 </button>523 <img src="./filestorage/photos/cookie-clicker.png" alt="Cookie Clicker" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">524 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Cookie Clicker</p>525 </a>526 527 528 <a href="./filestorage/gd/crazycattle3d/index.html"529 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"530 data-game-id="crazycattle3d"531 data-game-url="./filestorage/gd/crazycattle3d/index.html"532 >533 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>534 535 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'crazycattle3d', 'Crazy Cattle 3D', './filestorage/photos/crazycattle3d.png')">536 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">537 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>538 </svg>539 </button>540 <img src="./filestorage/photos/crazycattle3d.png" alt="Crazy Cattle 3D" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">541 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Crazy Cattle 3D</p>542 </a>543 544 545 <a href="./filestorage/gd/cubefield/index.html"546 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"547 data-game-id="cubefield"548 data-game-url="./filestorage/gd/cubefield/index.html"549 >550 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>551 552 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'cubefield', 'Cubefield', './filestorage/photos/cubefield.png')">553 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">554 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>555 </svg>556 </button>557 <img src="./filestorage/photos/cubefield.png" alt="Cubefield" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">558 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Cubefield</p>559 </a>560 561 562 <a href="./filestorage/gd/drift-boss/index.html"563 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"564 data-game-id="drift-boss"565 data-game-url="./filestorage/gd/drift-boss/index.html"566 >567 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>568 569 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'drift-boss', 'Drift Boss', './filestorage/photos/drift-boss.png')">570 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">571 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>572 </svg>573 </button>574 <img src="./filestorage/photos/drift-boss.png" alt="Drift Boss" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">575 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Drift Boss</p>576 </a>577 578 579 <a href="./filestorage/gd/drive-mad/index.html"580 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"581 data-game-id="drive-mad"582 data-game-url="./filestorage/gd/drive-mad/index.html"583 >584 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>585 586 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'drive-mad', 'Drive Mad', './filestorage/photos/drive-mad.png')">587 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">588 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>589 </svg>590 </button>591 <img src="./filestorage/photos/drive-mad.png" alt="Drive Mad" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">592 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Drive Mad</p>593 </a>594 595 596 <a href="./filestorage/gd/donottakethiscathome/index.html"597 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"598 data-game-id="donottakethiscathome"599 data-game-url="./filestorage/gd/donottakethiscathome/index.html"600 >601 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>602 603 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'donottakethiscathome', 'Do NOT Take This Cat Home', './filestorage/photos/donottakethiscathome.png')">604 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">605 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>606 </svg>607 </button>608 <img src="./filestorage/photos/donottakethiscathome.png" alt="Do NOT Take This Cat Home" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">609 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Do NOT Take This Cat Home</p>610 </a>611 612 613 <a href="./filestorage/gd/flappybird/index.html"614 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"615 data-game-id="flappybird"616 data-game-url="./filestorage/gd/flappybird/index.html"617 >618 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>619 620 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'flappybird', 'Flappy Bird', './filestorage/photos/flappybird.png')">621 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">622 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>623 </svg>624 </button>625 <img src="./filestorage/photos/flappybird.png" alt="Flappy Bird" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">626 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Flappy Bird</p>627 </a>628 629 630 <a href="./filestorage/gd/fnaf/index.html"631 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"632 data-game-id="fnaf"633 data-game-url="./filestorage/gd/fnaf/index.html"634 >635 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>636 637 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'fnaf', 'Five Nights at Freddy\'s', './filestorage/photos/fnaf.png')">638 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">639 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>640 </svg>641 </button>642 <img src="./filestorage/photos/fnaf.png" alt="Five Nights at Freddy's" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">643 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Five Nights at Freddy's</p>644 </a>645 646 647 <a href="./filestorage/gd/fnaf-2/index.html"648 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"649 data-game-id="fnaf-2"650 data-game-url="./filestorage/gd/fnaf-2/index.html"651 >652 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>653 654 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'fnaf-2', 'Five Nights at Freddy\'s 2', './filestorage/photos/fnaf-2.png')">655 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">656 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>657 </svg>658 </button>659 <img src="./filestorage/photos/fnaf-2.png" alt="Five Nights at Freddy's 2" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">660 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Five Nights at Freddy's 2</p>661 </a>662 663 664 <a href="./filestorage/gd/fnaf-3/index.html"665 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"666 data-game-id="fnaf-3"667 data-game-url="./filestorage/gd/fnaf-3/index.html"668 >669 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>670 671 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'fnaf-3', 'Five Nights at Freddy\'s 3', './filestorage/photos/fnaf-3.png')">672 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">673 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>674 </svg>675 </button>676 <img src="./filestorage/photos/fnaf-3.png" alt="Five Nights at Freddy's 3" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">677 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Five Nights at Freddy's 3</p>678 </a>679 680 681 <a href="./filestorage/gd/fnaf-4/index.html"682 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"683 data-game-id="fnaf-4"684 data-game-url="./filestorage/gd/fnaf-4/index.html"685 >686 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>687 688 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'fnaf-4', 'Five Nights at Freddy\'s 4', './filestorage/photos/fnaf-4.png')">689 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">690 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>691 </svg>692 </button>693 <img src="./filestorage/photos/fnaf-4.png" alt="Five Nights at Freddy's 4" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">694 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Five Nights at Freddy's 4</p>695 </a>696 697 698 <a href="./filestorage/gd/fridaynightfunkin/index.html"699 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"700 data-game-id="fridaynightfunkin"701 data-game-url="./filestorage/gd/fridaynightfunkin/index.html"702 >703 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>704 705 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'fridaynightfunkin', 'Friday Night Funkin\'', './filestorage/photos/fridaynightfunkin.png')">706 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">707 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>708 </svg>709 </button>710 <img src="./filestorage/photos/fridaynightfunkin.png" alt="Friday Night Funkin'" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">711 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Friday Night Funkin'</p>712 </a>713 714 715 <a href="./filestorage/gd/getaway-shootout/files/index.html"716 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"717 data-game-id="files"718 data-game-url="./filestorage/gd/getaway-shootout/files/index.html"719 >720 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>721 722 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'files', 'Getaway Shootout', './filestorage/photos/getaway-shootout.png')">723 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">724 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>725 </svg>726 </button>727 <img src="./filestorage/photos/getaway-shootout.png" alt="Getaway Shootout" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">728 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Getaway Shootout</p>729 </a>730 731 732 <a href="./filestorage/gd/gswitch-3/index.html"733 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"734 data-game-id="gswitch-3"735 data-game-url="./filestorage/gd/gswitch-3/index.html"736 >737 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>738 739 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'gswitch-3', 'G-Switch 3', './filestorage/photos/gswitch-3.png')">740 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">741 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>742 </svg>743 </button>744 <img src="./filestorage/photos/gswitch-3.png" alt="G-Switch 3" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">745 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">G-Switch 3</p>746 </a>747 748 749 <a href="./filestorage/gd/happywheels/index.html"750 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"751 data-game-id="happywheels"752 data-game-url="./filestorage/gd/happywheels/index.html"753 >754 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>755 756 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'happywheels', 'Happy Wheels', './filestorage/photos/happywheels.png')">757 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">758 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>759 </svg>760 </button>761 <img src="./filestorage/photos/happywheels.png" alt="Happy Wheels" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">762 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Happy Wheels</p>763 </a>764 765 766 <a href="./filestorage/gd/helixjump/index.html"767 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"768 data-game-id="helixjump"769 data-game-url="./filestorage/gd/helixjump/index.html"770 >771 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>772 773 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'helixjump', 'Helix Jump', './filestorage/photos/helixjump.png')">774 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">775 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>776 </svg>777 </button>778 <img src="./filestorage/photos/helixjump.png" alt="Helix Jump" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">779 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Helix Jump</p>780 </a>781 782 783 <a href="./filestorage/gd/hexgl/index.html"784 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"785 data-game-id="hexgl"786 data-game-url="./filestorage/gd/hexgl/index.html"787 >788 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>789 790 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'hexgl', 'HexGL', './filestorage/photos/hexgl.png')">791 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">792 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>793 </svg>794 </button>795 <img src="./filestorage/photos/hexgl.png" alt="HexGL" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">796 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">HexGL</p>797 </a>798 799 800 <a href="./filestorage/gd/holeio/index.html"801 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"802 data-game-id="holeio"803 data-game-url="./filestorage/gd/holeio/index.html"804 >805 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>806 807 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'holeio', 'Hole.io', './filestorage/photos/holeio.png')">808 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">809 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>810 </svg>811 </button>812 <img src="./filestorage/photos/holeio.png" alt="Hole.io" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">813 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Hole.io</p>814 </a>815 816 817 <a href="./filestorage/gd/idlebreakout/index.html"818 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"819 data-game-id="idlebreakout"820 data-game-url="./filestorage/gd/idlebreakout/index.html"821 >822 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>823 824 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'idlebreakout', 'Idle Breakout', './filestorage/photos/idlebreakout.png')">825 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">826 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>827 </svg>828 </button>829 <img src="./filestorage/photos/idlebreakout.png" alt="Idle Breakout" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">830 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Idle Breakout</p>831 </a>832 833 834 <a href="./filestorage/gd/Klifur/index.html"835 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"836 data-game-id="klifur"837 data-game-url="./filestorage/gd/Klifur/index.html"838 >839 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>840 841 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'klifur', 'Klifur', './filestorage/photos/Klifur.png')">842 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">843 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>844 </svg>845 </button>846 <img src="./filestorage/photos/Klifur.png" alt="Klifur" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">847 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Klifur</p>848 </a>849 850 851 <a href="./filestorage/gd/mindustry/index.html"852 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"853 data-game-id="mindustry"854 data-game-url="./filestorage/gd/mindustry/index.html"855 >856 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>857 858 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'mindustry', 'Mindustry', './filestorage/photos/mindustry.png')">859 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">860 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>861 </svg>862 </button>863 <img src="./filestorage/photos/mindustry.png" alt="Mindustry" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">864 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Mindustry</p>865 </a>866 867 868 <a href="./filestorage/gd/mm/index.html"869 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"870 data-game-id="mm"871 data-game-url="./filestorage/gd/mm/index.html"872 >873 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>874 875 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'mm', 'Monkey Mart', './filestorage/photos/mm.png')">876 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">877 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>878 </svg>879 </button>880 <img src="./filestorage/photos/mm.png" alt="Monkey Mart" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">881 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Monkey Mart</p>882 </a>883 884 885 <a href="./filestorage/gd/osu/index.html"886 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"887 data-game-id="osu"888 data-game-url="./filestorage/gd/osu/index.html"889 >890 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>891 892 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'osu', 'osu!', './filestorage/photos/osu.png')">893 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">894 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>895 </svg>896 </button>897 <img src="./filestorage/photos/osu.png" alt="osu!" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">898 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">osu!</p>899 </a>900 901 902 <a href="./filestorage/gd/ovo/index.html"903 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"904 data-game-id="ovo"905 data-game-url="./filestorage/gd/ovo/index.html"906 >907 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>908 909 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'ovo', 'OvO', './filestorage/photos/ovo.png')">910 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">911 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>912 </svg>913 </button>914 <img src="./filestorage/photos/ovo.png" alt="OvO" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">915 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">OvO</p>916 </a>917 918 919 <a href="./filestorage/gd/pacman/index.html"920 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"921 data-game-id="pacman"922 data-game-url="./filestorage/gd/pacman/index.html"923 >924 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>925 926 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'pacman', 'Pac-Man', './filestorage/photos/pacman.png')">927 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">928 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>929 </svg>930 </button>931 <img src="./filestorage/photos/pacman.png" alt="Pac-Man" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">932 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Pac-Man</p>933 </a>934 935 936 <a href="./filestorage/gd/paperio2/index.html"937 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"938 data-game-id="paperio2"939 data-game-url="./filestorage/gd/paperio2/index.html"940 >941 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>942 943 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'paperio2', 'Paper.io 2', './filestorage/photos/paperio2.png')">944 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">945 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>946 </svg>947 </button>948 <img src="./filestorage/photos/paperio2.png" alt="Paper.io 2" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">949 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Paper.io 2</p>950 </a>951 952 953 <a href="./filestorage/gd/paperio3d/index.html"954 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"955 data-game-id="paperio3d"956 data-game-url="./filestorage/gd/paperio3d/index.html"957 >958 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>959 960 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'paperio3d', 'Paper.io 3D', './filestorage/photos/paperio3d.png')">961 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">962 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>963 </svg>964 </button>965 <img src="./filestorage/photos/paperio3d.png" alt="Paper.io 3D" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">966 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Paper.io 3D</p>967 </a>968 969 970 <a href="./filestorage/gd/pong/index.html"971 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"972 data-game-id="pong"973 data-game-url="./filestorage/gd/pong/index.html"974 >975 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>976 977 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'pong', 'Pong', './filestorage/photos/pong.png')">978 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">979 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>980 </svg>981 </button>982 <img src="./filestorage/photos/pong.png" alt="Pong" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">983 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Pong</p>984 </a>985 986 987 <a href="./filestorage/gd/portalflash/index.html"988 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"989 data-game-id="portalflash"990 data-game-url="./filestorage/gd/portalflash/index.html"991 >992 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>993 994 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'portalflash', 'Portal Flash', './filestorage/photos/portalflash.png')">995 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">996 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>997 </svg>998 </button>999 <img src="./filestorage/photos/portalflash.png" alt="Portal Flash" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">1000 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Portal Flash</p>1001 </a>1002 1003 1004 <a href="./filestorage/gd/retrobowl/index.html"1005 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"1006 data-game-id="retrobowl"1007 data-game-url="./filestorage/gd/retrobowl/index.html"1008 >1009 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>1010 1011 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'retrobowl', 'Retro Bowl', './filestorage/photos/retrobowl.png')">1012 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">1013 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>1014 </svg>1015 </button>1016 <img src="./filestorage/photos/retrobowl.png" alt="Retro Bowl" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">1017 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Retro Bowl</p>1018 </a>1019 1020 1021 <a href="./filestorage/gd/retrobowlcollege/index.html"1022 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"1023 data-game-id="retrobowlcollege"1024 data-game-url="./filestorage/gd/retrobowlcollege/index.html"1025 >1026 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>1027 1028 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'retrobowlcollege', 'Retro Bowl College', './filestorage/photos/retrobowlcollege.png')">1029 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">1030 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>1031 </svg>1032 </button>1033 <img src="./filestorage/photos/retrobowlcollege.png" alt="Retro Bowl College" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">1034 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Retro Bowl College</p>1035 </a>1036 1037 1038 <a href="./filestorage/gd/rodha/index.html"1039 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"1040 data-game-id="rodha"1041 data-game-url="./filestorage/gd/rodha/index.html"1042 >1043 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>1044 1045 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'rodha', 'Rodha', './filestorage/photos/rodha.png')">1046 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">1047 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>1048 </svg>1049 </button>1050 <img src="./filestorage/photos/rodha.png" alt="Rodha" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">1051 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Rodha</p>1052 </a>1053 1054 1055 <a href="./filestorage/gd/slimevolb/index.html"1056 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"1057 data-game-id="slimevolb"1058 data-game-url="./filestorage/gd/slimevolb/index.html"1059 >1060 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>1061 1062 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'slimevolb', 'Slime Volb', './filestorage/photos/slimevolb.png')">1063 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">1064 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>1065 </svg>1066 </button>1067 <img src="./filestorage/photos/slimevolb.png" alt="Slime Volb" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">1068 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Slime Volb</p>1069 </a>1070 1071 1072 <a href="./filestorage/gd/snowrider3d/index.html"1073 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"1074 data-game-id="snowrider3d"1075 data-game-url="./filestorage/gd/snowrider3d/index.html"1076 >1077 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>1078 1079 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'snowrider3d', 'Snow Rider 3D', './filestorage/photos/snowrider3d.png')">1080 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">1081 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>1082 </svg>1083 </button>1084 <img src="./filestorage/photos/snowrider3d.png" alt="Snow Rider 3D" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">1085 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Snow Rider 3D</p>1086 </a>1087 1088 1089 <a href="./filestorage/gd/stateio/index.html"1090 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"1091 data-game-id="stateio"1092 data-game-url="./filestorage/gd/stateio/index.html"1093 >1094 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>1095 1096 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'stateio', 'State.io', './filestorage/photos/stateio.png')">1097 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">1098 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>1099 </svg>1100 </button>1101 <img src="./filestorage/photos/stateio.png" alt="State.io" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">1102 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">State.io</p>1103 </a>1104 1105 1106 <a href="./filestorage/gd/subway-surfers/index.html"1107 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"1108 data-game-id="subway-surfers"1109 data-game-url="./filestorage/gd/subway-surfers/index.html"1110 >1111 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>1112 1113 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'subway-surfers', 'Subway Surfers', './filestorage/photos/subway-surfers.png')">1114 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">1115 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>1116 </svg>1117 </button>1118 <img src="./filestorage/photos/subway-surfers.png" alt="Subway Surfers" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">1119 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Subway Surfers</p>1120 </a>1121 1122 1123 <a href="./filestorage/gd/superhot/index.html"1124 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"1125 data-game-id="superhot"1126 data-game-url="./filestorage/gd/superhot/index.html"1127 >1128 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>1129 1130 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'superhot', 'Superhot', './filestorage/photos/superhot.png')">1131 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">1132 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>1133 </svg>1134 </button>1135 <img src="./filestorage/photos/superhot.png" alt="Superhot" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">1136 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Superhot</p>1137 </a>1138 1139 1140 <a href="./filestorage/gd/tetris/index.html"1141 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"1142 data-game-id="tetris"1143 data-game-url="./filestorage/gd/tetris/index.html"1144 >1145 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>1146 1147 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'tetris', 'Tetris', './filestorage/photos/tetris.png')">1148 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">1149 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>1150 </svg>1151 </button>1152 <img src="./filestorage/photos/tetris.png" alt="Tetris" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">1153 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">Tetris</p>1154 </a>1155 1156 1157 <a href="./filestorage/gd/the-cube/dist/index.html"1158 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"1159 data-game-id="dist"1160 data-game-url="./filestorage/gd/the-cube/dist/index.html"1161 >1162 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>1163 1164 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'dist', 'The Cube', './filestorage/photos/the-cube.png')">1165 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">1166 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>1167 </svg>1168 </button>1169 <img src="./filestorage/photos/the-cube.png" alt="The Cube" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">1170 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">The Cube</p>1171 </a>1172 1173 1174 <a href="./filestorage/gd/the_deadseat/The Deadseat.html"1175 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"1176 data-game-id="the-deadseat"1177 data-game-url="./filestorage/gd/the_deadseat/The Deadseat.html"1178 >1179 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>1180 1181 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'the-deadseat', 'The Dead Seat', './filestorage/photos/the_deadseat.png')">1182 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">1183 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>1184 </svg>1185 </button>1186 <img src="./filestorage/photos/the_deadseat.png" alt="The Dead Seat" class="w-full h-32 md:h-40 object-contain rounded-lg mb-3 group-hover:scale-105 transition-transform" loading="lazy" decoding="async">1187 <p class="text-center font-semibold text-edu-text-secondary group-hover:text-edu-text text-sm md:text-base transition-colors">The Dead Seat</p>1188 </a>1189 1190 1191 <a href="./filestorage/gd/thats-not-my-neighbor/index.html"1192 class="gxme-item group relative bg-edu-dark-accent border border-edu-pink/20 rounded-xl p-4 transition-all hover:bg-edu-rose hover:border-edu-pink hover:-translate-y-2 hover:shadow-2xl block"1193 data-game-id="thats-not-my-neighbor"1194 data-game-url="./filestorage/gd/thats-not-my-neighbor/index.html"1195 >1196 <div class="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-edu-pink to-edu-pink-light opacity-0 group-hover:opacity-100 transition-opacity rounded-t-xl"></div>1197 1198 <button class="favorite-btn absolute top-2 right-2 z-10 bg-edu-dark/80 hover:bg-edu-pink text-edu-text-secondary hover:text-edu-text rounded-full p-2 transition-all" onclick="toggleFavoriteBtn(event, 'thats-not-my-neighbor', 'Thats not my neighbor!!!', './filestorage/photos/thats-not-my-neighbor.png')">1199 <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">1200 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"></path>