body {
	font-family: 'Roboto', sans-serif;
	background-color: white;
	color: black;
	margin: 0;
	padding: 0;
}

button {
	border: 1px solid #666;
}

h1 {
	text-align: center;
}

ul {
	list-style: none;
}

body .main-content {
	margin: 16px;
}

.container {
	display: flex;
	font-size: large;
}

.margin-bottom-0 {
	margin-bottom: 0 !important;
}

.margin-left-8 {
	margin-left: 8px;
}

.margin-top-8 {
	margin-top: 8px;
}

.margin-top-16 {
	margin-top: 16px;
}

.margin-bottom-8 {
	margin-bottom: 8px;
}

.margin-bottom-16 {
	margin-bottom: 16px;
}

body.dark-mode {
	background-color: #000;
	color: #555;
}

.main-style-container {
	padding: 16px;
	border: 2px solid #ccc;
	background-color: #f9f9f9;
	box-sizing: border-box;
	border-radius: 8px;
}

body.dark-mode div.main-style-container {
	background-color: #000;
	border: 2px solid #444;
}

body input,
body textarea,
body select,
.select2-container .select2-results,
.select2-container--default .select2-selection--single .select2-selection__rendered {
	background-color: white;
	color: black;
	border: 1px solid #ccc;
	display: flex !important;
	align-items: center;
}

.select2-container--default .select2-selection--single {
	background-color: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	margin-bottom: 8px;
}

.select2-search--dropdown {
	padding: 0 !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
	padding-top: 5px !important;
	padding-bottom: 4px !important;
	border-radius: 5px;
}

body.dark-mode input,
body.dark-mode textarea,
body.dark-mode select,
body.dark-mode .select2-container .select2-results,
body.dark-mode .select2-container--default .select2-selection--single .select2-selection__rendered {
	background-color: #222;
	color: #666;
	border: 1px solid #444;
	display: flex;
	align-items: center;
}

body.dark-mode tr.odd {
	background-color: #111;
	border: 1px solid #444;
}

body.dark-mode td.sorting_1 {
	background-color: #151515;
}

a {
	color: blue;
}

body.dark-mode a {
	color: #4da6ff; /* Light blue */
}

body.dark-mode .nav-links a {
	color: #666;
}

body.dark-mode nav,
body.dark-mode .nav-links {
	background-color: #000;
}

body.dark-mode button {
	background-color: #222;
	color: #666;
	border: 1px solid #666;
}

body.dark-mode button:hover:not(:disabled) {
	background-color: #000;
}

body.dark-mode button:active:not(:disabled) {
	background-color: #333;
	border: 1px solid #333;
}

body.dark-mode button:disabled {
	color: #444;
	border: 1px solid #444;
}

.row {
	display: flex;
	gap: 10px;
	margin-bottom: 10px;
}

/* Each field container */
.field-container {
	flex: 1;
	display: flex;
	flex-direction: column;
}

/* Style labels */
label {
	font-weight: bold;
	margin-bottom: 5px;
}

/* Style form fields */
.main-style-container input,
.main-style-container textarea,
.main-style-container select {
	width: 100%;
	padding: 8px;
	font-size: 16px;
	border: 1px solid #ccc;
	border-radius: 5px;
	box-sizing: border-box;
}

select {
	padding: 8px;
	font-size: 16px;
	border: 1px solid #ccc;
	border-radius: 5px;
	box-sizing: border-box;
}

textarea {
	height: 80px;
	resize: none;
}

.switch {
	position: relative;
	display: inline-block;
	width: 50px;
	height: 25px;
}

.switch input {
	opacity: 0;
	width: 0;
	height: 0;
}

.slider {
	position: absolute;
	cursor: pointer;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #ccc;
	transition: 0.4s;
	border-radius: 25px;
}

.slider::before {
	position: absolute;
	content: "";
	height: 19px;
	width: 19px;
	left: 3px;
	bottom: 3px;
	background-color: white;
	transition: 0.4s;
	border-radius: 50%;
}

input:checked + .slider {
	background-color: #4caf50;
}

input:checked + .slider::before {
	transform: translateX(25px);
}

.tabs {
	display: flex;
	margin-bottom: 15px;
	border-bottom: 1px solid #ccc;
}

.tab-button {
	padding: 10px 15px;
	cursor: pointer;
	border: 1px solid transparent;
	border-bottom: none;
	background-color: #f0f0f0;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	font-weight: bold;
}

.tab-button.active {
	background-color: #fff;
	border-color: #ccc;
	border-bottom: 1px solid #fff;
	font-weight: bold;
}

body.dark-mode .tabs {
	border-bottom: 1px solid #444;
}

body.dark-mode .tab-button {
	background-color: #222;
	border-color: #222;
	border-bottom: 1px solid #444;
	color: #444;
	font-weight: bold;
}

body.dark-mode .tab-button.active {
	background-color: black;
	border-color: #666;
	border-bottom: 1px solid #444;
	color: #555;
	font-weight: bold;
}

#custom-alert {
	position: fixed;
	top: 20px;
	right: 20px;
	background-color: #333;
	color: #fff;
	padding: 15px 20px;
	border-radius: 5px;
	box-shadow: 0 0 10px rgba(0,0,0,0.5);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.3s ease;
	z-index: 9999;
}

#custom-alert.alert {
	background-color: red;
}

#custom-alert.show {
	opacity: 1;
	pointer-events: auto;
}