label
{
	font-weight: normal !important;
}

.application-sidebar
{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 300px;
	padding: 10px;
	overflow: auto;
}

.application-content
{
	position: absolute;
	bottom: 0;
	left: 300px;
	right: 0;
	padding-top: 15px;
	padding-left: 7px;
}

/* Leave enough space for the header bar */
body .application-sidebar, body .application-content
{
	top: 49px;
}

/* Take into account the impersonation header bar */
body.impersonating .application-sidebar, body.impersonating .application-content
{
	top: 95px;
}

#calendar th
{
	font-weight: normal;
}

.sidebar-item
{
	width: 100%;
	margin-bottom: 5px;
	margin-top: 5px
}

#sidebar .glyphicon
{
	margin-top: 2px;
	margin-left: 4px;
}

/* Add left indents to each sub-list in the sidebar. */
#sidebar .nav-list
{
	margin-left: 15px;
	padding-right: 0;
}

#sidebar #tool_tree.nav-list, #sidebar #area_tree.nav-list, #sidebar #extra-links.nav-list
{
	margin-left: 0;
}

#sidebar a
{
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 4px;
}

#sidebar #tool_tree a, #sidebar #area_tree a
{
	padding-left: 0;
}

#extra-links a
{
	padding-left: 0;
	padding-top: 0;
	padding-bottom: 0;
}

#sidebar label
{
	width: 100%;
	margin: 0;
}

#sidebar fieldset
{
	margin-top: 15px;
	border: none;
	border-top: 1px dotted #c0c0c0;
}

#sidebar fieldset legend
{
	color: #333;
	padding: 0 10px;
	margin: 0 0 5px;
	text-align: center;
	position: relative;
	width: initial;
	border: 1px dotted #c0c0c0;
	font-size: 16px;
	cursor: pointer;
}

.item_tree div, #extra-links div
{
	width: 100%;
	cursor: pointer;
	font-weight: normal;
}

.item_tree div:hover
{
	background-color: #eeeeee;
}

#sidebar .selected
{
	background-color: #e7e7e7;
}

#sidebar .disabled
{
	opacity: .4;
}

.status-icon
{
	font-size: 1.5em;
	margin-right: 10px;
}

.notification-icon
{
	font-size: 2.5em;
	margin-right: 5px;
}

.small-icon
{
	margin-right: 5px;
}

.primary-highlight
{
	color: #428bca;
}

.success-highlight
{
	color: #22b14c;
}

.warning-highlight
{
	color: #f0ad4e;
}

.danger-highlight
{
	color: red;
}

.grey
{
	color: grey;
}

.light-grey
{
	color: lightgrey;
}

.hover-black:hover
{
	color: black;
}

.chevron
{
	color: lightgrey;
	padding-right: 10px;
}

.pointer
{
	cursor: pointer;
}

.italic
{
	font-style: italic;
}

.table-in-well *
{
	background-color: transparent !important;
}

.table.table-align-middle > tbody > tr > td
{
     vertical-align: middle;
}

table > tbody > tr.no-border > td, table > tbody > tr.no-border > th,
table > thead > tr.no-border > td, table > thead > tr.no-border > th
{
	border: none;
}

.table .thead-light th, .table.thead-light th
{
    color: #495057;
    background-color: #e9ecef;
    border-color: #dee2e6;
}

.split-screen-left-panel
{
	position: absolute;
	top: 120px;
	bottom: 0;
	width: 50%;
	overflow-y: scroll;
}

.split-screen-right-panel
{
	position: absolute;
	top: 120px;
	bottom: 0;
	width: 50%;
	overflow-y: scroll;
	overflow-x: hidden;
	left: 50%;
	padding-left: 12px;
	padding-right: 24px;
}

.datetimepicker-container
{
	display: inline-block;
	position: relative;
}

.extra-side-padding
{
	padding-left: 5px;
	padding-right: 5px;
}

.small-input
{
	max-width: 125px;
}

/* Overrides the styling of un-editable Full Calendar events. Makes the cursor
appear as a pointer (rather than text selector) when mousing over event text. */
.fc-title
{
	pointer-events: none;
}

/* Adds more space between event and side so users can more easily click to create new events */
div.fc-ltr .fc-time-grid .fc-event-container
{
    margin-right: 10%;
}

/* Twitter typeahead styles */
.twitter-typeahead
{
	display: block !important;
}

/* The hint is the portion of text that comes after what you've typed to suggest word completion. */
.tt-hint
{
	color: #999999
}

/* This styles the dropdown menu of possible search results. */
.tt-dropdown-menu
{
	margin-top: 4px;
	padding: 4px 0;
	background-color: #ffffff;
	border: 1px solid #cccccc;
	border-radius: 4px;
	box-shadow: 0 5px 10px rgba(0, 0, 0, .2);
	max-height: 150px;
	overflow-y: auto;
}

/* Override Bootstrap's media and media-body CSS settings so that the
Twitter Typeahead autocomplete dropdown menu isn't chopped off. */
.media, .media-body
{
	overflow: visible;
	min-height: 35px;
}

/* The suggestion style encases the matching part of the query in each of the search results. */
/* Zero out some padding and margin properties. */
.tt-suggestion
{
	padding: 3px 20px;
	line-height: 20px;
	cursor: pointer;
}

.tt-suggestion p
{
	margin: 0;
}

/* The style of the search result that the mouse is hovering over. */
.tt-suggestion.tt-cursor
{
	color: #fff;
	background-color: #0097cf;
}

.page-footer
{
	margin-top: 20px;
  	border-top: 1px solid #eee;
	line-height: 40px;
	text-align: center;
}

.body-container
{
	/* 100 viewport - header (height+border+margin) - footer (height+border+margin) */
	min-height: calc(100vh - 71px - 61px);
}

.customization-section-title
{
	margin-bottom: 20px;
	margin-top: 5px;
}

.customization-separation
{
	margin-bottom: 15px;
	margin-left: -15px;
	margin-right: -15px;
	border-top: 1px solid #ddd
}

.customization-input-file
{
	color: transparent;
	display: inline-block !important;
	margin-right: -170px;
}

.navbar-preferences > a
{
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.navbar-preferences > a > img
{
	width: 19px;
	height: 19px;
}

/* Customization of time picker CSS */
.picker__list small
{
    color: #999;
    float: right;
    line-height: 1.5;
}

.picker__list span
{
	color: #999;
}

/* Customization of search result group item */
.list-group-item
{
	margin-bottom: 5px;
}

.tool-status
{
	margin-bottom: 30px;
}

.danger-status
{
	margin-bottom: 30px;
}

.warning-status
{
	margin-bottom: 30px;
}

.tool-comments, .tool-problems
{
	margin-bottom: 30px;
}

.danger-status .media-heading, .danger-status .media-middle, .danger-status .media-bottom
{
	display: block;
}

.warning-status .media-heading, .warning-status .media-middle, .warning-status .media-bottom
{
	display: block;
}

.tool-comments .media-heading, .tool-comments .media-middle, .tool-comments .media-bottom
{
	display: block;
}

.tool-problems .media-heading, .tool-problems .media-middle, .tool-problems .media-bottom
{
	display: block;
}

.danger-status .media-heading
{
	font-weight: 600;
    line-height: 1.1;
	font-size: x-large;
}

.warning-status .media-heading
{
	font-weight: 500;
    line-height: 1.1;
	font-size: large;
}

.danger-status .media-bottom, .warning-status .media-bottom, .tool-comments .media-bottom, .tool-problems .media-bottom
{
	color: grey;
	font-style: italic;
}

.danger-status .media-middle
{
	font-size: large;
}

.warning-status .media-bottom, .tool-comments .media-bottom, .tool-problems .media-bottom
{
	font-size: small;
}

.tool-problems .media-heading
{
	font-size: medium;
	font-weight: 500;
}

.tool-rates
{
	margin-top: 5px;
}

.tool-counters
{
	margin-top: 5px;
	display: table;
}

.tool-counter
{
	display: table-row;
}

.tool-counter-name, .tool-counter-description, .tool-counter-reset
{
	display: table-cell;
	padding-right: 10px;
	padding-top: 10px;
	vertical-align: middle;
}

.tool-counter-description
{
	padding-left: 10px;
	font-style: italic;
}

.jumbotron-body
{
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	background-attachment: fixed;
}

#jumbotron-container .table-bordered td, #jumbotron-container .table-bordered th
{
	background:rgba(255, 255, 255, 0.7)
}

.spinner-full-page
{
	position: absolute;
    opacity: 0.75;
    width: 100%;
    height: 100%;
	z-index: 99999;
}

.spinner-container
{
	text-align: center;
	background-color: #ffffff;
	font-size: 70px;
	color: #bfbfbf;
}

.spinner-container .normal-right-spinner
{
	top: calc(50% - 70px);
}

.glyphicon.normal-right-spinner
{
    -webkit-animation: glyphicon-spin-r 2s infinite linear;
    animation: glyphicon-spin-r 2s infinite linear;
}

@-webkit-keyframes glyphicon-spin-r
{
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}

@keyframes glyphicon-spin-r
{
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}

ul.area-tree-list
{
	list-style: none;
	padding-left: 32px;
}

.login-tree ul.area-tree-list
{
	padding-left: 24px;
}

ul.area-tree-root > li.area-tree-node {
	padding-left: 0;
}

li.area-tree-leaf
{
	list-style: none;
}

li.area-tree-node a, li.area-tree-node a:hover, li.area-tree-node a:focus
{
	color: inherit;
	text-decoration: none;
	cursor: pointer;
	display: inline-block;
	margin-top: 5px;
	margin-bottom: 20px;
}

.login-tree li.area-tree-node a
{
	margin-bottom: 0;
}

.contact-info-tooltip-container + .tooltip > .tooltip-inner,
.contact-info-tooltip-container > .tooltip > .tooltip-inner
{
	max-width: initial;
	text-align: left;
	padding: 10px 16px;
}

.contact-info-tooltip-container + .tooltip > .tooltip-inner a,
.contact-info-tooltip-container > .tooltip > .tooltip-inner a
{
	color: #b0dbff;
}

.requests-description-container
{
	display: table-row;
}

.requests-description, .requests-description-info
{
	display: table-cell;
}

.requests-description
{
	font-size: large;
	font-style: italic;
}

.requests-description-info
{
	padding-right: 10px;
}

.buddy-system-requests
{
	margin-top: 20px;
}

.buddy-list
{
	margin-top: 10px;
}

.buddy-list-item
{
	display: table;
	width: 100%;
	margin-bottom: 5px;
}

.buddy-list-item:first-child
{
	margin-top: 10px;
}

.buddy-list-item-reply
{
	margin-top: 5px;
}

.buddy-list-item-reply textarea
{
	padding: 10px;
}

.buddy-list-item-description, .buddy-list-item-buttons
{
	display: table-cell;
	padding: 10px;
}

.buddy-list-item-reply textarea, .buddy-list .buddy-list-item.list-group-item-info
{
	border-radius: 8px;
}

.buddy-list-item-buttons
{
	vertical-align: middle;
	text-align: right;
	white-space: nowrap;
}

.buddy-list-item-reply, .buddy-list-item-message
{
	float: right;
	width: 90%;
}

.buddy-list-item-message-user
{
	position: absolute;
	top: 5px;
	right: 5px;
	font-size: x-small;
}

.buddy-list-item-reply-buttons
{
	margin: 15px 0;
	padding: 0 10px;
}

.buddy-list-day
{
	margin-top: 20px;
	padding-inline-start: 40px;
	font-size: large;
}

/* Make tooltips in consumable opaque */
#withdrawal_form_order .tooltip
{
	opacity: 1 !important;
}

#consumables_order
{
	margin-right: 5%;
	margin-left: 5%;
	height: 100%;
	padding-bottom: 100px;
	overflow-y: scroll;
}

/* Make consumable order stay in place for small screens */
@media (max-width: 992px)
{
	#consumables_order.affix
	{
		position: static;
		margin-right: 0 !important;
		margin-left: 0 !important;
	}
}

/* Pagination */
.button-column-minimum
{
    width: 1px;
    white-space: nowrap;
    word-break: keep-all;
}

.pagination-column a
{
    color: inherit;
}

.pagination-column
{
	display: flex;
    justify-content: space-between;
    white-space: nowrap;
}

.pagination-column .glyphicon
{
	font-size: 10px;
	padding-left: 5px;
	vertical-align: middle;
}

/* Badge display on top right corner */
.badge.badge-tab-top
{
	z-index: 5;
	position: absolute;
	top: -0.5em;
	right: -0.5em;
}

.active > a > .badge.badge-tab-top
{
	color: #fff !important;
	background-color: red !important;
}

.nav-pills.nav-pills-spacer > li + li
{
	margin-left: 8px;
}

.nav-pills > li
{
	background-color: #eee;
	text-decoration: none;
	border-radius: 4px;
}

/* Table striped every 2 */
.table-double-stripped tbody tr:nth-child(4n+1), .table-double-stripped tbody tr:nth-child(4n+2)
{
	background-color: #f9f9f9;
}

.sticky
{
	position: sticky;
	position: -webkit-sticky;
	left: 0;
	background-color: #fff;
	z-index: 1;
}
