﻿body
{
	font-size:16px;
	font-family:helvetica, arial, sans-serif;
}
*
{
	box-sizing:border-box;
}

h1
{
	text-align:center;
	margin-top:20px;
	margin-bottom:0;
	padding:0;
}

footer
{
	margin-top:20px;
	text-align:center;
}

a
{
	color:#6391b1;
	text-decoration:underline;
}

.mp-app-container
{
	width:700px;

	margin-left:auto;
	margin-right:auto;
	padding-top:20px;
	padding-bottom:20px;
	
	
}
.col-left
{
	float:left;
	49%;
}

.col-right
{
	float:left;
	49%;
	margin-left:2%;
}

.mp-container
{
	width:300px;
	height:300px;
	position:relative;
}

.mp-screenframeborder
{
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:10%;
	background-color:#ed964b;
	transform: rotate(-3deg);
}

.mp-screenframe
{
	position:absolute;
	background-color:#fef7ef;
	top:9%;
	bottom:9%;
	left:7.5%;
	right:7.5%;
	
}

.mp-eyes
{
	position:absolute;
	bottom:66%;
	left:7%;
	right:5%;
	height:16%;
	
}

.mp-eye-left, .mp-eye-right
{
	position:absolute;
	top:5%;
	bottom:5%;
	width:27%;
	left:10%;
	background-color:#edc3a8;
}

.mp-eye-right
{
	left:auto;
	right:10%;
}

.mp-eye-pupil
{
	position:absolute;
	top:10%;
	height:60%;
	width:30%;
	left:60%;
	background-color:#be744c;
	transition: left 0.2s ease-in-out;
}



.mp-mouth
{
	position:absolute;
	bottom:13%;
	left:30%;
	width:30%;
	height:15%;
	
}

.mp-mouth-1
{
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	height:66%;
	background-color:#ed964b;
}

.mp-mouth-2
{
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	width:40%;
	background-color:#ed964b;
}




.mp-stand
{
	position:absolute;
	bottom:-12%;
	height:30%;
	width:60%;
	left:20%;
	overflow:hidden;
	transform: scaleY(0.4);
}

.mp-stand-1
{
	position: absolute;
	top:70%;
	left: 0;
	background-color: #ed964b;
	padding-bottom: 50%;
	width: 57.7%;
	z-index: -1;
	transform-origin: 0 0;
	transform: rotate(-30deg) skewX(30deg);
}


.mp-stand-2
{
	position:absolute;
	bottom:0;
	height:30%;
	width:100%;
	left:0;
	background-color:#ed964b;
}


/*speech bubble*/
.speech-bubble-container
{
	margin-top:20px;
	margin-left:30px;
	width:350px;
	height:200px;
	position:relative;
}

.speech-bubble-1
{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background-color:#fff;
	border-radius:20px;
	border:3px solid #ed964b;
	box-shadow:0 0 15px 0 rgba(0,0,0,0.3);
}


.speech-bubble-1:after
{
	content:"";
	position: absolute;
	top:33%;
	left: -8%;
	background-color: #ed964b;
	padding-bottom: 10%;
	width: 17.7%;
	border:3px solid #ed964b;
	z-index: -1;
	transform-origin: 0 0;
	transform: rotate(-30deg) skewX(30deg);
}

.mp-text-to-speak
{
	width:90%;
	margin-left:5%;
	margin-top:5%;
	height:68%;
	border:none;
	outline:none;
	font-size:1rem;
	font-family:helvetica, arial, sans-serif;
	resize:none;
}

.mp-speak-button-container
{
	position:absolute;
	right:5%;
	left:5%;
	height:20%;
	bottom:5%;
	text-align:right;
}

.mp-speak-button
{
	background-color: #ed964b; /* Green */
	border: none;
	border-radius:3px;
	color: #fff;
	font-weight:bold;
	outline:none;
	padding: 3% 6%;
	text-align: center;
	text-decoration: none;
	display: inline-block;
	font-size: 1rem;
}

.mp-speak-button:disabled {
    opacity: 0.3;
}


.mp-reflection
{
	height:150px;
	overflow:hidden;
	margin-top:10px;
	
	position:relative;
}

.mp-reflection .mp-container
{
	margin-top:10px;
	transform:rotate(180deg) scaleX(-1);
	opacity:0.2;
}

.mp-reflection:after
{
	content:"";
	display:block;
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	top:0;
	background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
}


/*animations*/
@keyframes mp-ani-speech-mouth {
	0%	{transform: scaleY(0.6) scaleX(1) rotate(0deg);}
	25%	{transform: scaleY(0.8) scaleX(0.8) rotate(10deg);}
	50%	{transform: scaleY(1) scaleX(0.6) rotate(0deg);}
	75%	{transform: scaleY(0.8) scaleX(0.8) rotate(-10deg);}
	100%	{transform: scaleY(0.6) scaleX(1) rotate(0deg);}
}

@keyframes mp-ani-shake {
	0%	{transform: rotate(-3deg);}
	
	50%	{transform: rotate(-6deg);}
	
	100%	{transform: rotate(-3deg);}
}

@keyframes mp-ani-blink {
	0%	{height: 16%;}
	
	50%	{height:3%;}
	
	100% {height:16%;}
}



/*settings*/
.mp-settings
{
	margin-top:20px;
	margin-left:30px;
}
.mp-settings-1, .mp-settings-2
{
	list-style-type:none;
	margin: 0;
	padding: 0;
}

.mp-settings-2
{
	margin-top:10px;
}

.mp-settings-2 li
{
	padding-left:20px;
}

#volumeslider
{
	margin-top:20px;
	width:200px;
}


/*speaking*/
body.speaking .mp-mouth
{
	animation: mp-ani-speech-mouth 0.7s ease-in-out infinite;
}

body.anishake .mp-screenframeborder
{
	animation: mp-ani-shake 0.7s ease-in-out 3;
	
}
body.aniblink1 .mp-eyes
{
	animation: mp-ani-blink 0.4s ease-in-out 1;
}
body.aniblink2 .mp-eyes
{
	animation: mp-ani-blink 0.4s ease-in-out 2;
}


body.anishake .mp-eye-pupil
{
	left:35%;
	transition: left 0.2s ease-in-out;
}

body.speaking .mp-eye-pupil
{
	left:35%;
	transition: left 0.2s ease-in-out;
}

body.speaking .mp-speak-button
{
	color:rgba(255,255,255,0.5);
}

.mp-start-singing
{
	z-index:99999;
	position:absolute;
	left:0;
	right:0;
	top:50px;
	text-align:center;
}

.mp-start-singing a 
{
	font-weight:bold;
}

.speaker
{
	background:url(./pics/speaker.png) center center no-repeat;
	background-size:contain;
	width:20px;
	height:20px;
	margin-top:16px;
	float:left;
	margin-right:10px;
}

#volumeslider
{
	float:left;
}

#mp-char-counter
{
	position:absolute;
	left:0%;
	
	bottom:9%;
	text-align:left;
	color:#808080;
	font-size:0.833rem;
}

#mp-char-counter.mp-charlimit-exceeded
{
	color:#a04040;
}