/*** GLOBAL CSS ***/
/*** version 1.0.2 - 2022.01.18 ***/
/*** 	- úprava CSS pro rozdělovníky
***/
/*** version 1.0.1 - 2022.01.00 ***/
/*** 	- POZOR přidáno zatmavení "VÍCE" pro AP v mobilním režimu (v demo vypnout!!!)
***/
/*** version 1.0 - 2022.01.06 ***/
/********************************/

/* @import url('https://fonts.googleapis.com/css2?family=Jost:wght@300;400;500;600;700;800&display=swap'); */

.card.holiday .card-body {
	background-color: #bbdd44; 
}
.card.holiday .card-body:hover {
	background-color: #9ebb39;
}


/* html editor */
.CodeMirror {
	height: 40rem;
}

/* system */
body {
	font-weight: 500;
	background-color: #f0f1f4;
}

button, button.btn {
	border-radius: 3px;
    color: white;
}

input {
	border-radius: 3px;
	height: 37px;
}
input.form-check-input[type=checkbox] {
	cursor: pointer;
}
input.form-control[type=file] {
	padding-top: 0.375rem;
	padding-bottom: 0.375rem;
}

.list-group-item-action:hover, .list-group-item-action:focus {
    background-color: rgb(240 241 244 / 25%);
;
}

.form-control {
    padding: 0.2rem 0.5rem;
	border-radius: 3px;
}

#secondary-nav {
	background-color: transparent !important;
    margin-bottom: 0 !important;
    font-weight: bold;
}

html:not(#home) #app .py-3 {
	padding-top: 0 !important;
}

#app #main-container {
	background-color: #f0f1f4;
}
.alert ul {
	margin-bottom: 0;
}

#scrollBtn {
	position: fixed;
  	bottom: 1rem;
  	right: 1rem;
  	z-index: 1050;
  	cursor: pointer;
  	padding: 15px;
  	border-radius: 50%;
  	font-size: 18px;
	width: 4rem;
    height: 4rem;
}

#main-nav {
	height: 4.72rem;
}
.navbar-nav .dropdown-menu {
	z-index: 1050;
}

.tooltipWhite {
	color: black;
	background-color: white;
}

/* modal */
.modal .form-control,
.modal .form-select {
	margin-bottom: 0.5rem;
}
.modal .form-label {
	margin-bottom: 0;
}
.modal .modal-footer {
	border: 0;
}


/* sidebar */
#app #sidebar {
	background-color: white;
}
#sidebar a.navbar-brand {
	 color: #2f3544
}

/* nav-link */
.nav-link {
	color: #868e96;
	font-size: 0.8rem;
	font-weight: bold;
	line-height: 1;
}
#sidebar .nav-link {
	min-width: 6rem;
	width: 6rem;
}
.nav-link span {
	color: white;
	background-color: #868e96;
	border-radius: 50%;
	padding: 5px;
	margin-bottom: 0.3rem;
}
.nav-link:hover, .nav-link:focus {
    color: #868e96;
    background-color: #f0f1f4;
	border-radius: 5px;
    text-decoration: none;
}
.navbar-nav .nav-item a {
	font-weight: 800;
}
.navbar-nav .nav-item a.dropdown-item {
	font-weight: 600;
	font-size: 0.8rem;
}
.navbar-light .navbar-nav .nav-link {
    color: #2f3544;;
}
#navBarHamburger .home .nav-link,
.home .nav-link {
	color: #57c0ef;
	font-size: 0.8rem;
	font-weight: bold;
	line-height: 1;
}
.home .nav-link span {
	color: white;
	background-color: #57c0ef;
	border-radius: 50%;
	padding: 5px;
	margin-bottom: 0.3rem;
}
#navBarHamburger .news .nav-link,
.news .nav-link {
	color: #fa7547;
	font-size: 0.8rem;
	font-weight: bold;
	line-height: 1;
}
.news .nav-link span {
	color: white;
	background-color: #fa7547;
	border-radius: 50%;
	padding: 5px;
	margin-bottom: 0.3rem;
}
#navBarHamburger .stream .nav-link,
.stream .nav-link {
	color: #f85b8e;
	font-size: 0.8rem;
	font-weight: bold;
	line-height: 1;
}
.stream .nav-link span {
	color: white;
	background-color: #f85b8e;
	border-radius: 50%;
	padding: 5px;
	margin-bottom: 0.3rem;
}
#navBarHamburger .calendar .nav-link,
#navBarHamburger .agenda .nav-link,
.calendar .nav-link,
.agenda .nav-link {
	color: #6ac3c6;
	font-size: 0.8rem;
	font-weight: bold;
	line-height: 1;
}
.calendar .nav-link span,
.agenda .nav-link span {
	color: white;
	background-color: #6ac3c6;
	border-radius: 50%;
	padding: 5px;
	margin-bottom: 0.3rem;
}
#navBarHamburger .lunches .nav-link,
.lunches .nav-link {
	color: #bbdd44;
	font-size: 0.8rem;
	font-weight: bold;
	line-height: 1;
}
.lunches .nav-link span {
	color: white;
	background-color: #bbdd44;
	border-radius: 50%;
	padding: 5px;
	margin-bottom: 0.3rem;
}
#navBarHamburger .drive .nav-link,
.drive .nav-link {
	color: #a466d8;
	font-size: 0.8rem;
	font-weight: bold;
	line-height: 1;
}
.drive .nav-link span {
	color: white;
	background-color: #a466d8;
	border-radius: 50%;
	padding: 5px;
	margin-bottom: 0.3rem;
}
#navBarHamburger .addressbook .nav-link,
.addressbook .nav-link {
	color: #ffcc4d;
	font-size: 0.8rem;
	font-weight: bold;
	line-height: 1;
}
.addressbook .nav-link span {
	color: white;
	background-color: #ffcc4d;
	border-radius: 50%;
	padding: 5px;
	margin-bottom: 0.3rem;
}
#settings .item-link,
#driveRequest .item-link,
#driveRequestDetail .valDriveIconDownload {
	text-decoration: none;
}

/* cards */
.card {
	background-color: transparent;
	border: 0;
	padding: 0.5rem;
}
.card-img, .card-img-top {
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}
.card .card-header {
	font-weight: 800;
	font-size: 0.8rem;
	color: #2f3544;
	background-color: transparent;
	border: 0;
	padding: 0rem 0.3rem 1rem 0.3rem;
}
.card .card-header .actionbar {
	max-height: 1rem;
	margin-top: -0.5rem;
}
.card .card-header .actionbar a {
    color: #b1b4be;
    text-decoration: none;
    cursor: pointer;
	z-index: 1;
    position: relative;
	top: 3px;
}
.card .card-header .actionbar a:hover {
	color: #3768bd;
}
.card .card-top {
	width: 100%;
	height: 7.3rem;
	border-top-left-radius: 5px;
    border-top-right-radius: 5px;
	/* margin-top: -10px; */
}
.card .card-top.yellow-stars {
	background-image: url(/storage/files/bcg_yellow_star.jpg);
}
.card .card-body {
	border-radius: 5px;
	background-color: white;
}
.card .card-body.block {
	background-color: transparent;
}
.card .card-body h1 {
	font-size: 1.6rem;
}
.card .card-footer {
	background-color: transparent;
	border: 0;
}
.card .card-footer.more {
	width: 100%;
	text-align: right;
    font-size: 0.8rem;
    font-weight: 600;
	padding: 0.5rem 0.3rem;
}
.card .card-footer.more a {
    color: #b1b4be;
    text-transform: uppercase;
	text-decoration: none;
}
.card .card-footer.more a:hover {
	color: #3768bd;
}
.card .card-footer.more span {
	position: relative;
    top: 0.3rem;
    font-size: 1rem;
}
.card .card-profile {
	position: absolute;
    text-align: center;
    width: 100%;
}
.card .card-profile .user-picture {
	border: 1px solid white;
    border-radius: 50%;
    width: 85px;
	height: 85px;
    object-fit: cover;
    /* margin-top: 10px; */
}
.card .card-profile .user-name {
	color: white;
	font-size: 0.7rem;
    margin-top: 5px;
    font-weight: 600;
}
.card .card-profile .user-function {
	color: white;
	text-transform: uppercase;
	font-size: 0.7rem;
    font-weight: 600;
}

/* card body */
.card .card-body .title {
    height: 1.3rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.card.news .card-body .title {
	font-size: 1.6rem;
	font-weight: 600;
	height: auto;
    overflow: unset;
	white-space: inherit;
	line-height: 1.1;
    margin-bottom: 0.5rem;
}
.card .card-body .user-picture {
	float: left;
	width: 2rem;
	height: 2rem;
    object-fit: cover;
	border-radius: 50%;
	margin: 0.3rem 0.5rem 0.3rem 0;
}
.card .card-body .name {
	font-size: 0.7rem;
    color: #2f3544a1;
    font-weight: 600;
	padding-top: 0.5rem;
    line-height: 1;
}
.card .card-body .date {
	font-size: 0.7rem;
    color: #2f3544a1;
    font-weight: 600;
}
.card .card-body .lead {
    font-size: 0.7rem;
    font-weight: 500;
    clear: both;
/*	display: -webkit-box; */
/*    -webkit-line-clamp: 3; */
/*    -webkit-box-orient: vertical; */
    overflow: hidden;
    text-overflow: ellipsis;
}
.card.news .card-body .lead {
    font-size: 0.9rem;
    font-weight: 500;
    clear: both;
	display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.card .card-body .time {
	font-size: 0.7rem;
    color: #2f3544a1;
    font-weight: 600;
	margin-bottom: 0.5rem;
}
.card .card-body .bottom {
	width: 100%;
	text-align: right;
	margin-top: 0.5rem;
}
.card .card-body .bottom .toggle {
	font-size: 0.7rem;
    font-weight: 600;
	text-decoration: none;
}
.card .card-body .bottom .reply {
	font-size: 0.7rem;
    font-weight: 600;
	text-decoration: none;
	margin-left: 1rem;
}
.card .card-body .bottom .readmore {
	font-size: 0.7rem;
    font-weight: 600;
	text-decoration: none;
	margin-left: 1rem;
}
.card .card-body .bottom .material-icons,
.card .card-body .bottom .material-icons-outlined {
	font-size: 1rem;
    margin-right: 0.5rem;
    position: relative;
    top: 4px;
    cursor: pointer;
}
.card .card-body .bottom a.toggle .material-icons,
.card .card-body .bottom a.toggle .material-icons-outlined {
    top: 2px;
}


/* home */
#home .file-attrib div:first-of-type {
	margin-right: 0.5rem;
}
#home .card.news,
#home .card.latestnews {
	cursor: pointer;
}
#home .card.news {
	margin-bottom: 1rem;
}
#home .stream .card-body img {
	width: 100%;
	height: auto;
}
#home .card-body .lead {
	height: 3.3rem;
}
.card.todo {
	padding-bottom: 1rem;
}
.card.todo .card-top {
	background-color: #6ac3c6;
	color: white;
    background-image: url(/storage/files/bcg_cyan_todo.jpg);
	padding: 1rem 1rem;
}
.card.todo .card-top h1 {
    font-size: 1.6rem;
}
.card.todo .btn {
	border-radius: 50%;
    width: 1.2rem;
    height: 1.2rem;
    padding: 0.05rem;
}
.card.todo .btn .material-icons {
	font-size: 1rem;
}
.card.lunch li:not(:first-child),
.card.drive li:not(:first-child),
.card.todo li:not(:first-child) {
	border-top: 1px solid #b1b4be;
	margin-top: 0.5rem;
	padding-top: 0.5rem; 
}
.card.welcome .card-body {
	height: 8rem;
	overflow: hidden;
}
.card.welcome .user-function {
	text-transform: uppercase;
	height: 2.2rem;
    overflow: hidden;
}
.card.welcome .user-location {
	display: none;
}
.card.welcome .user-picture {
	float: right;
	width: 6rem;
	height: 6rem;
/*	position: relative; */
/*	top: -2.6rem; */
/*	left: -0.5rem; */
}
.card.narozeniny .card-body {
	background-color: #f85b8e;
	color: white;
	background-image: url(/storage/files/bcg_pink_cake.jpg);
    background-repeat: no-repeat;
    background-position: right 0.7rem top 0.5rem;
    background-size: 4rem;
}
.card.narozeniny .card-body #narozeniny-text {
	margin-bottom: 0.5rem;
	padding-right: 4rem;
}
.card.narozeniny .card-body #narozeniny-lide img {
	margin-top: 0.5rem;
	width: 2.3125rem;
	height: 2.3125rem;
	border-radius: 50%;
}
.card.congratulation .card-body {
	color: white;
    background-image: url(/storage/files/bcg_pink_congratulation.jpg);
	background-size: contain;
}
.card.jmeniny .card-body {
	background-color: #57c0ef;
	color: white;
    background-image: url(/storage/files/bcg_blue_calendar.jpg);
    background-repeat: no-repeat;
    background-position: right 0.7rem top 0.5rem;
    background-size: 4rem;
}
.card.calendar .card-body {
	background-color: #57c0ef;
	color: white;
    background-image: url(/storage/files/bcg_blue_calendar.jpg);
    background-repeat: no-repeat;
    background-position: right 0.7rem top 0.5rem;
    background-size: 4rem;
	margin-bottom: 0.5rem;
}
.card.calendar #jmeniny-lide img {
    border-radius: 50%;
    width: 2rem;
    height: 2rem;
	object-fit: cover;
}
.card.calendar #events {
	margin-top: 0.5rem;
}
.card.calendar #events .list-group-item {
	background-color: transparent;
    border: 0;
    color: #f0f1f4;
    font-size: 0.7rem;
    padding: 0.2rem 0;
    border-bottom: 1px #f0f1f4 solid;
	border-radius: 0;
}
.card.calendar #events .list-group-item .date {
	float: left;
    color: #f0f1f4;
}
.card.calendar #events .list-group-item .type {
	float: right;
}
.card.news .card-img-top {
	border-radius: 5px;
	min-height: 15rem;
    object-fit: cover;
}
.card.news .card-img-info {
	position: relative;
    margin-top: -15rem;
    background: linear-gradient(0deg, rgba(0,0,0,1) 10%, rgba(255,255,255,0) 100%);
    height: 15rem;
    overflow: hidden;
    padding: 9.5rem 1rem 0 1rem;
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
}
.card.news .card-img-info .title {
	color: white;
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 0.8rem;
	overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
}
.card.news .card-img-info .info {
	width: 50%;
    float: left;
    color: #b1b4be;
    font-size: 0.7rem;
    line-height: 1.1;
    font-weight: 600;
}
.card.news .card-img-info .info .user-picture {
    width: 2rem;
	height: 2rem;
    object-fit: cover;
    border-radius: 50%;
    float: left;
    margin-right: 0.5rem;
}
.card.news .card-img-info .info .name {
    padding: 0.2rem 0 0.1rem 0;
}
.card.news .card-img-info .bottom {
    width: 50%;
    float: right;
    text-align: right;
    font-size: .7rem;
    line-height: 2;
    display: inline-block;
    vertical-align: bottom;
	margin-top: 0.5rem;
}
.card.news .card-img-info .bottom a {
	font-size: 0.7rem;
    color: #b1b4be;
    margin-left: 1rem;
    text-decoration: none;
    cursor: pointer;
}
.card.news .card-img-info .bottom a span:not(.thumbs-nb) {
	font-size: 1rem;
    color: #b1b4be;
    margin-right: 0;
    position: relative;
    top: -2px;
    vertical-align: text-top;
}
.card.news .card-img-info .bottom a.toggle span:not(.thumbs-nb) {
	top: -3px;
	margin-right: 0.5rem;
}
.card.news .card-img-info .bottom a.delete span {
	top: -3px;
}
.card.news .card-img-info .bottom a:hover span,
.card.news .card-img-info .bottom a:hover {
    color: #3768bd;
}
.card.news .card-body {
	border-radius: 0 0 5px 5px;
    display: none;
}
.card.latestnews .card-body {
	height: 12em;
}
.card.latestnews .card-img-top {
	height: 12rem;
	width: 100%;
    object-fit: cover;
    object-position: center;
}
.card.todo .list-group-item,
.card.drive .list-group-item,
.card.lunch .list-group-item {
	padding: 0;
    border: 0;
}
.card.lunch .lunch-date {
    width: 3rem;
	min-width: 3rem;
    font-weight: bold;	
}
.card.todo .body,
.card.welcome .user-function,
.card.welcome .user-location,
.card.drive .file-attrib,
.card.lunch .lunch-rest {
	font-size: 0.7rem;
    color: #2f3544a1;
}
.card.todo small a,
.card.drive small a {
	text-decoration: none;
}
.card.todo .material-icons,
.card.drive .material-icons {
	font-size: 1.3rem;
}


/* news */
#news .card-body {
	height: 15rem;
}
#news .card .card-img-top {
	height: 15rem;
	width: 100%;
    object-fit: cover;
    object-position: center;
}
#news .card.news .card-img-top {
	min-height: 15rem;
	height: auto;
	width: 100%;
    object-fit: cover;
    object-position: center;
}
#news .card:not(.news) {
	margin-bottom: 1rem;
}
#news .col-md-8 .card:nth-of-type(1),
#news .col-md-4 > .card:first-of-type {
	margin-bottom: 0;
    padding-bottom: 0;
}
#news .col-md-8 .card.latestnews {
	margin-bottom: 1rem;
    padding-bottom: 0.5rem;
}
#news .lead {
	font-size: 0.9rem;
	height: 7rem;
}
#news .title {
	font-size: 1rem;
	font-weight: 600;
	margin-bottom: 0.2rem;
}
#news .card .card-body .bottom .material-icons,
#news .card .card-body .bottom .material-icons-outlined {
    font-size: 1.5rem;
}
#news .card .card-body .bottom .toggle .material-icons,
#news .card .card-body .bottom .toggle .material-icons-outlined {
    margin-right: 0.1rem;
}
#news .card .card-body .bottom .delete .material-icons-outlined {
    margin-right: 0;
    margin-left: 0.5rem;
    top: 2px;
}
#news .thumbs-nb {
	font-size: 1rem;
	top: -1px;
    position: relative;
}
#news .card {
	cursor: pointer;
}

#news .actionbar a {
    color: #4582ec;
	text-decoration: none;
}
#news .actionbar a:after {
	content: ' Nový příspěvek';
}
#news .actionbar a span {
    background-color: #4582ec;
	color: #f0f1f4;
	border-radius: 50%;
}
#news .actionbar a:hover {
    color: #3b6fc9;
	background-color: transparent;
}
#news .actionbar a:hover span {
    background-color: #3b6fc9;
}


/* drive */
#drive .card {
	margin-bottom: 1rem;
}
#drive input[type=file] {
	margin-bottom: 0rem;
	margin-top: 1rem;
}
#drive input[type=submit] {
	margin-top: 1rem;
}
#drive [placeholder="Vyhledat..."] {
	margin-bottom: 1rem;
}
#drive .valDriveFileName {
	font-weight: bold;
	float: left;
	max-width: 70%;
}
#drive .valDriveIconDownload {
	float: right;
	margin-left: 1rem;
	padding-top: 1px;
}
#drive .valDriveIconDelete {
	float: right;
}
#drive .valDriveFileSize {
    display: inline-block;
    margin-right: 1rem;
}
#drive .valDriveFileSize::after {
  	content: " bytů";
}
#drive .valDriveFileTime {
	display: inline-block;
}
#drive .valDriveRow2 {
	clear: both;
}
#drive .valDriveRequestName {
    float: left;
    font-weight: bold;
}
#drive .valDriveRequestIcon {
	float: right;
    text-decoration: none;
}
#drive .valDriveRequestText {
    max-height: 3rem;
    overflow: hidden;
}
#drive .card .card-footer.text-end {
	padding: 1rem 0 0 0;
}

/* rozdelovnik */
#driveRequestSectionVote .form-label,
#driveRequestUserIdsContainer .form-label,
#driveRequestDetail .form-label[for=naVedomi],
#driveRequestDetail .form-label[for=keSchvaleni],
#driveRequestDetail .form-label[for=historieHlasovani],
#settings .form-label[for=naVedomi],
#settings .form-label[for=keSchvaleni],
#settings .form-label[for=historieHlasovani] {
    font-weight: bold;
    display: block;
    width: 100%;
    border-bottom: 1px solid black;
}


/* address */
#addressbook .card {
	margin-bottom: 1rem;
}
#addressbook input[name=searchName] {
	margin-bottom: 0.5rem;
}
#addressbook .abLetter {
    background-color: #f0f1f4;
    font-weight: bold;
}
#addressbook .valAbStatus {
/*	position: absolute; */
/*	margin-left: 0.5rem; */
}
#addressbook .valAbStatus.offline::after {
	content: "";
	background-color: #d9534f;
	color: white!important;
	/* padding: 0.1rem 0.3rem; */
	width: 1rem;
	height: 1rem;
    display: inline-block;
    border-radius: 50%;
    font-size: 0.7rem;
    top: 2px;
    position: relative;
}
#addressbook .valAbName {
	font-weight: bold;
	float: left;
	margin-right: 1rem;
}
#addressbook .valAbPosition {
	float: right;
}
#addressbook .l2 {
	clear: both;
}
#addressbook .valAbPhone a {
	text-decoration: none;
}
#addressbook .phone a {
	text-decoration: none;
}
#addressbook .valAbEmail {
	float: left;
	margin-right: 1rem;
	color: #4582ec;
	display: inline-flex;
}
#addressbook .valAbEmail a {
	text-decoration: none;
    display: inline-flex;
}
#addressbook .email a {
	text-decoration: none;
	color: #4582ec;
	cursor: pointer;
}
#addressbook .valAbEmail .material-icons-outlined {
	font-size: 1rem;
    top: 0.2rem;
    position: relative;
}
#addressbook .valAbPhone .material-icons-outlined {
	font-size: 0.9rem;
    top: 0.1rem;
    position: relative;
}
#addressbook .valAbBranch {
	float: right;
}
#addressbook .contact {
	cursor: pointer;
	overflow: hidden;
}
#addressbook #address-detail .name {
	font-weight: bold;
    color: black;
    font-size: 1rem;
	margin-bottom: 0;
	min-width: 13rem;
}
#addressbook #address-detail .img-fluid {
    width: 6rem;
    height: 6rem;
    object-fit: cover;
    border-radius: 50%;
    margin: 0 auto;
    display: block;
    margin-bottom: 0.5rem;
	min-width: 6rem;
}
#addressbook #address-detial hr {
    margin: 0.5rem 0 0.3rem 0;
}
#addressbook #address-detail strong {
	display: block;
	font-size: 0.7rem;
	margin-top: 0.2rem;
}
#addressbook #address-detail .col-4 {
	width: auto;
}
#addressbook #address-detail .position {
	line-height: 1.2;
    display: inline-block;
    margin-top: 0.5rem;
	color: #2f3544a1;
}

/* calendar */
#lunches .form-group label,
#absences .form-group label,
#calendar .form-group label {
    margin-bottom: 0.5rem;
}
#absences .card .card-header .actionbar,
#calendar .card .card-header .actionbar {
    max-height: 1rem;
    margin-top: -2rem;
}
#absences .card .card-header .actionbar a,
#calendar .card .card-header .actionbar a {
    color: #4582ec;
}
#absences .card .card-header .actionbar a span,
#calendar .card .card-header .actionbar a span {
    background-color: #4582ec;
	color: #f0f1f4;
	padding: 0;
}
#absences .card .card-header .actionbar a:hover,
#calendar .card .card-header .actionbar a:hover {
    color: #3b6fc9;
	background-color: transparent;
}
#absences .card .card-header .actionbar a:hover span,
#calendar .card .card-header .actionbar a:hover span {
    background-color: #3b6fc9;
}
#calendar .fc-col-header-cell-cushion {
	text-decoration: none;
	color: #2f3544;
}
#calendar #user {
	margin-bottom: 0.5rem;
}
#calendar #ctype {
	margin-bottom: 1rem;
}
#calendar .fc-event-time {
	display: none;
}
.fc .eventTypeAttendance .fc-list-event-dot,
#calendar a.eventTypeAttendance {
	border-color: #6ac3c6;
	background-color: #6ac3c6;
}
.fc .eventTypeAbsence .fc-list-event-dot,
#calendar a.eventTypeAbsence {
	border-color: #f85b8e;
	background-color: #f85b8e;
}
.fc .eventTypeOther .fc-list-event-dot,
#calendar a.eventTypeOther {
	border-color: #57c0ef;
	background-color: #57c0ef;
}
.fc .absenceStatusSent .fc-list-event-dot,
#calendar a.absenceStatusSent {
	border-color: #868e96;
	background-color: #868e96;
}
.fc .absenceStatusDenied .fc-list-event-dot,
#calendar a.absenceStatusDenied {
	border-color: rgb(217, 83, 79);
	background-color: rgb(217, 83, 79);
}
.fc .fc-daygrid-day.fc-day-today {
    background-color: rgb(240 241 244 / 25%);
}
.fc .fc-daygrid-day.fc-day-today .fc-daygrid-day-number {
	font-weight: bold;
}
.fc .fc-highlight {
    background-color: rgb(240 241 244 / 25%);
}
#calendar .fc-list-event {
	cursor: pointer;
}


/* absences */
#calendar .card,
#absences .card {
	margin-bottom: 1rem;
}
#calendar .col-dochazka,
#absences .col-dochazka {
	width: 0.8rem;
	height: 0.8rem;
	background-color: #6ac3c6;
	border-radius: 50%;
	display: inline-block;
    margin-right: 0.5rem;
}
#calendar .col-nepritomnost,
#absences .col-nepritomnost {
	width: 0.8rem;
	height: 0.8rem;
	background-color: #f85b8e;
	border-radius: 50%;
	display: inline-block;
    margin-right: 0.5rem;
}
#calendar .col-udalost,
#absences .col-udalost {
	width: 0.8rem;
	height: 0.8rem;
	background-color: #57c0ef;
	border-radius: 50%;
	display: inline-block;
    margin-right: 0.5rem;	
}
#calendar .col-veschvalovani,
#absences .col-veschvalovani {
	width: 0.8rem;
	height: 0.8rem;
	background-color: #868e96;
	border-radius: 50%;
	display: inline-block;
    margin-right: 0.5rem;	
}
#calendar .col-schvaleno,
#absences .col-schvaleno {
	width: 0.8rem;
	height: 0.8rem;
	background-color: #02b875;
	border-radius: 50%;
	display: inline-block;
    margin-right: 0.5rem;	
}
#calendar .col-zamitnuto,
#absences .col-zamitnuto {
	width: 0.8rem;
	height: 0.8rem;
	background-color: #d9534f;
	border-radius: 50%;
	display: inline-block;
    margin-right: 0.5rem;	
}
#calendar .own-range-fields,
#absences .own-range-fields {
	margin-top: 0.5rem;
}
#absences #cuser,
#absences #ctype,
#absences .col-6 label {
	margin-bottom: 0.5rem;
}
#absences #cdate_from {
	margin-bottom: 1rem;
}
#calendar .valAbsStartEnd,
#absences .valAbsStartEnd {
	float: left;
}
#absences .valAbsType {
	float: right;
}
#calendar .valAbsText,
#calendar .valAbsReason,
#absences .valAbsText,
#absences .valAbsReason {
	clear: both;
	font-weight: bold;
}
#calendar .valAbsComment,
#absences .valAbsComment {
	font-size: 0.7rem;
    color: #2f3544a1;
	clear: both;
}
#calendar .valAbsStatus,
#absences .valAbsStatus {
	display: none;
}
#calendar .modal .valAbsStatus,
#absences .modal .valAbsStatus,
#absences .col-md-8 .valAbsStatus {
	padding: 0.1rem 0.3rem;
    margin-left: 1rem;
    display: inline-block;
    background-color: #868e96;
    border-radius: 5px;
    font-size: 0.7rem;
    color: white;
    top: -2px;
    position: relative;
}
#calendar .modal .valAbsStatus.absenceStatusDenied,
#absences .modal .valAbsStatus.absenceStatusDenied {
	background-color: #d9534f;
}
#calendar .modal .valAbsStatus.absenceStatusApproved,
#absences .modal .valAbsStatus.absenceStatusApproved {
	background-color: #02b875;
}
#calendar .valAbsBtDeny ,
#absences .valAbsBtDeny{
	float: left;
	margin-top: 0.5rem;
}
#calendar .valAbsBtDeny a,
#absences .valAbsBtDeny a {
	width: 7rem;
}
#calendar .valAbsBtApprove,
#absences .valAbsBtApprove {
	float: right;
	margin-top: 0.5rem;
}
#calendar .valAbsBtApprove a,
#absences .valAbsBtApprove a {
	width: 7rem;
}
#calendar .valAbsName,
#absences .valAbsName {
	float: right;
}
#absences .card {
	margin-bottom: 1rem;
}
#calendar .col-md-8 .calEventItem,
#absences .col-md-8 .calEventItem {
	cursor: pointer;
}
#absences .col-md-8 .calEventItem:hover {
    background-color: rgb(240 241 244 / 25%);
}
#absences .eventTypeAttendance {
	border-left: 5px  #6ac3c6 solid;
}
#absences .eventTypeAbsence {
	border-left: 5px  #f85b8e solid;
}
#absences .eventTypeOther {
	border-left: 5px  #57c0ef solid;
}
/* streams */
#streams trix-editor {
	min-height: 10rem;
}
#streams .info {
	width: 50%;
}

#streams .card .card-body .bottom .material-icons,
#streams .card .card-body .bottom .material-icons-outlined {
    font-size: 1.5rem;
}
#streams .card .card-body .bottom .toggle .material-icons,
#streams .card .card-body .bottom .toggle .material-icons-outlined {
    margin-right: 0.1rem;
}
#streams .card .card-body .bottom .delete .material-icons-outlined {
    margin-right: 0;
    margin-left: 0.5rem;
    top: 2px;
}
#streams .thumbs-nb {
	font-size: 1rem;
	top: -1px;
    position: relative;
}
#streams .col.streams .card > .card-body {
	    border-left: 5px #4582ec solid;
}
#streams .col.streams .replies .card > .card-body {
		border-left: 5px #dee2e6 solid;
}	
#streams .replies form {
	background-color: #dee2e6;
    padding: 1rem;
    margin-right: 0.5rem;
    border-radius: 5px;
}


/* lunches */
#lunches .col-lg-8 .card {
	padding-bottom: 0;
}
#lunches .row-cols-md-2 .card {
	margin-bottom: 1rem;
}
#lunches .date {
	font-size: inherit;
    font-weight: bold;
    color: initial;
    float: left;
    width: 6rem;
}
#lunches .food {
	float: left;
}
#lunches .price {
	float: right;
}
#lunches .radek2 {
	clear: both;
}
#lunches .restaurant {
/*	margin-left: 6rem; */
	font-size: 0.7rem;
    color: #2f3544a1;
}
#lunches .card .card-img-top {
    height: 15rem;
    width: 100%;
    object-fit: cover;
    object-position: center;
}
#lunches .col-lg-8 .card-body {
    min-height: 18rem;
}
#lunches .title {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 0.2rem;
	color: black;
}
#lunches .web,
#lunches .email,
#lunches .address {
    font-size: 0.7rem;
    color: #2f3544a1;
    font-weight: 600;
    padding-top: 0.5rem;
    line-height: 1;
}
#lunches .web {
	margin-top: 1.3rem;
	position: absolute;
	color: #4582ec;
	cursor: pointer;
}
#lunches .email {
	margin-top: 0.2rem;
	position: absolute;
	color: #4582ec;
	cursor: pointer;
}
#lunches .web:hover,
#lunches .email:hover {
	color: #3768bd;
}
#lunches .description {
    font-size: 0.9rem;
    height: 10.8rem;
	overflow: hidden;
	padding-top: 0.5rem;
	color: black;
}
#lunches .bottom {
	width: 100%;
    text-align: right;
    margin-top: 0.5rem;
	clear: both;
}
#lunches .bottom .nabidka {
    font-size: 1.3rem;
    font-weight: 600;
    text-decoration: none;
}
#lunches .bottom .material-icons, 
#lunches .bottom .material-icons-outlined {
    font-size: 1.5rem;
    margin-left: 0.5rem;
    margin-right: 0;
    position: relative;
    top: 4px;
    cursor: pointer;
}
/* menu detail */
#lunches .row-cols-md-2 .row-cols-1 strong {
	font-size: 0.8rem;
}
#lunches .row-cols-md-2 .list-group {
    margin-bottom: 0.5rem;
}
#lunches .row-cols-md-2 .list-group .list-group-item strong {
	font-weight: 500;
}

/* news-detail */
#news-detail .actionbar a {
    color: #4582ec;
    text-decoration: none;
}
#news-detail .actionbar a span {
	background-color: #4582ec;
    color: #f0f1f4;
    border-radius: 50%;
    padding: 5px;
    font-size: 14px;
	vertical-align: top;
}
#news-detail .actionbar a:hover {
    color: #3b6fc9;
	background-color: transparent;
}
#news-detail .actionbar a:hover span {
    background-color: #3b6fc9;
}
#news-detail .actionbar a span.unipost {
	margin-left: 1rem;
}
#news-detail .actionbar a:nth-of-type(1)::after {
	content: " Upravit";
	margin-right: 1rem;
}
#news-detail .actionbar a:nth-of-type(2)::after {
	content: " Připnout";
}

/* user profile */
#profile .me-4 {
	text-align: center;
}
#profile .actionbar a {
    color: #4582ec;
    text-decoration: none;
}
#profile .actionbar a span {
	background-color: #4582ec;
    color: #f0f1f4;
    border-radius: 50%;
    padding: 5px;
    font-size: 14px;
	vertical-align: top;
}
#profile .actionbar a:hover {
    color: #3b6fc9;
	background-color: transparent;
}
#profile .actionbar a:hover span {
    background-color: #3b6fc9;
}


/* hamburger menu */
#navBarHamburger .flex-column {
    flex-direction: row!important;
    flex-flow: row wrap;
    gap: 0.5rem 0rem;
    justify-content: center;
	margin-top: 0.5rem;
}
#navBarHamburger .flex-column li {
	min-width: 5rem;
}
#navBarHamburger .navbar-nav:nth-of-type(3) {
	display: flex;
    flex-flow: row;
    justify-content: space-around;
	margin-top: 1rem;
}
#navBarHamburger .navbar-nav:nth-of-type(3) li {
	min-width: 8rem;
	text-align: center;
}
#navBarHamburger .navbar-nav:nth-of-type(3) li.dropdown {
	min-width: 10rem;
}
#navBarHamburger .navbar-nav:nth-of-type(3) li.dropdown .dropdown-menu {
	position: absolute;
}


/* profile */
#profile .card-body {
	min-height: 200px;
}
#profile .img-fluid {
	border-radius: 50%;
}


/* settings */
#settings td {
	max-width: 10rem;
}
#settings #sidebar .nav-item ul {
	display: none!important;
}
#settings .table th .d-flex {
    max-height: 23px;
    overflow: hidden;
}
#settings .table  td a {
	text-decoration: none;
}


/**** MOBILE DISPLAY ****/ 
#addressbook .ab-mobile {
	display: none;
}

@media (max-width: 768px) {
/*** mimo AP vypnout ***/
	.card .card-footer.more a {
		color: #2f3544;
	}
	
	#main-nav {
		height: auto;
	}
	
	#main-container {
		margin-bottom: 4rem;
	}
	
	#addressbook .col-md-4 .card.mt-3 {
		display: none;
	}
	#addressbook .ab-mobile {
		display: block;
		clear: both;
		padding: 0.5rem 0 0.5rem 0;
	}
	#addressbook .ab-mobile .ab-mail {
		float: left;
    	border-radius: 50%;
    	border: 0;
    	width: 3rem;
    	height: 3rem;
    	padding-top: 0.3rem;
	}
	#addressbook .ab-mobile .ab-call {
		float: right;
    	border-radius: 50%;
    	border: 0;
    	width: 3rem;
    	height: 3rem;
    	padding-top: 0.3rem;
	}
	
	#news-detail .card-body .p-4 {
		padding: 0!important;
	}
	#news-detail .card-body .p-4 .me-4 {
		margin-right: 0!important;
	}
	
	#home .card.welcome {
/*		display: none; */
	}
	
	#news .card.news .card-img-top,
	.card.news .card-img-top {
	    min-height: 25rem;
	}
	
	.card.todo small,
	.card.drive small a,
	.card .card-footer.more a {
	    zoom: 1.4;
	}
	
	.card.todo small .btn-danger {
	    margin-right: 0.5rem;
	}
}




/**** CUSTOM CSS ****/


.page h3 {
	font-weight: bold;
	font-size: 0.8rem;
	color: #2f3544;
}

.streams article,
.page .box {
	background-color: white;
	width: 100%;
	border-radius: 5px;
	margin-bottom: 1rem;
	min-height: 5rem;
}
.page .box .header {
	background-size: cover;
    height: 25rem;
    border-radius: 5px 5px 0 0;
    background-repeat: no-repeat;
    width: 100%;
	display: flex;
}
.page .box .header .title {
	width: 100%;
    /* background-color: rgb(0 0 0 / 50%); */
	background: linear-gradient(rgb(0 0 0 / 0%), rgb(0 0 0 / 100%) 80%);
    color: white;
    padding: 1rem;
    align-self: flex-end;
    margin: 0;
}
.page .box .header .title h1 {
	font-size: 1.6rem;
}
.page .box .header .title h2 {
	font-size: 0.6rem;
}
.page .box .body {
	padding: 1rem;
	font-size: 0.9rem;
	font-weight: normal;
	color: black;
}