Trouble accessing twig variables passed from custom block I've looked through many similar questions and can't figure out what I'm missing. I have a custom module with a block...
/**
 * Provides the 'Four Words' block
 *
 * @Block(
 *   id = &quot;na_fourwords&quot;,
 *   admin_label = @Translation(&quot;Four Words Hero&quot;),
 *   category = @Translation(&quot;Custom&quot;),
 * )
 */
class NAFourWordsBlock extends BlockBase {

  public function build() {
    return [
      '#theme' =&gt; 'block__na_fourwords',
      '#myvar' =&gt; 'TESTING',
      '#attached' =&gt; ['library' =&gt; ['na_fourwords/na_fourwords']],
    ];
  }
}

In my .module file:
function na_fourwords_theme($existing, $type, $theme, $path){
  return [
    'block__na_fourwords' =&gt; [
      'variables' =&gt; [
        'myvar' =&gt; NULL,
      ],
    ],
  ];
}

In my twig, {{ myvar }} doesn't render. If I call {{ kint(elements.content) }}, I get ...
elements.content =&gt; Array
(
    [#theme] =&gt; block__na_fourwords
    [#myvar] =&gt; TESTING
    [#attached] =&gt; Array
        (
            [library] =&gt; Array
                (
                    [0] =&gt; na_fourwords/na_fourwords
                )

        )

)

It looks like the data is getting passed through ... why am I unable to access it? I feel like there's something simple I'm overlooking.
Drupal 9.1.7
PHP 7.4.16
Thanks!
So, block--na-fourwords.html.twig is an existing Drupal suggestion for a template name for a block with id na_fourwords. I was able to override the template file, but my theme function that was trying to talk to that file was being ignored because it already existed. It would be nice if Drupal had some kind of feedback to let you know of conflicting theme hooks like that.
Anyway, hopefully this saves someone similar frustration.