@charset "UTF-8";

/*!
 * based on
 * reveal.js
 * http://lab.hakim.se/reveal-js
 * MIT licensed
 *
 * Copyright (C) 2011-2013 Hakim El Hattab, http://hakim.se
 * 2013 Simon Haeussler, http://www.mellowdesign.com
 *
 * ==Color table:
 * =Progress bar:
 * Grey: #5A5A5A
 * Green: #89C540
 * Red: #D22026
 */

/** Reset **/
html, body, div, span,h1, h2, h3, h4, h5, h6, p, a, em, font, img, strong,
b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
body {
	line-height: 1;
}
ol, ul {
	margin-bottom: 0px;
	padding-bottom: 0px;
}
ul {
	list-style: none;
}
:focus {
	outline: 0;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
h1 {
	font-size: 25px;
}
h2 {
	font-size: 23px;
}
h3 {
	font-size: 21px;
}
h4 {
	font-size: 19px;
}
h5 {
	font-size: 17px;
}
h6 {
	font-size: 15px;
}

html,
body {
	width: 100%;
	height: 100%;
	overflow: hidden;
}

body {
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
	background: #282827;
	position: relative;
	line-height: 1;
	font-family: "Helvetica", "Helvetica Neue", "Arial", sans-serif;
	filter:alpha(opacity=100); 	/* 									   */
	opacity:1.0;				/* kantenglattung fur ie7 deaktivieren */
}

/** General **/

a:link,
a:visited {
	text-decoration: none;
}

.app-head {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 80px;
	line-height: 80px;
	color: #FFF;
	background: transparent url('../Images/ButtonSprite.png') repeat-x 0 0;
	border-bottom: 1px solid #000;
	z-index: 100;
	box-shadow: 0 3px 5px rgba(0,0,0,0.6);
}

.app-head h1 {
	text-align: center;
	font-weight: normal;
	font-size: 26px;
	text-shadow: rgba(0,0,0,0.6) 0 1px 0;
}

.app-head .head-button {
	cursor: pointer;
	position: absolute;
	text-shadow: rgba(0,0,0,0.6) 0 1px 0;
	display: block;
	top: 12px;
	color: #FFF;
	font-size: 24px;
	font-weight: bold;
	margin: 0 20px;
	line-height: 54px;
	padding: 0 15px;
	border: 1px solid #8E0000;
	border-radius: 5px;
/*	-webkit-box-shadow: 0 1px 0 rgba(255,255,255,0.4);
	-moz-box-shadow: 0 1px 0 rgba(255,255,255,0.4);
	-ms-box-shadow: 0 1px 0 rgba(255,255,255,0.4);
	box-shadow: 0 1px 0 rgba(255,255,255,0.4);*/
	background: transparent url('../Images/ButtonSprite.png') repeat-x 0 -300px;
	outline: none;
	overflow: hidden;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.app-head .head-button:hover {
	background-position: 0 -400px;
}

.app-head .button-prev {
	left: 0;
	height: 54px;
}

.app-head .button-logout {
	right: 0;
	height: 54px;
}

.app-head .button-stats span {
	display: block;
	width: 33px;
	height: 34px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -17px;
	margin-left: -16px;
	text-indent: -99em;
	overflow: hidden;
	background: transparent url('../Images/MainSprite.png') no-repeat -1450px -850px;
}

.app-head .button-close span {
	background-position: -1550px -850px;
}

.app-head .button-stats {
	width: 33px;
	height: 54px;
	right: 0;
}

.tx-flashcards {
	background: transparent url('../Images/Background.png') no-repeat fixed 0 0;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-ms-background-size: cover;
	background-size: cover;
}

.tx-flashcards,
#c11018,
#c11063,
#c12642 {
	width: 100%;
	height: 100%;
}

.tx-flashcards {
	overflow: hidden;
}

#flashcards li {
	display: block;
}

.card-container {
	position: relative;
	-webkit-perspective-origin: 50% 50%;
	   -moz-perspective-origin: 50% 50%;
	    -ms-perspective-origin: 50% 50%;
	        perspective-origin: 50% 50%;
	-webkit-perspective: 800px;
	   -moz-perspective: 800px;
	    -ms-perspective: 800px;
	        perspective: 800px;
}

.card {
	width: 100%;
	height: 100%;
	position: absolute;
	-webkit-transform-style: preserve-3d;
	-moz-transform-style: preserve-3d;
	-ms-transform-style: preserve-3d;
	transform-style: preserve-3d;
	-webkit-transition: all 1s;
	-moz-transition: all 1s;
	-ms-transition: all 1s;
	transition: all 1s;
}

.card figure {
	margin: 0;
	display: block;
	text-align: left;
	position: absolute;
	width: 100%;
	height: 100%;
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	-ms-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transition: all 1s;
	-moz-transition: all 1s;
	-ms-transition: all 1s;
	transition: all 1s;
	color: #000;
	max-height: 920px;
	image-rendering: optimizeSpeed;
}

.tooltip {
	display: none;
	position: absolute;
	text-align: left;
	color: #FFF;
	font-size: 22px;
	opacity: 0.8;
	line-height: 1.4;
	background: #282827;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

.tooltip-right:before  {
    border: solid;
    border-color: transparent #282827;
    border-width: 12px 0 12px 12px;
    right: -11px;
    top: 15px;
    content: "";
    position: absolute;
    z-index: 99;
}

.tooltip-left:before  {
    border: solid;
    border-color: transparent #282827;
    border-width: 12px 12px 12px 0;
    left: -11px;
    top: 15px;
    content: "";
    position: absolute;
    z-index: 99;
}

body.user-first-card #tooltip-flip {
	display: block;
	top: 240px;
	right: -30px;
	width: 280px;
}

body.user-first-flip .flipped #tooltip-correct {
	display: block;
	top: 190px;
	right: 20px;
	width: 280px;
}

.card .card-head {
	display: block;
	line-height: 60px;
	height: 55px;
	overflow: hidden;
	padding: 0 50px;
	text-align: center;
	margin-bottom: 20px;
}

.card p {
	padding: 10px 20px;
	margin-bottom: 0;
}

.card .front .card-head {
}

.card .card-inner {
	font-size: 24px;
	line-height: 40px;
	padding: 10px 20px;
	max-height: 360px;
	overflow: hidden;
}

.card-container {
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	cursor: pointer;
}

.present .card .card-inner {
	max-height: none;
	overflow: visible;
}

/* Android hack to disable autofit */
.card .card-inner p {
	background: url('');
}

.card .front,
.card .back {
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	-ms-backface-visibility: hidden;
	backface-visibility: hidden;
}

.card .front {
	background: transparent url('../Images/MainSprite.png') no-repeat 0 0;
	-webkit-transform: rotateY( 0deg );
	-moz-transform: rotateY( 0deg );
	-ms-transform: rotateY( 0deg );
	transform: rotateY( 0deg );
}

.card .back {
	background: transparent url('../Images/MainSprite.png') no-repeat -710px top;
	-webkit-transform: rotateY( -180deg );
	-moz-transform: rotateY( -180deg );
	-ms-transform: rotateY( -180deg );
	transform: rotateY( -180deg );
}

.flipped .front {
	-webkit-transform: rotateY( 180deg );
	-moz-transform: rotateY( 180deg );
	-ms-transform: rotateY( 180deg );
	transform: rotateY( 180deg );
}

.flipped .back {
	-webkit-transform: rotateY( 0deg );
	-moz-transform: rotateY( 0deg );
	-ms-transform: rotateY( 0deg );
	transform: rotateY( 0deg );
}

/*.flipped .card .back {
	-webkit-transform: rotateY( 0deg );
	-moz-transform: rotateY( 0deg );
	-ms-transform: rotateY( 0deg );
	transform: rotateY( 0deg );
}

.flipped .card .front {
	-webkit-transform: rotateY( 180deg );
	-moz-transform: rotateY( 180deg );
	-ms-transform: rotateY( 180deg );
	transform: rotateY( 180deg );
}*/

.select-category {
	margin: 108px 20px 20px 20px;
}

.select-category li {
	list-style: none;
	margin: 0 0 20px 0;
}

.select-category a {
	display: block;
	position: relative;
	font-size: 33px;
	font-weight: bold;
	padding: 0 25px;
	height: 99px;
	line-height: 102px;
	text-align: left;
	color: #000;
	border-radius: 10px;
	background: transparent url('../Images/ButtonSprite.png') repeat-x 0 -599px;
	box-shadow: 0 5px 5px rgba(0,0,0,0.6);
}

.select-category a:hover {
	background-position: 0 -749px;
}

.select-category span.arrow {
	display: block;
	margin-top: -11px;
	position: absolute;
	right: 30px;
	top: 50%;
	width: 16px;
	height: 23px;
	background: transparent url('../Images/MainSprite.png') no-repeat -1450px -650px;
}

.select-category .stats {
	display: block;
	position: absolute;
	font-size: 24px;
	color: #424242;
	top: 0;
	font-weight: normal;
	right: 80px;
	overflow: hidden;
}

.select-category .stats.all-known {
	top: 50%;
	margin-top: -15px;
	width: 38px;
	height: 30px;
	text-indent: -99em;
	background: transparent url('../Images/MainSprite.png') no-repeat -1450px -750px;
}

 .category-wrapper,
 .login-wrapper {
 	width: 100%;
 	height: 100%;
 }

 .login-wrapper {
 	padding-top: 140px;
 }

 .flashcards,
 .category-wrapper,
 .login-wrapper {
 	overflow-x: hidden;
 	overflow-y: scroll;
 	-webkit-overflow-scrolling: touch;
 	-moz-overflow-scrolling: touch;
 	-ms-overflow-scrolling: touch;
 	overflow-scrolling: touch;
 }

.flashcard-error {
  padding-top: 140px;
}

.flashcard-error > p {
  padding: 0 0 0 0;
  margin: 0 auto 0 auto;
  width: 690px;
  text-align: center;
  font-size: 24px;
  color: #838383;
}

/*
 ::-webkit-scrollbar {
    display: none;
}
*/
::selection {
	/*
	background: #FF5E99;
	color: #fff;
	text-shadow: none;
	*/
}

/* Login form style */
.login-wrapper > form {
	padding: 0 0 0 0;
	margin: 0 auto 0 auto;
	width: 690px;
	text-align: center;
	font-size: 24px;
	color: #838383;
}

.login-wrapper > form > p {
	margin-bottom: 20px;
}

.login-wrapper a {
	color: #838383;
}

.login-wrapper a:hover {
	color: #AFAFAF;
}

.login-wrapper > form > fieldset {
	text-align: left;
}

.login-wrapper input[type=text],
.login-wrapper input[type=password] {
	height: 24px;
	width: 97%;
	line-height: 1;
	font-size: 32px;
	color: #838383;
	padding: 17px 20px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	border: 3px solid #D0D0D0;
	border-width: 3px 0 0 0;
}

.login-wrapper input.error[type=text],
.login-wrapper input.error[type=password] {
	border-bottom-color: red;
	border-bottom-width: 3px;
}

.login-wrapper ol {
	margin: 0;
}

.login-wrapper ol li {
	list-style: none;
	margin: 0 0 25px 0;
}

.login-wrapper .half {
	float: left;
	width: 50%;
}

.login-wrapper .button {
	display: block;
	font-size: 24px;
	font-weight: bold;
	padding: 0 20px;
	height: 79px;
	line-height: 78px;
	text-align: center;
	color: #000;
	border-radius: 10px;
	background: transparent url('../Images/ButtonSprite.png') repeat-x 0 -99px;
	box-shadow: 0 5px 5px rgba(0,0,0,0.6);
	border: none;
	cursor: pointer;
	width: 310px;
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
}

.login-wrapper .button.error {
	color: red;
}

.login-wrapper .button:hover {
	background-position: 0 -199px;
	color: #000;
}

.login-wrapper .disabled {
	cursor: default;
	color: grey;
	box-shadow: 0 1px 1px rgba(0,0,0,0.6);
}

.login-wrapper .disabled:hover {
	background-position: 0 -99px;
}

.login-wrapper .half .button {
	margin-right: 15px;
}

.login-wrapper .last .button {
	margin-left: 15px;
	margin-right: 0;
}

.login-notification {
	color: #FFF;
}

.forgot-password a {
	color: #FFF;
	text-decoration: underline;
}

.forgot-password a:hover {
	text-decoration: none;
}

/*********************************************
 * HEADERS
 *********************************************/

.flashcards h1,
.flashcards h2,
.flashcards h3,
.flashcards h4,
.flashcards h5,
.flashcards h6 {
	-webkit-hyphens: auto;
	   -moz-hyphens: auto;
	        hyphens: auto;

	word-wrap: break-word;
}


/*********************************************
 * VIEW FRAGMENTS
 *********************************************/

.flashcards .cards section .fragment {
	opacity: 0;

	-webkit-transition: all .2s ease;
	   -moz-transition: all .2s ease;
	    -ms-transition: all .2s ease;
	     -o-transition: all .2s ease;
	        transition: all .2s ease;
}
	.flashcards .cards section .fragment.visible {
		opacity: 1;
	}

.flashcards .cards section .fragment.grow {
	opacity: 1;
}
	.flashcards .cards section .fragment.grow.visible {
		-webkit-transform: scale( 1.3 );
		   -moz-transform: scale( 1.3 );
		    -ms-transform: scale( 1.3 );
		     -o-transform: scale( 1.3 );
		        transform: scale( 1.3 );
	}

.flashcards .cards section .fragment.shrink {
	opacity: 1;
}
	.flashcards .cards section .fragment.shrink.visible {
		-webkit-transform: scale( 0.7 );
		   -moz-transform: scale( 0.7 );
		    -ms-transform: scale( 0.7 );
		     -o-transform: scale( 0.7 );
		        transform: scale( 0.7 );
	}

.flashcards .cards section .fragment.roll-in {
	opacity: 0;

	-webkit-transform: rotateX( 90deg );
	   -moz-transform: rotateX( 90deg );
	    -ms-transform: rotateX( 90deg );
	     -o-transform: rotateX( 90deg );
	        transform: rotateX( 90deg );
}
	.flashcards .cards section .fragment.roll-in.visible {
		opacity: 1;

		-webkit-transform: rotateX( 0 );
		   -moz-transform: rotateX( 0 );
		    -ms-transform: rotateX( 0 );
		     -o-transform: rotateX( 0 );
		        transform: rotateX( 0 );
	}

.flashcards .cards section .fragment.fade-out {
	opacity: 1;
}
	.flashcards .cards section .fragment.fade-out.visible {
		opacity: 0;
	}

.flashcards .cards section .fragment.highlight-red,
.flashcards .cards section .fragment.highlight-green,
.flashcards .cards section .fragment.highlight-blue {
	opacity: 1;
}
	.flashcards .cards section .fragment.highlight-red.visible {
		color: #ff2c2d
	}
	.flashcards .cards section .fragment.highlight-green.visible {
		color: #17ff2e;
	}
	.flashcards .cards section .fragment.highlight-blue.visible {
		color: #1b91ff;
	}


/*********************************************
 * DEFAULT ELEMENT STYLES
 *********************************************/

/* Fixes issue in Chrome where italic fonts did not appear when printing to PDF */
.flashcards:after {
  content: '';
  font-style: italic;
}

/* Ensure certain elements are never larger than the slide itself */
.flashcards img,
.flashcards video,
.flashcards iframe {
	max-width: 100%;
	max-height: 100%;
}

/** Prevents layering issues in certain browser/transition combinations */
.flashcards a {
	position: relative;
}

.flashcards strong,
.flashcards b {
	font-weight: bold;
}

.flashcards em,
.flashcards i {
	font-style: italic;
}

.flashcards ol,
.flashcards ul {
	display: inline-block;

	text-align: left;
	margin: 0 0 0 1em;
}

.flashcards ol {
	list-style-type: decimal;
}

.flashcards ul {
	list-style-type: disc;
}

.flashcards ul ul {
	list-style-type: square;
}

.flashcards ul ul ul {
	list-style-type: circle;
}

.flashcards ul ul,
.flashcards ul ol,
.flashcards ol ol,
.flashcards ol ul {
	display: block;
	margin-left: 40px;
}

.flashcards p {
	margin-bottom: 10px;
}

.flashcards q,
.flashcards blockquote {
	quotes: none;
}

.flashcards blockquote {
	display: block;
	position: relative;
	width: 70%;
	margin: 5px auto;
	padding: 5px;

	font-style: italic;
	background: rgba(255, 255, 255, 0.05);
	box-shadow: 0px 0px 2px rgba(0,0,0,0.2);
}
	.flashcards blockquote p:first-child,
	.flashcards blockquote p:last-child {
		display: inline-block;
	}
	.flashcards blockquote:before {
		content: '\201C';
	}
	.flashcards blockquote:after {
		content: '\201D';
	}

.flashcards q {
	font-style: italic;
}
	.flashcards q:before {
		content: '\201C';
	}
	.flashcards q:after {
		content: '\201D';
	}

.flashcards pre {
	display: block;
	position: relative;
	width: 90%;
	margin: 15px auto;

	text-align: left;
	font-family: monospace;

	word-wrap: break-word;

	box-shadow: 0px 0px 6px rgba(0,0,0,0.3);
}
.flashcards pre code {
	padding: 5px;
}

.flashcards code {
	font-family: monospace;
	overflow: auto;
	max-height: 400px;
}

.flashcards table th,
.flashcards table td {
	text-align: left;
	padding-right: .3em;
}

.flashcards table th {
	text-shadow: rgb(255,255,255) 1px 1px 2px;
}

.flashcards sup {
	vertical-align: super;
}
.flashcards sub {
	vertical-align: sub;
}

.flashcards small {
	display: inline-block;
	font-size: 0.8em;
	vertical-align: top;
}

.flashcards small * {
	vertical-align: top;
}


/*********************************************
 * CONTROLS
 *********************************************/

.flashcards .controls {
	display: none;
	z-index: 50;
}

.flashcards .controls div {
	position: fixed;
	z-index: 51;
	opacity: 0.1;
	width: 130px;
	height: 100%;
	top: 0;
	outline: none;

	-webkit-transition: opacity 0.2s ease;
	   -moz-transition: opacity 0.2s ease;
	    -ms-transition: opacity 0.2s ease;
	     -o-transition: opacity 0.2s ease;
	        transition: opacity 0.2s ease;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.flashcards .controls a {
	outline: none;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.flashcards .controls div.enabled {
	opacity: 1.0;
	cursor: pointer;
}

.flashcards .controls span {
	color: #FFF;
	height: 60px;
	font-size: 60px;
	display: block;
	position: fixed;
	top: 330px;
	margin: -30px 20px 20px 20px;
}

.flashcards .controls div:hover a {
	margin: -29px 19px 20px 21px;
}

.flashcards .controls div.enabled:active {
}

.flashcards .controls div.navigate-left,
.flashcards .controls div.card-unknown {
	left: 0;
}

.flashcards .controls div.navigate-left span,
.flashcards .controls div.card-unknown span {
	left: 20px;
}

.flashcards .controls div.navigate-right,
.flashcards .controls div.card-known {
	right: 20px;
}

.flashcards .controls div.card-known,
.flashcards .controls div.card-unknown {
	display: none;
}

.flashcards .controls div.card-known.enabled,
.flashcards .controls div.card-unknown.enabled {
	display: block;
}

.flashcards .controls div.navigate-right span,
.flashcards .controls div.card-known span {
	right: 20px;
}

.flashcards .controls div.navigate-up {
	top: 0;
}

.flashcards .controls div.navigate-down {
	top: auto;
	bottom: 0;
}

.flashcards .controls div.navigate-left span,
.flashcards .controls div.navigate-right span,
.flashcards .controls div.card-known span,
.flashcards .controls div.card-unknown span {
	width: 42px;
	height: 65px;
	background: transparent url('../Images/MainSprite.png') no-repeat -1450px -450px;
	overflow: hidden;
	text-indent: -99em;
}

.flashcards .controls div.navigate-right span {
	background-position: -1450px -550px;
}

.flashcards .controls div.navigate-stats span {
	background-position: -1550px -550px;
}

.flashcards .controls div.card-known span,
.flashcards .controls div.card-unknown span {
	top: 310px;
	width: 105px;
	height: 100px;
}

.flashcards .controls div.card-known span {
	right: 0;
	background-position: -1450px -950px;
}

.flashcards .controls div.card-unknown span {
	left: 0;
	background-position: -1450px -1100px;
}

.flashcards .controls div.hidden {
	display: none;
}


/*********************************************
 * PROGRESS BAR
 *********************************************/

.flashcards .progress {
	position: fixed;
	display: none;
	height: 7px;
	width: 100%;
	margin: 0;
	top: 81px;
	left: 0;
	z-index: 90;
	overflow: hidden;
	background-color: #5A5A5A;
}
	.flashcards .progress:after {
		content: '';
		display: 'block';
		position: absolute;
		height: 20px;
		width: 100%;
		top: -20px;
	}
	.flashcards .progress span {
		display: block;
		height: 100%;
		width: 0px;
		background-color: #FFFFFF;

		-webkit-transition: width 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
		   -moz-transition: width 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
		    -ms-transition: width 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
		     -o-transition: width 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
		        transition: width 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
	}
	.flashcards .progress li {
		display: block;
		float: left;
		height: 100%;
		background-color: #5A5A5A;
	}
	.flashcards .progress li.known {
		background-color: #89C540;
	}
	.flashcards .progress li.unknown {
		background-color: #D22026;
	}

.flashcards .known-progress {
	position: fixed;
	display: none;
	height: 7px;
	width: 100%;
	margin: 0;
	top: 81px;
	left: 0;
	z-index: 91;
	overflow: hidden;
}
	.flashcards .known-progress:after {
		content: '';
		display: 'block';
		position: absolute;
		height: 20px;
		width: 100%;
		top: -20px;
	}
	.flashcards .known-progress span {
		display: block;
		height: 100%;
		width: 0px;
		background-color: #69B426;

		-webkit-transition: width 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
		   -moz-transition: width 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
		    -ms-transition: width 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
		     -o-transition: width 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
		        transition: width 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
	}

/*********************************************
 * SLIDES
 *********************************************/

.flashcards {
	position: relative;
	width: 100%;
	height: 100%;
}

.flashcards .cards {
	z-index: 8;
	position: absolute;
	left: 50%;
	margin-top: 88px;
	margin-left: -350px;

	overflow: visible;
	text-align: center;

	-webkit-transition: -webkit-perspective .4s ease;
	   -moz-transition: -moz-perspective .4s ease;
	    -ms-transition: -ms-perspective .4s ease;
	     -o-transition: -o-perspective .4s ease;
	        transition: perspective .4s ease;

	-webkit-perspective: 600px;
	   -moz-perspective: 600px;
	    -ms-perspective: 600px;
	        perspective: 600px;

	-webkit-perspective-origin: 0px -100px;
	   -moz-perspective-origin: 0px -100px;
	    -ms-perspective-origin: 0px -100px;
	        perspective-origin: 0px -100px;
}

.flashcards .cards>section,
.flashcards .cards>section>section {
	display: none;
	position: absolute;
	width: 100%;
	padding: 25px 0px;

	z-index: 9;
	font-weight: normal;

	-webkit-transform-style: preserve-3d;
	   -moz-transform-style: preserve-3d;
	    -ms-transform-style: preserve-3d;
	        transform-style: preserve-3d;

	-webkit-transition: -webkit-transform-origin 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
						-webkit-transform 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
	                    visibility 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
	                    opacity 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
	   -moz-transition: -moz-transform-origin 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
	   					-moz-transform 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
	                    visibility 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
	                    opacity 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
	    -ms-transition: -ms-transform-origin 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
	    				-ms-transform 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
	                    visibility 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
	                    opacity 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
	     -o-transition: -o-transform-origin 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
	     				-o-transform 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
	                    visibility 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
	                    opacity 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
	        transition: transform-origin 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
	        			transform 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
	                    visibility 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
	                    opacity 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
}

.flashcards .cards>section {
	width: 700px;
}

.flashcards .cards>section.stack {
	padding-top: 0;
	padding-bottom: 0;
}

.flashcards .cards>section.present,
.flashcards .cards>section>section.present {
	display: block;
	z-index: 11;
	opacity: 1;
}

.flashcards.center,
.flashcards.center .cards,
.flashcards.center .cards section {
	min-height: auto !important;
}



/*********************************************
 * DEFAULT TRANSITION
 *********************************************/

.flashcards .cards>section.past {
	display: block;
	opacity: 0;

	-webkit-transform: translate3d(-100%, 0, 0) rotateY(-90deg) translate3d(-100%, 0, 0);
	   -moz-transform: translate3d(-100%, 0, 0) rotateY(-90deg) translate3d(-100%, 0, 0);
	    -ms-transform: translate3d(-100%, 0, 0) rotateY(-90deg) translate3d(-100%, 0, 0);
	        transform: translate3d(-100%, 0, 0) rotateY(-90deg) translate3d(-100%, 0, 0);
}
.flashcards .cards>section.future {
	display: block;
	opacity: 0;

	-webkit-transform: translate3d(100%, 0, 0) rotateY(90deg) translate3d(100%, 0, 0);
	   -moz-transform: translate3d(100%, 0, 0) rotateY(90deg) translate3d(100%, 0, 0);
	    -ms-transform: translate3d(100%, 0, 0) rotateY(90deg) translate3d(100%, 0, 0);
	        transform: translate3d(100%, 0, 0) rotateY(90deg) translate3d(100%, 0, 0);
}

.flashcards .cards>section>section.past {
	display: block;
	opacity: 0;

	-webkit-transform: translate3d(0, -300px, 0) rotateX(70deg) translate3d(0, -300px, 0);
	   -moz-transform: translate3d(0, -300px, 0) rotateX(70deg) translate3d(0, -300px, 0);
	    -ms-transform: translate3d(0, -300px, 0) rotateX(70deg) translate3d(0, -300px, 0);
	        transform: translate3d(0, -300px, 0) rotateX(70deg) translate3d(0, -300px, 0);
}
.flashcards .cards>section>section.future {
	display: block;
	opacity: 0;

	-webkit-transform: translate3d(0, 300px, 0) rotateX(-70deg) translate3d(0, 300px, 0);
	   -moz-transform: translate3d(0, 300px, 0) rotateX(-70deg) translate3d(0, 300px, 0);
	    -ms-transform: translate3d(0, 300px, 0) rotateX(-70deg) translate3d(0, 300px, 0);
	        transform: translate3d(0, 300px, 0) rotateX(-70deg) translate3d(0, 300px, 0);
}


/*********************************************
 * CONCAVE TRANSITION
 *********************************************/

.flashcards.concave  .cards>section.past {
	-webkit-transform: translate3d(-100%, 0, 0) rotateY(90deg) translate3d(-100%, 0, 0);
	   -moz-transform: translate3d(-100%, 0, 0) rotateY(90deg) translate3d(-100%, 0, 0);
	    -ms-transform: translate3d(-100%, 0, 0) rotateY(90deg) translate3d(-100%, 0, 0);
	        transform: translate3d(-100%, 0, 0) rotateY(90deg) translate3d(-100%, 0, 0);
}
.flashcards.concave  .cards>section.future {
	-webkit-transform: translate3d(100%, 0, 0) rotateY(-90deg) translate3d(100%, 0, 0);
	   -moz-transform: translate3d(100%, 0, 0) rotateY(-90deg) translate3d(100%, 0, 0);
	    -ms-transform: translate3d(100%, 0, 0) rotateY(-90deg) translate3d(100%, 0, 0);
	        transform: translate3d(100%, 0, 0) rotateY(-90deg) translate3d(100%, 0, 0);
}

.flashcards.concave  .cards>section>section.past {
	-webkit-transform: translate3d(0, -80%, 0) rotateX(-70deg) translate3d(0, -80%, 0);
	   -moz-transform: translate3d(0, -80%, 0) rotateX(-70deg) translate3d(0, -80%, 0);
	    -ms-transform: translate3d(0, -80%, 0) rotateX(-70deg) translate3d(0, -80%, 0);
	        transform: translate3d(0, -80%, 0) rotateX(-70deg) translate3d(0, -80%, 0);
}
.flashcards.concave  .cards>section>section.future {
	-webkit-transform: translate3d(0, 80%, 0) rotateX(70deg) translate3d(0, 80%, 0);
	   -moz-transform: translate3d(0, 80%, 0) rotateX(70deg) translate3d(0, 80%, 0);
	    -ms-transform: translate3d(0, 80%, 0) rotateX(70deg) translate3d(0, 80%, 0);
	        transform: translate3d(0, 80%, 0) rotateX(70deg) translate3d(0, 80%, 0);
}


/*********************************************
 * ZOOM TRANSITION
 *********************************************/

.flashcards.zoom .cards>section.past {
	opacity: 0;
	visibility: hidden;

	-webkit-transform: scale(16);
	   -moz-transform: scale(16);
	    -ms-transform: scale(16);
	     -o-transform: scale(16);
	        transform: scale(16);
}
.flashcards.zoom .cards>section.future {
	opacity: 0;
	visibility: hidden;

	-webkit-transform: scale(0.2);
	   -moz-transform: scale(0.2);
	    -ms-transform: scale(0.2);
	     -o-transform: scale(0.2);
	        transform: scale(0.2);
}

.flashcards.zoom .cards>section>section.past {
	-webkit-transform: translate(0, -150%);
	   -moz-transform: translate(0, -150%);
	    -ms-transform: translate(0, -150%);
	     -o-transform: translate(0, -150%);
	        transform: translate(0, -150%);
}
.flashcards.zoom .cards>section>section.future {
	-webkit-transform: translate(0, 150%);
	   -moz-transform: translate(0, 150%);
	    -ms-transform: translate(0, 150%);
	     -o-transform: translate(0, 150%);
	        transform: translate(0, 150%);
}


/*********************************************
 * LINEAR TRANSITION
 *********************************************/

.flashcards.linear .cards>section.past {
	-webkit-transform: translate(-150%, 0);
	   -moz-transform: translate(-150%, 0);
	    -ms-transform: translate(-150%, 0);
	     -o-transform: translate(-150%, 0);
	        transform: translate(-150%, 0);
}
.flashcards.linear .cards>section.future {
	-webkit-transform: translate(150%, 0);
	   -moz-transform: translate(150%, 0);
	    -ms-transform: translate(150%, 0);
	     -o-transform: translate(150%, 0);
	        transform: translate(150%, 0);
}

.flashcards.linear .cards>section>section.past {
	-webkit-transform: translate(0, -150%);
	   -moz-transform: translate(0, -150%);
	    -ms-transform: translate(0, -150%);
	     -o-transform: translate(0, -150%);
	        transform: translate(0, -150%);
}
.flashcards.linear .cards>section>section.future {
	-webkit-transform: translate(0, 150%);
	   -moz-transform: translate(0, 150%);
	    -ms-transform: translate(0, 150%);
	     -o-transform: translate(0, 150%);
	        transform: translate(0, 150%);
}


/*********************************************
 * CUBE TRANSITION
 *********************************************/

.flashcards.cube .cards {
	-webkit-perspective: 1300px;
	   -moz-perspective: 1300px;
	    -ms-perspective: 1300px;
	        perspective: 1300px;
}

.flashcards.cube .cards section {
	padding: 30px;
	min-height: 600px;

	-webkit-backface-visibility: hidden;
	   -moz-backface-visibility: hidden;
	    -ms-backface-visibility: hidden;
	        backface-visibility: hidden;

	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
	.flashcards.center.cube .cards section {
		min-height: auto;
	}
	.flashcards.cube .cards section:not(.stack):before {
		content: '';
		position: absolute;
		display: block;
		width: 100%;
		height: 100%;
		left: 0;
		top: 0;
		background: rgba(0,0,0,0.1);
		border-radius: 4px;

		-webkit-transform: translateZ( -20px );
		   -moz-transform: translateZ( -20px );
		    -ms-transform: translateZ( -20px );
		     -o-transform: translateZ( -20px );
		        transform: translateZ( -20px );
	}
	.flashcards.cube .cards section:not(.stack):after {
		content: '';
		position: absolute;
		display: block;
		width: 90%;
		height: 30px;
		left: 5%;
		bottom: 0;
		background: none;
		z-index: 1;

		border-radius: 4px;
		box-shadow: 0px 95px 25px rgba(0,0,0,0.2);

		-webkit-transform: translateZ(-90px) rotateX( 65deg );
		   -moz-transform: translateZ(-90px) rotateX( 65deg );
		    -ms-transform: translateZ(-90px) rotateX( 65deg );
		     -o-transform: translateZ(-90px) rotateX( 65deg );
		        transform: translateZ(-90px) rotateX( 65deg );
	}

.flashcards.cube .cards>section.stack {
	padding: 0;
	background: none;
}

.flashcards.cube .cards>section.past {
	-webkit-transform-origin: 100% 0%;
	   -moz-transform-origin: 100% 0%;
	    -ms-transform-origin: 100% 0%;
	        transform-origin: 100% 0%;

	-webkit-transform: translate3d(-100%, 0, 0) rotateY(-90deg);
	   -moz-transform: translate3d(-100%, 0, 0) rotateY(-90deg);
	    -ms-transform: translate3d(-100%, 0, 0) rotateY(-90deg);
	        transform: translate3d(-100%, 0, 0) rotateY(-90deg);
}

.flashcards.cube .cards>section.future {
	-webkit-transform-origin: 0% 0%;
	   -moz-transform-origin: 0% 0%;
	    -ms-transform-origin: 0% 0%;
	        transform-origin: 0% 0%;

	-webkit-transform: translate3d(100%, 0, 0) rotateY(90deg);
	   -moz-transform: translate3d(100%, 0, 0) rotateY(90deg);
	    -ms-transform: translate3d(100%, 0, 0) rotateY(90deg);
	        transform: translate3d(100%, 0, 0) rotateY(90deg);
}

.flashcards.cube .cards>section>section.past {
	-webkit-transform-origin: 0% 100%;
	   -moz-transform-origin: 0% 100%;
	    -ms-transform-origin: 0% 100%;
	        transform-origin: 0% 100%;

	-webkit-transform: translate3d(0, -100%, 0) rotateX(90deg);
	   -moz-transform: translate3d(0, -100%, 0) rotateX(90deg);
	    -ms-transform: translate3d(0, -100%, 0) rotateX(90deg);
	        transform: translate3d(0, -100%, 0) rotateX(90deg);
}

.flashcards.cube .cards>section>section.future {
	-webkit-transform-origin: 0% 0%;
	   -moz-transform-origin: 0% 0%;
	    -ms-transform-origin: 0% 0%;
	        transform-origin: 0% 0%;

	-webkit-transform: translate3d(0, 100%, 0) rotateX(-90deg);
	   -moz-transform: translate3d(0, 100%, 0) rotateX(-90deg);
	    -ms-transform: translate3d(0, 100%, 0) rotateX(-90deg);
	        transform: translate3d(0, 100%, 0) rotateX(-90deg);
}


/*********************************************
 * PAGE TRANSITION
 *********************************************/

.flashcards.page .cards {
	-webkit-perspective-origin: 0% 50%;
	   -moz-perspective-origin: 0% 50%;
	    -ms-perspective-origin: 0% 50%;
	        perspective-origin: 0% 50%;

	-webkit-perspective: 3000px;
	   -moz-perspective: 3000px;
	    -ms-perspective: 3000px;
	        perspective: 3000px;
}

.flashcards.page .cards section {
	padding: 30px;
	min-height: 600px;

	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
	.flashcards.page .cards section.past {
		z-index: 12;
	}
	.flashcards.page .cards section:not(.stack):before {
		content: '';
		position: absolute;
		display: block;
		width: 100%;
		height: 100%;
		left: 0;
		top: 0;
		background: rgba(0,0,0,0.1);

		-webkit-transform: translateZ( -20px );
		   -moz-transform: translateZ( -20px );
		    -ms-transform: translateZ( -20px );
		     -o-transform: translateZ( -20px );
		        transform: translateZ( -20px );
	}
	.flashcards.page .cards section:not(.stack):after {
		content: '';
		position: absolute;
		display: block;
		width: 90%;
		height: 30px;
		left: 5%;
		bottom: 0;
		background: none;
		z-index: 1;

		border-radius: 4px;
		box-shadow: 0px 95px 25px rgba(0,0,0,0.2);

		-webkit-transform: translateZ(-90px) rotateX( 65deg );
	}

.flashcards.page .cards>section.stack {
	padding: 0;
	background: none;
}

.flashcards.page .cards>section.past {
	-webkit-transform-origin: 0% 0%;
	   -moz-transform-origin: 0% 0%;
	    -ms-transform-origin: 0% 0%;
	        transform-origin: 0% 0%;

	-webkit-transform: translate3d(-40%, 0, 0) rotateY(-80deg);
	   -moz-transform: translate3d(-40%, 0, 0) rotateY(-80deg);
	    -ms-transform: translate3d(-40%, 0, 0) rotateY(-80deg);
	        transform: translate3d(-40%, 0, 0) rotateY(-80deg);
}

.flashcards.page .cards>section.future {
	-webkit-transform-origin: 100% 0%;
	   -moz-transform-origin: 100% 0%;
	    -ms-transform-origin: 100% 0%;
	        transform-origin: 100% 0%;

	-webkit-transform: translate3d(0, 0, 0);
	   -moz-transform: translate3d(0, 0, 0);
	    -ms-transform: translate3d(0, 0, 0);
	        transform: translate3d(0, 0, 0);
}

.flashcards.page .cards>section>section.past {
	-webkit-transform-origin: 0% 0%;
	   -moz-transform-origin: 0% 0%;
	    -ms-transform-origin: 0% 0%;
	        transform-origin: 0% 0%;

	-webkit-transform: translate3d(0, -40%, 0) rotateX(80deg);
	   -moz-transform: translate3d(0, -40%, 0) rotateX(80deg);
	    -ms-transform: translate3d(0, -40%, 0) rotateX(80deg);
	        transform: translate3d(0, -40%, 0) rotateX(80deg);
}

.flashcards.page .cards>section>section.future {
	-webkit-transform-origin: 0% 100%;
	   -moz-transform-origin: 0% 100%;
	    -ms-transform-origin: 0% 100%;
	        transform-origin: 0% 100%;

	-webkit-transform: translate3d(0, 0, 0);
	   -moz-transform: translate3d(0, 0, 0);
	    -ms-transform: translate3d(0, 0, 0);
	        transform: translate3d(0, 0, 0);
}


/*********************************************
 * TILE-FLIP TRANSITION (CSS shader)
 *********************************************/

.flashcards.tileflip .cards section.present {
	-webkit-transform: none;
	-webkit-transition-duration: 800ms;

	-webkit-filter: custom( url(shaders/tile-flip.vs) mix(url(shaders/tile-flip.fs) multiply source-atop), 10 10 border-box detached, transform perspective(1000) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg),
		amount 0, randomness 0, flipAxis 0 1 0, tileOutline 1
	);
}

.flashcards.tileflip .cards section.past {
	-webkit-transform: none;
	-webkit-transition-duration: 800ms;

	-webkit-filter: custom( url(shaders/tile-flip.vs) mix(url(shaders/tile-flip.fs) multiply source-atop), 10 10 border-box detached, transform perspective(1000) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg),
		amount 1, randomness 0, flipAxis 0 1 0, tileOutline 1
	);
}

.flashcards.tileflip .cards section.future {
	-webkit-transform: none;
	-webkit-transition-duration: 800ms;

	-webkit-filter: custom( url(shaders/tile-flip.vs) mix(url(shaders/tile-flip.fs) multiply source-atop), 10 10 border-box detached, transform perspective(1000) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg),
		amount 1, randomness 0, flipAxis 0 1 0, tileOutline 1
	);
}

.flashcards.tileflip .cards>section>section.present {
	-webkit-filter: custom( url(shaders/tile-flip.vs) mix(url(shaders/tile-flip.fs) multiply source-atop), 10 10 border-box detached, transform perspective(1000) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg),
		amount 0, randomness 2, flipAxis 1 0 0, tileOutline 1
	);
}

.flashcards.tileflip .cards>section>section.past {
	-webkit-filter: custom( url(shaders/tile-flip.vs) mix(url(shaders/tile-flip.fs) multiply source-atop), 10 10 border-box detached, transform perspective(1000) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg),
		amount 1, randomness 2, flipAxis 1 0 0, tileOutline 1
	);
}

.flashcards.tileflip .cards>section>section.future {
	-webkit-filter: custom( url(shaders/tile-flip.vs) mix(url(shaders/tile-flip.fs) multiply source-atop), 10 10 border-box detached, transform perspective(1000) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg),
		amount 1, randomness 2, flipAxis 1 0 0, tileOutline 1
	);
}

/*********************************************
 * FADE TRANSITION
 *********************************************/

.flashcards.fade .cards section,
.flashcards.fade .cards>section>section {
    -webkit-transform: none;
	   -moz-transform: none;
	    -ms-transform: none;
	     -o-transform: none;
	        transform: none;

	-webkit-transition: opacity 0.5s;
	   -moz-transition: opacity 0.5s;
	    -ms-transition: opacity 0.5s;
	     -o-transition: opacity 0.5s;
	        transition: opacity 0.5s;
}


.flashcards.fade.overview .cards section,
.flashcards.fade.overview .cards>section>section,
.flashcards.fade.exit-overview .cards section,
.flashcards.fade.exit-overview .cards>section>section {
	-webkit-transition: none;
	   -moz-transition: none;
	    -ms-transition: none;
	     -o-transition: none;
	        transition: none;
}

/*********************************************
 * NO TRANSITION
 *********************************************/

.flashcards.none .cards section {
	-webkit-transform: none;
	   -moz-transform: none;
	    -ms-transform: none;
	     -o-transform: none;
	        transform: none;

	-webkit-transition: none;
	   -moz-transition: none;
	    -ms-transition: none;
	     -o-transition: none;
	        transition: none;
}


/*********************************************
 * OVERVIEW
 *********************************************/

.flashcards.overview .cards {
	-webkit-perspective-origin: 0% 0%;
	   -moz-perspective-origin: 0% 0%;
	    -ms-perspective-origin: 0% 0%;
	        perspective-origin: 0% 0%;

	-webkit-perspective: 700px;
	   -moz-perspective: 700px;
	    -ms-perspective: 700px;
	        perspective: 700px;
}

.flashcards.overview .cards section {
	height: 600px;
	overflow: hidden;
	opacity: 1!important;
	visibility: visible!important;
	cursor: pointer;
	background: rgba(0,0,0,0.1);
}
.flashcards.overview .cards section .fragment {
	opacity: 1;
}
.flashcards.overview .cards section:after,
.flashcards.overview .cards section:before {
	display: none !important;
}
.flashcards.overview .cards section>section {
	opacity: 1;
	cursor: pointer;
}
	.flashcards.overview .cards section:hover {
		background: rgba(0,0,0,0.3);
	}
	.flashcards.overview .cards section.present {
		background: rgba(0,0,0,0.3);
	}
.flashcards.overview .cards>section.stack {
	padding: 0;
	background: none;
	overflow: visible;
}


/*********************************************
 * PAUSED MODE
 *********************************************/

.flashcards .pause-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: black;
	visibility: hidden;
	display: none;
	opacity: 0;
	z-index: 99;

	-webkit-transition: all 1s ease;
	   -moz-transition: all 1s ease;
	    -ms-transition: all 1s ease;
	     -o-transition: all 1s ease;
	        transition: all 1s ease;
}
.flashcards.paused .pause-overlay {
	visibility: visible;
	display: none;
	opacity: 1;
}


/*********************************************
 * FALLBACK
 *********************************************/

/*.no-transforms {
	overflow-y: auto;
}
*/

.no-transforms .cards section {
	display: block;
	opacity: 1;

	-webkit-transform: none;
	   -moz-transform: none;
	    -ms-transform: none;
	        transform: none;
}

.no-transforms .card .front {
	display: block;
	-webkit-transform: rotateY( 0deg );
	-moz-transform: rotateY( 0deg );
	-ms-transform: rotateY( 0deg );
	transform: rotateY( 0deg );
}

.no-transforms .card .back {
	display: none;
	-webkit-transform: rotateY( 0deg );
	-moz-transform: rotateY( 0deg );
	-ms-transform: rotateY( 0deg );
	transform: rotateY( 0deg );
}

.no-transforms .flipped .front {
	display: none;
	-webkit-transform: rotateY( 0deg );
	-moz-transform: rotateY( 0deg );
	-ms-transform: rotateY( 0deg );
	transform: rotateY( 0deg );
}

.no-transforms .flipped .back {
	display: block;
	-webkit-transform: rotateY( 0deg );
	-moz-transform: rotateY( 0deg );
	-ms-transform: rotateY( 0deg );
	transform: rotateY( 0deg );
}

.no-transforms .flipped .card {
	-webkit-transform: rotateY( 0deg );
	-moz-transform: rotateY( 0deg );
	-ms-transform: rotateY( 0deg );
	transform: rotateY( 0deg );
}

.no-transforms .flashcards .cards section.present {
	display: block;
}

.no-transforms .flashcards .cards section.past {
	display: none;
}

.no-transforms .flashcards .cards section.future {
	display: none;
}

.no-transition {
	-webkit-transition: none;
	   -moz-transition: none;
	    -ms-transition: none;
	     -o-transition: none;
	        transition: none;
}


/*********************************************
 * BACKGROUND STATES
 *********************************************/

.flashcards .state-background {
	position: absolute;
	z-index: 2;
	width: 100%;
	height: 100%;
	background: rgba( 0, 0, 0, 0 );

	-webkit-transition: background 350ms ease;
	   -moz-transition: background 350ms ease;
	    -ms-transition: background 350ms ease;
	     -o-transition: background 350ms ease;
	        transition: background 350ms ease;
}
.state-unknown .flashcards .state-background {
	background: rgba( 212, 0, 0, 0.4 );
}
.state-known .flashcards .state-background {
	background: rgba( 105, 180, 38, 0.4 );
}
.blackout .flashcards .state-background {
	background: rgba( 0, 0, 0, 0.6 );
}


/*********************************************
 * ZOOM PLUGIN
 *********************************************/

.zoomed .flashcards *,
.zoomed .flashcards *:before,
.zoomed .flashcards *:after {
	-webkit-transform: none !important;
	   -moz-transform: none !important;
	    -ms-transform: none !important;
	        transform: none !important;

	-webkit-backface-visibility: visible !important;
	   -moz-backface-visibility: visible !important;
	    -ms-backface-visibility: visible !important;
	        backface-visibility: visible !important;
}

.zoomed .flashcards .progress,
.zoomed .flashcards .controls {
	opacity: 0;
}

.zoomed .flashcards .roll span {
	background: none;
}

.zoomed .flashcards .roll span:after {
	visibility: hidden;
}


/*********************************************
 * STATISTICS
 *********************************************/

.flashcards .stats-overlay,
.flashcards .entry-overlay {
	position: fixed;
	top: 80px;
	left: 0;
	width: 100%;
	height: 100%;
	visibility: hidden;
	display: none;
	background: rgba(0,0,0,0.8);
	opacity: 0;
	z-index: 99;

	-webkit-transition: all 1s ease;
	   -moz-transition: all 1s ease;
	    -ms-transition: all 1s ease;
	     -o-transition: all 1s ease;
	        transition: all 1s ease;
}

.flashcards.show-stats .stats-overlay,
.flashcards.show-entry .entry-overlay {
	display: block;
	visibility: visible;
	opacity: 1;
}

.flashcards .stats,
.flashcards .button-group {
	display: block;
}

.flashcards .stats-wrapper {
}

.flashcards .entry-wrapper {
	padding-top: 50px;
}

.flashcards .entry-text {
	font-size: 24px;
	color: #FFF;
	text-align: center;
	margin: 0 0 1em 0;
}

.flashcards .stats {
	overflow: hidden;
	margin: 40px 20px;
	border-radius: 5px;
	background: #1C1C1C;
}

.flashcards .stats li {
	list-style: none;
	width: 24.5%;
	font-size: 24px;
	font-weight: bold;
	border-right: 1px solid #4F4F4F;
	float: left;
	text-align: center;
	color: #848484;
	padding: 30px 0;
}

.flashcards .stats li:last-child {
	border-right: none;
}

.flashcards .stats .score {
	display: block;
	margin: 10px 0 20px 0;
	color: #FFF;
	font-size: 60px;
}

.flashcards .button-group {
	overflow: hidden;
	clear: both;
	width: 80%;
	margin: 0 auto;
}

.flashcards .button-group li {
	list-style: none;
	margin: 0 0 30px 0;
}

.flashcards .button-group .half {
	float: left;
	width: 50%;
}

.flashcards .button {
	display: block;
	font-size: 24px;
	font-weight: bold;
	padding: 0 20px;
	height: 79px;
	line-height: 78px;
	text-align: center;
	color: #000;
	border-radius: 10px;
	background: transparent url('../Images/ButtonSprite.png') repeat-x 0 -99px;
	box-shadow: 0 5px 5px rgba(0,0,0,0.6);
	cursor: pointer;
}

.flashcards .button:hover {
	background-position: 0 -199px;
}

.flashcards .disabled {
	cursor: default;
	color: grey;
	box-shadow: 0 1px 1px rgba(0,0,0,0.6);
}

.flashcards .disabled:hover {
	background-position: 0 -99px;
}

.flashcards .button-group .half .button {
	margin-right: 15px;
}

.flashcards .button-group .last .button {
	margin-left: 15px;
	margin-right: 0;
}

/*********************************************
 * FAVOURITE
 *********************************************/

.flashcards .card-favourite {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	padding: 15px;
	width: 55px;
	height: 55px;
	overflow: hidden;
	text-indent: -99em;
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	-ms-backface-visibility: hidden;
	backface-visibility: hidden;
	background: transparent url('../Images/MainSprite.png') no-repeat -1435px -35px;
}

.flashcards .card-favourite {
}

.flashcards .card-isfavourite {
	background-position: -1434px -135px;
}

/*********************************************
 * Errors
 *********************************************/

#error-overlay {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: black;
	visibility: hidden;
	opacity: 0;
	z-index: 99;
	color: #FFF;

	-webkit-transition: all 1s ease;
	   -moz-transition: all 1s ease;
	    -ms-transition: all 1s ease;
	     -o-transition: all 1s ease;
	        transition: all 1s ease;
}

#error-overlay.active {
	display: block;
	visibility: visible;
	opacity: 1;
}

#error-overlay .error-paragraph {
	display: none;
	position: absolute;
	top: 50%;
	left: 50%;
	font-size: 26px;
	line-height: 30px;
	height: 200px;
	width: 800px;
	margin-top: -100px;
	margin-left: -400px;
}

#error-overlay.error-general .general-error {
	display: block;
}

#error-overlay.error-chrome .general-error {
	display: block;
}

#error-overlay.error-android-version .general-error {
	display: block;
}

#error-overlay.error-chrome-android .general-error {
	display: block;
}

#error-overlay.error-ios-version .general-error {
	display: block;
}

#error-overlay.error-explorer .explorer-error {
	display: block;
}

/*********************************************
 * Small version
 *********************************************/
body.small-version {

}

body.small-version .app-head {
	height: 40px;
	line-height: 40px;
	background: transparent url('../Images/ButtonSprite-Small.png') repeat-x 0 0;
	border-bottom: 1px solid #000;
	box-shadow: 0 1.5px 2.5px rgba(0,0,0,0.6);
}

body.small-version .app-head h1 {
	font-size: 13px;
	text-shadow: rgba(0,0,0,0.6) 0 1px 0;
}

body.small-version .app-head .head-button {
	top: 6px;
	font-size: 12px;
	margin: 0 10px;
	line-height: 27px;
	padding: 0 7.5px;
	border-radius: 2.5px;
	background: transparent url('../Images/ButtonSprite-Small.png') repeat-x 0 -150px;
}

body.small-version .app-head .head-button:hover {
	background-position: 0 -200px;
}

body.small-version .app-head .button-prev {
	height: 27px;
}

body.small-version .app-head .button-logout {
	height: 27px;
}

body.small-version .app-head .button-stats span {
	width: 16.5px;
	height: 17px;
	margin-top: -8.5px;
	margin-left: -8px;
	text-indent: -99em;
	background: transparent url('../Images/MainSprite-Small.png') no-repeat -725px -425px;
}

body.small-version .app-head .button-close span {
	background-position: -775px -425px;
}

body.small-version .app-head .button-stats {
	width: 17px;
	height: 27px;
}

body.small-version .tx-flashcards {
	background: none;
}

body.small-version .card figure {
	max-height: 460px;
}

body.small-version .tooltip {
	font-size: 11px;
	opacity: 0.8;
	line-height: 1.4;
}

body.small-version .tooltip-right:before  {
    border-width: 6px 0 6px 6px;
    right: -5.5px;
    top: 7.5px;
}

body.small-version .tooltip-left:before  {
    border-width: 6px 6px 6px 0;
    left: -5.5px;
    top: 7.5px;
}

body.small-version.user-first-card #tooltip-flip {
	top: 120px;
	right: -15px;
	width: 140px;
}

body.small-version.user-first-flip .flipped #tooltip-correct {
	top: 95px;
	right: 10px;
	width: 140px;
}

body.small-version .card .card-head {
	display: block;
	line-height: 30px;
	height: 27.5px;
	padding: 0 25px;
	margin-bottom: 10px;
}

body.small-version .card p {
	padding: 5px 10px;
}

body.small-version .card .card-inner {
	font-size: 12px;
	line-height: 20px;
	padding: 5px 10px;
	max-height: 180px;
}

body.small-version .present .card .card-inner {
	max-height: none;
}

body.small-version .card .front {
	background: transparent url('../Images/MainSprite-Small.png') no-repeat 0 0;
}

body.small-version .card .back {
	background: transparent url('../Images/MainSprite-Small.png') no-repeat -355px top;
}

body.small-version .select-category {
	margin: 54px 10px 10px 10px;
}

body.small-version .select-category li {
	margin: 0 0 10px 0;
}

body.small-version .select-category a {
	font-size: 16.5px;
	padding: 0 12.5px;
	line-height: 51px;
	height: 44.5px;
	border-radius: 5px;
	background: transparent url('../Images/ButtonSprite-Small.png') repeat-x 0 -299.5px;
	box-shadow: 0 2.5px 2.5px rgba(0,0,0,0.6);
}

body.small-version .select-category a:hover {
	background-position: 0 -374.5px;
}

body.small-version .select-category span.arrow {
	margin-top: -6.5px;
	right: 15px;
	top: 50%;
	width: 8px;
	height: 11.5px;
	background: transparent url('../Images/MainSprite-Small.png') no-repeat -725px -325px;
}

body.small-version .select-category .stats {
	top: 0;
	font-size: 12px;
	right: 40px;
}

body.small-version .select-category .stats.all-known {
	top: 50%;
	margin-top: -7.5px;
	width: 19px;
	height: 15px;
	background: transparent url('../Images/MainSprite-Small.png') no-repeat -725px -375px;
}

body.small-version .login-wrapper {
	padding-top: 140px;

}


/* Login form style */
body.small-version .login-wrapper > form {
	padding: 0 0 0 0;
	width: 345px;
	font-size: 12px;
}

body.small-version .login-wrapper > form > p {
	margin-bottom: 10px;
}

body.small-version .login-wrapper input[type=text],
body.small-version .login-wrapper input[type=password] {
	height: 12px;
	width: 97%;
	line-height: 1;
	font-size: 12px;
	color: #838383;
	padding: 8.5px 10px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	border: 1.5px solid #D0D0D0;
	border-width: 1.5px 0 0 0;
}

body.small-version .login-wrapper input.error[type=text],
body.small-version .login-wrapper input.error[type=password] {
	border-bottom-width: 1.5px;
}

body.small-version .login-wrapper ol li {
	margin: 0 0 12.5px 0;
}

body.small-version .login-wrapper .button {
	font-size: 12px;
	padding: 0 10px;
	height: 39.5px;
	line-height: 39px;
	border-radius: 5px;
	background: transparent url('../Images/ButtonSprite-Small.png') repeat-x 0 -49.5px;
	box-shadow: 0 2.5px 2.5px rgba(0,0,0,0.6);
	width: 155px;
}

body.small-version .login-wrapper .button:hover {
	background-position: 0 -99.5px;
}

body.small-version .login-wrapper .disabled {
	cursor: default;
	color: grey;
	box-shadow: 0 1px 1px rgba(0,0,0,0.6);
}

body.small-version .login-wrapper .disabled:hover {
	background-position: 0 -49.5px;
}

body.small-version .login-wrapper .half .button {
	margin-right: 7.5px;
}

body.small-version .login-wrapper .last .button {
	margin-left: 7.5px;
	margin-right: 0;
}

body.small-version .flashcards ul ul,
body.small-version .flashcards ul ol,
body.small-version .flashcards ol ol,
body.small-version .flashcards ol ul {
	margin-left: 20px;
}

body.small-version .flashcards p {
	margin-bottom: 5px;
}

body.small-version .flashcards .controls div {
	width: 165px;
}

body.small-version .flashcards .controls span {
	height: 30px;
	font-size: 30px;
	top: 209px;
	margin: -15px 10px 10px 10px;
}

body.small-version .flashcards .controls div:hover a {
	margin: -14.5px 9.5px 10px 10.5px;
}

body.small-version .flashcards .controls div.navigate-left span,
body.small-version .flashcards .controls div.card-unknown span {
	left: 60px;
}

body.small-version .flashcards .controls div.navigate-right,
body.small-version .flashcards .controls div.card-known {
	right: 0;
}

body.small-version .flashcards .controls div.navigate-right span,
body.small-version .flashcards .controls div.card-known span {
	right: 70px;
}

body.small-version .flashcards .controls div.navigate-left span,
body.small-version .flashcards .controls div.navigate-right span,
body.small-version .flashcards .controls div.card-known span,
body.small-version .flashcards .controls div.card-unknown span {
	width: 21px;
	height: 32.5px;
	background: transparent url('../Images/MainSprite-Small.png') no-repeat -725px -225px;
}

body.small-version .flashcards .controls div.navigate-right span {
	background-position: -725px -275px;
}

body.small-version .flashcards .controls div.navigate-stats span {
	background-position: -775px -275px;
}

body.small-version .flashcards .controls div.card-known span,
body.small-version .flashcards .controls div.card-unknown span {
	top: 199px;
	width: 52.5px;
	height: 50px;
}

body.small-version .flashcards .controls div.card-known span {
	right: 60px;
	background-position: -725px -475px;
}

body.small-version .flashcards .controls div.card-unknown span {
	left: 50px;
	background-position: -725px -550px;
}

body.small-version .flashcards .controls div.hidden {
	display: none;
}

body.small-version .flashcards .progress {
	height: 4px;
	top: 40px;
}
	body.small-version .flashcards .progress:after {
		height: 10px;
		top: -10px;
	}

body.small-version .flashcards .known-progress {
	height: 4px;
	top: 40px;
}
	body.small-version .flashcards .known-progress:after {
		height: 10px;
		top: -10px;
	}
	body.small-version .flashcards .known-progress span {
		width: 0px;
		background-color: #69B426;
	}

body.small-version .flashcards .cards {
	margin-top: 88px;
	margin-left: -175px;
}

body.small-version .flashcards .cards>section,
body.small-version .flashcards .cards>section>section {
	padding: 12.5px 0px;
}

body.small-version .flashcards .cards>section {
	width: 350px;
}

body.small-version .flashcards .stats-overlay,
body.small-version .flashcards .entry-overlay {
	top: 40px;
}

body.small-version .flashcards .entry-text {
	font-size: 12px;
}

body.small-version .stats-wrapper {
	padding-top: 50px;
}

body.small-version .entry-wrapper {
	padding-top: 70px;
}

body.small-version .flashcards .stats {
	margin: 20px 10px;
	border-radius: 2.5px;
}

body.small-version .flashcards .stats li {
	font-size: 12px;
	padding: 15px 0;
}

body.small-version .flashcards .stats .score {
	margin: 5px 0 10px 0;
	font-size: 30px;
}

body.small-version .flashcards .button-group li {
	margin: 0 0 15px 0;
}

body.small-version .flashcards .button {
	font-size: 12px;
	padding: 0 10px;
	height: 39.5px;
	line-height: 39px;
	border-radius: 5px;
	background: transparent url('../Images/ButtonSprite-Small.png') repeat-x 0 -49.5px;
	box-shadow: 0 2.5px 2.5px rgba(0,0,0,0.6);
}

body.small-version .flashcards .button:hover {
	background-position: 0 -99.5px;
}

body.small-version .flashcards .disabled {
	cursor: default;
	color: grey;
	box-shadow: 0 1px 1px rgba(0,0,0,0.6);
}

body.small-version .flashcards .disabled:hover {
	background-position: 0 -49.5px;
}

body.small-version .flashcards .button-group .half .button {
	margin-right: 7.5px;
}

body.small-version .flashcards .button-group .last .button {
	margin-left: 7.5px;
	margin-right: 0;
}

body.small-version #error-overlay .error-paragraph {
	font-size: 12px;
	line-height: 15px;
	height: 100px;
	width: 400px;
	margin-top: -50px;
	margin-left: -200px;
}
