@import url('https://fonts.googleapis.com/css?family=Asap:700');

*, *:before, *:after {
	box-sizing:border-box;
}

html,body{
	width:100%;
	height:100%;
	margin:0;
	font-family:'Asap', Helvetica, Arial ,sans-serif;
	min-height:100%;
}
.share-page{
	background-color:#003;
	text-align:center;
	padding:30px 10vw;
	background-image:url(../images/background.jpg);
	background-repeat:no-repeat;
	background-position:center;
	background-size:cover;
	background-attachment:fixed;
}
canvas{
	display:block;
}
.topleft{
	position:absolute;
	top:0;
	left:0;
}
.topright{
	position:absolute;
	top:0;
	right:0;
}

.inputfile {
	width: 0.1px;
	height: 0.1px;
	opacity: 0;
	overflow: hidden;
	position: absolute;
	z-index: -1;
}

.inputfile + label {
	background-color:#eee;
	width:50px;
	height:50px;
	padding:5px;
    color: white;
    display: block;
	float:left;
    cursor: pointer; /* "hand" cursor */
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.inputfile:focus + label,
.inputfile + label:hover {
    background-color: #c00;
}

.inputfile:focus + label {
	outline: 1px dotted #000;
	outline: -webkit-focus-ring-color auto 5px;
}

.inputfile + label * {
	pointer-events: none;
}

a,a:link,a:visited{
	background-color:#eee;
}
a:hover,a:focus{
	background-color:#c00;
	cursor:pointer;
}
.icon-btn{
	display:block;
	width:50px;
	height:50px;
	padding:5px;
	float:left;
}
.icon-btn.disabled .icon{
	opacity:0.25;
}
.icon-btn.disabled{
	pointer-events:none;
}
.icon-btn.disabled:hover,
.icon-btn.disabled:focus{
	background-color:#eee;
	cursor:default;
}
.icon{
	background-image:url(../images/icon_sprite.png);
	width:40px;
	height:40px;
	display:block;
}
.icon.picture{
	background-position:0 0;
}
.icon.save{
	background-position:-50px 0;
}
.icon.facebook{
	background-position:-100px 0;
}
.icon.twitter{
	background-position:-150px 0;
}

label:hover .icon.picture, label:focus .icon.picture,
a:not(.disabled):hover .icon.picture, a:not(.disabled):focus .icon.picture{
	background-position:0 -50px;
}
a:not(.disabled):hover .icon.save, a:not(.disabled):focus .icon.save{
	background-position:-50px -50px;
}
a:not(.disabled):hover .icon.facebook, a:not(.disabled):focus .icon.facebook{
	background-position:-100px -50px;
}
a:not(.disabled):hover .icon.twitter, a:not(.disabled):focus .icon.twitter{
	background-position:-150px -50px;
}

.share-headline{
	font-size:30px;
	color:#fff;
	text-shadow: 
		0 1px 1px rgba(0,0,0,.1),
		0 0 5px rgba(0,0,0,.1),
		0 1px 3px rgba(0,0,0,.3),
		0 3px 5px rgba(0,0,0,.2),
		0 5px 10px rgba(0,0,0,.25),
		0 10px 10px rgba(0,0,0,.2),
		0 20px 20px rgba(0,0,0,.15);
}
.btn,.btn:link,.btn:visited{
	display:inline-block;
	background-color:#c33;
	color:#fff;
	text-decoration:none;
	padding:10px 15px;
	border-radius:10px;
	box-shadow: 0 1px 0 #990000,
		0 2px 0 #900000,
		0 3px 0 #880000,
		0 4px 0 #800000,
		0 5px 0 #770000,
		0 6px 1px rgba(0,0,0,.1),
		0 0 5px rgba(0,0,0,.1),
		0 1px 3px rgba(0,0,0,.3),
		0 3px 5px rgba(0,0,0,.2),
		0 5px 10px rgba(0,0,0,.25),
		0 10px 10px rgba(0,0,0,.2),
		0 20px 20px rgba(0,0,0,.15);
}
.btn:hover,.btn:focus,.btn:active{
	background-color:#900;
	box-shadow: 0 1px 0 #680000,
		0 2px 0 #600000,
		0 3px 0 #580000,
		0 4px 0 #500000,
		0 5px 0 #480000,
		0 6px 1px rgba(0,0,0,.1),
		0 0 5px rgba(0,0,0,.1),
		0 1px 3px rgba(0,0,0,.3),
		0 3px 5px rgba(0,0,0,.2),
		0 5px 10px rgba(0,0,0,.25),
		0 10px 10px rgba(0,0,0,.2),
		0 20px 20px rgba(0,0,0,.15);
}
.shared-img{
	display:block;
	max-width:100%;
	height:auto;
	margin:10px auto 60px;
	box-shadow: 
		0 1px 1px rgba(0,0,0,.1),
		0 0 5px rgba(0,0,0,.1),
		0 1px 3px rgba(0,0,0,.3),
		0 3px 5px rgba(0,0,0,.2),
		0 5px 10px rgba(0,0,0,.25),
		0 10px 10px rgba(0,0,0,.2),
		0 20px 20px rgba(0,0,0,.15);
}

#loading-overlay{
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	z-index:10;
	background-color:rgba(0,0,0,0.5);
	color:#fff;
	text-align:center;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}
#loading-overlay:not(.isLoading){
	display: none;
}
#loading-overlay-text{
	width:50vw;
	height:18px;
	font-size:18px;
	margin:auto;
}
@media (min-width: 768px){
	#loading-overlay-text{
		height:30px;
		font-size:30px;
	}
	.share-headline{
		font-size:42px;
	}
}
