/* General */
body {
	background-color: #f0f0f0;
	font-family: 'Open Sans', sans-serif;
	color: #222;
}

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

input {
	appearance: none;
    -webkit-appearance: none;
	border-radius: 0;
	-webkit-border-radius: 0;
  
}

/* Header */
.header {
	padding: 10px 0;
}

/* Content Box Blocks */
.content-box {
	padding: 1rem;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.2);
	border-radius: 8px;
	border-bottom: 5px solid black;
	background-color: white;
}

.content-box-heading {
	padding-bottom: 5px;
	margin-bottom: 10px;
	border-bottom: 1px solid #000;
	position: relative;
}

.content-box-heading .info-tooltip {
	font-size: 0.9rem;
	color: #999;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

.content-box + .content-box {
	margin-top: 20px;
}

.content-box-heading i {
	margin-right: 0.2em;
	color: #456bd1;
}

.content-box-wrap {
	padding: 10px 0;
}

/* Hints */
.hint-wrap {
	padding: 5px 0;
}
.hint {
	padding: 5px;
	border: 1px solid #333;
	margin-bottom: 5px;
	display: flex;
	justify-content: space-between;
	cursor: pointer;
	position: relative;
}

.hint.inactive {
	opacity: 0.3;
	cursor: default;
}

.hint.used::before {
	content: "\f14a";
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	color: green;
}

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

.hint-deduction {
	color: red;
}

/* Stats */
.stat-card-container {
	display: flex;
	gap: 5px;
	flex-wrap: wrap;
}

.stat-card {
	padding: 5px 10px;
	flex-shrink: 0;
	width: calc(50% - (5px / 2));
	background: rgb(1,64,141);
	background: linear-gradient(0deg, rgba(1,64,141,1) 0%, rgba(69,107,209,1) 100%);
	color: white;
	border-radius: 8px;
}

.stat-card-stat {
	font-size: 2.5rem;
	font-family: 'Roboto Condensed', sans-serif;
	line-height: 1.2em;
}

/* Guess Input Section */
.player-guess-container {
	padding-bottom: 20px;
}

.player-guess {
	position: relative;
	
}

.player-guess input[type="text"] {
	width: calc(100% - 90px + 1px);
	border: 1px solid black;
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
	padding: 10px;
	font-size: 1.5rem;
}

.player-guess input[type="submit"] {
	width: 90px;
	background-color: #01408d;
	color: white;
    border: none;
    outline: none;
    border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	text-transform: uppercase;
}

.player-guess input[type="submit"].inactive {
	background-color: #aaa;
	cursor: default;
}

.twitter-typeahead {
	width: 100%;
}

.twitter-typeahead .tt-menu {
	right: 0;
    padding: 10px;
    font-size: 1.5rem;
    background-color: white;
    border: 1px solid black;
}

/* Progress Bar */
.progress-container {
	display: flex;
	align-items: center;
	position: relative;
	height: 10px;
	margin: 0 0 30px;
}

.progress {
	flex: 1 0 100%;
	height: 10px;
	border-radius: 5px;
	background-color: #ccc;
	position: relative;
	overflow: visible;
}

.progress-inner {
	position: absolute;
	left: 0;
	top: 0;
	height: inherit;
	width: 2%;
	border-radius: 5px;
	background-color: #01408d;
	transition: all 0.5s;
	overflow: visible;
}

.progress-inner span {
	position: absolute;
	font-size: 1rem;
	width: 2rem;
	height: 2rem;
	border-radius: 1rem;
	background-color: white;
	right: 0;
	top: 50%;
	transform: translate(50%, -50%);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Roboto Condensed', sans-serif;
	color: white;
	background-color: #01408d;
	transition: all 0.5s;
	cursor: default;
}

/* Hint Meter */
.hint-meter {
	flex: 1 0 100%;
	height: 10px;
	border-radius: 5px;
	background-color: #ccc;
	position: relative;
	overflow: visible;
}

.hint-meter-inner {
	position: absolute;
	left: 0;
	top: 0;
	height: inherit;
	width: 0%;
	border-radius: 5px;
	background-color: #01408d;
	transition: all 0.5s;
	overflow: visible;
}

/* Game History */
.game-history {
	display: flex;
	gap: 5px;
	flex-direction: column;
	max-height: 260px;
	overflow: scroll;
	position: relative;
	padding-bottom: 20px;
}

.game-history::after {
	content: " ";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 20px;
	background: rgb(255,255,255);
	background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 20%, rgba(255,255,255,0) 100%);
}

.history-card {
	background: rgb(1,64,141);
	background: linear-gradient(0deg, rgba(1,64,141,1) 0%, rgba(69,107,209,1) 100%);
	padding: 4px 10px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	color: white;
	border-radius: 5px;
}

.history-card-title {
	font-size: 0.9rem;
	text-transform: uppercase;
}

.history-card-score {
	font-size: 0.9rem;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 900;
}

/* Organize */
.rules ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	gap: 10px;
	font-size: 0.9rem;
}

.info-text {
	font-size: 0.8rem;
}

/* Winnter Section */
.winner-section .title {
	margin-top: 10px;
	border-bottom: 5px solid #e9062a;
}

.winner-section ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.winner-section ul li {
	padding: 4px 0;
}

/* Wrong Guess Section */
.wrong-answers-wrap {
	margin-bottom: 0px;
	padding: 10px 0;
}

.wrong-answers-wrap .content-box-heading {
	margin-bottom: 0;
}

.wrong-guess-thead {
	font-size: 0.8rem;
	font-weight: bold;
	background-color: #eee;
}

.wrong-guess-thead .wrong-guess-title {
	display: none;
}

.wrong-guess {
	padding: 5px;
	border-top: 1px solid black;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.wrong-guess-title {
	text-align: center;
	font-weight: bold;
	width: 100%;
}

.wrong-guess-stat {
	flex: 0 1 auto;
	width: 60px;
	text-align: center;
}

.wrong-guess-deduction {
	color: red;
}

@media screen and (min-width: 1400px) {
	.wrong-guess-thead .wrong-guess-title {
		display: block;
	}
	
	.wrong-guess-title {
		text-align: left;
		width: 250px;
	}
}

/* Difficulty Levels */
.difficulty-selection-row {
	margin-bottom: 0.5rem;
	padding-bottom: 0.5rem;
	border-bottom: 1px solid #ddd;
}
.difficulty-level-easy {
	 color: green;
}

.difficulty-level-medium {
	 color: orange;
}

.difficulty-level-hard {
	 color: red;
}

.difficulty-level-diabolical {
	color: purple;
}

i.difficulty-selection {
	cursor: pointer;
	font-size: 3rem;
    transition: all 0.25s;
}

i.difficulty-selection:hover {
	transform: scale(1.1);
}

@media screen and (min-width: 576px) {
	i.difficulty-selection {
		font-size: 4rem;
	}
}

/* Footer */
.footer {
	font-size: 0.8rem;
}

/* Colors */
.fa-trophy {
	color: #ffbb00 !important;
}

.exact-match {
	color: green !important;
}

.hot {
	color: red !important;
}

.warm {
	color: orange !important;
}

.cold {
	color: lightblue !important;
}

.freezing {
	color: blue !important;
}

/* Tables */
.comparison-table {
	width: 100%;
}

.comparison-table thead {
	background-color: #ccc;
	font-weight: bold;
}

.comparison-table td {
	border: 1px solid #aaa;
	padding: 5px;
}

.icons-table td:first-child {
	text-align: center;
}