/************************* Custom Defined Styles and Animations *****************************/

/* Text Utilities */
.text-underline {
	text-decoration: underline;
}

/* Additional Colors and Backgrounds for the elements */
.bg-grey {
	background-color: rgb(223,223,223);
}
.bg-lightgrey {
	background-color: rgb(239,239,239);
}

/* Prepending and Appending Symbols to the Element */
.prepend-hash {
	position: relative;
	margin-left: 25px;
}
.prepend-hash::before {
	position: absolute;
	left: -22px;
	content: '#';
	font-size: 2rem;
}

.prepend-hash-hover {
	position: relative;
	margin-left: 25px;
}
.prepend-hash-hover::before {
	position: absolute;
	left: -22px;
	content: '#';
	font-size: 2rem;
	opacity: 0;
	transition-timing-function: ease-in;
	transition-duration: 0.5s;
}
.prepend-hash-hover:hover::before {
	opacity: 1;
}

.prepend-color-primary::before {
	color: #9c27b0;
}
.prepend-color-success::before {
	color: #4caf50;
}
.prepend-color-info::before {
	color: #00bcd4;
}
.prepend-color-secondary::before {
	color: #999;
}
.prepend-color-warning::before {
	color: #ff9800;
}
.prepend-color-danger::before {
	color: #f44336;
}
.prepend-color-rose::before {
	color: #e91e63;
}

/* Underline Growing Effect for the Title */
.underline-left-anim {
	position: relative;
	display: inline-block;
	cursor: pointer;
	margin-bottom: 15px;
}
.underline-left-anim::after {
	content: "";
	position: absolute;
	bottom: -10px;
	width: 0;
	height: 5px;
	left: 0;
	margin: 5px 0 0;
	transition-timing-function: ease-in-out;
	transition-duration: 0.75s;
	opacity: 0;
	background-color: #d34eb4;
}
.underline-left-anim:hover::after {
	width: 100%;
	opacity: 1;	
}
.underline-anim-controller:hover .underline-left-anim::after {
	width: 100%;
	opacity: 1;	
}

.underline-right-anim {
	position: relative;
	display: inline-block;
	cursor: pointer;
	margin-bottom: 15px;
}
.underline-right-anim::after {
	content: "";
	position: absolute;
	bottom: -10px;
	width: 0;
	height: 5px;
	right: 0;
	margin: 5px 0 0;
	transition-timing-function: ease-in-out;
	transition-duration: 0.75s;
	opacity: 0;
	background-color: #d34eb4;
}
.underline-right-anim:hover::after {
	width: 100%;
	opacity: 1;	
}
.underline-anim-controller:hover .underline-right-anim::after {
	width: 100%;
	opacity: 1;	
}

/********************* Overrinding Default (Bug Fixes & Improvements) ************************/

/* Disabling the Margin Bottom of the Navbar */
.navbar {
	margin-bottom: 0;
}

/* NavBar Item DropDown Triangle fix */
.nav-item.dropdown>.dropdown-toggle::after {
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}
.nav-item.dropdown.show>.dropdown-toggle::after {
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

/* Navbar (Sliding) has active Item color less */
.navbar-collapse.show .nav-item.active {
	color: black;
	font-weight: bold;
}