/* Cosmic Theme CSS */ * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; } body { background: linear-gradient(135deg, #0b0f1f, #1a1a2e, #16213e); height: 100vh; overflow: hidden; position: relative; color: #fff; } /* Cosmic background elements */ .stars { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: transparent; overflow: hidden; } .stars:after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-image: radial-gradient(white, rgba(255,255,255,.2) 1px, transparent 1px), radial-gradient(white, rgba(255,255,255,.15) 1px, transparent 1px), radial-gradient(white, rgba(255,255,255,.1) 1px, transparent 1px); background-size: 200px 200px, 300px 300px, 400px 400px; background-position: 0 0, 40px 60px, 130px 270px; animation: stars 100s linear infinite; } @keyframes stars { 0% { background-position: 0 0, 40px 60px, 130px 270px; } 100% { background-position: 200px 500px, 300px 300px, 400px 400px; } } .nebula { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: radial-gradient(circle at 20% 30%, rgba(106, 27, 154, 0.2), transparent 40%), radial-gradient(circle at 80% 70%, rgba(33, 150, 243, 0.2), transparent 40%), radial-gradient(circle at 40% 60%, rgba(0, 150, 136, 0.2), transparent 40%); animation: nebula 30s linear infinite; opacity: 0.7; } @keyframes nebula { 0% { background-position: 0% 0%; } 50% { background-position: 100% 100%; } 100% { background-position: 0% 0%; } } /* Content container */ .cosmic-container { position: relative; display: flex; justify-content: center; align-items: center; height: 100vh; z-index: 10; } .cosmic-content { background: rgba(10, 15, 35, 0.8); backdrop-filter: blur(10px); border-radius: 20px; padding: 40px; max-width: 500px; width: 90%; text-align: center; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3); border: 1px solid rgba(100, 100, 255, 0.1); position: relative; overflow: hidden; } .cosmic-content::before { content: ''; position: absolute; top: -50%; left: -50%; width: 200%; height: 200%; background: radial-gradient(circle, rgba(100, 100, 255, 0.1) 0%, rgba(100, 100, 255, 0) 70%); z-index: -1; animation: cosmic-glow 6s linear infinite; } @keyframes cosmic-glow { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .cosmic-title { font-size: 2.5rem; margin-bottom: 10px; background: linear-gradient(to right, #8e2de2, #4a00e0); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; font-weight: 700; letter-spacing: 1px; } .cosmic-subtitle { font-size: 1.1rem; margin-bottom: 30px; line-height: 1.6; color: #a0a0ff; font-weight: 300; } /* Cosmic loader */ .cosmic-loader { position: relative; margin: 40px auto; width: 200px; height: 200px; } .orbit { position: absolute; top: 50%; left: 50%; width: 150px; height: 150px; border: 2px solid rgba(100, 100, 255, 0.3); border-radius: 50%; transform: translate(-50%, -50%); animation: orbit 8s linear infinite; } .planet { position: absolute; top: -15px; left: 50%; width: 30px; height: 30px; background: linear-gradient(135deg, #4facfe, #00f2fe); border-radius: 50%; box-shadow: 0 0 15px #00f2fe; transform: translateX(-50%); } .moon { position: absolute; top: 25px; right: 25px; width: 12px; height: 12px; background: #fff; border-radius: 50%; box-shadow: 0 0 8px #fff; animation: moon-orbit 3s linear infinite; } .pulsar { position: absolute; top: 50%; left: 50%; width: 20px; height: 20px; background: #ff416c; border-radius: 50%; transform: translate(-50%, -50%); box-shadow: 0 0 0 0 rgba(255, 65, 108, 0.7); animation: pulsate 2s infinite; } @keyframes orbit { 0% { transform: translate(-50%, -50%) rotate(0deg); } 100% { transform: translate(-50%, -50%) rotate(360deg); } } @keyframes moon-orbit { 0% { transform: rotate(0deg) translateX(20px) rotate(0deg); } 100% { transform: rotate(360deg) translateX(20px) rotate(-360deg); } } @keyframes pulsate { 0% { box-shadow: 0 0 0 0 rgba(255, 65, 108, 0.7); transform: translate(-50%, -50%) scale(1); } 70% { box-shadow: 0 0 0 20px rgba(255, 65, 108, 0); transform: translate(-50%, -50%) scale(1.2); } 100% { box-shadow: 0 0 0 0 rgba(255, 65, 108, 0); transform: translate(-50%, -50%) scale(1); } } /* Status text */ .status-text { font-size: 1.1rem; margin: 20px 0; color: #a0a0ff; min-height: 24px; } /* Firebase badge */ .firebase-badge { display: flex; justify-content: center; align-items: center; margin-top: 30px; color: #a0a0ff; font-size: 0.9rem; gap: 10px; } .firebase-logo { position: relative; width: 40px; height: 40px; background: linear-gradient(to bottom, #FFCA28, #F57C00); border-radius: 50% 50% 50% 0; transform: rotate(-45deg); display: flex; justify-content: center; align-items: center; } .flame { position: absolute; width: 10px; height: 10px; background: #fff; border-radius: 50%; } .flame:nth-child(1) { top: 5px; left: 15px; animation: flame 1.2s infinite alternate; } .flame:nth-child(2) { top: 15px; left: 10px; animation: flame 1.4s infinite alternate; } .flame:nth-child(3) { top: 15px; left: 20px; animation: flame 1.6s infinite alternate; } @keyframes flame { 0% { transform: scale(1); opacity: 0.8; } 100% { transform: scale(1.4); opacity: 1; } } /* Responsive design */ @media (max-width: 600px) { .cosmic-content { padding: 30px 20px; } .cosmic-title { font-size: 2rem; } .cosmic-subtitle { font-size: 1rem; } .cosmic-loader { width: 150px; height: 150px; } .orbit { width: 120px; height: 120px; } }