/*------------------HEADER------------------*/
.app-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
/*------------------------------------------*/

/*----------------STUDY-MODE----------------*/
.study-mode-content {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 3.2rem;
}

/* FLASHCARD SECTION */

.flashcard-section {
	display: flex;
	flex-direction: column;
	border-radius: 16px;
	border-top: 1px solid var(--neutral-900);
	border-right: 3px solid var(--neutral-900);
	border-bottom: 3px solid var(--neutral-900);
	border-left: 1px solid var(--neutral-900);
	background-color: var(--neutral-0);
}

.flashcard-section-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 2rem;
}

.category-filter {
	display: flex;
	align-items: center;
	gap: 1.6rem;
}

.mastered-controls {
	display: flex;
	align-items: center;
	gap: 8px;
}

.mastered-controls label {
	color: var(--neutral-900);
	user-select: none;
}

.mastered-controls label:hover {
	cursor: pointer;
}

.no-flashcards,
.all-mastered {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 3.2rem;
	padding: 2rem;
	flex: 1;
}

.flashcards-hint {
	display: flex;
	flex-direction: column;
	gap: 1.2rem;
	justify-content: center;
	text-align: center;
	width: 44rem;
}

.flashcard-hint p {
	color: var(--neutral-600);
}

.flashcard-container {
	display: flex;
	flex-direction: column;
	gap: 2rem;
	padding: 2rem;
}

.flashcard-content:hover {
	cursor: pointer;
}

.flashcard-content-question,
.flashcard-content-answer {
	position: relative;
	min-height: 36rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	padding: 2.4rem;
	border-radius: 16px;
	border: 2px solid var(--neutral-900);
	box-shadow: 2px 2px 0 0 var(--neutral-900);
}

.flashcard-content-question {
	background: url('../assets/images/pattern-flashcard-bg.svg'), var(--pink-400);
}

.flashcard-content-answer {
	background: url('../assets/images/pattern-flashcard-bg.svg'), var(--blue-400);
}

.flashcard-icon {
	position: absolute;
}

.flashcard-icon--top-right {
	top: 4rem;
	right: 3rem;
}

.flashcard-icon--bottom-left {
	bottom: 5rem;
	left: 3rem;
}

.flashcard-icon--bottom-left-answer {
	bottom: 5rem;
	left: 2rem;
}

.flashcard-tag {
	padding: 6px 1.2rem;
	border: 1px solid var(--neutral-900);
	border-radius: 999px;
	color: var(--neutral-900);
	background-color: var(--neutral-0);
	box-shadow: 1px 1px 0 0 #000;
}

.question-container {
	display: flex;
	flex-direction: column;
	flex: 1;
	align-items: center;
	justify-content: center;
	text-align: center;
	width: 100%;
	gap: 1.6rem;
}

.question-text,
.question-answer,
.reveal-answer {
	color: var(--neutral-900);
}

.reveal-answer,
.question-answer {
	user-select: none;
	opacity: 0.8;
}

.reveal-answer:hover {
	cursor: pointer;
	color: var(--neutral-600);
}

.progress-container {
	display: flex;
	align-items: center;
	gap: 8px;
}

/* .progress-bar {
	min-width: 6rem;
	height: 8px;
	border-radius: 999px;
	border: 1px solid var(--neutral-900);
	background-color: var(--neutral-0);
} */

.progress-bar {
	min-width: 6rem;
	height: 8px;
	border-radius: 999px;
	border: 1px solid var(--neutral-900);
	background-color: var(--neutral-0);
	position: relative;
	overflow: hidden;
}

.progress-bar::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 0%;
	background-color: var(--neutral-0);
	transition: width 0.3s ease-out;
}

.progress-bar[data-progress='0']::before {
	width: 0%;
}
.progress-bar[data-progress='1']::before {
	width: 20%;
}
.progress-bar[data-progress='2']::before {
	width: 40%;
}
.progress-bar[data-progress='3']::before {
	width: 60%;
}
.progress-bar[data-progress='4']::before {
	width: 80%;
}
.progress-bar[data-progress='5']::before {
	width: 100%;
}

.progress-bar--in-progress::before {
	background-color: var(--neutral-900);
}

.bar {
	display: flex;
	gap: 8px;
	align-items: center;
}

.card-mastered {
	display: flex;
	gap: 6px;
	padding: 6px 12px;
	border-radius: 999px;
	border: 1px solid var(--neutral-900);
	box-shadow: 1px 1px 0 0 var(--neutral-900);
	background-color: var(--teal-400);
}

.progress-level {
	color: var(--neutral-900);
}

.flashcard-actions {
	display: flex;
	align-self: center;
	gap: 2rem;
}

.navigation-controls {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 2rem;
}

.card-number {
	color: var(--neutral-600);
}

/* STATISTIS SECTION */
.statistics-section {
	display: flex;
	flex-direction: column;
	gap: 1.6rem;
	padding: 2.4rem;
	border-top: 1px solid var(--neutral-900);
	border-right: 3px solid var(--neutral-900);
	border-bottom: 3px solid var(--neutral-900);
	border-left: 1px solid var(--neutral-900);
	border-radius: 16px;
	background-color: var(--neutral-0);
}

#stats-heading {
	color: var(--neutral-900);
}

.statistics-content {
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.statistics-card {
	display: flex;
	border-top: 1px solid var(--neutral-900);
	border-right: 2px solid var(--neutral-900);
	border-bottom: 2px solid var(--neutral-900);
	border-left: 1px solid var(--neutral-900);
	border-radius: 12px;
	background-color: var(--neutral-0);
	overflow: hidden;
}

.text-container {
	display: flex;
	flex: 1;
	flex-direction: column;
	justify-content: space-between;
	width: 24.4rem;
	padding: 2rem;
}

.text-container h3,
.text-container span {
	color: var(--neutral-900);
}

.icon-container {
	display: flex;
	align-items: center;
	border-left: 1px solid var(--neutral-900);
	justify-content: center;
	min-width: 10rem;
}

.total {
	background-color: var(--blue-400);
}

.mastered {
	background-color: var(--teal-400);
}

.in-progress {
	background-color: var(--pink-500);
}

.not-started {
	background-color: var(--pink-400);
}
/*------------------------------------------*/

/*--------------ALL CARDS MODE--------------*/
.all-cards-content {
	display: flex;
	flex-direction: column;
	gap: 3.2rem;
	padding-bottom: 6.4rem;
}

.form--new-card {
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
	padding: 3.2rem;
	border-top: 1px solid var(--neutral-900);
	border-right: 4px solid var(--neutral-900);
	border-bottom: 4px solid var(--neutral-900);
	border-left: 1px solid var(--neutral-900);
	border-radius: 16px;
	background-color: var(--neutral-0);
}

.new-card--input {
	display: flex;
	flex-direction: column;
	gap: 1.6rem;
}

.input {
	display: flex;
	flex-direction: column;
	gap: 0.8rem;
	color: var(--neutral-900);
}

.input textarea {
	height: 10rem;
	resize: none;
}

.input--error {
	display: flex;
	align-items: center;
	gap: 6px;
}

.input--error p {
	color: var(--pink-700);
}

.btn--create-card {
	display: flex;
	align-self: flex-start;
}

.all-cards-section-controls {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.flashcard-container--all-cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2.4rem;
}

.flashcard {
	display: flex;
	flex-direction: column;
	border-top: 1px solid var(--neutral-900);
	border-right: 3px solid var(--neutral-900);
	border-bottom: 3px solid var(--neutral-900);
	border-left: 1px solid var(--neutral-900);
	border-radius: 16px;
	box-shadow: 2 2 0 0 var(--neutral-900);
	background-color: var(--neutral-0);
	min-height: 25.8rem;
	max-width: 39.7rem;
	width: 100%;
}

.question-container--all-cards {
	padding: 1.6rem;
	border-bottom: 1px solid var(--neutral-900);
}

.question-container--all-cards h4,
.answer-container--all-cards span,
.answer-container--all-cards p {
	color: var(--neutral-900);
}

.answer-container--all-cards {
	display: flex;
	flex-direction: column;
	flex: 1;
	gap: 6px;
	padding: 1.6rem;
	border-bottom: 1px solid var(--neutral-900);
}

.flashcard--footer {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 0 1.6rem;
	height: 5.6rem;
}

.tag-container {
	display: flex;
	align-items: center;
	padding-right: 1rem;
	border-right: 1px solid var(--neutral-900);
	height: 100%;
}

.progress-bar-container {
	display: flex;
	align-items: center;
	gap: 8px;
	flex: 1;
	padding-right: 1rem;
	border-right: 1px solid var(--neutral-900);
	height: 100%;
}

.menu-container {
	display: flex;
	align-items: center;
	height: 100%;
}

.menu-icon {
	display: flex;
	align-items: center;
	border: 1px solid transparent;
	border-radius: 4px;
	background-color: transparent;
}

.menu-icon:hover {
	cursor: pointer;
	background-color: var(--neutral-0);
	border: 1px solid var(--neutral-900);
	box-shadow: 2px 2px 0 0 var(--neutral-900);
}

.pagination {
	padding-top: 1.6rem;
	align-self: center;
}

.btn--load-more {
	color: var(--neutral-900);
}
/*------------------------------------------*/

.flashcard-hidden {
	display: none;
}

.card--created,
.card--updated,
.card--deleted {
	position: absolute;
	top: 11.6rem;
	right: 6rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 1rem 1.6rem;
	width: 30rem;
	border-radius: 999px;
	background-color: var(--neutral-0);
	border: 1px solid var(--neutral-900);
	box-shadow: 2px 2px 0 0 var(--neutral-900), 0 3px 8px 0 rgba(46, 20, 1, 0.2);
}

.close-toast {
	cursor: pointer;
	background: transparent;
	border: transparent;
	display: flex;
	align-items: center;
}

.hidden {
	display: none;
}
