/* 自訂動畫：背景跑馬燈 */
@keyframes marquee {
  0% { transform: translateX(100%); }
  100% { transform: translateX(-100%); }
}
.animate-marquee {
  animation: marquee 15s linear infinite;
}

/* 直書（星曜名稱） */
.writing-vertical-rl {
  writing-mode: vertical-rl;
}

/* 洗牌動畫 */
@keyframes shuffle {
  0% { transform: translateX(0) rotate(0deg); }
  25% { transform: translateX(50px) rotate(10deg); }
  50% { transform: translateX(-50px) rotate(-10deg); }
  75% { transform: translateX(20px) rotate(5deg); }
  100% { transform: translateX(0) rotate(0deg); }
}
.animate-shuffle {
  animation: shuffle 0.5s ease-in-out infinite;
}

/* 結果區淡入 */
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
.animate-fadeIn {
  animation: fadeIn 0.5s ease-out;
}

/* 選取文字時顏色 */
::selection {
  background-color: #ec4899;
  color: white;
}

body {
  font-family: 'Noto Sans TC', sans-serif;
}

.font-serif {
  font-family: 'Noto Serif TC', serif;
}
