@import url("fonts/BasierCircle/stylesheet.css");
@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@300;800&display=swap');

*{margin:0}


html, body, #fullheight {
	min-height: 100% !important;
	height: 100%;
	-webkit-overflow-scrolling: touch;
	-webkit-appearance:none;
	-ms-overflow-style: none;
	font-family:'Basier Circle';
	font-weight:400;
 	-webkit-font-smoothing: subpixel-antialiased;
	-webkit-text-size-adjust: auto;
	background:#FFF;
	padding:0;
}

.section_menu {
	padding:14px 20px 14px 20px;
	border-bottom:solid 0.5px #e5e3e3;
	text-align:left;
	cursor:pointer;
}

a {
	font-weight:500;
	color: #22528E;
}

.section_menu.selected {
	background:#ecebeb;
}

.contentInsets {
	max-width:1400px;
	margin:0 auto;
}

.blankButton {
	background:none;
	font-size:10px;
	color:grey;
	font-weight:600;
}

.grid_container_2 {
	display: grid;
	grid-template-columns: calc(50% - 10px) calc(50% - 10px);
	gap: 20px;
}

.grid_container_2_uv {
	display: grid;
	grid-template-columns: calc(50% - 10px) calc(50% - 10px);
	gap: 20px;
}

input[type=date] {
	text-align:left;
	color:inherit;
	width:auto !important;
}

.aoh {
	transition:.25s all;
}

.aoh:hover {
	transform:scale(1.2);
}

.grid_container_3 {
	display: grid;
	grid-template-columns: auto auto auto;
	gap: 20px;
}

.grid_container_3_uv {
	display: grid;
	grid-template-columns: auto auto auto;
	gap: 20px;
}

.grid_container_4 {
	display: grid;
	grid-template-columns: auto auto auto auto;
	gap: 20px;
}

.grid_container_5 {
	display: grid;
	grid-template-columns: auto auto auto auto auto;
	gap: 20px;
}

.grid_container_4_uv {
	display: grid;
	grid-template-columns: auto auto auto auto;
	gap: 20px;
}

a.bulle {
	position:relative;
	color:#ff9900;
	text-align:center;
}

a.bulle:hover {
	background: none;
	z-index: 50;
}

a.bulle span {
	display: none;
}

a.bulle:hover span {
	display: block;
	position: absolute;
	top: -80px;
	left: 0;
	text-align:left;
	font-size:15px;
	color:dimgrey;
	max-width:200px;
	-webkit-backdrop-filter:saturate(160%) blur(7px);
	backdrop-filter:saturate(160%) blur(7px);
	background:rgba(255,255,255,0.8);
	padding:10px;
	border-radius:10px;
	border:solid 0.5px #E5E5E5;
	text-indent: 0;
}

.grid_item {
	padding: 6px;
	text-align: center;
}

.hide {
	display:none;
}

.stack-content {
	color: #AE0E0E;
	font-family: consolas, Menlo, Courier, monospace;
	white-space: pre-line;
	font-size: .8rem;
}

input, textarea, button, select {
	-webkit-appearance:none;
	border:none;
	outline:none;
	color:inherit;
}

textarea {
	font-family:'Basier Circle', serif;
}

input[type='checkbox'] {
	-webkit-appearance:checkbox;
}

::selection {
	color: #FFF;
  	background: #22528E;
}

.menu_button {
	padding:12px 10px 12px 10px;
	color:#000;
	background:none;
	text-align:left;
	font-size:16px;
	cursor:pointer;
	border-radius:14px;
	font-weight:500;
	transition:all 0.25s;
}

.menu_button_2 {
	padding:12px 10px 12px 10px;
	color:#000;
	background:none;
	text-align:left;
	font-size:14px;
	cursor:pointer;
	font-weight:500;
	transition:all 0.25s;
}

.red_button {
	background:#fee7e3;
	color:#ff0000;
	font-size:10px;
	font-weight:600;
	padding:8px;
	border-radius:10px;
}

.menu_button:hover {
	background:#FFF;
	transform:scale(1.1);
}

.menu_button_2:hover {
	background:#FFF;
	-webkit-box-shadow: 0 0 14px 6px rgba(0,0,0,0.003);
	-moz-box-shadow: 0 0 14px 6px rgba(0,0,0,0.003);
	box-shadow: 0 0 14px 6px rgba(0,0,0,0.03);
	color:#22528E;
}

.menu_button > img, .menu_button_2 > img {
	margin-right:10px;
	transition:all 0.25s;
}

button {
	padding:0;
	font-weight:400;
}

.big_label {
	font-size:34px;
	font-weight:500;
}

img.icon {
	vertical-align:middle;
	height:30px;
	aspect-ratio:1;
	margin-right:10px;
}

.timetable_tag {
	display:inline-block;
	padding:10px 20px 10px 20px;
	background:#f2f5f6;
	border-radius:10px;
	font-size:15px;
	color:#22528E;
	margin:0 5px 5px 0;
}

a {
	text-decoration:none;
	color:inherit;
}

.text {
	font-size:14px;
}

.shadow {
	-webkit-box-shadow: 0 0 14px 6px rgba(0,0,0,0.02);
	-moz-box-shadow: 0 0 14px 6px rgba(0,0,0,0.02);
	box-shadow: 0 0 14px 6px rgba(0,0,0,0.02);
}

::-webkit-scrollbar {
    width: 3px;
    height: 3px;
    border-radius:2px;
}

::-webkit-scrollbar-track {
	background:none;
}

::-webkit-scrollbar-thumb {
	background:grey;
}

.image-upload {
	width:100%;
	height:100%;
	display:inline-block;
}

.image-upload > input {
    display: none;
}


/* Index Navbar */
ul.topnav {
    list-style-type: none;
    margin: 0;
    padding:5px;
    overflow: hidden;
}

ul.topnav li {float: left;}

.navli {
	margin-top:10px;
	cursor:pointer;
}

ul.topnav li a {
    display: inline-block;
    color: #000;
    text-align: center;
    padding: 5px 10px;
    text-decoration: none;
    transition: 0.3s;
    font-size: 12px;
    cursor:pointer;
}

ul.topnav li a:hover { color:#CCC; }

ul.topnav li.icon {display: none;}

.login {
	padding:15px;
	-webkit-backdrop-filter:saturate(160%) blur(7px);
	backdrop-filter:saturate(160%) blur(7px);
	background:rgba(255,255,255,0.6);
	font-weight:400;
	border-radius:10px;
	font-size:16px;
	width:calc(100% - 32px);
	transition:.25s;
}

.contrast_field {
	padding:15px;
	-webkit-backdrop-filter:saturate(160%) blur(7px);
	backdrop-filter:saturate(160%) blur(7px);
	background:#f2f5f6;
	font-weight:400;
	border-radius:6px;
	font-size:16px;
	width:calc(100% - 32px);
	transition:.25s;
}

.search {
	padding:15px;
	-webkit-backdrop-filter:saturate(160%) blur(7px);
	backdrop-filter:saturate(160%) blur(7px);
	background:rgba(1,1,1,0.07);
	font-weight:400;
	border-radius:6px;
	font-size:16px;
	transition:.25s;
	width:auto;
}

.minimalist {
	padding:15px;
	font-weight:400;
	font-size:16px;
	transition:.25s;
	width:calc(100% - 30px);
}

input::placeholder {
	color:#9fa6b2;
}

.lineClamp1 {
	overflow: hidden;
   text-overflow: ellipsis;
   display: -webkit-box;
   -webkit-line-clamp: 1;
   -webkit-box-orient: vertical;
}

.lineClamp2 {
	overflow: hidden;
   text-overflow: ellipsis;
   display: -webkit-box;
   -webkit-line-clamp: 2;
   -webkit-box-orient: vertical;
}

.lineClamp3 {
	overflow: hidden;
   text-overflow: ellipsis;
   display: -webkit-box;
   -webkit-line-clamp: 3;
   -webkit-box-orient: vertical;
}

.lineClamp4 {
	overflow: hidden;
   text-overflow: ellipsis;
   display: -webkit-box;
   -webkit-line-clamp: 4;
   -webkit-box-orient: vertical;
}

select {
	width:100%;
}

.label {
	font-size:16px;
	margin-bottom:7px;
	font-weight:500;
}

.smallLabel {
	font-size:12px;
	color:grey;
	font-weight:500;
}

.mediumLabel {
	font-size:18px;
	font-weight:500;
}


hr {
	border:none;
	height:0.25px;
	background-color:#ededed;
	margin:10px 0 10px 0;
}

.noticeLabel {
	font-size:15px;
	margin-bottom:6px;
	font-weight:400;
	color:#b0afaf;
}

.backButton {
	padding:10px;
	background:#FFF;
	border:solid 0.5px #E5E5E5;
	color:#000;
	border-radius:10px;
	font-size:12px;
	font-weight:600;
	transition:.25s;
}

.backButton > img {
	width:30px;
	margin-right:5px;
}

.scale_image_to_fill {
	display: inline-flex;
	justify-content: center;
	overflow: hidden;
	vertical-align: middle;
}

.scale_image_to_fill img {
	min-width: 100%;
	min-height: 100%;
	object-fit: cover;
}

.tileshadow {
	-webkit-box-shadow: 4px 12px 40px 6px rgba(0, 0, 0, 0.04);
	box-shadow:4px 12px 40px 6px rgba(0, 0, 0, 0.04)
}

.actionBtn {
	padding:15px;
	background:#22528E;
	color:white;
	border-radius:6px;
	font-size:14px;
	font-weight:500;
	transition:.25s;
	cursor:pointer;
}

.button1 {
	padding:10px;
	background:#FFF;
	color:#000;
	border-radius:6px;
	font-size:12px;
	font-weight:500;
	transition:.25s;
	border:solid 0.5px #E5E5E5;
	-webkit-box-shadow: 0 0 14px 6px rgba(0,0,0,0.03);
	-moz-box-shadow: 0 0 14px 6px rgba(0,0,0,0.03);
	box-shadow: 0 0 14px 6px rgba(0,0,0,0.03);
}

.secondaryButton {
	padding:14px;
	border:solid 1px #22528E;
	color:#22528E;
	border-radius:6px;
	background:none;
	font-size:14px;
	font-weight:600;
	transition:.25s;
}

.smallButton {
	padding:8px;
	color:#FFF;
	border-radius:6px;
	background:#22528E;
	font-size:12px;
	font-weight:600;
	transition:.25s;
	margin:0 10px 10px 0;
}

.actionBtn:hover {
	transform:scale(1.03);
}

.secondaryButton:hover {
	transform:scale(1.025);
}

.button1:hover {
	transform:scale(1.025);
}

.success {
	width:calc(100% - 40px);
	margin-top:20px;
	border-radius:6px;
	padding:10px 20px 10px 20px;
	height:auto;
	background:deepskyblue;
	color:white;
}

.blur {
	-webkit-backdrop-filter:saturate(160%) blur(7px);
	backdrop-filter:saturate(160%) blur(7px);
	background:rgba(255,255,255,0.5);
}

.absolute_center_xy_canevas {
	position:absolute;
	left:50%;
	top:20%;
	-webkit-transform:translate(-50%, -20%);
	transform:translate(-50%, -20%);
}


.error {
	width:calc(100% - 40px);
	margin-top:20px;
	border-radius:6px;
	padding:10px 20px 10px 20px;
	height:auto;
	background:red;
	color:white;
}

.load_more {
	padding:10px;
	font-size:16px;
	background:#333;
	color:#FFF;
	border-radius:3px;
}


th {
	background:#FFF;
	padding:10px;
	text-align:left;
	font-size:14px;
}

table {
	background:#f7fafa;
	border-collapse: collapse;
}

table, th, td {
	border: solid 0.5px #E5E5E5;
}

td {
	padding:10px;
	font-size:14px;
	color:#000;
}

tr:nth-of-type(odd) {
    background:#FFF;
}

fieldset {
	border:none;
	background:none;
	padding:0;
}

.borderlessButton {
	padding:10px;
	background:#ecf5dd;
	font-size:16px;
	border-radius:10px;
}

legend {
	font-weight:bold;
	text-transform:uppercase;
	background:#000;
	padding:5px;
	color:#FFF;
	border-radius:3px;
	font-size:12px;
}

@media screen and (max-width:780px) {

	#loginForm, #registerForm, #recoverForm {
		width:100% !important;
	}

	.fwom {
		width:100% !important;
	}

	.fwomwp {
		width:calc(100% - 30px) !important;
	}
}


.lineClamp {
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 3; /* number of lines to show */
	-webkit-box-orient: vertical;
}

hr {
	border:solid 0.5px #E5E5E5;
}

.hide-scroll {
	scrollbar-width: none; /* Firefox */
	-ms-overflow-style: none; /* Internet Explorer 10+ */
}

.hide-scroll::-webkit-scrollbar {
	display: none; /* Chrome, Safari, and Edge */
}

.ellipsis {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.hod {
	display:none;
}

.npod {
	padding-left:0 !important;
	padding-right:0 !important;
	width:100% !important;
}

#statusbar {
	position:fixed;
	top:0;
	left:0;
	z-index:3;
}

@media screen and (max-width:780px) {

	.ctom {
		text-align:center !important;
	}

	.jicm {
		justify-items: center !important;
	}

	.hod {
		display:block;
	}

	#statusbar {
		position: relative !important;
	}

	.grid_container_2, .grid_container_3 {
		grid-template-columns:100% !important;
	}

	.grid_container_4 {
		grid-template-columns:auto auto !important;
	}

	div.grid_container_3 input,
	div.grid_container_3 textarea {
		margin-bottom:10px;
	}

	.big_label {
		font-size:28px;
	}

	.huge_label {
		font-size:50px;
	}

	/* Hide On Mobile */
	.hom {
		display:none !important;
	}

	/* Round On Mobile */
	.rom {
		border-radius:50% !important;
	}

	/* Align Left On Mobile */
	.alom {
		text-align:left !important;
	}
}
