body { margin: 0; font-family: 'Inter', Arial, sans-serif; background: linear-gradient(135deg, #0f0f10, #1b1b1f); color: #fff; min-height: 100vh; display: flex; align-items: center; justify-content: center; } .container { width: 100%; max-width: 720px; padding: 24px; text-align: center; } .title { margin: 0 0 8px 0; font-size: 28px; } .subtitle { margin: 0 0 20px 0; color: #b8b8c2; } .wheel-container { position: relative; margin: 0 auto; width: 100%; max-width: 520px; } .pointer { position: absolute; top: -8px; left: 50%; transform: translateX(-50%); width: 0; height: 0; border-left: 14px solid transparent; border-right: 14px solid transparent; border-bottom: 20px solid #ffcc00; filter: drop-shadow(0 2px 4px rgba(0,0,0,0.5)); z-index: 2; } #wheel { display: block; width: 100%; height: auto; aspect-ratio: 1 / 1; border-radius: 50%; border: 10px solid #2a2a33; box-shadow: 0 10px 30px rgba(0,0,0,0.4), inset 0 0 20px rgba(255,255,255,0.06); background: radial-gradient(circle at 50% 50%, rgba(255,255,255,0.05) 0%, rgba(0,0,0,0.2) 70%); } #spinBtn { margin: 20px auto 0 auto; padding: 14px 36px; font-size: 18px; font-weight: 600; background: linear-gradient(135deg, #ff4d6d, #ff7a45); color: white; border: none; border-radius: 10px; cursor: pointer; transition: transform 0.15s ease, filter 0.2s ease, opacity 0.2s ease; box-shadow: 0 8px 18px rgba(255, 77, 109, 0.35); } #spinBtn:hover { transform: translateY(-1px); filter: brightness(1.05); } #spinBtn:active { transform: translateY(0); } #spinBtn:disabled { opacity: 0.6; cursor: not-allowed; filter: grayscale(0.2); } #resultBox { margin-top: 22px; } .claim-btn { margin-top: 10px; padding: 10px 20px; font-size: 16px; background: #4caf50; color: #fff; border: none; border-radius: 8px; cursor: pointer; } .hidden { display: none; }