main > .container, main > .container-fluid
{
    padding: 70px 15px 20px;
}

.footer {
    font-size: .9em;
    height: 60px;
}

.footer > .container, .footer > .container-fluid {
    padding-right: 15px;
    padding-left: 15px;
}

.not-set {
    color: #c55;
    font-style: italic;
}

/* add sorting icons to gridview sort links */
a.asc:after, a.desc:after {
    content: '';
    left: 3px;
    display: inline-block;
    width: 0;
    height: 0;
    border: solid 5px transparent;
    margin: 4px 4px 2px 4px;
    background: transparent;
}

a.asc:after {
    border-bottom: solid 7px #212529;
    border-top-width: 0;
}

a.desc:after {
    border-top: solid 7px #212529;
    border-bottom-width: 0;
}

.grid-view th,
.grid-view td:last-child {
    white-space: nowrap;
}

.grid-view .filters input,
.grid-view .filters select {
    min-width: 50px;
}

.hint-block {
    display: block;
    margin-top: 5px;
    color: #999;
}

.error-summary {
    color: #a94442;
    background: #fdf7f7;
    border-left: 3px solid #eed3d7;
    padding: 10px 20px;
    margin: 0 0 15px 0;
}

/* align the logout "link" (button in form) of the navbar */
.navbar form > button.logout {
    padding-top: 7px;
    color: rgba(255, 255, 255, 0.5);
}

@media(max-width:767px) {
    .navbar form > button.logout {
        display:block;
        text-align: left;
        width: 100%;
        padding: 10px 0;
    }
}

.navbar form > button.logout:focus,
.navbar form > button.logout:hover {
    text-decoration: none;
    color: rgba(255, 255, 255, 0.75);
}

.navbar form > button.logout:focus {
    outline: none;
}

@media (min-width: 576px) {
  #message-area .dropdown-lg {
    width: 520px;
  }
}

/* style breadcrumb widget as in previous bootstrap versions */
.breadcrumb {
    background-color: var(--bs-gray-200);
    border-radius: .25rem;
    padding: .75rem 1rem;
}

.breadcrumb-item > a
{
    text-decoration: none;
}


#overlay {
    position: fixed;
    height: 100%;
    width: 100%;
    z-index: 9999;
    background-color: rgba(0,0,0,0.5);
    display: none;
}
#overlay .spinner-border {
    position: absolute;
    left: 50%;
    top: 50%;
    display: block;
    transform: translate(-50% -50%) 
}

.required .form-label:after {
    content: " *";
}

.has-error .invalid-feedback {
    display: block;    
}

table.muchdata {
    font-size: 0.8em;
}
table.muchdata td, table.muchdata th {
    padding: 6px 5px;
    line-height: 1;
    vertical-align: middle;
}

table.table.muchdata .action-icon {
    font-size: 1rem;
}

.modal-body table td {
    border-top: 1px solid grey;
}

/* Day / Date representation */
.day_repr {
    display: block; position: relative; 
    width: 100px; 
    border: 1px solid #536de6;
    border-radius: 0.2rem;
    color: #536de6;
    text-align: center; 
    font-size: 0.8rem;
}
.day_repr.cur_date {
    border: 1px solid #ff5b5b;
    color: #ff5b5b;
}
.day_repr.cur_date .weekday {
    background-color: #ff5b5b;
}
.day_repr .dayofmonth {
    font-size: 1.5rem;
    font-weight: bold;
}
.day_repr .weekday {
    background-color: #536de6;
    color: white;
    font-weight: bold;
}
#entry .fc-title {
    background-color: #536de6;
    color: white;
    font-size: 0.7rem;
    padding: 2px 15px;
}

/* Entry product */
.entry_product, .entry_yield, .entry_delete {
    display: block;
    margin-bottom: 0.1rem;
    font-size: 0.8rem;
    color: #98a6ad !important;
}

.grey_link {
    color: #98a6ad !important;
}

.entry_product {
    border-bottom: 1px solid #eef2f7;
}
.entry_yield {
    float: right;
}
.entry_delete {
    float: right;
    margin-left: 4px;
}

/* Calendar navigation */
.fc button .fc-icon {
    position: relative;
    top: -.05em;
    margin: 0 .2em;
    vertical-align: middle;
}
.fc-icon {
  display: inline-block;
  height: 1em;
  line-height: 1em;
  font-size: 1em;
  font-family: "Courier New",Courier,monospace;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
/*.fc-day-grid-event .fc-content, .fc-icon, .fc-row.fc-rigid, .fc-time-grid-event {
  overflow: hidden;
}*/

.fc th, .fc-basic-view .fc-day-top .fc-week-number, .fc-basic-view td.fc-week-number, .fc-icon, .fc-toolbar {
  text-align: center;
}

.fc .fc-button-group > :first-child {
    margin-left: 0;
}
.fc .fc-button-group > * {
    float: left;
    margin: 0 0 0 -1px;
    margin-left: -1px;
}
.fc-state-default.fc-corner-left {
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}

.fc-toolbar button {
  position: relative;
}
.fc button {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  height: 2.1em;
  padding: 0 .6em;
  cursor: pointer;
}
.fc button {
  white-space: nowrap;
}
.fc button, .fc table, body .fc {
  font-size: 1em;
}
.fc-toolbar .fc-right {
  float: right;
}
.fc-toolbar.fc-header-toolbar {
  margin-bottom: 1em;
}

.fc-icon-left-single-arrow::after {
    content: "\2039";
    font-weight: 700;
    font-size: 200%;
    top: -7%;
}
.fc-icon::after {
    position: relative;
}
.fc-icon-right-single-arrow::after {
  content: "\203A";
  font-weight: 700;
  font-size: 200%;
  top: -7%;
}
.fc-icon::after {
  position: relative;
}
.fc .fc-toolbar > * > :first-child {
  margin-left: 0;
}
.fc .fc-toolbar > * > * {
  float: left;
  margin-left: .75em;
}

.fc-toolbar .fc-center {
  display: inline-block;
}

#checkInOut {
    background-color: #ffdede;
    margin: -20px 30px 2px;
    color: #852f2f;
    border: 2px solid #852f2f;
    border-radius: 10px;
}
#checkInOut.checked-in {
    background-color: #cff3e1;
    margin: -20px 30px 2px;
    color: #086637;
    border: 1px solid #086637;
}
#checkInOut .header {
    border-bottom: 1px solid #852f2f;
    padding: 4px 0 4px;
    margin: 0 0 4px;
}
#checkInOut.checked-in .header {
    border-bottom: 1px solid #086637;
}

.table-nopadding td {
    padding: 0;
}

.text-right {
	text-align: right;
}

.qg, .qy, .qr{
	font-weight: bold;
}
.qg {
	color: #6aa84f;
}
.qy {
	color: #ffb05e;
}
.qr {
	color: #FF0000;
}

.changedVal {
    -webkit-box-shadow: 0px 0px 10px 2px rgba(45,255,196,0.9);
    -moz-box-shadow: 0px 0px 10px 2px rgba(45,255,196,0.9);
    box-shadow: 0px 0px 2px 1px rgba(255, 0, 0, 0.9);
}

label.help {
	border-bottom: 1px dashed #6c757d;
}

.table-hover-custom tbody tr:hover {
    background-image: linear-gradient(rgb(0 0 0/5%) 0 0);
}

tr.ownRow {
    background-image: linear-gradient(rgb(200 0 0/10%) 0 0);
    font-weight: bold;
}

.inbox-item-date {
    top: 18px !important;
}

.oaConfirmed {
    font-weight: bold;
    color: #007700
}

.noti-badge {
    cursor: pointer;
    background-color: #fa5c7c;
    position: absolute;
    color: white;
    border-radius: 1000rem;
    padding: 2px 4px;
    font-size: 12px;
    right: -5px;
    top: 18px;
    line-height: 12px;
    border: 2px solid var(--ct-topbar-bg);
}

@keyframes shake {
    2% { transform: rotate(-30deg); }
    4% { transform: rotate(30deg); }
    6% { transform: rotate(-30deg); }
    8% { transform: rotate(0deg); }
    10% { transform: scale(1.3, 1.3); }
    12% { transform: scale(1.0, 1.0); }
    14% { transform: scale(1.3, 1.3); }
    16% { transform: scale(1.0, 1.0); }
}

.ri-notification-3-line.incoming {
    animation-iteration-count: infinite;
    animation-name: shake;
    animation-duration: 8s;
    animation-delay: 1s;
}

.fs-3_5 {
    font-size: 1.2rem !important;
}