/* 📋 Global Defaults */ body { font-family: sans-serif; text-align: center; padding: 2rem; margin: 0; } ul { list-style: none; padding: 0; } li { margin: 0.25rem 0; } input, textarea, select { font-size: 1rem; padding: 0.5rem; margin: 0.5rem; border: 2px solid #ccc; border-radius: 5px; } /* 🎨 Theme Styles */ body.playground { background: #fef9e7; color: #333; font-family: 'Comic Sans MS', cursive, sans-serif; } body.chalkboard { background: #222; color: #f0f0f0; font-family: 'Courier New', monospace; } body.galaxy { background: radial-gradient(circle at center, #0d0d2b, #1a1a3f); color: #b3e5fc; font-family: 'Orbitron', sans-serif; } body.nature { background: #e8f5e9; color: #2e7d32; font-family: 'Georgia', serif; } /* 🔘 Buttons */ button { background-color: #4caf50; color: white; border: none; border-radius: 8px; padding: 0.6rem 1rem; font-size: 1rem; margin: 0.4rem; cursor: pointer; transition: transform 0.2s; display: inline-block; } button:hover { transform: scale(1.05); } /* 🌈 Theme-specific Button Colors */ body.chalkboard button { background-color: #555; } body.galaxy button { background-color: #6200ea; } body.nature button { background-color: #81c784; } /* 🔳 Panels and Banners */ .hidden { display: none; } #wordBox { font-size: 2em; margin: 20px; min-height: 60px; padding: 20px; background-color: #f5f5f5; border-radius: 8px; transition: opacity 0.3s ease; } .word-box { font-size: 3rem; font-weight: bold; margin-bottom: 2rem; color: #2196f3; text-shadow: 1px 1px #ccc; } .banner { padding: 0.5em; text-align: center; font-weight: bold; color: white; } .banner.admin { background-color: #b22222; } .banner.student { background-color: #1e90ff; } /* 🔔 Toast Messages */ .toast { position: fixed; bottom: 20px; right: 20px; background: #333; color: #fff; padding: 0.75em 1.25em; border-radius: 5px; opacity: 0; pointer-events: none; transition: opacity 0.4s ease; z-index: 999; } .toast.show { opacity: 1; pointer-events: auto; } /* 🧭 Admin Tabs */ #adminTabs { margin: 1em 0; } #adminTabs button { margin-right: 8px; padding: 10px 16px; background-color: #f0f0f0; border: 1px solid #ccc; border-bottom: none; border-radius: 6px 6px 0 0; font-weight: 600; color: #333; cursor: pointer; transition: background-color 0.2s, color 0.2s; } #adminTabs button:hover { background-color: #e0f2ff; color: #000; } #adminTabs button.active { background-color: #ffffff; color: #000; border-bottom: 2px solid #fff; box-shadow: 0 -2px 4px rgba(0, 0, 0, 0.1); } .adminTab { display: none; } .adminTab:not(.hidden) { display: block; } .typing-sentence { font-size: 1.5em; margin: 20px 0; padding: 15px; background-color: #f5f5f5; border-radius: 8px; border: 1px solid #ddd; min-height: 50px; display: block !important; visibility: visible !important; } /* Remove these style classes if they exist */ .typing-section .typing-container .typing-prompt .input-container #typingInput #typingFeedback /* Fix for start buttons visibility */ #startGameBtn, #startTypingBtn { display: inline-block; margin: 10px; padding: 12px 24px; font-size: 1.1em; background-color: #4CAF50; color: white; border: none; border-radius: 5px; cursor: pointer; } #startGameBtn:hover, #startTypingBtn:hover { transform: scale(1.05); background-color: #45a049; } /* Override any hidden class for these buttons */ #startGameBtn.hidden, #startTypingBtn.hidden { display: none !important; } /* Button container for better spacing */ .button-container { margin: 20px 0; padding: 10px; text-align: center; } .student-controls { display: block !important; margin: 20px auto; padding: 15px; text-align: center; visibility: visible !important; } .student-btn { display: inline-block !important; visibility: visible !important; background-color: #4CAF50; color: white; padding: 12px 24px; margin: 10px; border: none; border-radius: 5px; font-size: 16px; cursor: pointer; opacity: 1 !important; } /* Override any hiding classes for these specific buttons */ #startGameBtn:not(.hidden), #startTypingBtn:not(.hidden) { display: inline-block !important; visibility: visible !important; opacity: 1 !important; } /* Remove this if it exists as it might conflict */ .hidden { display: none !important; } /* Add this to ensure student panel shows properly */ #studentPanel:not(.hidden) { display: block !important; } /* 📝 Typing Practice Styles */ .typing-section { max-width: 800px; margin: 20px auto; padding: 20px; } #typingPrompt { font-size: 2em; font-weight: bold; text-align: center; margin: 20px 0; padding: 20px; background: #f5f5f5; border-radius: 8px; min-height: 60px; display: block !important; visibility: visible !important; } #typingInput { width: 300px; padding: 10px; font-size: 18px; margin-right: 10px; } .typing-word { font-size: 32px; font-weight: bold; text-align: center; padding: 20px; margin: 20px 0; background: #f5f5f5; border-radius: 8px; min-height: 50px; display: block !important; visibility: visible !important; } .typing-input-container { text-align: center; margin: 20px 0; } /* Fix student panel buttons */ #startGameBtn, #startTypingBtn { display: inline-block; margin: 10px; padding: 12px 24px; font-size: 1.1em; background-color: #4CAF50; color: white; border: none; border-radius: 5px; cursor: pointer; visibility: visible !important; } /* Ensure student panel visibility */ #studentPanel:not(.hidden) { display: block !important; } /* Remove any conflicting hidden styles */ #startGameBtn:not(.hidden), #startTypingBtn:not(.hidden) { display: inline-block !important; visibility: visible !important; }