/* Copyright (c) 2012 The Chromium Authors. All rights reserved.
 * Use of this source code is governed by a BSD-style license that can be
 * found in the LICENSE file. */

body {
  -webkit-user-select: none;
  background: black;
  font-family: Noto Sans UI,Droid Sans Fallback,sans-serif;
  font-size: 84%;
  margin: 0;
  overflow: hidden;
}

#video-player {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

#video-container {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

video {
  height: 100%;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%;
}

#controls-wrapper {
  -webkit-box-align: center;
  -webkit-box-orient: horizontal;
  -webkit-box-pack: center;
  bottom: 0;
  display: -webkit-box;
  left: 0;
  position: absolute;
  right: 0;
}

#controls {
  -webkit-box-flex: 1;
  display: -webkit-box;
}

#video-player:not([tools]) .tool {
  opacity: 0;
}

#video-player:not([tools]) {
  cursor: none;
}

/* Hides controls when disabled mode */
#video-player[disabled] > #controls-wrapper .tool {
  display: none;
}

.tool {
  transition: opacity 180ms linear;
}

#error-wrapper {
  -webkit-box-align: center;
  -webkit-box-orient: horizontal;
  -webkit-box-pack: center;
  display: -webkit-box;
  height: 100%;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%;
}

#error {
  -webkit-box-align: center;
  -webkit-box-orient: horizontal;
  -webkit-box-pack: center;
  background-color: rgba(24, 24, 24, 1);
  background-image: -webkit-image-set(
      url('../images/100/error.png') 1x,
      url('../images/200/error.png') 2x);
  background-position: 25px center;
  background-repeat: no-repeat;
  color: white;
  display: -webkit-box;
  height: 54px;
  padding-left: 70px;
  padding-right: 35px;
}

#error:not([visible]) {
  display: none;
}
