/*!
Video.js Default Styles (http://videojs.com)
Version GENERATED_AT_BUILD
Create your own skin at http://designer.videojs.com
*/// To customize the player skin,change the values of the variables or edit the // CSS below. //(This file uses LESS. Learn more at http://lesscss.org/) // The base font size controls the size of everything,not just text. All // dimensions use em-based sizes so that the scale along with the font size. // Try increasing it to 20px and see what happens. @base-font-size:10px;@touch-device-font-size:15px;// The main font color controls the color of the text and the icons(font icons) @main-font-color:#CCC;// e.g. #fff or #fff // The default color of control backgrounds is mostly black but with a little // bit of blue so it can still be seen on all black video frames,which are // common. @control-bg-color:#07141E;// e.g. #fff or #fff @control-bg-alpha:.7;// 1.0 = 100% opacity,0.0 = 0 opacity // The slider bar color is used for the progress bar and the volume bar @slider-bar-color:#66A8CC;// e.g. #fff or #fff // The background of the progress bar and volume bar have a lined pattern that // is created from a base64 encoded image. You can generate your own pattern at // http://www.patternify.com/ then replace the value in the quotes with your own @slider-bar-pattern:~'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGCAYAAADgzO9IAAAAP0lEQVQIHWWMAQoAIAgDR/QJ/Ub//04+w7ZICBwcOg5FZi5iBB82AGzixEglJrd4TVK5XUJpskSTEvpdFzX9AB2pGziSQcvAAAAAAElFTkSuQmCC';// The color of the slider background @slider-background-color:#333;@slider-background-alpha:.9;// 1.0 = 100% opacity,0.0 = 0 opacity // The "Big Play Button" is the play button that shows before the video plays. // To center it set the align values to center and middle. The typical location // of the button is the center,but there is trend towards moving it to a corner // where it gets out of the way of valuable content in the poster image. @big-play-align:left;// left,center,or right @big-play-vertical-align:top;// top,middle,or bottom // The button colors match the control colors by default but you can customize // them by replace the variables(@control-bg-color) with your own color values. @big-play-bg-color:@control-bg-color;@big-play-bg-alpha:@control-bg-alpha;// The font size is what makes the big play button,big. All width/height values // use ems,which are a multiple of the font size. // If the @base-font-size is 10px,then 3em equals 30px. @big-play-font-size:3em;// Now that font size is set,the following em values will be a multiple of the // new font size. If @big-play-font-size is 3em(30px),then setting the any of // the following values to 2em would equal 60px. 2 * font-size @big-play-margin:.5em;@big-play-width:4em;@big-play-height:2.6em;@big-play-border-radius:.8em;@big-play-border-width:.1em;@big-play-border-color:#3b4249;.vjs-default-skin{color:@main-font-color}@vjs-font-path:'https://www.cmhc-schl.gc.ca/content/videojs/font';@font-face{font-family:'VideoJS';src:url('@{vjs-font-path}/vjs.eot');src:url('@{vjs-font-path}/vjs.eot?#iefix') format('embedded-opentype'),url('@{vjs-font-path}/vjs.woff') format('woff'),url('@{vjs-font-path}/vjs.ttf') format('truetype'),url('@{vjs-font-path}/vjs.svg#icomoon') format('svg');font-weight:normal;font-style:normal}// Icon font character values @play-icon:"\e001";@pause-icon:"\e002";@volume-muted-icon:"\e003";@volume-low-icon:"\e004";@volume-mid-icon:"\e005";@volume-high-icon:"\e006";@fullscreen-enter-icon:"\e000";@fullscreen-exit-icon:"\e00b";@square-icon:"\e009";@spinner-icon:"\e00a";@spinner2-icon:"\e00d";@spinner3-icon:"\e01e";@spinner4-icon:"\e01f";@subtitles-icon:"\e00c";@captions-icon:"\e008";@chapters-icon:"\e00c";@share-icon:"\e00e";@cog-icon:"\e600";.vjs-default-skin .vjs-slider{// outline:0;position:relative;cursor:pointer;padding:0;.background-color-with-alpha(@slider-background-color,@slider-background-alpha)}.vjs-default-skin .vjs-slider:focus{.box-shadow(0 0 2em #fff)}.vjs-default-skin .vjs-slider-handle{position:absolute;// left:0;top:0}.vjs-default-skin .vjs-slider-handle:before{content:@square-icon;font-family:VideoJS;font-size:1em;line-height:1;text-align:center;text-shadow:0 0 1em #fff;position:absolute;top:0;left:0;// .transform(rotate(-45deg))}.vjs-default-skin .vjs-control-bar{// display:none;position:absolute;// bottom:0;// left:0;right:0;// height:3.0em;.background-color-with-alpha(@control-bg-color,@control-bg-alpha)}.vjs-default-skin.vjs-has-started .vjs-control-bar{display:block;visibility:visible;opacity:1;@trans:visibility .1s,opacity .1s;// Var needed because of comma .transition(@trans)}.vjs-default-skin.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar{display:block;visibility:hidden;opacity:0;@trans:visibility 1.0s,opacity 1.0s;.transition(@trans)}.vjs-default-skin.vjs-controls-disabled .vjs-control-bar{display:none}.vjs-default-skin.vjs-using-native-controls .vjs-control-bar{display:none}.vjs-default-skin.vjs-error .vjs-control-bar{display:none}.vjs-audio.vjs-default-skin.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar{opacity:1;visibility:visible}@ie8screen:~"\0screen";.vjs-default-skin.vjs-user-inactive.vjs-playing .vjs-control-bar :before{@media @ie8screen{content:""}}.vjs-default-skin .vjs-control{outline:0;position:relative;float:left;text-align:center;margin:0;padding:0;height:3.0em;width:4em}.vjs-default-skin .vjs-control:before{font-family:VideoJS;font-size:1.5em;line-height:2;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;text-shadow:1px 1px 1px rgba(0,0,0,0.5)}.vjs-default-skin .vjs-control:focus:before,.vjs-default-skin .vjs-control:hover:before{text-shadow:0 0 1em rgba(255,255,255,1)}.vjs-default-skin .vjs-control:focus{//}.vjs-default-skin .vjs-control-text{.hide-visually}.vjs-default-skin .vjs-play-control{width:5em;cursor:pointer}.vjs-default-skin .vjs-play-control:before{content:@play-icon}.vjs-default-skin.vjs-playing .vjs-play-control:before{content:@pause-icon}.vjs-default-skin .vjs-playback-rate .vjs-playback-rate-value{font-size:1.5em;line-height:2;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;text-shadow:1px 1px 1px rgba(0,0,0,0.5)}.vjs-default-skin .vjs-playback-rate.vjs-menu-button .vjs-menu .vjs-menu-content{width:4em;left:-2em;list-style:none}.vjs-default-skin .vjs-mute-control,.vjs-default-skin .vjs-volume-menu-button{cursor:pointer;float:right}.vjs-default-skin .vjs-mute-control:before,.vjs-default-skin .vjs-volume-menu-button:before{content:@volume-high-icon}.vjs-default-skin .vjs-mute-control.vjs-vol-0:before,.vjs-default-skin .vjs-volume-menu-button.vjs-vol-0:before{content:@volume-muted-icon}.vjs-default-skin .vjs-mute-control.vjs-vol-1:before,.vjs-default-skin .vjs-volume-menu-button.vjs-vol-1:before{content:@volume-low-icon}.vjs-default-skin .vjs-mute-control.vjs-vol-2:before,.vjs-default-skin .vjs-volume-menu-button.vjs-vol-2:before{content:@volume-mid-icon}.vjs-default-skin .vjs-volume-control{width:5em;float:right}.vjs-default-skin .vjs-volume-bar{width:5em;height:.6em;margin:1.1em auto 0}.vjs-default-skin .vjs-volume-level{position:absolute;top:0;left:0;height:.5em;width:100%;background:@slider-bar-color url(@slider-bar-pattern) -50% 0 repeat}.vjs-default-skin .vjs-volume-bar .vjs-volume-handle{width:.5em;height:.5em;left:4.5em}.vjs-default-skin .vjs-volume-handle:before{font-size:.9em;top:-0.2em;left:-0.2em;width:1em;height:1em}.vjs-default-skin .vjs-volume-menu-button .vjs-menu{display:block;width:0;height:0;border-top-color:transparent}.vjs-default-skin .vjs-volume-menu-button .vjs-menu .vjs-menu-content{height:0;width:0}.vjs-default-skin .vjs-volume-menu-button:hover .vjs-menu,.vjs-default-skin .vjs-volume-menu-button .vjs-menu.vjs-lock-showing{border-top-color:rgba(7,40,50,0.5)}.vjs-default-skin .vjs-volume-menu-button:hover .vjs-menu .vjs-menu-content,.vjs-default-skin .vjs-volume-menu-button .vjs-menu.vjs-lock-showing .vjs-menu-content{height:2.9em;width:10em}.vjs-default-skin .vjs-progress-control{position:absolute;left:0;right:0;width:auto;font-size:.3em;height:1em;// top:-1em;// .transition(all .4s)}.vjs-default-skin:hover .vjs-progress-control{font-size:.9em;.transition(all .2s)}.vjs-default-skin .vjs-progress-holder{height:100%}.vjs-default-skin .vjs-progress-holder .vjs-play-progress,.vjs-default-skin .vjs-progress-holder .vjs-load-progress,.vjs-default-skin .vjs-progress-holder .vjs-load-progress div{position:absolute;display:block;height:100%;margin:0;padding:0;width:0;// left:0;top:0}.vjs-default-skin .vjs-play-progress{background:@slider-bar-color url(@slider-bar-pattern) -50% 0 repeat}.vjs-default-skin .vjs-load-progress{background:#646464;background:rgba(255,255,255,0.2)}.vjs-default-skin .vjs-load-progress div{background:#787878;background:rgba(255,255,255,0.1)}.vjs-default-skin .vjs-seek-handle{width:1.5em;height:100%}.vjs-default-skin .vjs-seek-handle:before{padding-top:.1em}.vjs-default-skin.vjs-live .vjs-time-controls,.vjs-default-skin.vjs-live .vjs-time-divider,.vjs-default-skin.vjs-live .vjs-progress-control{display:none}.vjs-default-skin.vjs-live .vjs-live-display{display:block}.vjs-default-skin .vjs-live-display{display:none;font-size:1em;line-height:3em}.vjs-default-skin .vjs-time-controls{font-size:1em;// line-height:3em}.vjs-default-skin .vjs-current-time{float:left}.vjs-default-skin .vjs-duration{float:left}.vjs-default-skin .vjs-remaining-time{display:none;float:left}.vjs-time-divider{float:left;line-height:3em}.vjs-default-skin .vjs-fullscreen-control{width:3.8em;cursor:pointer;float:right}.vjs-default-skin .vjs-fullscreen-control:before{content:@fullscreen-enter-icon}.vjs-default-skin.vjs-fullscreen .vjs-fullscreen-control:before{content:@fullscreen-exit-icon}.vjs-default-skin .vjs-big-play-button{// Calculate total width/height so we're able to center the button
  @total-width: (@big-play-width + (@big-play-border-width * 2));
  @total-height: (@big-play-height + (@big-play-border-width * 2));
  // Position the button using the absolute-align mixin (bottom of page)
  .absolute-align(@big-play-align, @big-play-margin, @total-width);
  .absolute-align(@big-play-vertical-align, @big-play-margin, @total-height);

  font-size: @big-play-font-size;
  display: block;
  z-index: 2;
  position: absolute;
  width: @big-play-width;
  height: @big-play-height;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  opacity: 1;

  /* Need a slightly gray bg so it can be seen on black backgrounds *///
  .background-color-with-alpha(@big-play-bg-color, @big-play-bg-alpha);

  border: @big-play-border-width solid @big-play-border-color;

  .border-radius(@big-play-border-radius);
  .box-shadow(0px 0px 1em rgba(255, 255, 255, 0.25));
  .transition(all 0.4s);
}

/* Optionally center */
.vjs-default-skin.vjs-big-play-centered .vjs-big-play-button {
  @total-width: (@big-play-width + (@big-play-border-width * 2));
  @total-height: (@big-play-height + (@big-play-border-width * 2));

  .absolute-align(center, @big-play-margin, @total-width);
  .absolute-align(middle, @big-play-margin, @total-height);
}

/* Hide if controls are disabled */
.vjs-default-skin.vjs-controls-disabled .vjs-big-play-button {
  display: none;
}
/* Hide when video starts playing */
.vjs-default-skin.vjs-has-started .vjs-big-play-button {
  display: none;
}
/* Hide on mobile devices. Remove when we stop using native controls
    by default on mobile  */
.vjs-default-skin.vjs-using-native-controls .vjs-big-play-button {
  display: none;
}

.vjs-default-skin:hover .vjs-big-play-button,
.vjs-default-skin .vjs-big-play-button:focus {
  outline: 0;
  border-color: #fff;
  /* IE8 needs a non-glow hover state *///
  background-color: rgb(80, 80, 80);
  background-color: rgba(50, 50, 50, 0.75);

  .box-shadow(0 0 3em #fff);
  .transition(all 0s);
}

.vjs-default-skin .vjs-big-play-button:before {
  content: @play-icon;
  font-family: VideoJS;
  /* In order to center the play icon vertically we need to set the line height
     to the same as the button height */
  line-height: @big-play-height;
  text-shadow: 0.05em 0.05em 0.1em #000;
  text-align: center /* Needed for IE8 */;

  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
}

.vjs-error .vjs-big-play-button {
  display: none;
}

/* Error Display
--------------------------------------------------------------------------------
*/

.vjs-error-display {
  display: none;
}

.vjs-error .vjs-error-display {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.vjs-error .vjs-error-display:before {
  content: 'X';
  font-family: Arial;
  font-size: 4em;
  color: #666666;
  /* In order to center the play icon vertically we need to set the line height
     to the same as the button height */
  line-height: 1;
  text-shadow: 0.05em 0.05em 0.1em #000;
  text-align: center /* Needed for IE8 */;
  vertical-align: middle;

  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -0.5em;
  width: 100%;
}

.vjs-error-display div {
  position: absolute;
  bottom: 1em;
  right: 0;
  left: 0;

  font-size: 1.4em;
  text-align: center;
  padding: 3px;
  background: rgb(0, 0, 0); // fallback to just black
  background: rgba(0,0,0,0.5); // Normally show black at 50% opacity
}

.vjs-error-display a, .vjs-error-display a:visited {
  color: #F4A460;
}

/* Loading Spinner
--------------------------------------------------------------------------------
*/

.vjs-loading-spinner {
  /* Should be hidden by default *///
  display: none;

  position: absolute;
  top: 50%;
  left: 50%;

  font-size: 4em;
  line-height: 1;

  width: 1em;
  height: 1em;

  margin-left: -0.5em;
  margin-top: -0.5em;

  opacity: 0.75;
}

/* Show the spinner when waiting for data and seeking to a new time */
.vjs-waiting .vjs-loading-spinner,
.vjs-seeking .vjs-loading-spinner {
  display: block;

  /* only animate when showing because it can be processor heavy *///
  .animation(spin 1.5s infinite linear);
}

/* Errors are unrecoverable without user interaction so hide the spinner */
.vjs-error .vjs-loading-spinner {
  display: none;

  /* ensure animation doesn't continue while hidden *///
  .animation(none);
}

.vjs-default-skin .vjs-loading-spinner:before {
  content: @spinner3-icon;
  font-family: VideoJS;

  position: absolute;
  top: 0;
  left: 0;
  width: 1em;
  height: 1em;
  text-align: center;
  text-shadow: 0em 0em 0.1em #000;
}

@-moz-keyframes spin {
  0% { -moz-transform: rotate(0deg); }
  100% { -moz-transform: rotate(359deg); }
}
@-webkit-keyframes spin {
  0% { -webkit-transform: rotate(0deg); }
  100% { -webkit-transform: rotate(359deg); }
}
@-o-keyframes spin {
  0% { -o-transform: rotate(0deg); }
  100% { -o-transform: rotate(359deg); }
}
@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(359deg); }
}

/* Menu Buttons (Captions/Subtitles/etc.)
--------------------------------------------------------------------------------
*/
.vjs-default-skin .vjs-menu-button {
  float: right;
  cursor: pointer;
}

.vjs-default-skin .vjs-menu {
  display: none;
  position: absolute;
  bottom: 0;
  left: 0em; /* (Width of vjs-menu - width of button) / 2 */
  width: 0em;
  height: 0em;
  margin-bottom: 3em;

  border-left: 2em solid transparent;
  border-right: 2em solid transparent;

  border-top: 1.55em solid rgb(0, 0, 0); /* Same width top as ul bottom */
  border-top-color: rgba(7, 40, 50, 0.5); /* Same as ul background */
}

/* Button Pop-up Menu */
.vjs-default-skin .vjs-menu-button .vjs-menu .vjs-menu-content {
  display: block;
  padding: 0; margin: 0;
  position: absolute;
  width: 10em;
  bottom: 1.5em; /* Same bottom as vjs-menu border-top */
  max-height: 15em;
  overflow: auto;

  left: -5em; /* Width of menu - width of button / 2 */

  .background-color-with-alpha(@control-bg-color, @control-bg-alpha);
  .box-shadow(-0.2em -0.2em 0.3em rgba(255, 255, 255, 0.2));
}

.vjs-default-skin .vjs-menu-button:hover .vjs-control-content .vjs-menu,
.vjs-default-skin .vjs-control-content .vjs-menu.vjs-lock-showing {
  display: block;
}
/* prevent menus from opening while scrubbing (FF, IE) */
.vjs-default-skin.vjs-scrubbing .vjs-menu-button:hover .vjs-control-content .vjs-menu {
  display: none;
}
.vjs-default-skin .vjs-menu-button ul li {
  list-style: none;
  margin: 0;
  padding: 0.3em 0 0.3em 0;
  line-height: 1.4em;
  font-size: 1.2em;
  text-align: center;
  text-transform: lowercase;
}
.vjs-default-skin .vjs-menu-button ul li.vjs-selected {
  background-color: #000;
}
.vjs-default-skin .vjs-menu-button ul li:focus,
.vjs-default-skin .vjs-menu-button ul li:hover,
.vjs-default-skin .vjs-menu-button ul li.vjs-selected:focus,
.vjs-default-skin .vjs-menu-button ul li.vjs-selected:hover {
  outline: 0;
  color: #111;

  .background-color-with-alpha(rgb(255, 255, 255), 0.75);
  .box-shadow(0 0 1em rgba(255, 255, 255, 1));
}
.vjs-default-skin .vjs-menu-button ul li.vjs-menu-title {
  text-align: center;
  text-transform: uppercase;
  font-size: 1em;
  line-height: 2em;
  padding: 0;
  margin: 0 0 0.3em 0;
  font-weight: bold;
  cursor: default;
}

/* Subtitles Button */
.vjs-default-skin .vjs-subtitles-button:before {
  content: @subtitles-icon;
}

/* Captions Button */
.vjs-default-skin .vjs-captions-button:before {
  content: @captions-icon;
}

/* Chapters Button */
.vjs-default-skin .vjs-chapters-button:before {
  content: @chapters-icon;
}

.vjs-default-skin .vjs-chapters-button.vjs-menu-button .vjs-menu .vjs-menu-content {
  width: 24em;
  left: -12em;
}

/* Replacement for focus outline */
.vjs-default-skin .vjs-captions-button:focus .vjs-control-content:before,
.vjs-default-skin .vjs-captions-button:hover .vjs-control-content:before {
  .box-shadow(0 0 1em rgba(255, 255, 255, 1));
}

/*
REQUIRED STYLES (be careful overriding)
================================================================================
When loading the player, the video tag is replaced with a DIV,
that will hold the video tag or object tag for other playback methods.
The div contains the video playback element (Flash or HTML5) and controls,
and sets the width and height of the video.

** If you want to add some kind of border/padding (e.g. a frame), or special
positioning, use another containing element. Otherwise you risk messing up
control positioning and full window mode. **
*/
.video-js {
  background-color: #000;
  position: relative;
  padding: 0;
  /* Start with 10px for base font size so other dimensions can be em based and
     easily calculable. */
  font-size: @base-font-size;
  /* Allow poster to be vertically aligned. */
  vertical-align: middle;
  /*  display: table-cell; */ /*This works in Safari but not Firefox.*/

  /* Provide some basic defaults for fonts */
  font-weight: normal;
  font-style: normal;
  /* Avoiding helvetica: issue #376 */
  font-family: Arial, sans-serif;

  /* Turn off user selection (text highlighting) by default.
     The majority of player components will not be text blocks.
     Text areas will need to turn user selection back on. */
  .user-select(none);
}

/* Playback technology elements expand to the width/height of the containing div
    <video> or <object> */
.video-js .vjs-tech {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Fix for Firefox 9 fullscreen (only if it is enabled). Not needed when
   checking fullScreenEnabled. */
.video-js:-moz-full-screen { position: absolute; }

/* Fullscreen Styles */
body.vjs-full-window {
  padding: 0;
  margin: 0;
  height: 100%;
  /* Fix for IE6 full-window. http://www.cssplay.co.uk/layouts/fixed.html *///
  overflow-y: auto;
}
.video-js.vjs-fullscreen {
  position: fixed;
  overflow: hidden;
  z-index: 1000;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
  /* IE6 full-window (underscore hack) *///
  _position: absolute;
}
.video-js:-webkit-full-screen {
  width: 100% !important;
  height: 100% !important;
}
.video-js.vjs-fullscreen.vjs-user-inactive {
  cursor: none;
}

/* Poster Styles */
.vjs-poster {
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: contain;
  background-color: #000000;
  cursor: pointer;
  margin: 0;
  padding: 0;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.vjs-poster img {
  display: block;
  margin: 0 auto;
  max-height: 100%;
  padding: 0;
  width: 100%;
}

/* Hide the poster after the video has started playing */
.video-js.vjs-has-started .vjs-poster {
  display: none;
}

/* Don't hide the poster if we're playing audio */
.video-js.vjs-audio.vjs-has-started .vjs-poster {
  display: block;
}

/* Hide the poster when controls are disabled because it's clickable
    and the native poster can take over */
.video-js.vjs-controls-disabled .vjs-poster {
  display: none;
}

/* Hide the poster when native controls are used otherwise it covers them */
.video-js.vjs-using-native-controls .vjs-poster {
  display: none;
}

/* Text Track Styles */
/* Overall track holder for both captions and subtitles */
.video-js .vjs-text-track-display {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 3em;
  right: 0;
  pointer-events: none;
}

/* Captions Settings Dialog */
.vjs-caption-settings {
  position: relative;
  top: 1em;
  background-color: #000;
  opacity: 0.75;
  color: #FFF;
  margin: 0 auto;
  padding: 0.5em;
  height: 15em;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  width: 40em;
}

.vjs-caption-settings .vjs-tracksettings {
  top: 0;
  bottom: 2em;
  left: 0;
  right: 0;
  position: absolute;
  overflow: auto;
}

.vjs-caption-settings .vjs-tracksettings-colors,
.vjs-caption-settings .vjs-tracksettings-font {
  float: left;
}
.vjs-caption-settings .vjs-tracksettings-colors:after,
.vjs-caption-settings .vjs-tracksettings-font:after,
.vjs-caption-settings .vjs-tracksettings-controls:after {
  clear: both;
}

.vjs-caption-settings .vjs-tracksettings-controls {
  position: absolute;
  bottom: 1em;
  right: 1em;
}

.vjs-caption-settings .vjs-tracksetting {
  margin: 5px;
  padding: 3px;
  min-height: 40px;
}
.vjs-caption-settings .vjs-tracksetting label {
  display: block;
  width: 100px;
  margin-bottom: 5px;
}

.vjs-caption-settings .vjs-tracksetting span {
  display: inline;
  margin-left: 5px;
}

.vjs-caption-settings .vjs-tracksetting > div {
  margin-bottom: 5px;
  min-height: 20px;
}

.vjs-caption-settings .vjs-tracksetting > div:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  min-height: 0;
}

.vjs-caption-settings label > input {
  margin-right: 10px;
}

.vjs-caption-settings input[type="button"] {
  width: 40px;
  height: 40px;
}

/* Hide disabled or unsupported controls */
.vjs-hidden { display: none !important; }

.vjs-lock-showing {
  display: block !important;
  opacity: 1;
  visibility: visible;
}

/*  In IE8 w/ no JavaScript (no HTML5 shim), the video tag doesn't register.
    The .video-js classname on the video tag also isn't considered.
    This optional paragraph inside the video tag can provide a message to users
    about what's required to play video. */
.vjs-no-js {
  padding: 2em;
  color: #ccc;
  background-color: #333;
  font-size: 1.8em;
  font-family: Arial, sans-serif;
  text-align: center;
  width: 30em;
  height: 15em;
  margin: 0 auto;
}

.vjs-no-js a, .vjs-no-js a:visited {
  color: #F4A460;
}

// MIXINS
// =============================================================================
// Mixins are a LESS feature and are used to add vendor prefixes to CSS rules
// when needed.

// https://developer.mozilla.org/en-US/docs/Web/CSS/box-shadow
.box-shadow (@string: 0 0 1em rgba(0, 0, 0, 0.25)) {
  /* box-shadow *///
  -webkit-box-shadow: @string;
     -moz-box-shadow: @string;
          box-shadow: @string;
}

// https://developer.mozilla.org/en-US/docs/Web/CSS/border-radius
.border-radius (@string: 5px) {
  /* border-radius *///
  -webkit-border-radius: @string;
     -moz-border-radius: @string;
          border-radius: @string;
}

// https://developer.mozilla.org/en-US/docs/Web/CSS/transition
.transition (@string: all 1s linear) {
  /* transition *///
  -webkit-transition: @string;
     -moz-transition: @string;
       -o-transition: @string;
          transition: @string;
}

// https://developer.mozilla.org/en-US/docs/Web/CSS/transition
.transition-delay (@string: 1s) {
  /* transition-delay *///
  -webkit-transition-delay: @string;
     -moz-transition-delay: @string;
       -o-transition-delay: @string;
          transition-delay: @string;
}

// https://developer.mozilla.org/en-US/docs/Web/CSS/animation
.animation (@string: spin 1s infinite linear) {
  /* animation *///
  -webkit-animation: @string;
     -moz-animation: @string;
       -o-animation: @string;
          animation: @string;
}

// https://developer.mozilla.org/en-US/docs/Web/CSS/transform
.transform (@string: rotate(-45deg)) {
  /* transform *///
  -webkit-transform: @string;
     -moz-transform: @string;
      -ms-transform: @string;
       -o-transform: @string;
          transform: @string;
}

// https://developer.mozilla.org/en-US/docs/Web/CSS/user-select
.user-select (@string: none) {
  /* user-select *///
  -webkit-user-select: @string;
     -moz-user-select: @string;
      -ms-user-select: @string;
          user-select: @string;
}

// Hide something visually but keep available for screen readers.
// http://h5bp.com/v
.hide-visually () {
  /* hide-visually *///
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position:
  absolute;
  width: 1px;
}

// Align an object with absolute positioning
// Used to align the Big Play Button in the corners or center
.absolute-align (@align, @margin, @length) when (@align = top) {
  top: @margin;
}
.absolute-align (@align, @margin, @length) when (@align = bottom) {
  bottom: @margin;
}
.absolute-align (@align, @margin, @length) when (@align = left) {
  left: @margin;
}
.absolute-align (@align, @margin, @length) when (@align = right) {
  right: @margin;
}
.absolute-align (@align, @margin, @length) when (@align = center) {
  /* Center it horizontally *///
  left: 50%;
  margin-left: (-(@length/2));
  // margin-left: ((@length*-1)/2);
}
.absolute-align (@align, @margin, @length) when (@align = middle) {
  /* Center it vertically *///
  top: 50%;
  margin-top: (-(@length/2));
  // margin-top: ((@length*-1)/2);
}

// http://stackoverflow.com/questions/637921/opacity-of-background-but-not-the-text
.background-color-with-alpha (@color, @alpha) {
  @rgba: rgba(red(@color), green(@color), blue(@color), @alpha);
  /* background-color-with-alpha *///
  background-color: @color;
  background-color: @rgba;
  // No longer using MS filters because they break border radius in IE9
  // @argb: argb(@rgba);
  // filter: ~"progid:DXImageTransform.Microsoft.gradient(startColorstr=@{argb}, endColorstr=@{argb})";
  // -ms-filter: ~"progid:DXImageTransform.Microsoft.gradient(startColorstr=@{argb}, endColorstr=@{argb})";
}

.border-color-with-alpha (@color, @alpha) {
  @rgba: rgba(red(@color), green(@color), blue(@color), @alpha);
  /* border-color-with-alpha *///
  border-color: @color;
  border-color: @rgba;
}

// NOTES ON LESS (tracking learnings so we don't forget) // ============================================================================= // * We want this file to continue to be accessible by people who don't know
//   LESS but know CSS. This means finding the balance between using the most
//   valuable LESS features (e.g. variables) and keeping it looking like CSS.
//   So it's best to avoid advanced LESS features like conditional statements. //(we're using one for the big play button position because that's a hot // topic) // // * We care about the readability of the CSS output of LESS,which means we // have to be careful about what features of LESS we use.(if you're building
//   your own skin this may not apply)
//     1. Comments inside of rules (strangely) have an extra line added after
//        them in the CSS output. To avoid this we can add a LESS comment after
//        the CSS comment.
//          /* comment *///
//
//     2. In a rule with nested rules, any comments outside of a rule are moved
//        to the top of the parent rule. i.e. it might look like:
//          /* title of rule 1 */
//          /* title of rule 2 */
//          .rule1 {}
//          .rule2 {}
//        This is why we aren't using nested rules inside of the // vjs-default-skin class.