@charset "UTF-8";

@font-face {
	font-family: "BrilliantSoulmate";
	src: url("/res/fonts/BrilliantSoulmate.otf");
}

@font-face {
	font-family: "JosefinSans";
	src: url("/res/fonts/JosefinSans-VariableFont_wght.ttf");
}

:root {
	/* company colors */
	--company-color1: #5e8094;
	--company-color2: #312a72;
	--company-color3: #1c3c4a;
	--deactivated-company-color1: #5e8094cc;
	--deactivated-company-color2: #312a72cc;
	--deactivated-company-color3: #1c3c4acc;

	--primary-background-color: #ffffff;
	--secondary-background-color: #f2f3f5;

	/* copmany-fonts */
	--regular-font: "JosefinSans", sans-serif, Arial;
	--fancy-font: "BrilliantSoulmate", sans-serif, Arial;

	--dark-input-color: #525353;
	--input-color: #767676;
	--light-input-color: #8d8d8d;

	/* status font colors */
	--dark-font-color: #000000;
	--light-font-color: #ffffff;

	--green-font-color: #0bc91b;
	--red-font-color: #fe1516;
	--yellow-font-color: #f7bb00;

	/* other variables */
	--boxshadow-color: #00000044;

	--scrollbar-track-color: #ffffff;
	--scrollbar-thumb-color: var(--input-color);
	--scrollbar-thumb-hover-color: var(--light-input-color);

	--scrollbar-width-pc: 8px;
	--scrollbar-width-mb: 0px;

	--scrollbar-width: var(--scrollbar-width-mb);

	--main-margin-pc: 100px;
	--main-margin-mb: 20px;

	--main-margin: var(--main-margin-mb);

	--max-width: 1920px;
	--max-mb: 425px;
	--max-pc: 1440px;
	--max-width-local: var(--max-mb);
}

/* SELECTION */

::selection {
	background: var(--company-color1);
	color: white;
}

::-moz-selection {
	background: var(--company-color1);
	color: white;
}

/* FONTS */

.regular {
	font-family: var(--regular-font);
}

.fancy {
	font-family: var(--fancy-font);
	font-weight: lighter;
	font-size: 2.25em;
	word-spacing: -0.25ch;
}

.fancy.normal-spacing {
	word-spacing: normal;
}

.bold {
	/* font-family: var(--bold-font); */
	font-weight: bold;
}

.light {
	/* font-family: var(--light-font); */
	font-weight: 100;
}

.inline {
	display: inline-block;
}

/* GENERALS */

::-webkit-scrollbar {
	width: var(--scrollbar-width);
	height: var(--scrollbar-width);
}

::-webkit-scrollbar-track {
	background: var(--scrollbar-track-color);
}

::-webkit-scrollbar-thumb {
	background: var(--scrollbar-thumb-color);
}

::-webkit-scrollbar-thumb:hover {
	background: var(--scrollbar-thumb-hover-color);
}

* {
	font-family: var(--regular-font);
	color: var(--company-color1);

	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

input[type=number] {
	appearance: textfield;
	-webkit-appearance: textfield;
	-moz-appearance: textfield;
}

button {
	border: none;
	background-color: unset;
	cursor: pointer;
}

a {
	cursor: pointer;
}

textarea {
	resize: none;
}

img {
	-webkit-user-select: none;
	-ms-user-select: none;
	-moz-user-select: none;
	user-select: none;
}

textarea:focus,
input:focus {
	outline: none;
}

a {
	text-decoration: none;
}

ul {
	list-style-type: none;
}

.clickable {
	cursor: pointer;
}

.mandatory::after {
	content: " *";
	color: var(--red-font-color);
}

body {
	height: 100vh;
	width: 100vw;
	margin: 0;

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

	background-color: var(--primary-background-color);
}

/* SPECIFIC GENERALS */

main {
	width: 100%;

	-webkit-box-flex: 1;

	-ms-flex: 1;

	flex: 1;
}

main>section {
	padding: 80px 0;
}

.section-title {
	margin-top: 40px;
	margin-bottom: var(--main-margin);

	font-size: 1.5em;
	font-family: var(--light-font);
	font-weight: bolder;
	color: var(--company-font-color);
	text-align: center;
}

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

.section-options {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 5%;
	margin-bottom: var(--main-margin);
	font-size: 1rem;
	position: relative;
}

.section-options>span {
	font-size: 0.6em;
	text-align: end;
}

.create-new-button {
	font-size: 0.6em;
	font-family: var(--bold-font);
	color: white;
	background-color: var(--company-color1);
	border: none;
	padding: 1em 2em;
	display: none;
	/* Boton oculto */
}

.filter-button {
	font-size: 0.8em;
	font-family: var(--bold-font);
	border: none;
	background-color: var(--secondary-background-color);
	padding: 0.2em 0.6em;
}

.section-panel {
	padding-top: 20px;
	box-shadow: 0px 0px 20px 2px var(--boxshadow-color);
	-webkit-box-shadow: 0px 0px 20px 2px var(--boxshadow-color);
}

.bottom-separator {
	display: block;
	height: var(--main-margin);
}

.table-anchor {
	text-decoration: none;
}

.table-anchor:hover {
	font-weight: bold;
	color: var(--company-color1);
}

.width-lock {
	max-width: var(--max-width);
	margin: auto;
}

@media (width>=1024px) {
	:root {
		--scrollbar-width: var(--scrollbar-width-pc);
		--main-margin: var(--main-margin-pc);
		--max-width-local: var(--max-pc);
	}

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

	body {
		width: calc(100vw - var(--scrollbar-width-pc));
	}

	.section-title {
		text-align: start;
		margin-bottom: 10px;
	}

	.wrapper {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}

	.section-options {
		margin-bottom: 10px;
		min-width: 12em;
		/* 22em */
		font-size: 1.2rem;
		-webkit-box-align: end;
		-ms-flex-align: end;
		align-items: end;
	}

	.section-panel {
		height: 100%;
		overflow: hidden;
	}
}