/* ------------------------------------------------ */
/* RESET */
/* ------------------------------------------------ */

textarea, select,
input[type="submit"], input[type="button"], button, .btn,
input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="email"], input[type="month"], input[type="number"], input[type="password"], input[type="search"], input[type="tel"], input[type="text"], input[type="time"], input[type="url"], input[type="week"]
{
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background-clip:padding-box;
	border-radius:0;
	-webkit-appearance:none;
	background-color:#fff;
	color:#000;
	outline:0;
	margin:0;
	padding: 8px;
	text-align: left;
	font-size:1em;
	vertical-align: middle;
	border: 1px solid #3496e7;
}

input[type="submit"], input[type="button"], button, .btn {
	text-align:center;
	background-color: #2b9dfc;
	color:#fff;
}

input[type="submit"]:hover, input[type="button"]:hover, button:hover, .btn:hover {
	background-color: #1b8dec;
	color:#fff;
}

input[type="submit"]:active, input[type="button"]:active, button:active, .btn:active {
	background-color: #1b8dec;
	color:#fff;
}

input[type="submit"]:focus, input[type="button"]:focus, button:focus, .btn:focus {
	background-color: #1b8dec;
	color:#fff;
}

.btn-sm {
	padding:2px 4px;
	font-size:0.9em;
}

select, select, select{
	background:#fff url(data:image/png;base64,R0lGODlhDQAEAIAAAAAAAP8A/yH5BAEHAAEALAAAAAANAAQAAAILhA+hG5jMDpxvhgIAOw==);
	background-repeat: no-repeat;
	background-position: 97% center;
	padding:0 25px 0 8px;
	font-size: .875em
}

.badge:hover {
  color: #ffffff;
  text-decoration: none;
  cursor: pointer;
}
.badge-error {
  background-color: #b94a48;
}
.badge-error:hover {
  background-color: #953b39;
}
.badge-warning {
  background-color: #f89406;
}
.badge-warning:hover {
  background-color: #c67605;
}
.badge-success {
  background-color: #468847;
}
.badge-success:hover {
  background-color: #356635;
}
.badge-info {
  background-color: #3a87ad;
}
.badge-info:hover {
  background-color: #2d6987;
}
.badge-inverse {
  background-color: #333333;
}
.badge-inverse:hover {
  background-color: #1a1a1a;
}

.label-light {
	background-color: #c0c0c0;
}

.font-bold {
  font-weight: bold;
}

.text-underline {
  text-decoration: underline;
}

/* ------------------------------------------------ */
/* LAYOUT CSS */
/* ------------------------------------------------ */

html,body {
	height:100%;
	width:100%;
    font-family: 'Open Sans', sans-serif;

}

h1,h2,h3,h4,h5 {
	font-family: 'Roboto', sans-serif;
}

.hl-header {
	color: #3a87ad;
}


body {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-orient:vertical;
	-webkit-box-direction:normal;
	    -ms-flex-direction:column;
	        flex-direction:column;
}

.width-limiter {
	width: 990px;
	margin: 0 auto;
	position:relative;
}

.container {
	width: 100%;
	padding: 0px;
	margin:0px;
	overflow: hidden;
}
.mt0 {margin-top: 0px;}
.mb0 {margin-bottom: 0px;}
.m5 {margin: 5px;}
.mb5 {margin-bottom: 5px;}
.mt5 {margin-top: 5px;}
.m10 {margin: 10px;}
.mb10 {margin-bottom: 10px;}
.mt10 {margin-top: 10px;}
.mb15 {margin-bottom: 15px;}
.mt15 {margin-top: 15px;}
.p10 {padding: 10px;}
.pb10 {padding-bottom: 10px;}
.pt10 {padding-top: 10px;}

.w100 {width: 100%;}

.border-color {
	border-color: #3496e7;
}

/* ------------------------------------------------ */

body > header {
	background: #3496e7;
	color: #fff;
}

body > header a {
	color: #fff;
	text-decoration:underline;
}

body > header a:hover {
	color: #f6ffba;
}

body > header .width-limiter {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
}

body > header .width-limiter .logo {
	width: 25%;
	min-width: 180px;
	font-size: 2.2em;
	line-height: 1em;
	margin: 10px 0;
}

body > header .width-limiter .logo a,
body > header .width-limiter .logo:hover {
	color:#fff;
	text-decoration:none;
}

body > header .width-limiter nav {
	-webkit-box-flex:1;
	    -ms-flex:1;
	        flex:1;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
	margin: 10px;
}

body > header .width-limiter nav ul {
	margin-bottom:0px;
}

body > header .width-limiter nav .nav-left {
	width:50%;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:start;
	    -ms-flex-pack:start;
	        justify-content:flex-start;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
}

body > header .width-limiter nav .nav-right {
	width:50%;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:end;
	    -ms-flex-pack:end;
	        justify-content:flex-end;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
}

/* ------------------------------------------------ */

body > .body {
	-webkit-box-flex:1;
	    -ms-flex:1;
	        flex:1;
}

body > .body .width-limiter {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
}

body > .body .width-limiter aside {
	width:25%;
	min-width: 180px;
}

body > .body .width-limiter main {
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	padding:10px;
	margin-bottom:10px;
	max-width:75%;
}

body > footer {
	height:40px;
	background: #444;
	color: #fff;
	padding: 10px;
}

/* ------------------------------------------------ */
/* MAIN CSS */
/* ------------------------------------------------ */

.main-search-form .examples {
	font-size: 0.9em;
	margin-bottom: 5px;
}
.main-search-form form {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.main-search-form form input[type="text"] {
	-webkit-box-flex:1;
	    -ms-flex:1;
	        flex:1;
}

.main-search-form form button[type="submit"] {
	width: 100px;

}

/* ------------------------------------------------ */

main .new-books-section {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
	-ms-flex-line-pack: stretch;
	    align-content: stretch;
}

main .new-books-section .book-item {
	width: 160px;
	margin:10px;
	padding:10px 20px;
	border-radius: 5px;
	overflow:hidden;
	border: 1px dotted #EAEAEA;
	background-color: #F8F8F8;
	font-size: 0.9em;
}

main .new-books-section .book-item .preview {
	margin-bottom: 10px;
}

main .new-books-section .book-item .preview img {
	margin-bottom: 10px;
	width: 120px;
	height:160px;
	-webkit-box-shadow: 5px 5px 2px #EAEAEA;
	        box-shadow: 5px 5px 2px #EAEAEA;
}

main .new-books-section .book-item .description {
	line-height: 13px;
	font-size:12px;
	height:25px;
	overflow:hidden;
}

main .new-books-section .book-item .description a {
	text-decoration:none;
}


main .new-books-section .book-item:hover {
	background-color: #EFEFEF;
}

/* ------------------------------------------------ */

main .data-items .data-item {
	margin:25px 0px;
	padding-bottom:25px;
	overflow:hidden; /* need this to avoid margin collapsing */
	font-size:13px;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	border-bottom: 1px dotted silver;
}

main .data-items .data-item .preview {
	width: 120px;
}

main .data-items .data-item .preview img {
	width: 120px;
	height:160px;
	-webkit-box-shadow: 5px 5px 2px #EAEAEA;
	        box-shadow: 5px 5px 2px #EAEAEA;
}

main .data-items .data-item .description {
	-webkit-box-flex:1;
	    -ms-flex:1;
	        flex:1;
	margin-left: 20px;
}

main .data-items .data-item .description p {
 	-ms-word-break: break-all;
    word-break: break-all;
    word-break: break-word;
	-webkit-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;

    white-space: pre-wrap;
    word-wrap: break-word;

    max-width: 100%;
    overflow:hidden;
}

main .data-items .data-item h3 {
	margin:0px;
	font-size:18px;
}

main .data-items .data-item cite {
	color:green;
}

main .data-items .data-item p.tags {
	font-size: 0.9em;
	color:gray;
}

main .related-section {
	margin-top:50px;
}
/* ------------------------------------------------ */

.games-too-small-resolution {
	display:none;
}

/* ------------------------------------------------ */

.viewerjs-preview {
	width: 100%;
	min-height: 50vh;
	border:1px solid silver;
	background-color:#FAFAFA;
}

/* ------------------------------------------------ */
.converter-section {
	margin-top:30px;
}
.converter-section #converter-text {
	max-width:700px;
	max-height:600px;
	max-height:50vh;
	background-color:#fafafa;
	border-left:2px solid #3496e7;
	padding:5px;
	overflow:auto;
}

.converter-section .transcription p {
	width:100%;
	background-color:#fafafa;
	border-left:2px solid #3496e7;
	padding:5px;
}

/* ------------------------------------------------ */

#fullscreen-preview-layout {
	background-color: #333;
	color:#DDD;
	overflow-y: hidden;
	overflow-x: hidden;
}

#fullscreen-preview-layout .viewerjs-preview {
    min-height: calc( 100vh - 104px );
    border: none;
}

#fullscreen-preview-layout .header {
	overflow:hidden;
	height: 100px;
}

#fullscreen-preview-layout .header h1 {
	width: calc(100% - 728px - 10px );
	overflow:hidden;
	font-size: 2em;
  	height: 2em;
  	line-height: 2em;
  	float:left;
  	padding-left:5px;
}

#fullscreen-preview-layout h1 a,
#fullscreen-preview-layout h1 a:hover {
	color: #54B6F7;
	text-decoration:none;
}

#fullscreen-preview-layout .header .banana {
	float:right;
	max-width:730px;
	max-height:90px;
	overflow:hidden;
	margin-top:4px;
	margin-right:5px;
}

#fullscreen-preview-layout .header .banana .widget div {
	background-color:white;
}

/* ------------------------------------------------ */

.download-block {
	overflow:auto;
	margin-top:25px;
}

.download-block .download-block-banana {
	float:left;
	width: 336px;
	height:280px;
	background-color:#FAFAFA;
	overflow:hidden;
}

.download-block .download-block-controls {
	min-width: 100px;
	width: calc( 100% - 350px );
	float:left;
	text-align:center;
}

.download-block .download-block-controls .btn {
	font-size: 2em;
	margin-top: 110px;
	max-width: 90%;
}

.download-block .download-block-controls #countdown-timer {
	font-size:8em;
	color:#ddd;
	width: 1.8em;
	height: 1.8em;
	border-radius:1em;
	border: 4px solid silver;;
	margin:30px auto 0 auto;
	overflow:hidden;
}

.download-block .download-block-controls #countdown-timer div {
	margin-top:0.15em;
	text-align:center;
}

/* ------------------------------------------------ */
div.row {display:flexbox;}
div.col-md-1 {width:8.33%;}

/* ------------------------------------------------ */

.trends-list {
	list-style: none;
	counter-reset: li;
}

.trends-list li {
	counter-increment: li;
	border-bottom: 1px solid #eaeaea;
	padding-bottom:15px;
	margin-bottom:15px;
}

.trends-list li::before {
  content: counter(li);
  color: #D0D0D0;
  display: inline-block;
  width: 1.75em;
  margin-left: -2.25em;
  margin-top: -0.3em;
  font-size: 3em;
  position: absolute;
  text-align:right;
}

.trends-list .trends-preview {
    display:inline-block;
    border:1px solid #F0F0F0;
    margin-right: 3px;
    margin-bottom: 10px;
    width:120px;
    height:160px;
    overflow:hidden;
}

.trends-list .trends-preview img {
    max-width:100%;
}

/* --- BANANA --- */

main .data-items .data-item.infeed {
    margin-top:-10px;
    margin-bottom:0px;
    padding-bottom:10px;
}

main .data-items ins.adsbygoogle {
    min-width:100%;
    max-height:280px;
}

body aside ins.adsbygoogle {
    min-width:100%;
    max-width:100%;
    width:100%;
    overflow:hidden;
}

body main .banana-under-preview {
    min-width:100%;
    max-height:280px;
}

#fullscreen-preview-layout .header .banana ins.adsbygoogle {
    width: 730px;
    height: 90px;
}

/* ------------------------------------------------ */

input.gsc-input {
    padding:3px 0px 5px 0px !important;
}

.cse .gsc-search-button-v2, .gsc-search-button-v2 {
    background-color: rgb(77, 144, 254) !important;
    padding:9px 27px !important;
}

.gsc-loading-fade .gsc-result-info, .gsc-loading-fade .gsc-loading-resultsRoot, .gsc-loading-resultsRoot, .gsc-loading-fade .gsc-loading-refinementsArea, .gsc-loading-fade .gsc-adBlock, .gsc-loading-fade .gsc-adBlockVertical, .gsc-loading-fade .gsc-adBlockNoHeight {
    opacity: 1 !important;
}
