There is no need to over engineer this, all you need is:
FULL CODE for FULLSCREEN
CLICK FOR DEMO
CSS
html,body{ margin:0; padding:0; height:100%; width:100%; }
#wrap-player{
height:100%;
width:100%;
overflow:hidden;
}
HTML
<div id="wrap-player">
<iframe width="100%" height="100%" src="//www.youtube.com/embed/d__QncYv3VU" frameborder="0" allowfullscreen></iframe>
</div>
Explanation

Often referred to as a global reset. This process simply sets defaults for margin and padding and therefore eliminates any browser specific defaults which often vary.
By default the html of a page is only as high as the content it contains.
Setting the html's height to 100% will cause the height to become the height of the browsers visible area.
The body follows the same rendering principals as the html. By setting height 100% we ask the body to fill the height of its container, in this case that is the html.
It is generally a nice practice to have a master div that wraps the entire website, granting full control over the layout without over manipulating the body tag. Setting height 100% will make the div fill the height of its container, in this case the body tag.
From here on there is a cascading effect that will allow any subsequent block level content to fill the height of its container. This will always be 100% unless we set it other wise.
Any block level element with a height of 100% placed inside the content div as in the image will only ever become the height of its container and as such will not fill the screen.
(Note: making an element position fixed/absolute will remove it from the document flow. In most cases its container and therefore its height will be determined by the next relative positioned parent element encountered.)
By default even when an element has no scroll, scrollbars will often still be shown. Setting overflow hidden simply removes the overflowing content and consequently the scrollbars. As content is never going to overflow in this instance, they are not necessary.
Youtube uses iframes to embed its video content and so setting the height to 100% will make the height of the iframe and subsequently the video within the height of its container.
I recommend setting the height to 100% on the iframe itself as above and not in css for two reasons:
If you have more than one iframe in your website the height will be set for them all. If this is desired then that is not a problem.
When copying embed code from youtube a default height and width is always set. iframes should have a height and width attribute applied to them directly. I personally do not think setting a height/width and then overwriting with css is good practice.
(Note: This is contrary to my own opinion that all styling should be done within css)
If all parent containers above the iframe are set to 100% all the way up to the html element; the video will be the height of the browsers visible window.