/* Fonts */
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css');
@import url('https://fonts.googleapis.com/css2?family=Roboto+Slab:wght@400;600&display=swap|Noto+Sans|Open+Sans:wght@300;400;700|Roboto:400&display=swap&subset=cyrillic');

@import url('../css/todolist-style.css');

/* Light theme */
:root {
	--roboto: 'Roboto', sans-serif;
	--noto-sans: 'Noto Sans', sans-serif;
	--open-sans: 'Open Sans', sans-serif;
	--roboto-slab: 'Roboto Slab', serif;
	--font-awesome: 'Font Awesome 5 Free';

	--global-font: var(--open-sans);

	--background: #8ce1d7;
	--foreground: #414e69;
	--header: #414e69;
	--card-bg: #99ffff;

	--todo-bg: #99ffc1;
	--todo-fg: #41695a;
	--todo-hover: #41695a;
	--todo-input: #99ffc1;
	--todo-done: #00c953;

	--search: #41695a;

	--card-shadow-color: rgba(0, 0, 0, 0.35);
}

/* Dark theme */
[theme="dark"] {
	--background: #191E29;
	--foreground: #99ffff;
	--header: #99ffff;
	--card-bg: #202633;

	--todo-bg: #202633;
	--todo-fg: #99ffff;
	--todo-hover: #99ffff;
	--todo-input: #202633;
	--todo-done: #23737f;

	--search: #202633;

	--card-shadow-color: rgba(0, 0, 0, 0.45);
}

* {
	box-sizing: content-box;
	margin: 0;
	font-family: var(--global-font);
}

body {
	background: var(--background);
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100vh;
	overflow: hidden;
	transition: 0.5s;
}

input[type="checkbox"] {display: none;}

.tilt {position: absolute;}

.card {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background: var(--card-bg);
	width: 440px;
	height: 340px;
	border-radius: 8px;
	box-shadow: 0px 4px 35px var(--card-shadow-color);
	transition: background-color .5s, box-shadow .5s;
}

.todo-card-color {
	background: var(--todo-bg);
	box-shadow: 0px 2px 20px var(--card-shadow-color);
	transition: background-color 0.7s, box-shadow 0.7s;
}

.hide {
	position: absolute;
	opacity: 0;
	z-index: -1;
}

.content {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	transition: .4s;
}

.links {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	margin: 25px 25px 0px 25px;
	opacity: 1;
	transition: .2s;
	z-index: 1;
}

a {
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	color: var(--foreground);
	outline: none;
	font-size: 38px;
	width: 40px;
	height: 40px;
	padding: 17px;
	margin: 5px;
	border-radius: 8px;
	transition: .2s;
}

a:hover,
input[id="searchbox"]:hover,
input[id="searchbox"]:focus {
	color: var(--card-bg);
	background: var(--header);
	transform: translateY(-3px);
	transition: .2s;
	box-shadow: 0 5px 12px rgba(2, 2, 2, 0.45);
	outline: none;
}

.search {
	margin: 25px 0px 15px 0px;
	border: none;
	opacity: 1;
	transition: .3s;
	z-index: 1;
}

input[id="searchbox"] {
	font-family: var(--global-font);
	font-size: 23px;
	color: var(--header);
	text-align: center;
	background: transparent;
	border: none;

	padding: 3px;
	transition: .2s;
	border-radius: 8px;
}

input[id="searchbox"]::placeholder {
	color: var(--foreground);
	transition: .2s;
}

input[id="searchbox"]:focus::placeholder,
input[id="searchbox"]:hover::placeholder { 
	color: var(--card-bg);
	transition: .2s;
}

/* Theme checkbox */
.btn_theme {
	transform: rotate(-25deg);
}

.chb_theme + label::before,
.chb_theme + label:hover::before,
.chb_theme:checked + label::before,
.chb_theme:checked + label:hover::before {
	font-family: var(--font-awesome);
	font-weight: 900;
	font-size: 25px;
	content: "\f186";
	cursor: pointer;
	transition: .0s;
}

.chb_theme + label::before {color: #374259;}

.chb_theme + label:hover::before {color: #f0ff99;}

.chb_theme:checked + label::before {color: #f0ff99;}

.chb_theme:checked + label:hover::before {color: #eeeeee;}

.buttons {
	position: absolute;
	display: flex;
	align-items: center;
	flex-direction: column;
	left: -40px;
}

.btn_theme,
.btn_todo {
	margin: 5px 0px;
}