<!DOCTYPE html>
<html class="reftest-wait">
<meta charset="utf-8">
<title>Selectors Level 4: focus-within with shadow DOM</title>
<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
<link rel="help" href="https://drafts.csswg.org/selectors-4/#focus-within-pseudo">
<link rel="help" href="https://dom.spec.whatwg.org/#shadow-trees">
<link rel="match" href="focus-within-shadow-001-ref.html">
<meta name="flags" content="dom">
<meta name="assert" content="Checks that ':focus-within' is propagated to the flat tree ancestors, even if it comes from a slotted element.">
<style>
  /* Suppress things that cannot be reproduced in the reference file */
  :focus {
    outline: none;
  }
  :focus-within {
      border-color: green;
  }
</style>
<p>Test passes if there is a green rectangle below.</p>

<div id="log"></div>
<script>
  if (!document.body.attachShadow)
    document.getElementById("log").innerHTML = "<strong>Skip this test, shadow DOM is not supported.</strong>";
</script>

<div id="shadow-host">
  <div id="focusme" tabindex="1"></div>
</div>

<script>
  var shadowHost = document.getElementById("shadow-host");
  shadowHost.attachShadow({ mode: "open"}).innerHTML =
    "<style>" +
    "  #shadow-div:focus-within { border: solid 15px green; }" +
    "</style>" +
    "<div id='shadow-div'>" +
    "  <slot></slot>" +
    "</div>";
  var focusme = document.getElementById("focusme");
  focusme.focus();
  document.documentElement.classList.remove("reftest-wait");
</script>
</html>
