/*
	MOBILE PICKER
*/

@-ms-viewport{
	width: extend-to-zoom;
	zoom: 1.0;
}


#mvpdpicker {
	-webkit-transition: width 0.4s, height 0.4s, -webkit-transform 0.4s;
	transition: width 0.4s, height 0.4s, transform 0.4s;
}

/* Shrink modal Picker for "almost big enough" screens (i.e. tablets) */
@media
only screen and (min-width: 640px) and (max-width: 800px),
only screen and (orientation: landscape) and (min-height: 506px) and (max-height: 633px)
{
	#mvpdpicker {
		-webkit-transform: scale(0.8);
		transform: scale(0.8);
	}
}


@media
only screen and (max-width: 639px),
only screen and (orientation: landscape) and (max-height: 505px)
{

	#mvpdpicker {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		position: fixed;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		width: 100%;
		height: 100%;
		box-shadow: none;
		-webkit-text-size-adjust: 100%;
		-webkit-transform: scale(1);
		transform: scale(1);
	}

	/* We don't need the iframe if you're on Mobile; there's no Flash to hide/obscure. */
	#mvpdPickerFrame.visible {
		display: none;
		top: -9999px;
		left: -9999px;
	}

	/* We have JS attempting to center the Picker in the page; this overrides the top/left positioning. */
	#mvpdpicker.visible {
		top: 0 !important;
		left: 0 !important;
	}

	#mvpdpicker .header {
		-webkit-box-flex: 0;
		-webkit-flex: none;
		-ms-flex: none;
		flex: none;
		width: 100%;
	}

	#mvpdpicker .title {
		width: 100%;
		background-color: hsl(0,0%,0%);
		background-image: -webkit-gradient(left top, left bottom, color-stop(0%, hsl(0,0%,0%)), color-stop(1%, hsl(0,0%,41%)), color-stop(25%, hsl(0,0%,41%)), color-stop(39%, hsl(0,0%,36%)), color-stop(50%, hsl(0,0%,25%)), color-stop(51%, hsl(0,0%,9%)), color-stop(60%, hsl(0,0%,10%)), color-stop(91%, hsl(0,0%,16%)), color-stop(100%, hsl(0,0%,0%)));
		background-image: -webkit-linear-gradient(top, hsl(0,0%,0%) 0%, hsl(0,0%,41%) 1%, hsl(0,0%,41%) 25%, hsl(0,0%,36%) 39%, hsl(0,0%,25%) 50%, hsl(0,0%,9%) 51%, hsl(0,0%,10%) 60%, hsl(0,0%,16%) 91%, hsl(0,0%,0%) 100%);
		background-image: linear-gradient(to bottom, hsl(0,0%,0%) 0%, hsl(0,0%,41%) 1%, hsl(0,0%,41%) 25%, hsl(0,0%,36%) 39%, hsl(0,0%,25%) 50%, hsl(0,0%,9%) 51%, hsl(0,0%,10%) 60%, hsl(0,0%,16%) 91%, hsl(0,0%,0%) 100%);
		text-align: center;
	}

	#mvpdpicker .title > span {
		display: inline-block;
		line-height: 50px;
		font-size: 22px;
		font-weight: bold;
		color: white;
		text-shadow: -1px -1px black;
	}


	/* STEPS */

	#mvpdpicker .steps {
		-webkit-box-flex: 0;
		-webkit-flex: none;
		-ms-flex: none;
		flex: none;
		height: 45px;
		background-image: url('img/mobile_steps_1.png');
		background-size: contain;
	}

	#mvpdpicker.state-dark .steps,
	#mvpdpicker.state-mvpdlogo .steps,
	#mvpdpicker.state-mvpdlist .steps,
	#mvpdpicker.state-notfound .steps {
		background-image: url('img/mobile_steps_1.png');
	}

	#mvpdpicker.state-remember .steps,
	#mvpdpicker.state-signin .steps,
	#mvpdpicker.state-error  .steps {
		background-image: url('img/mobile_steps_2.png');
	}

	#mvpdpicker.state-success .steps {
		background-image: url('img/mobile_steps_3.png');
	}

	@media
	(-webkit-min-device-pixel-ratio: 2),
	(min-resolution: 2dppx) {

		#mvpdpicker.state-dark .steps,
		#mvpdpicker.state-mvpdlogo .steps,
		#mvpdpicker.state-mvpdlist .steps,
		#mvpdpicker.state-notfound .steps {
			background-image: url('img/mobile_steps_1@2x.png');
		}

		#mvpdpicker.state-remember .steps,
		#mvpdpicker.state-signin .steps,
		#mvpdpicker.state-error  .steps {
			background-image: url('img/mobile_steps_2@2x.png');
		}

		#mvpdpicker.state-success .steps {
			background-image: url('img/mobile_steps_3@2x.png');
		}

	}


	/* SLATES */

	#mvpdpicker .slates {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-justify-content: space-around;
		-ms-flex-pack: distribute;
		justify-content: space-around;
		-webkit-box-align: stretch;
		-webkit-align-items: stretch;
		-ms-flex-align: stretch;
		align-items: stretch;
		-webkit-box-flex: 1;
		-webkit-flex: auto;
		-ms-flex: auto;
		flex: auto;
		height: auto;
	}

	/* Override background-image of default picker css */
	#mvpdpicker.state-remember .slates,
	#mvpdpicker.state-mvpdlogo .slates,
	#mvpdpicker.state-mvpdlist .slates,
	#mvpdpicker.state-notfound .slates,
	#mvpdpicker.state-dark .slates,
	#mvpdpicker.state-signin .slates,
	#mvpdpicker.state-error .slates,
	#mvpdpicker.state-success .slates,
	#mvpdpicker.state-welcome .slates {
		background-image: url('img/mobile_slate_blank.png');
	}

	/* Override height of default picker css */
	#mvpdpicker.state-welcome .slates {
		height: auto;
	}

	#mvpdpicker.state-remember .remembered,
	#mvpdpicker.state-mvpdlogo .pickbylogo,
	#mvpdpicker.state-mvpdlist .findbyname,
	#mvpdpicker.state-notfound .noprovider,
	#mvpdpicker.state-dark .darkprovider,
	#mvpdpicker.state-signin .signin,
	#mvpdpicker.state-error .error,
	#mvpdpicker.state-success .success,
	#mvpdpicker.state-welcome .welcome {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-justify-content: space-around;
		-ms-flex-pack: distribute;
		justify-content: space-around;
		-webkit-box-align: stretch;
		-webkit-align-items: stretch;
		-ms-flex-align: stretch;
		align-items: stretch;
	}

	#mvpdpicker .slate {
		-webkit-box-flex: 1;
		-webkit-flex: auto;
		-ms-flex: auto;
		flex: auto;
		height: 100%;
	}

	#mvpdpicker button {
		margin: 2px;
		border: 1px solid #34343a;
		border-radius: 10px;
		padding: 1em 2em;
		box-shadow: 0 0 1px #000;
	}

	#mvpdpicker button > span {
		display: inline;
		font-size: 14px;
		font-family: "Helvetica Neue", Helvetica, sans-serif;
		font-weight: bold;
		color: white;
	}

	#mvpdpicker .footer {
		-webkit-box-flex: 0;
		-webkit-flex: none;
		-ms-flex: none;
		flex: none;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-justify-content: space-around;
		-ms-flex-pack: distribute;
		justify-content: space-around;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		position: relative;
		bottom: auto;
		height: auto;
		background-color: #dfe0e4;
		border-top: 2px solid #8f8f8f;
	}

	#mvpdpicker .footer button {
		-webkit-box-flex: 0;
		-webkit-flex: none;
		-ms-flex: none;
		flex: none;
	}

	/* Override hard-coded heights in default picker css */
	#mvpdpicker .welcome,
	#mvpdpicker .remembered,
	#mvpdpicker .findbyname,
	#mvpdpicker .darkprovider {
		height: auto;
	}

	#mvpdpicker .welcomemessage {
		display: block;
		-webkit-box-flex: 0;
		-webkit-flex: none;
		-ms-flex: none;
		flex: none;
		overflow: auto;
	}

	#mvpdpicker .welcomeloginbutton,
	#mvpdpicker .rememberedcancelbutton,
	#mvpdpicker .rememberedokbutton,
	#mvpdpicker .viewallbutton,
	#mvpdpicker .viewtopbutton,
	#mvpdpicker .dontseebutton,
	#mvpdpicker .okbutton,
	#mvpdpicker .cancelbutton,
	#mvpdpicker .watchnowbutton {
		width: auto;
		height: auto;
		margin: 2px;
		background: none;
		background-color: #454751;
		background-image: -webkit-gradient(linear, left top, left bottom, from(hsl(230, 8%, 29%)), to(hsl(234, 10%, 20%)));
		background-image: -webkit-linear-gradient(top, hsl(230, 8%, 29%), hsl(234, 10%, 20%));
		background-image: linear-gradient(top, hsl(230, 8%, 29%), hsl(234, 10%, 20%));
	}

	#mvpdpicker .welcomeloginbutton {
		-webkit-box-flex: 0;
		-webkit-flex: none;
		-ms-flex: none;
		flex: none;
		-webkit-align-self: center;
		-ms-flex-item-align: center;
		align-self: center;
		position: relative;
		top: 0;
	}

	#mvpdpicker .rememberedmessage {
		-webkit-box-flex: 1;
		-webkit-flex: auto;
		-ms-flex: auto;
		flex: auto;
		width: 100%;
		height: auto;
		margin: 0;
		overflow: auto;
	}

	#mvpdpicker .rememberedmessage p {
		margin: 10% auto;
	}

	#mvpdpicker .mvpdsbylogo {
		-webkit-box-flex: 1;
		-webkit-flex: auto;
		-ms-flex: auto;
		flex: auto;
		height: auto;
		text-align: center;
		overflow-x: hidden;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
	}

	#mvpdpicker .mvpdsbylogo li {
		margin: 1%;
		width: 40%;
	}

	#mvpdpicker .mvpdlogo {
		width: 100%;
		height: auto;
		margin: 0;
	}

	#mvpdpicker .searchheader {
		-webkit-box-flex: 0;
		-webkit-flex: none;
		-ms-flex: none;
		flex: none;
	}

	#mvpdpicker .searchfield {
		height: 32px;
		padding: 8px 0 0 30px;
	}

	#mvpdpicker .mvpdsearch {
		margin: 0;
	}

	#mvpdpicker .searchpane {
		-webkit-box-flex: 1;
		-webkit-flex: auto;
		-ms-flex: auto;
		flex: auto;
		height: auto;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
	}

	#mvpdpicker .mvpdsbyname {
		max-height: 0;  /* hack to shrink flex-box container */
	}

	#mvpdpicker .noprovidermessage {
		display: block;
		-webkit-box-flex: 0;
		-webkit-flex: none;
		-ms-flex: none;
		flex: none;
		position: relative;
		top: 0;
		width: 90%;
		margin: 0 auto;
		overflow: auto;
	}

	#mvpdpicker .noproviderokbutton {
		-webkit-box-flex: 0;
		-webkit-flex: none;
		-ms-flex: none;
		flex: none;
		-webkit-align-self: center;
		-ms-flex-item-align: center;
		align-self: center;
		position: relative;
		top: 0;
	}

	#mvpdpicker .darkprovidermessage {
		-webkit-box-flex: 0;
		-webkit-flex: none;
		-ms-flex: none;
		flex: none;
		height: auto;
		margin: 0;
		overflow: auto;
	}

	#mvpdpicker .darkproviderokbutton {
		-webkit-box-flex: 0;
		-webkit-flex: none;
		-ms-flex: none;
		flex: none;
		-webkit-align-self: center;
		-ms-flex-item-align: center;
		align-self: center;
	}

	#mvpdpicker .signinmessage {
		-webkit-box-flex: 0;
		-webkit-flex: none;
		-ms-flex: none;
		flex: none;
		position: relative;
		top: 0;
		overflow: auto;
	}

	#mvpdpicker .spinnerbox {
		-webkit-box-flex: 0;
		-webkit-flex: none;
		-ms-flex: none;
		flex: none;
		margin-top: 0;
	}

	@-webkit-keyframes mvpdspinner {
		to {
			-webkit-transform: rotate(360deg);
		}
	}
	@keyframes mvpdspinner {
		to {
			-webkit-transform: rotate(360deg);
			transform: rotate(360deg);
		}
	}

	#mvpdpicker .spinner {
		display: inline-block;
		width: 50px;
		height: 50px;
		background: #fff none;
		border-radius: 50%;
		border-top: 5px solid #4ec0ff;
		border-right: 5px solid hsl(209, 31%, 34%);
		border-bottom: 5px solid hsl(209, 31%, 34%);
		border-left: 5px solid hsl(209, 31%, 34%);
	}

	#mvpdpicker.state-signin .spinner {
		-webkit-animation: mvpdspinner 1s linear infinite;
		animation: mvpdspinner 1s linear infinite;
	}

	#mvpdpicker .signincancelbutton {
		-webkit-box-flex: 0;
		-webkit-flex: none;
		-ms-flex: none;
		flex: none;
		-webkit-align-self: center;
		-ms-flex-item-align: center;
		align-self: center;
		margin-top: 0;
	}

	#mvpdpicker .errormessage {
		-webkit-box-flex: 0;
		-webkit-flex: none;
		-ms-flex: none;
		flex: none;
		top: 0;
		width: auto;
		height: auto;
		overflow: auto;
	}

	#mvpdpicker .errorokbutton {
		-webkit-box-flex: 0;
		-webkit-flex: none;
		-ms-flex: none;
		flex: none;
		-webkit-align-self: center;
		-ms-flex-item-align: center;
		align-self: center;
		position: relative;
		top: 0;
	}

	#mvpdpicker .successmessage {
		display: block;
		-webkit-box-flex: 0;
		-webkit-flex: none;
		-ms-flex: none;
		flex: none;
		position: relative;
		top: 0;
		font-size: 24px;
		overflow: auto;
	}

	#mvpdpicker .watchnowbutton {
		-webkit-box-flex: 0;
		-webkit-flex: none;
		-ms-flex: none;
		flex: none;
		-webkit-align-self: center;
		-ms-flex-item-align: center;
		align-self: center;
		position: relative;
		top: 0;
		background-image: -webkit-gradient(linear, left top, left bottom, from(hsl(213, 89%, 76%)), to(hsl(208, 51%, 42%)));
		background-image: -webkit-linear-gradient(top, hsl(213, 89%, 76%), hsl(208, 51%, 42%));
		background-image: linear-gradient(top, hsl(213, 89%, 76%), hsl(208, 51%, 42%));
		border-color: hsl(208, 51%, 42%);
	}

	#mvpdpicker .watchnowbutton span {
		font-size: x-large;
	}

	/*
		Overrides:
			- zoom in on the 1-2-3
	*/

	@media
	(max-width : 300px)
	{

		#mvpdpicker .steps {
			background-image: url('img/mobile_steps_1.png');
			background-size: 150% auto;
		}

		#mvpdpicker.state-dark .steps,
		#mvpdpicker.state-mvpdlogo .steps,
		#mvpdpicker.state-mvpdlist .steps,
		#mvpdpicker.state-notfound .steps {
			background-image: url('img/mobile_steps_1.png');
		}

		#mvpdpicker.state-remember .steps,
		#mvpdpicker.state-signin .steps,
		#mvpdpicker.state-error  .steps {
			background-image: url('img/mobile_steps_2.png');
		}

		#mvpdpicker.state-success .steps {
			background-image: url('img/mobile_steps_3.png');
		}

	}


	/*
		Overrides:
			- shrink buttons further on find-by-name slate
			- shrink buttons further on remembered slate
	*/

	@media
	(max-width : 520px)
	{

		#mvpdpicker .findbyname button,
		#mvpdpicker .remembered button {
			width: 40%;
			padding: 0.5em 1em;
		}

	}


	/*
		Overrides:
			- remove spinner from view if too small
	*/

	@media
	(orientation : landscape) and (max-height : 300px)
	{

		#mvpdpicker .spinnerbox {
			display: none;
		}

	}


	/*
		Overrides:
			- change size of MVPD logos if view stretches
	*/

	@media
	(max-width : 250px)
	{

		#mvpdpicker .mvpdsbylogo li {
			width: 100%;
		}

	}

	@media
	(min-width : 630px)
	{

		#mvpdpicker .mvpdsbylogo li {
			width: 30%;
		}

	}

	@media
	(min-width : 890px)
	{

		#mvpdpicker .mvpdsbylogo li {
			width: 20%;
		}

	}

	@media
	(min-width : 1260px)
	{

		#mvpdpicker .mvpdsbylogo li {
			width: 10%;
		}

	}

}
