.kana-table-scroll { overflow-x: auto; }
.kana-table { width: 100%; min-width: 440px; table-layout: fixed; text-align: center; }
.kana-table caption { text-align: left; font-size: .875em; }
.kana-table th, .kana-table td { padding: .3em; text-align: center; }
.kana-table th:first-child { width: 3.5em; }
.kana-play {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 4.5em;
  border: 1px solid var(--link-color, #337ab7);
  border-radius: 6px;
  background: transparent;
  color: var(--text-color, inherit);
  cursor: pointer;
}
.kana-play:hover, .kana-play:focus-visible, .kana-play.is-playing {
  background: rgba(100, 140, 190, .16);
  outline-offset: 2px;
}
.kana-symbol { font-size: 1.6em; line-height: 1.2; }
.kana-reading { font-size: .8em; }
.kana-empty { color: #999; }
.kana-status { min-height: 1.5em; }
