html, body {
  overflow-x: hidden; /* Prevent scroll on narrow devices */
  
}

body {
  padding-top: 56px;
}

@media (max-width: 991.98px) {
  .offcanvas-collapse {
    position: fixed;
    top: 56px; /* Height of navbar */
    bottom: 0;
    left: 100%;
    width: 100%;
    padding-right: 1rem;
    padding-left: 1rem;
    overflow-y: auto;
    visibility: hidden;
    background-color: #343a40;
    transition: transform .3s ease-in-out, visibility .3s ease-in-out;
  }
  .offcanvas-collapse.open {
    visibility: visible;
    transform: translateX(-100%);
  }
}

.nav-scroller {
  position: relative;
  z-index: 2;
  height: 2.75rem;
  overflow-y: hidden;
}

.nav-scroller .nav {
  display: flex;
  flex-wrap: nowrap;
  padding-bottom: 1rem;
  margin-top: -1px;
  overflow-x: auto;
  color: rgba(255, 255, 255, .75);
  text-align: center;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
}

.nav-underline .nav-link {
  padding-top: .75rem;
  padding-bottom: .75rem;
  font-size: .875rem;
  color: #6c757d;
}

.nav-underline .nav-link:hover {
  color: #007bff;
}

.nav-underline .active {
  font-weight: 500;
  color: #343a40;
}

@media (max-width: 991.98px) {
	/* Force table to not be like tables anymore */
	#table table,
	#table thead,
	#table tbody,
	#table th,
	#table td,
	#table tr {
		display: block;
	}
	 
	/* Hide table headers (but not display: none;, for accessibility) */
	#table thead tr, #table tfoot tr {
		display: none;
	}
	
	#table tbody {
		border-top: 1px solid #ccc; 
	}
	 
	#table tr { 
		border-bottom: 1px solid #ccc; 
	}
	  
	#table td {
		/* Behave like a "row" */
		border: none;
		/*border-bottom: 1px solid #eee;*/
		position: relative;
		padding-left: 40%;
		white-space: normal;
		text-align:left;
	}
	 
	#table td:before {
		/* Now like a table header */
		position: absolute;
		/* Top/left values mimic padding */
		top: 6px;
		left: 6px;
		width: 40%;
		padding-right: 10px;
		white-space: nowrap;
		text-align:left;
		font-weight: bold;
	}
	 
	/*
	Label the data
	*/
	#table td:before { 
		content: attr(data-title); 
	}
}

/*
DataTables
*/

#table_filter, #table_length, #table_info, #table_paginate, #table_bulk {
	margin: 2em;	
}

#table_filter {
	text-align: right;
}
#table_length {
	text-align: left;
}
#table_info {
	margin-bottom: 1em;	
}
#table_paginate {
	float: right;	
}

/*
Image checkbox
*/
.image-checkbox {
    display: none;
}

label {
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

label::before {
    background-color: #fff;
    color: #fff;
    content: " ";
    display: block;
    border-radius: 50%;
    border: 1px solid grey;
    position: absolute;
    top: -5px;
    left: -5px;
    width: 25px;
    height: 25px;
    text-align: center;
    transition-duration: 0.4s;
    transform: scale(0);
}

label img {
    transition-duration: 0.2s;
    transform-origin: 50% 50%;
}

.image-checkbox:checked+label {
    border-color: #ddd;
}

.image-checkbox:checked+label::before {
    content: "✓";
    background-color: grey;
    transform: scale(1);
}

.image-checkbox:checked+label img {
    box-shadow: 0 0 5px #333;
    z-index: -1;
}

