body { font-family: 'Poppins', sans-serif; background-color: #111827; color: #e5e7eb; min-height: 100vh; overflow-x: hidden; } .room { background-size: cover; background-position: center; position: relative; height: 70vh; transition: all 0.5s ease-in-out; } .hotspot { position: absolute; cursor: pointer; transition: transform 0.3s ease; } .hotspot:hover { transform: scale(1.1); } .pulse { animation: pulse 1.5s infinite; } @keyframes pulse { 0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.7); } 70% { transform: scale(1); box-shadow: 0 0 0 10px rgba(255, 255, 255, 0); } 100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(255, 255, 255, 0); } } .fade-in { animation: fadeIn 0.5s ease-in-out; } @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } .shake { animation: shake 0.5s; } @keyframes shake { 0% { transform: translateX(0); } 25% { transform: translateX(-10px); } 50% { transform: translateX(10px); } 75% { transform: translateX(-10px); } 100% { transform: translateX(0); } } .modal { backdrop-filter: blur(5px); } .timer { font-family: monospace; font-size: 1.5rem; color: #ef4444; } .btn { transition: all 0.3s ease; } .btn:hover { transform: translateY(-2px); box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); } .btn:active { transform: translateY(0); } .inventory-item { transition: all 0.3s ease; } .inventory-item:hover { transform: translateY(-5px); } .health-bar { transition: width 0.5s ease; } .game-over-overlay { background: rgba(0, 0, 0, 0.8); backdrop-filter: blur(5px); }

Inventory

Clues Found: 0/6
Your inventory is empty. Find items to help you escape!

Game Log

Welcome to the Solidarity Escape Room! You've been locked in a community center after hours. Find clues about volunteering and solidarity to escape before time runs out!