@charset "UTF-8";
.blurred {
  opacity: 0.4 !important;
}

div.full-width {
  width: 100%;
  max-width: 100%;
}

div.full-height {
  height: 100%;
}

.h-100 {
  min-height: 100%;
}

hr {
  margin: 0.6rem 0.1rem;
}

.cursor-pointer {
  cursor: pointer;
}

.mr-6 {
  margin-right: 5rem;
}

input {
  font-family: "Roboto Condensed";
  font-size: 16px;
  background-color: white;
}
input:focus {
  outline: none !important;
}
input::placeholder {
  color: #BBB !important;
}
input::-webkit-input-placeholder {
  color: #BBB !important;
}
input:-ms-input-placeholder {
  color: #BBB !important;
}
input::-ms-input-placeholder {
  color: #BBB !important;
}

button:focus {
  outline: none !important;
}

.ui-autocomplete {
  z-index: 10000; /* higher than Bootstrap modal */
  background-color: white;
  border: 1px solid #ccc;
  max-height: 500px;
  overflow-y: auto;
  font-family: "Roboto Condensed";
  font-size: 90%;
}

.select2-container .select2-selection--single {
  height: 36px;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 36px;
}

.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button {
  font-family: "Roboto Condensed";
  font-size: 1em;
}

div.form-control {
  height: auto !important;
  min-height: calc(1.5em + 0.75rem + 2px);
}

.fs-60 {
  font-size: 0.6rem;
}

.fs-80 {
  font-size: 0.8rem;
}

.fs-85 {
  font-size: 0.85rem;
}

.fs-90 {
  font-size: 0.9rem;
}

.fs-95 {
  font-size: 0.95rem;
}

.fs-100 {
  font-size: 1rem;
}

.fs-110 {
  font-size: 1.1rem;
}

.fs-120 {
  font-size: 1.2rem;
}

.fs-150 {
  font-size: 1.5rem;
}

.fs-200 {
  font-size: 2rem;
}

.lh-36 {
  line-height: 36px;
}

.fs-80 {
  font-size: 80%;
}

.text-silver {
  color: #DDD;
}

.bg-accent-light {
  background-color: #787878;
}

.bg-whitesmoke {
  background-color: #f5f5f5 !important;
}

.text-whitesmoke {
  color: #f5f5f5 !important;
}

.border-whitesmoke {
  border-color: #f5f5f5 !important;
}

.bg-smoke {
  background-color: #E7E7E7 !important;
}

.text-smoke {
  color: #E7E7E7 !important;
}

.border-smoke {
  border-color: #E7E7E7 !important;
}

.bg-silver {
  background-color: #AAA !important;
}

.text-silver {
  color: #AAA !important;
}

.border-silver {
  border-color: #AAA !important;
}

.bg-lightsilver {
  background-color: #DDD !important;
}

.text-lightsilver {
  color: #DDD !important;
}

.border-lightsilver {
  border-color: #DDD !important;
}

.bg-gray {
  background-color: #777 !important;
}

.text-gray {
  color: #777 !important;
}

.border-gray {
  border-color: #777 !important;
}

.bg-gold {
  background-color: gold !important;
}

.text-gold {
  color: gold !important;
}

.border-gold {
  border-color: gold !important;
}

.bg-crimson {
  background-color: crimson !important;
}

.text-crimson {
  color: crimson !important;
}

.border-crimson {
  border-color: crimson !important;
}

.bg-teal {
  background-color: teal !important;
}

.text-teal {
  color: teal !important;
}

.border-teal {
  border-color: teal !important;
}

.bg-charcoal {
  background-color: #333 !important;
}

.text-charcoal {
  color: #333 !important;
}

.border-charcoal {
  border-color: #333 !important;
}

.bg-transparent {
  background-color: transparent !important;
}

.text-transparent {
  color: transparent !important;
}

.border-transparent {
  border-color: transparent !important;
}

.btn.btn-primary {
  background-color: #00449d;
  color: white;
}
.btn.btn-primary-light {
  background-color: #2266bf;
  color: white;
}
.btn.btn-secondary {
  background-color: #770404;
  color: white;
}
.btn.btn-secondary-light {
  background-color: #cf4b5c;
  color: white;
}
.btn.btn-tiny {
  padding: 0 !important;
  height: 20px;
}

.login-page {
  font-family: Roboto;
  background: white url(../img/funky-lines.webp);
}
.login-page .form-background {
  min-height: 100%;
  height: 100vh;
  overflow-x: hidden;
  background-color: transparent;
}
.login-page .login-box {
  border: thin solid #ddd;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
}
.login-page .login-box .login-form {
  background-color: #F8F8F8;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
}
.login-page .login-box .login-form .app-logo {
  font-size: 250%;
}
.login-page .login-box .login-form .app-logo i {
  color: #2266bf;
}
.login-page .login-box .login-form .app-logo span {
  margin-left: 20px;
  letter-spacing: 5px;
  color: #770404;
  font-weight: 900;
}
.login-page .login-box .login-image {
  background-color: transparent;
  background-image: url(../img/login.jpg);
  background-size: cover;
  background-position: center -80px;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
}

html {
  min-height: 100%;
  height: 100%;
}

body.full-height {
  height: 100%;
  overflow: auto;
  background-color: #F8F8F8;
  font-family: "Roboto Condensed";
}
body .wrapper {
  height: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
}
body .wrapper div.content-header {
  height: calc(2rem + 18px);
  width: 100%;
  color: #555;
  background-color: #00449d;
  border-bottom: thin solid #c5c5c5;
  z-index: 100;
  position: fixed;
}
body .wrapper div.content-header nav.navbar {
  padding-left: 10px !important;
}
body .wrapper div.content-header nav.navbar div.menu-btn {
  cursor: pointer;
  font-size: 24px;
}
body .wrapper div.content-header nav.navbar div.menu-btn img {
  height: 35px;
}
body .wrapper div.content-header nav.navbar div#pageTitle {
  font-size: 17px;
  font-weight: 600;
  font-family: "Roboto Light";
  color: white;
  display: flex;
  align-items: center;
  margin-left: 10px;
}
body .wrapper div.content-header nav.navbar div#pageTitle .breadcrumbs {
  color: #a9aabc;
}
body .wrapper div.content-header nav.navbar div#pageTitle .breadcrumbs .home-link {
  color: #2266bf;
}
body .wrapper div.content-header nav.navbar div#pageTitle .breadcrumbs .home-link:hover {
  text-decoration: none;
}
body .wrapper div.content-header nav.navbar div#pageTitle .breadcrumbs.current-page {
  color: white;
}
body .wrapper div.content-header nav.navbar-expand {
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  -ms-flex-pack: start;
  justify-content: flex-start;
}
body .wrapper div.content-row {
  position: relative;
  margin-left: 0px;
  margin-right: 0px;
  margin-top: 52px;
  height: calc(100% - 52px);
  overflow: overlay;
  display: flex;
  flex-direction: column;
  opacity: 1;
}
body .wrapper div.content-row .homepage {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  height: calc(100vh - 52px);
  background: url(../img/funky-lines.png);
}
body .wrapper div.content-row .homepage img.main-logo {
  width: 120px;
  position: absolute;
  bottom: 40px;
  right: 40px;
}

aside.sidebar {
  min-width: 250px !important;
  width: 280px !important;
  margin-left: 0px;
  margin-top: 56px;
  padding-right: 0px;
  height: 100%;
  background-color: #FFF;
  overflow: auto;
  font-family: "Roboto Condensed";
  font-size: 16px;
  float: left;
  position: fixed;
  display: none;
  z-index: 999999;
  box-shadow: 5px 0px 12px rgba(200, 200, 200, 0.6);
  border: thin solid #d0d0d0;
  border-top: thin solid #bbb;
}
aside.sidebar ul.nav-sidebar-bottom {
  position: absolute;
  bottom: 56px;
  left: 0px;
  background: #00449d;
  color: #ffffff;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
aside.sidebar ul.nav-sidebar-bottom .nav-item {
  display: flex;
  align-items: center;
}
aside.sidebar ul.nav-sidebar-bottom .user-image {
  width: 2.5rem;
  height: 2.5rem;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 50%;
}
aside.sidebar ul.nav-sidebar-bottom a.small-link {
  color: #787878;
}
aside.sidebar .nav-sidebar > .nav-item {
  border-bottom: 1px dotted #AAA;
  width: 100%;
}
aside.sidebar .nav-sidebar > .nav-item.active .nav-link {
  font-weight: 500;
}
aside.sidebar .nav-sidebar > .nav-item.has-treeview > a::after {
  content: "\e5cb";
  font-family: "Material Icons Outlined";
  font-weight: 900;
  color: #bbb;
  float: right;
}
aside.sidebar .nav-sidebar > .nav-item.has-treeview.menu-open > a::after {
  content: "\e5cf";
}
aside.sidebar .nav-sidebar > .nav-item.group-label {
  background-color: #d5d5d5;
}
aside.sidebar .nav-sidebar > .nav-item .nav-treeview {
  background: #FFF;
  padding-left: 25px !important;
}
aside.sidebar .nav-sidebar > .nav-item .nav-treeview .nav-item {
  width: 100%;
}
aside.sidebar .nav-sidebar > .nav-item .nav-treeview .nav-item-sep {
  width: 100%;
  height: 1px;
  border-bottom: 1px dotted #999;
}
aside.sidebar .nav-sidebar > .nav-item .nav-link {
  position: relative;
  padding: 0.35rem 1rem;
  color: #444444;
}
aside.sidebar .nav-sidebar > .nav-item .nav-link span {
  display: inline-block;
  margin: 0;
  margin-left: 0.7rem;
  position: relative;
  font-weight: 400;
}
aside.sidebar .nav-sidebar > .nav-item .nav-link.active span {
  font-weight: 600;
}
aside.sidebar .nav-sidebar > .nav-item .nav-link span.nav-icon {
  text-align: center;
  vertical-align: top;
  font-size: 1rem;
  margin-left: 0;
  max-width: 16px;
  line-height: 1.4;
}

.fc .fc-view-harness {
  max-height: 825px;
  overflow-y: scroll;
}

.fc-toolbar-title {
  display: inline-block;
  vertical-align: middle;
  margin-left: 0.5rem !important;
  margin-right: 0.5rem !important;
}

.fc-today-button {
  margin-left: 0.5rem !important;
  margin-right: 0.5rem !important;
}

a.fc-event, a.fc-event * {
  cursor: pointer;
}

a.fc-event {
  background-color: white;
  margin-bottom: 2px;
  font-size: 0.9rem;
}

a.fc-daygrid-week-number {
  font-style: italic;
}

a.fc-daygrid-day-number {
  font-weight: bold;
  color: #2266bf !important;
}

.itemEvent {
  align-items: flex-start;
}
.itemEvent.unavailable {
  border-left: 5px solid red !important;
}
.itemEvent .fc-event-title-container {
  background: url(../img/materials.png);
  background-repeat: no-repeat;
  background-position: 3px center;
  background-size: 20px 20px;
  padding-left: 30px;
}
.itemEvent .fc-list-event-title {
  background: url(../img/materials.png);
  background-repeat: no-repeat;
  background-position: 10px center;
  background-size: 20px 20px;
}
.itemEvent .fc-list-event-title a {
  padding-left: 30px;
}
.itemEvent .fc-event-title, .itemEvent .fc-event-time {
  line-height: 16px;
  background-color: transparent;
}
.itemEvent td .fc-event-title {
  padding-left: 30px;
}
.itemEvent.item-unavailable .fc-list-event-dot {
  border-color: red !important;
}
.itemEvent.item-in_stock .fc-list-event-dot {
  border-color: green !important;
}
.itemEvent.item-consumed .fc-list-event-dot {
  border-color: blue !important;
}

.equipmentEvent {
  align-items: flex-start;
}
.equipmentEvent.unavailable {
  border-left: 5px solid red !important;
}
.equipmentEvent .fc-event-title-container {
  background: url(../img/equipment.png);
  background-repeat: no-repeat;
  background-position: 3px center;
  background-size: 18px 18px;
  padding-left: 30px;
}
.equipmentEvent .fc-list-event-title {
  background: url(../img/equipment.png);
  background-repeat: no-repeat;
  background-position: 10px center;
  background-size: 18px 18px;
}
.equipmentEvent .fc-list-event-title a {
  padding-left: 30px;
}
.equipmentEvent .fc-event-title, .equipmentEvent .fc-event-time {
  line-height: 16px;
  background-color: transparent;
}
.equipmentEvent td .fc-event-title {
  padding-left: 30px;
}
.equipmentEvent.equipment-unavailable .fc-list-event-dot {
  border-color: red !important;
}
.equipmentEvent.equipment-in_stock .fc-list-event-dot {
  border-color: green !important;
}
.equipmentEvent.equipment-consumed .fc-list-event-dot {
  border-color: blue !important;
}

.teamEvent, .subcontractorEvent {
  align-items: flex-start;
}
.teamEvent .fc-event-title, .teamEvent .fc-event-time, .subcontractorEvent .fc-event-title, .subcontractorEvent .fc-event-time {
  line-height: 16px;
  background-color: transparent;
}

.fc-scrollgrid {
  min-height: 1000px;
}

.cd_kanban_board {
  width: auto;
  height: auto;
  display: block;
  clear: both;
  overflow-x: auto !important;
  overflow-y: auto !important;
  font-family: "Roboto Condensed";
}

.cd_kanban_board > .cd_kanban_board_titles {
  margin: 0px;
  padding: 0px;
  display: flex;
  clear: both;
  line-height: 36px;
  position: sticky;
  top: 0;
  z-index: 50;
  background-color: #F8F8F8;
}

.cd_kanban_board > .cd_kanban_board_titles:after {
  content: "";
  display: block;
  clear: both;
}

.cd_kanban_board > .cd_kanban_board_titles .cd_kanban_board_title {
  margin: 0 10px 0 0;
  padding: 0.5rem 0.7rem;
  color: #333;
  position: relative;
  flex: 1;
  border-bottom: 2px solid #aaa;
  border-top: 1px solid #e5e5e5;
  background-color: #FEFEFF;
}

/* .cd_kanban_board > .cd_kanban_board_titles .cd_kanban_board_title:before{
    width: 80%;
    height: 100%;
    background: #343a40;
    display: block;
    clear: both;
    position: absolute;
    top:0px;
    left:0px;
    content: "";
} */
.cd_kanban_board > .cd_kanban_board_titles .cd_kanban_board_title span {
  position: relative;
  z-index: 10;
  margin: 0px;
  font-size: 100%;
  font-weight: bold;
  color: #555;
}

.cd_kanban_board > .cd_kanban_board_titles .cd_kanban_board_title span.material-symbols-outlined {
  font-size: 150%;
}

.cd_kanban_board > .cd_kanban_board_titles .cd_kanban_board_title:last-child {
  margin: 0px;
}

.cd_kanban_board > .cd_kanban_board_blocks {
  margin: 0px;
  padding: 0px;
  display: flex;
  clear: both;
  flex-direction: row;
  height: 100%;
}

.cd_kanban_board > .cd_kanban_board_blocks:after {
  content: "";
  display: block;
  clear: both;
}

.cd_kanban_board > .cd_kanban_board_blocks .cd_kanban_board_block {
  height: auto;
  margin: 10px 10px 10px 0;
  /* padding: 1rem; */
  flex: 1;
  background: #f0f0f0;
  border: #e5e5e5 1px solid;
  overflow-y: visible;
}

.cd_kanban_board > .cd_kanban_board_blocks .cd_kanban_board_block:last-child {
  margin: 10px 0 10px;
}

.cd_kanban_board > .cd_kanban_board_blocks .cd_kanban_board_block .cd_kanban_board_block_item {
  width: 97%;
  height: auto;
  margin: 5px auto;
  padding: 0.5rem;
  display: block;
  clear: both;
  background: #FFF;
  border: 1px solid #dfdfdf;
  border-radius: 5px;
  color: #555;
  -webkit-transition: -webkit-transform 300ms ease-in-out;
  -moz-transition: -moz-transform 300ms ease-in-out;
  -ms-transition: -ms-transform 300ms ease-in-out;
  -o-transition: -o-transform 300ms ease-in-out;
  transition: transform 300ms ease-in-out;
  transform: rotate(0deg);
}

.cd_kanban_board_block_item:hover {
  cursor: pointer;
}

.cd_kanban_board_block_item_title {
  cursor: pointer;
}

.cd_kanban_board > .cd_kanban_board_blocks .cd_kanban_board_block .cd_kanban_board_block_item a {
  text-decoration: none;
  margin: 0;
  display: block;
}

.cd_kanban_board > .cd_kanban_board_blocks .cd_kanban_board_block .cd_kanban_board_block_item .cd_kanban_board_block_item_title {
  margin: 0 0 0.2rem;
  padding: 0 0 0 0px;
  font-size: 1rem !important;
  line-height: 1rem;
  font-weight: 700;
}

.cd_kanban_board > .cd_kanban_board_blocks .cd_kanban_board_block .cd_kanban_board_block_item.ui-sortable-helper {
  transform: rotate(-4deg);
}

.cd_kanban_board_block_item_placeholder {
  width: 100%;
  height: 60px;
  margin: 0 0 10px;
  display: block;
  clear: both;
  border: 1px dashed #aaa;
}

.cd_kanban_board > .cd_kanban_board_blocks .cd_kanban_board_block .cd_kanban_board_block_item .cd_kanban_board_block_item_footer {
  margin: 0.75rem -0.75rem -0.75rem;
  padding: 0.75rem;
  display: block;
  clear: both;
  border-top: 1px solid #e5e5e5;
}

.kanban-progress {
  height: 12px;
}

div#displayCardBox ul.nav-tabs.left-tabs {
  border-right: 0;
}
div#displayCardBox ul.nav-tabs.left-tabs li {
  width: 100%;
}
div#displayCardBox ul.nav-tabs.left-tabs button {
  width: 100%;
  text-align: right;
  color: #555;
  background-color: #E5E5E5;
  font: inherit;
  border: 0;
}
div#displayCardBox ul.nav-tabs.left-tabs button.active {
  background-color: transparent;
  color: #222;
  font-weight: 700;
}

ul.nav li button.chevron-btn {
  position: relative;
  display: inline-block;
  padding: 12px 12px 12px 24px;
  clip-path: polygon(0 0, calc(100% - 20px) 0%, 100% 50%, calc(100% - 20px) 100%, 0 100%, 20px 50%);
  transition: background-color 0.3s ease;
  margin-left: 0px;
}
ul.nav li:first-child button.chevron-btn {
  clip-path: polygon(0 0, calc(100% - 20px) 0%, 100% 50%, calc(100% - 20px) 100%, 0 100%, 0 50%);
}

.tableContainer {
  max-width: 100%;
  font-family: "Roboto Condensed";
  margin: 0;
}
.contract-page-content .tableContainer {
  margin: 0;
}

div#cardTabContent div.dt-container div.row:first-of-type {
  margin: 0;
}

.dataTable thead {
  position: sticky;
  top: 0px;
}
.dataTable thead th {
  font-family: "Roboto Condensed";
  font-size: 15px;
  background-color: #e3e3e3;
  color: #555;
  font-weight: 500 !important;
  border-bottom: 1px solid #d5d5d5 !important;
  border-top: 1px solid #d5d5d5 !important;
  border-collapse: collapse;
  padding: 5px;
  text-wrap-mode: nowrap;
}
.dataTable thead th.dt-orderable-asc span.dt-column-order::before, .dataTable thead th.dt-orederable-desc span.dt-column-order::before {
  opacity: 0.2 !important;
  bottom: 40% !important;
  font-size: 150% !important;
  content: "⌃" !important;
}
.dataTable thead th.dt-orderable-asc span.dt-column-order::after, .dataTable thead th.dt-orederable-desc span.dt-column-order::after {
  opacity: 0.2 !important;
  bottom: 40% !important;
  font-size: 150% !important;
  content: "⌄" !important;
}
.dataTable thead th.dt-ordering-asc span.dt-column-order::before, .dataTable thead th.dt-ordering-desc span.dt-column-order::after {
  opacity: 0.6 !important;
  color: #b00;
}
.dataTable thead th.dt-type-numeric div.dt-column-header, .dataTable thead th.dt-type-date div.dt-column-header {
  flex-direction: row !important;
}
.dataTable tbody td {
  font-family: "Roboto Condensed";
  font-size: 16px;
  font-weight: 400;
  padding: 0.35rem;
  background-color: #FFF;
  vertical-align: middle;
}
.dataTable tbody td.action-buttons {
  text-align: right;
  white-space: nowrap;
  min-width: 112px;
  max-width: 1%; /* forces minimum width */
  width: 1%; /* prevents expansion */
  flex-wrap: nowrap; /* no wrapping */
}
.dataTable tbody td.action-2buttons {
  min-width: 112px;
  text-align: right;
}
.dataTable tbody td.action-3buttons {
  min-width: 130px;
  width: 130px;
  text-align: right;
}
.dataTable tfoot {
  display: table-row-group;
}
.dataTable tfoot td {
  font-family: "Roboto Condensed";
  padding: 5px;
}
.dataTable tfoot td.action-2buttons {
  min-width: 95px;
  width: 95px;
}
.dataTable tfoot td.action-3buttons {
  min-width: 130px;
  width: 130px;
}
.dataTable .clear-btn {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  font-size: 18px;
  color: #777;
}

.dt-buttons .buttons-copy, .dt-buttons .buttons-pdf, .dt-buttons .buttons-csv, .dt-buttons .buttons-excel {
  background-color: #dfdfdf !important;
  border: #c5c5c5 1px solid !important;
  border-radius: 5px;
  color: #444444 !important;
}

span.dt-page-control {
  font-size: 18px;
  font-weight: 900;
  vertical-align: middle;
}

.page-item .page-link {
  background-color: white;
  color: #770404;
}
.page-item.active .page-link {
  background-color: #787878;
  border-color: #787878;
}

div#tableGridSlave_wrapper {
  width: calc(100% - 20px);
  margin-left: 20px;
}
div#tableGridSlave_wrapper td {
  padding-top: 0;
  padding-bottom: 0;
}
div#tableGridSlave_wrapper .dataTableSlave thead {
  background-color: #d0d0d0;
  font-size: 15px !important;
  color: #555;
}
div#tableGridSlave_wrapper .dataTableSlave thead th {
  background-color: inherit;
}
div#tableGridSlave_wrapper .dataTableSlave tbody td {
  font-size: 13px;
}
div#tableGridSlave_wrapper .dataTableSlave tbody td.action-buttons button {
  padding-top: 2px;
  padding-bottom: 2px;
}
div#tableGridSlave_wrapper .dataTableSlave tbody td.action-buttons button span.material-symbols-outlined {
  font-size: 1rem;
}
div#tableGridSlave_wrapper .dataTableSlave div.dt-container {
  width: 100%;
}

td.action-buttons button {
  padding-top: 2px;
  padding-bottom: 2px;
}
td.action-buttons button span.material-symbols-outlined {
  font-size: 1.2rem;
}

div.dt-container div.dt-layout-full {
  padding-left: 0;
  padding-right: 0;
}
div.dt-container div.dt-layout-start {
  padding-left: 0;
}
div.dt-container div.dt-layout-end {
  padding-right: 0;
}

tr.shown td {
  border-top: #777 2px solid;
  background-color: #a9aabc;
}
tr.shown + tr td {
  padding-bottom: 0;
}
tr.shown + tr div#rowChild {
  border-bottom: #777 2px solid;
}

div.dt-container div.dt-processing {
  background: rgba(0, 0, 0, 0.7);
  width: 250px !important;
  margin: 0 !important;
  color: white;
  padding: 10px 20px !important;
  border-radius: 8px;
  font-size: 18px;
  z-index: 1000;
  height: 48px !important;
  position: fixed !important;
  transform: translate(-50%, -50%) !important;
}
div.dt-container div.dt-processing div {
  display: none;
}

/**
 * CONTENTS
 *
 * #Introduction........Naming conventions used throughout the code.
 *
 * #SETTINGS
 * Variables............Globally-available variables and config.
 *
 * #TOOLS
 * Mixins...............Useful mixins.
 *
 * #GENERIC
 * Demo styles..........Styles for demo only (consider removing these).
 *
 * #BASE
 * Raw styles...........The very basic component wrapper.
 * Modifiers............The basic styles dependant on component placement.
 * Debuggers............The basic styles dependant on component placement.
 *
 * #BUTTONS
 * Base..................Wrapping and constraining every button.
 * Modifiers.............Styles that depends on state and settings.
 * Animations............Main animations of the component.
 * Debuggers.............Styles for development.
 *
 * #LABELS
 * Base..................Wrapping and constraining every label.
 * Modifiers.............Styles that depends on state and settings.
 * Debuggers.............Styles for development.
 *
 * #DEVELOPMENT
 * In development........These styles are in development and not yet finalised
 * Debuggers.............Helper styles and flags for development.
 */
/*------------------------------------*\
    #Introduction
\*------------------------------------*/
/**
 * The code AND the comments use naming conventions to refer to each part of
 * the UI put in place by this component. If you see that somewhere they are
 * not followed please consider a Pull Request. The naming conventions are:
 *
 * "Component" : the widget itself as a whole. This is the last time it will be
 *               called anything different than "component". So, stay away from
 *               "widget", "button" or anything else when referring to the
 *               Component in general.
 *
 * "Main Button" : the button that is always in view. Hovering or clicking on it
 *                 will reveal the child buttons.
 *
 * "Child buttons" : if you've read the previous point you know what they are.
 *                   Did you read the previous point? :)
 *
 * "Label(s)" : the tooltip that fades in when hovering over a button.

/*------------------------------------*\
    #SETTINGS | Variables
\*------------------------------------*/
/**
 * These variables are the default styles that serve as fallback and can be
 * easily customised at compile time.
 * Consider overriding them in your own style sheets rather than editing them
 * here. Refer to the docs for more info.
 */
/* COLORS ----------------------------*/
/* EFFECTS ---------------------------*/
/* SPEEDS ----------------------------*/
/* SIZES -----------------------------*/
/* SPACING ---------------------------*/
/* OTHER VARIABLES -------------------*/
/*------------------------------------*\
    #BASE | Raw styles
\*------------------------------------*/
/**
 * The very core styling of the button.
 * These styles are shared by every instance of the button.
 * Styles placed here should NOT care about placement in the screen,
 * options chosen by the user or state of the button.
 */
.mfb-component--br, .mfb-component--bl, .mfb-component--tr, .mfb-component--tl {
  box-sizing: border-box;
  margin: 20px;
  position: fixed;
  white-space: nowrap;
  z-index: 3000;
  padding-left: 0;
  list-style: none;
}
.mfb-component--br *, .mfb-component--bl *, .mfb-component--tr *, .mfb-component--tl *, .mfb-component--br *:before, .mfb-component--bl *:before, .mfb-component--tr *:before, .mfb-component--tl *:before, .mfb-component--br *:after, .mfb-component--bl *:after, .mfb-component--tr *:after, .mfb-component--tl *:after {
  box-sizing: inherit;
}

/*------------------------------------*\
    #BASE | Modifiers
\*------------------------------------*/
/**
 * These styles depends on the placement of the button.
 * Styles can be:
 * 1. Top-left:  modified by the " --tl " suffix.
 * 2. Top-right: modified by the " --tr " suffix.
 * 3. Bottom-left:  modified by the " --bl " suffix.
 * 4. Bottom-right: modified by the " --br " suffix.
 */
.mfb-component--tl {
  left: 0;
  top: 0;
}

.mfb-component--tr {
  right: 0;
  top: 0;
}

.mfb-component--bl {
  left: 0;
  bottom: 0;
}

.mfb-component--br {
  right: 0;
  bottom: 0;
}

/*------------------------------------*\
    #BUTTONS | Base
\*------------------------------------*/
.mfb-component__button--child, .mfb-component__button--main {
  background-color: #2266bf;
  display: inline-block;
  position: relative;
  border: none;
  border-radius: 50%;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.14), 0 4px 8px rgba(0, 0, 0, 0.28);
  cursor: pointer;
  outline: none;
  padding: 0;
  position: relative;
  -webkit-user-drag: none;
  color: #f1f1f1;
}

/**
 * This is the unordered list for the list items that contain
 * the child buttons.
 *
 */
.mfb-component__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.mfb-component__list > li {
  display: block;
  position: absolute;
  top: 0;
  right: calc((56px - 56px + 2px) / 2);
  padding: calc((10px + 56px - 56px) / 2) 0;
  margin: calc(-1 * (10px + (56px - 56px) / 2)) 0;
}

/**
 * These are the basic styles for all the icons inside the main button
 */
.mfb-component__icon, .mfb-component__child-icon, .mfb-component__main-icon--active,
.mfb-component__main-icon--resting {
  position: absolute;
  font-size: 28px;
  text-align: center;
  line-height: 56px;
  width: 100%;
}

.mfb-component__wrap {
  padding: 20px;
  margin: -20px;
}

[data-mfb-toggle=hover]:hover .mfb-component__icon, [data-mfb-toggle=hover]:hover .mfb-component__child-icon, [data-mfb-toggle=hover]:hover .mfb-component__main-icon--active,
[data-mfb-toggle=hover]:hover .mfb-component__main-icon--resting,
[data-mfb-state=open] .mfb-component__icon,
[data-mfb-state=open] .mfb-component__child-icon,
[data-mfb-state=open] .mfb-component__main-icon--active,
[data-mfb-state=open] .mfb-component__main-icon--resting {
  -webkit-transform: scale(1) rotate(0deg);
  transform: scale(1) rotate(0deg);
}

/*------------------------------------*\
    #BUTTONS | Modifiers
\*------------------------------------*/
.mfb-component__button--main {
  height: 56px;
  width: 56px;
  z-index: 20;
}

.mfb-component__button--child {
  height: 56px;
  width: 56px;
}

.mfb-component__main-icon--active,
.mfb-component__main-icon--resting {
  -webkit-transform: scale(1) rotate(360deg);
  transform: scale(1) rotate(360deg);
  -webkit-transition: -webkit-transform 150ms cubic-bezier(0.4, 0, 1, 1);
  transition: transform 150ms cubic-bezier(0.4, 0, 1, 1);
}

.mfb-component__child-icon,
.mfb-component__child-icon {
  line-height: 56px;
  font-size: 28px;
}

.mfb-component__main-icon--active {
  opacity: 0;
}

[data-mfb-toggle=hover]:hover .mfb-component__main-icon,
[data-mfb-state=open] .mfb-component__main-icon {
  -webkit-transform: scale(1) rotate(0deg);
  transform: scale(1) rotate(0deg);
}
[data-mfb-toggle=hover]:hover .mfb-component__main-icon--resting,
[data-mfb-state=open] .mfb-component__main-icon--resting {
  opacity: 0;
  position: absolute !important;
}
[data-mfb-toggle=hover]:hover .mfb-component__main-icon--active,
[data-mfb-state=open] .mfb-component__main-icon--active {
  opacity: 1;
}

/*------------------------------------*\
    #BUTTONS | Animations
\*------------------------------------*/
/**
 * SLIDE IN + FADE
 * When hovering the main button, the child buttons slide out from beneath
 * the main button while transitioning from transparent to opaque.
 *
 */
.mfb-component--tl.mfb-slidein .mfb-component__list li,
.mfb-component--tr.mfb-slidein .mfb-component__list li {
  opacity: 0;
  transition: all 0.5s;
}
.mfb-component--tl.mfb-slidein[data-mfb-toggle=hover]:hover .mfb-component__list li, .mfb-component--tl.mfb-slidein[data-mfb-state=open] .mfb-component__list li,
.mfb-component--tr.mfb-slidein[data-mfb-toggle=hover]:hover .mfb-component__list li,
.mfb-component--tr.mfb-slidein[data-mfb-state=open] .mfb-component__list li {
  opacity: 1;
}
.mfb-component--tl.mfb-slidein[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(1), .mfb-component--tl.mfb-slidein[data-mfb-state=open] .mfb-component__list li:nth-child(1),
.mfb-component--tr.mfb-slidein[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(1),
.mfb-component--tr.mfb-slidein[data-mfb-state=open] .mfb-component__list li:nth-child(1) {
  -webkit-transform: translateY(70px);
  transform: translateY(70px);
}
.mfb-component--tl.mfb-slidein[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(2), .mfb-component--tl.mfb-slidein[data-mfb-state=open] .mfb-component__list li:nth-child(2),
.mfb-component--tr.mfb-slidein[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(2),
.mfb-component--tr.mfb-slidein[data-mfb-state=open] .mfb-component__list li:nth-child(2) {
  -webkit-transform: translateY(140px);
  transform: translateY(140px);
}
.mfb-component--tl.mfb-slidein[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(3), .mfb-component--tl.mfb-slidein[data-mfb-state=open] .mfb-component__list li:nth-child(3),
.mfb-component--tr.mfb-slidein[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(3),
.mfb-component--tr.mfb-slidein[data-mfb-state=open] .mfb-component__list li:nth-child(3) {
  -webkit-transform: translateY(210px);
  transform: translateY(210px);
}
.mfb-component--tl.mfb-slidein[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(4), .mfb-component--tl.mfb-slidein[data-mfb-state=open] .mfb-component__list li:nth-child(4),
.mfb-component--tr.mfb-slidein[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(4),
.mfb-component--tr.mfb-slidein[data-mfb-state=open] .mfb-component__list li:nth-child(4) {
  -webkit-transform: translateY(280px);
  transform: translateY(280px);
}

.mfb-component--bl.mfb-slidein .mfb-component__list li,
.mfb-component--br.mfb-slidein .mfb-component__list li {
  opacity: 0;
  transition: all 0.5s;
}
.mfb-component--bl.mfb-slidein[data-mfb-toggle=hover]:hover .mfb-component__list li, .mfb-component--bl.mfb-slidein[data-mfb-state=open] .mfb-component__list li,
.mfb-component--br.mfb-slidein[data-mfb-toggle=hover]:hover .mfb-component__list li,
.mfb-component--br.mfb-slidein[data-mfb-state=open] .mfb-component__list li {
  opacity: 1;
}
.mfb-component--bl.mfb-slidein[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(1), .mfb-component--bl.mfb-slidein[data-mfb-state=open] .mfb-component__list li:nth-child(1),
.mfb-component--br.mfb-slidein[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(1),
.mfb-component--br.mfb-slidein[data-mfb-state=open] .mfb-component__list li:nth-child(1) {
  -webkit-transform: translateY(-70px);
  transform: translateY(-70px);
}
.mfb-component--bl.mfb-slidein[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(2), .mfb-component--bl.mfb-slidein[data-mfb-state=open] .mfb-component__list li:nth-child(2),
.mfb-component--br.mfb-slidein[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(2),
.mfb-component--br.mfb-slidein[data-mfb-state=open] .mfb-component__list li:nth-child(2) {
  -webkit-transform: translateY(-140px);
  transform: translateY(-140px);
}
.mfb-component--bl.mfb-slidein[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(3), .mfb-component--bl.mfb-slidein[data-mfb-state=open] .mfb-component__list li:nth-child(3),
.mfb-component--br.mfb-slidein[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(3),
.mfb-component--br.mfb-slidein[data-mfb-state=open] .mfb-component__list li:nth-child(3) {
  -webkit-transform: translateY(-210px);
  transform: translateY(-210px);
}
.mfb-component--bl.mfb-slidein[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(4), .mfb-component--bl.mfb-slidein[data-mfb-state=open] .mfb-component__list li:nth-child(4),
.mfb-component--br.mfb-slidein[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(4),
.mfb-component--br.mfb-slidein[data-mfb-state=open] .mfb-component__list li:nth-child(4) {
  -webkit-transform: translateY(-280px);
  transform: translateY(-280px);
}

/**
 * SLIDE IN SPRING
 * Same as slide-in but with a springy animation.
 *
 */
.mfb-component--tl.mfb-slidein-spring .mfb-component__list li,
.mfb-component--tr.mfb-slidein-spring .mfb-component__list li {
  opacity: 0;
  transition: all 0.5s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.mfb-component--tl.mfb-slidein-spring .mfb-component__list li:nth-child(1),
.mfb-component--tr.mfb-slidein-spring .mfb-component__list li:nth-child(1) {
  transition-delay: 0.05s;
}
.mfb-component--tl.mfb-slidein-spring .mfb-component__list li:nth-child(2),
.mfb-component--tr.mfb-slidein-spring .mfb-component__list li:nth-child(2) {
  transition-delay: 0.1s;
}
.mfb-component--tl.mfb-slidein-spring .mfb-component__list li:nth-child(3),
.mfb-component--tr.mfb-slidein-spring .mfb-component__list li:nth-child(3) {
  transition-delay: 0.15s;
}
.mfb-component--tl.mfb-slidein-spring .mfb-component__list li:nth-child(4),
.mfb-component--tr.mfb-slidein-spring .mfb-component__list li:nth-child(4) {
  transition-delay: 0.2s;
}
.mfb-component--tl.mfb-slidein-spring[data-mfb-toggle=hover]:hover .mfb-component__list li, .mfb-component--tl.mfb-slidein-spring[data-mfb-state=open] .mfb-component__list li,
.mfb-component--tr.mfb-slidein-spring[data-mfb-toggle=hover]:hover .mfb-component__list li,
.mfb-component--tr.mfb-slidein-spring[data-mfb-state=open] .mfb-component__list li {
  opacity: 1;
}
.mfb-component--tl.mfb-slidein-spring[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(1), .mfb-component--tl.mfb-slidein-spring[data-mfb-state=open] .mfb-component__list li:nth-child(1),
.mfb-component--tr.mfb-slidein-spring[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(1),
.mfb-component--tr.mfb-slidein-spring[data-mfb-state=open] .mfb-component__list li:nth-child(1) {
  transition-delay: 0.05s;
  -webkit-transform: translateY(70px);
  transform: translateY(70px);
}
.mfb-component--tl.mfb-slidein-spring[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(2), .mfb-component--tl.mfb-slidein-spring[data-mfb-state=open] .mfb-component__list li:nth-child(2),
.mfb-component--tr.mfb-slidein-spring[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(2),
.mfb-component--tr.mfb-slidein-spring[data-mfb-state=open] .mfb-component__list li:nth-child(2) {
  transition-delay: 0.1s;
  -webkit-transform: translateY(140px);
  transform: translateY(140px);
}
.mfb-component--tl.mfb-slidein-spring[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(3), .mfb-component--tl.mfb-slidein-spring[data-mfb-state=open] .mfb-component__list li:nth-child(3),
.mfb-component--tr.mfb-slidein-spring[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(3),
.mfb-component--tr.mfb-slidein-spring[data-mfb-state=open] .mfb-component__list li:nth-child(3) {
  transition-delay: 0.15s;
  -webkit-transform: translateY(210px);
  transform: translateY(210px);
}
.mfb-component--tl.mfb-slidein-spring[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(4), .mfb-component--tl.mfb-slidein-spring[data-mfb-state=open] .mfb-component__list li:nth-child(4),
.mfb-component--tr.mfb-slidein-spring[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(4),
.mfb-component--tr.mfb-slidein-spring[data-mfb-state=open] .mfb-component__list li:nth-child(4) {
  transition-delay: 0.2s;
  -webkit-transform: translateY(280px);
  transform: translateY(280px);
}

.mfb-component--bl.mfb-slidein-spring .mfb-component__list li,
.mfb-component--br.mfb-slidein-spring .mfb-component__list li {
  opacity: 0;
  transition: all 0.5s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.mfb-component--bl.mfb-slidein-spring .mfb-component__list li:nth-child(1),
.mfb-component--br.mfb-slidein-spring .mfb-component__list li:nth-child(1) {
  transition-delay: 0.05s;
}
.mfb-component--bl.mfb-slidein-spring .mfb-component__list li:nth-child(2),
.mfb-component--br.mfb-slidein-spring .mfb-component__list li:nth-child(2) {
  transition-delay: 0.1s;
}
.mfb-component--bl.mfb-slidein-spring .mfb-component__list li:nth-child(3),
.mfb-component--br.mfb-slidein-spring .mfb-component__list li:nth-child(3) {
  transition-delay: 0.15s;
}
.mfb-component--bl.mfb-slidein-spring .mfb-component__list li:nth-child(4),
.mfb-component--br.mfb-slidein-spring .mfb-component__list li:nth-child(4) {
  transition-delay: 0.2s;
}
.mfb-component--bl.mfb-slidein-spring[data-mfb-toggle=hover]:hover .mfb-component__list li, .mfb-component--bl.mfb-slidein-spring[data-mfb-state=open] .mfb-component__list li,
.mfb-component--br.mfb-slidein-spring[data-mfb-toggle=hover]:hover .mfb-component__list li,
.mfb-component--br.mfb-slidein-spring[data-mfb-state=open] .mfb-component__list li {
  opacity: 1;
}
.mfb-component--bl.mfb-slidein-spring[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(1), .mfb-component--bl.mfb-slidein-spring[data-mfb-state=open] .mfb-component__list li:nth-child(1),
.mfb-component--br.mfb-slidein-spring[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(1),
.mfb-component--br.mfb-slidein-spring[data-mfb-state=open] .mfb-component__list li:nth-child(1) {
  transition-delay: 0.05s;
  -webkit-transform: translateY(-70px);
  transform: translateY(-70px);
}
.mfb-component--bl.mfb-slidein-spring[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(2), .mfb-component--bl.mfb-slidein-spring[data-mfb-state=open] .mfb-component__list li:nth-child(2),
.mfb-component--br.mfb-slidein-spring[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(2),
.mfb-component--br.mfb-slidein-spring[data-mfb-state=open] .mfb-component__list li:nth-child(2) {
  transition-delay: 0.1s;
  -webkit-transform: translateY(-140px);
  transform: translateY(-140px);
}
.mfb-component--bl.mfb-slidein-spring[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(3), .mfb-component--bl.mfb-slidein-spring[data-mfb-state=open] .mfb-component__list li:nth-child(3),
.mfb-component--br.mfb-slidein-spring[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(3),
.mfb-component--br.mfb-slidein-spring[data-mfb-state=open] .mfb-component__list li:nth-child(3) {
  transition-delay: 0.15s;
  -webkit-transform: translateY(-210px);
  transform: translateY(-210px);
}
.mfb-component--bl.mfb-slidein-spring[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(4), .mfb-component--bl.mfb-slidein-spring[data-mfb-state=open] .mfb-component__list li:nth-child(4),
.mfb-component--br.mfb-slidein-spring[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(4),
.mfb-component--br.mfb-slidein-spring[data-mfb-state=open] .mfb-component__list li:nth-child(4) {
  transition-delay: 0.2s;
  -webkit-transform: translateY(-280px);
  transform: translateY(-280px);
}

/**
 * ZOOM-IN
 * When hovering the main button, the child buttons grow
 * from zero to normal size.
 *
 */
.mfb-component--tl.mfb-zoomin .mfb-component__list li,
.mfb-component--tr.mfb-zoomin .mfb-component__list li {
  -webkit-transform: scale(0);
  transform: scale(0);
}
.mfb-component--tl.mfb-zoomin .mfb-component__list li:nth-child(1),
.mfb-component--tr.mfb-zoomin .mfb-component__list li:nth-child(1) {
  -webkit-transform: translateY(70px) scale(0);
  transform: translateY(70px) scale(0);
  transition: all 0.5s;
  transition-delay: 0.15s;
}
.mfb-component--tl.mfb-zoomin .mfb-component__list li:nth-child(2),
.mfb-component--tr.mfb-zoomin .mfb-component__list li:nth-child(2) {
  -webkit-transform: translateY(140px) scale(0);
  transform: translateY(140px) scale(0);
  transition: all 0.5s;
  transition-delay: 0.1s;
}
.mfb-component--tl.mfb-zoomin .mfb-component__list li:nth-child(3),
.mfb-component--tr.mfb-zoomin .mfb-component__list li:nth-child(3) {
  -webkit-transform: translateY(210px) scale(0);
  transform: translateY(210px) scale(0);
  transition: all 0.5s;
  transition-delay: 0.05s;
}
.mfb-component--tl.mfb-zoomin .mfb-component__list li:nth-child(4),
.mfb-component--tr.mfb-zoomin .mfb-component__list li:nth-child(4) {
  -webkit-transform: translateY(280px) scale(0);
  transform: translateY(280px) scale(0);
  transition: all 0.5s;
  transition-delay: 0s;
}
.mfb-component--tl.mfb-zoomin[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(1), .mfb-component--tl.mfb-zoomin[data-mfb-state=open] .mfb-component__list li:nth-child(1),
.mfb-component--tr.mfb-zoomin[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(1),
.mfb-component--tr.mfb-zoomin[data-mfb-state=open] .mfb-component__list li:nth-child(1) {
  -webkit-transform: translateY(70px) scale(1);
  transform: translateY(70px) scale(1);
  transition-delay: 0.05s;
}
.mfb-component--tl.mfb-zoomin[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(2), .mfb-component--tl.mfb-zoomin[data-mfb-state=open] .mfb-component__list li:nth-child(2),
.mfb-component--tr.mfb-zoomin[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(2),
.mfb-component--tr.mfb-zoomin[data-mfb-state=open] .mfb-component__list li:nth-child(2) {
  -webkit-transform: translateY(140px) scale(1);
  transform: translateY(140px) scale(1);
  transition-delay: 0.1s;
}
.mfb-component--tl.mfb-zoomin[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(3), .mfb-component--tl.mfb-zoomin[data-mfb-state=open] .mfb-component__list li:nth-child(3),
.mfb-component--tr.mfb-zoomin[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(3),
.mfb-component--tr.mfb-zoomin[data-mfb-state=open] .mfb-component__list li:nth-child(3) {
  -webkit-transform: translateY(210px) scale(1);
  transform: translateY(210px) scale(1);
  transition-delay: 0.15s;
}
.mfb-component--tl.mfb-zoomin[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(4), .mfb-component--tl.mfb-zoomin[data-mfb-state=open] .mfb-component__list li:nth-child(4),
.mfb-component--tr.mfb-zoomin[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(4),
.mfb-component--tr.mfb-zoomin[data-mfb-state=open] .mfb-component__list li:nth-child(4) {
  -webkit-transform: translateY(280px) scale(1);
  transform: translateY(280px) scale(1);
  transition-delay: 0.2s;
}

.mfb-component--bl.mfb-zoomin .mfb-component__list li,
.mfb-component--br.mfb-zoomin .mfb-component__list li {
  -webkit-transform: scale(0);
  transform: scale(0);
}
.mfb-component--bl.mfb-zoomin .mfb-component__list li:nth-child(1),
.mfb-component--br.mfb-zoomin .mfb-component__list li:nth-child(1) {
  -webkit-transform: translateY(-70px) scale(0);
  transform: translateY(-70px) scale(0);
  transition: all 0.5s;
  transition-delay: 0.15s;
}
.mfb-component--bl.mfb-zoomin .mfb-component__list li:nth-child(2),
.mfb-component--br.mfb-zoomin .mfb-component__list li:nth-child(2) {
  -webkit-transform: translateY(-140px) scale(0);
  transform: translateY(-140px) scale(0);
  transition: all 0.5s;
  transition-delay: 0.1s;
}
.mfb-component--bl.mfb-zoomin .mfb-component__list li:nth-child(3),
.mfb-component--br.mfb-zoomin .mfb-component__list li:nth-child(3) {
  -webkit-transform: translateY(-210px) scale(0);
  transform: translateY(-210px) scale(0);
  transition: all 0.5s;
  transition-delay: 0.05s;
}
.mfb-component--bl.mfb-zoomin .mfb-component__list li:nth-child(4),
.mfb-component--br.mfb-zoomin .mfb-component__list li:nth-child(4) {
  -webkit-transform: translateY(-280px) scale(0);
  transform: translateY(-280px) scale(0);
  transition: all 0.5s;
  transition-delay: 0s;
}
.mfb-component--bl.mfb-zoomin[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(1), .mfb-component--bl.mfb-zoomin[data-mfb-state=open] .mfb-component__list li:nth-child(1),
.mfb-component--br.mfb-zoomin[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(1),
.mfb-component--br.mfb-zoomin[data-mfb-state=open] .mfb-component__list li:nth-child(1) {
  -webkit-transform: translateY(-70px) scale(1);
  transform: translateY(-70px) scale(1);
  transition-delay: 0.05s;
}
.mfb-component--bl.mfb-zoomin[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(2), .mfb-component--bl.mfb-zoomin[data-mfb-state=open] .mfb-component__list li:nth-child(2),
.mfb-component--br.mfb-zoomin[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(2),
.mfb-component--br.mfb-zoomin[data-mfb-state=open] .mfb-component__list li:nth-child(2) {
  -webkit-transform: translateY(-140px) scale(1);
  transform: translateY(-140px) scale(1);
  transition-delay: 0.1s;
}
.mfb-component--bl.mfb-zoomin[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(3), .mfb-component--bl.mfb-zoomin[data-mfb-state=open] .mfb-component__list li:nth-child(3),
.mfb-component--br.mfb-zoomin[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(3),
.mfb-component--br.mfb-zoomin[data-mfb-state=open] .mfb-component__list li:nth-child(3) {
  -webkit-transform: translateY(-210px) scale(1);
  transform: translateY(-210px) scale(1);
  transition-delay: 0.15s;
}
.mfb-component--bl.mfb-zoomin[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(4), .mfb-component--bl.mfb-zoomin[data-mfb-state=open] .mfb-component__list li:nth-child(4),
.mfb-component--br.mfb-zoomin[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(4),
.mfb-component--br.mfb-zoomin[data-mfb-state=open] .mfb-component__list li:nth-child(4) {
  -webkit-transform: translateY(-280px) scale(1);
  transform: translateY(-280px) scale(1);
  transition-delay: 0.2s;
}

/**
 * FOUNTAIN
 * When hovering the main button the child buttons
 * jump into view from outside the viewport
 */
.mfb-component--tl.mfb-fountain .mfb-component__list li,
.mfb-component--tr.mfb-fountain .mfb-component__list li {
  -webkit-transform: scale(0);
  transform: scale(0);
}
.mfb-component--tl.mfb-fountain .mfb-component__list li:nth-child(1),
.mfb-component--tr.mfb-fountain .mfb-component__list li:nth-child(1) {
  -webkit-transform: translateY(-70px) scale(0);
  transform: translateY(-70px) scale(0);
  transition: all 0.5s;
  transition-delay: 0.15s;
}
.mfb-component--tl.mfb-fountain .mfb-component__list li:nth-child(2),
.mfb-component--tr.mfb-fountain .mfb-component__list li:nth-child(2) {
  -webkit-transform: translateY(-140px) scale(0);
  transform: translateY(-140px) scale(0);
  transition: all 0.5s;
  transition-delay: 0.1s;
}
.mfb-component--tl.mfb-fountain .mfb-component__list li:nth-child(3),
.mfb-component--tr.mfb-fountain .mfb-component__list li:nth-child(3) {
  -webkit-transform: translateY(-210px) scale(0);
  transform: translateY(-210px) scale(0);
  transition: all 0.5s;
  transition-delay: 0.05s;
}
.mfb-component--tl.mfb-fountain .mfb-component__list li:nth-child(4),
.mfb-component--tr.mfb-fountain .mfb-component__list li:nth-child(4) {
  -webkit-transform: translateY(-280px) scale(0);
  transform: translateY(-280px) scale(0);
  transition: all 0.5s;
  transition-delay: 0s;
}
.mfb-component--tl.mfb-fountain[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(1), .mfb-component--tl.mfb-fountain[data-mfb-state=open] .mfb-component__list li:nth-child(1),
.mfb-component--tr.mfb-fountain[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(1),
.mfb-component--tr.mfb-fountain[data-mfb-state=open] .mfb-component__list li:nth-child(1) {
  -webkit-transform: translateY(70px) scale(1);
  transform: translateY(70px) scale(1);
  transition-delay: 0.05s;
}
.mfb-component--tl.mfb-fountain[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(2), .mfb-component--tl.mfb-fountain[data-mfb-state=open] .mfb-component__list li:nth-child(2),
.mfb-component--tr.mfb-fountain[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(2),
.mfb-component--tr.mfb-fountain[data-mfb-state=open] .mfb-component__list li:nth-child(2) {
  -webkit-transform: translateY(140px) scale(1);
  transform: translateY(140px) scale(1);
  transition-delay: 0.1s;
}
.mfb-component--tl.mfb-fountain[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(3), .mfb-component--tl.mfb-fountain[data-mfb-state=open] .mfb-component__list li:nth-child(3),
.mfb-component--tr.mfb-fountain[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(3),
.mfb-component--tr.mfb-fountain[data-mfb-state=open] .mfb-component__list li:nth-child(3) {
  -webkit-transform: translateY(210px) scale(1);
  transform: translateY(210px) scale(1);
  transition-delay: 0.15s;
}
.mfb-component--tl.mfb-fountain[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(4), .mfb-component--tl.mfb-fountain[data-mfb-state=open] .mfb-component__list li:nth-child(4),
.mfb-component--tr.mfb-fountain[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(4),
.mfb-component--tr.mfb-fountain[data-mfb-state=open] .mfb-component__list li:nth-child(4) {
  -webkit-transform: translateY(280px) scale(1);
  transform: translateY(280px) scale(1);
  transition-delay: 0.2s;
}

.mfb-component--bl.mfb-fountain .mfb-component__list li,
.mfb-component--br.mfb-fountain .mfb-component__list li {
  -webkit-transform: scale(0);
  transform: scale(0);
}
.mfb-component--bl.mfb-fountain .mfb-component__list li:nth-child(1),
.mfb-component--br.mfb-fountain .mfb-component__list li:nth-child(1) {
  -webkit-transform: translateY(70px) scale(0);
  transform: translateY(70px) scale(0);
  transition: all 0.5s;
  transition-delay: 0.15s;
}
.mfb-component--bl.mfb-fountain .mfb-component__list li:nth-child(2),
.mfb-component--br.mfb-fountain .mfb-component__list li:nth-child(2) {
  -webkit-transform: translateY(140px) scale(0);
  transform: translateY(140px) scale(0);
  transition: all 0.5s;
  transition-delay: 0.1s;
}
.mfb-component--bl.mfb-fountain .mfb-component__list li:nth-child(3),
.mfb-component--br.mfb-fountain .mfb-component__list li:nth-child(3) {
  -webkit-transform: translateY(210px) scale(0);
  transform: translateY(210px) scale(0);
  transition: all 0.5s;
  transition-delay: 0.05s;
}
.mfb-component--bl.mfb-fountain .mfb-component__list li:nth-child(4),
.mfb-component--br.mfb-fountain .mfb-component__list li:nth-child(4) {
  -webkit-transform: translateY(280px) scale(0);
  transform: translateY(280px) scale(0);
  transition: all 0.5s;
  transition-delay: 0s;
}
.mfb-component--bl.mfb-fountain[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(1), .mfb-component--bl.mfb-fountain[data-mfb-state=open] .mfb-component__list li:nth-child(1),
.mfb-component--br.mfb-fountain[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(1),
.mfb-component--br.mfb-fountain[data-mfb-state=open] .mfb-component__list li:nth-child(1) {
  -webkit-transform: translateY(-70px) scale(1);
  transform: translateY(-70px) scale(1);
  transition-delay: 0.05s;
}
.mfb-component--bl.mfb-fountain[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(2), .mfb-component--bl.mfb-fountain[data-mfb-state=open] .mfb-component__list li:nth-child(2),
.mfb-component--br.mfb-fountain[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(2),
.mfb-component--br.mfb-fountain[data-mfb-state=open] .mfb-component__list li:nth-child(2) {
  -webkit-transform: translateY(-140px) scale(1);
  transform: translateY(-140px) scale(1);
  transition-delay: 0.1s;
}
.mfb-component--bl.mfb-fountain[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(3), .mfb-component--bl.mfb-fountain[data-mfb-state=open] .mfb-component__list li:nth-child(3),
.mfb-component--br.mfb-fountain[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(3),
.mfb-component--br.mfb-fountain[data-mfb-state=open] .mfb-component__list li:nth-child(3) {
  -webkit-transform: translateY(-210px) scale(1);
  transform: translateY(-210px) scale(1);
  transition-delay: 0.15s;
}
.mfb-component--bl.mfb-fountain[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(4), .mfb-component--bl.mfb-fountain[data-mfb-state=open] .mfb-component__list li:nth-child(4),
.mfb-component--br.mfb-fountain[data-mfb-toggle=hover]:hover .mfb-component__list li:nth-child(4),
.mfb-component--br.mfb-fountain[data-mfb-state=open] .mfb-component__list li:nth-child(4) {
  -webkit-transform: translateY(-280px) scale(1);
  transform: translateY(-280px) scale(1);
  transition-delay: 0.2s;
}

/*------------------------------------*\
    #LABELS | base
\*------------------------------------*/
/**
 * These are the labels associated to each button,
 * exposed only when hovering the related button.
 * They are called labels but are in fact data-attributes of
 * each button (an anchor tag).
 */
[data-mfb-label]:after {
  content: attr(data-mfb-label);
  opacity: 0;
  transition: all 0.5s;
  background: rgba(0, 0, 0, 0.7);
  padding: 4px 10px;
  border-radius: 3px;
  color: rgba(255, 255, 255, 0.8);
  font-size: 16px;
  font-weight: normal;
  pointer-events: none;
  line-height: normal;
  position: absolute;
  top: 50%;
  margin-top: -12px;
  transition: all 0.5s;
}

[data-mfb-toggle=hover] [data-mfb-label]:hover:after,
[data-mfb-state=open] [data-mfb-label]:after {
  content: attr(data-mfb-label);
  opacity: 1;
  transition: all 0.3s;
}

/*------------------------------------*\
    #LABELS | Modifiers
\*------------------------------------*/
.mfb-component--br [data-mfb-label]:after, .mfb-component--tr [data-mfb-label]:after {
  content: attr(data-mfb-label);
  right: 70px;
}

.mfb-component--br .mfb-component__list [data-mfb-label]:after, .mfb-component--tr .mfb-component__list [data-mfb-label]:after {
  content: attr(data-mfb-label);
  right: 70px;
}

.mfb-component--tl [data-mfb-label]:after, .mfb-component--bl [data-mfb-label]:after {
  content: attr(data-mfb-label);
  left: 70px;
}

.mfb-component--tl .mfb-component__list [data-mfb-label]:after, .mfb-component--bl .mfb-component__list [data-mfb-label]:after {
  content: attr(data-mfb-label);
  left: 70px;
}

/*------------------------------------*\
    #DEVELOPMENT | In development
\*------------------------------------*/
/**
 * This part is where unfinished code should stay.
 * When a feature is ready(sh) move these styles to their proper place.
 */
/*------------------------------------*\
    #DEVELOPMENT | Debuggers
\*------------------------------------*/
/**
 * These are mainly helpers for development. They do not have to end up
 * in production but it's handy to keep them when developing.
 */
/**
 * Apply this class to the html tag when developing the slide-in button
 */
div#contract-sidebar {
  max-width: 210px;
  min-width: 210px;
  height: auto;
}

.contract-menu {
  margin: 0;
  padding: 0;
  border-right: 1px solid #d5d5d5;
  min-height: 100%;
}
.contract-menu .contract-backlink a {
  color: inherit;
}
.contract-menu .contract-title {
  font-weight: 900;
  color: #555555;
}
.contract-menu .contract-customer {
  color: #770404;
  font-weight: 400;
}
.contract-menu .contract-menu-chapter {
  background-color: #ddd;
  font-weight: bold;
  padding: 5px 10px;
  margin: 1px 0 0 0;
  color: #555555;
}
.contract-menu .contract-menu-page {
  padding: 5px 0 0 23px;
  color: #555555;
  vertical-align: middle;
}
.contract-menu .contract-menu-page a {
  color: inherit;
}
.contract-menu .contract-menu-page a:hover {
  color: #cf4b5c;
  text-decoration: none;
}
.contract-menu .contract-menu-page.current-page a {
  color: #770404;
  font-weight: 750;
}
.contract-menu .contract-menu-icon {
  display: inline-block;
  width: 24px;
}
.contract-menu .contract-menu-icon img {
  height: 20px;
  width: auto;
  vertical-align: text-bottom;
}

.contract-page-title {
  margin-top: 5px;
  position: fixed;
  top: 12px;
  right: 12px;
  z-index: 500;
}
.contract-page-title h5 {
  color: #FFF;
}

.contract-details-input, .button-input {
  display: none;
}

.contract-details-label {
  font-weight: 450;
  display: flex;
  align-items: center;
  justify-content: right;
}

.contract-details-value {
  border: 1px solid #e5e5e5;
  border-radius: 5px;
  padding: 5px 10px;
  background-color: #fdfdfd;
  min-height: 36px;
}

button.process-step {
  background-color: #d9d9d9;
  border: 1px solid #ccc;
  margin-left: -25px;
}

div.member-card {
  width: 25%;
  height: 4rem;
  border-radius: 8px;
  border: #DDDDDD 1px solid;
}

.btn.focus, .btn:focus {
  box-shadow: none !important;
}

.form-control {
  font-family: "Roboto Condensed" !important;
  font-size: 16px !important;
}
.form-control:focus {
  box-shadow: none !important;
  border-color: #ddd !important;
}

.custom-select {
  font-family: "Roboto Condensed" !important;
  font-size: 16px !important;
}
.custom-select:focus {
  box-shadow: none !important;
  border-color: #ddd !important;
}
.custom-select option:hover, .custom-select option:focus, .custom-select option:active {
  background-color: #00449d !important;
  color: white !important;
}

.btn-outline-primary, .bg-outline-primary {
  background-color: #EEE;
  border-color: #00449d;
  color: #00449d;
}
.btn-outline-primary:hover, .bg-outline-primary:hover {
  color: #EEE;
  background-color: #00449d;
}

.btn-outline-secondary, .bg-outline-secondary {
  background-color: #EEE;
  border-color: #770404;
  color: #770404;
}

.row {
  margin-left: 0;
  margin-right: 0;
}

.btn {
  padding: 0.3rem 0.5rem !important;
}

.btn-transparent {
  background-color: transparent;
  color: #444444;
}

.alert {
  padding: 5px;
}

/* ANCHOR: Overriding jQuery-UI */
.ui-dialog {
  padding: 0 !important;
  border: 0 !important;
  font-family: "Roboto Condensed";
  font-size: 16px;
  box-shadow: 0 5px 25px rgba(0, 0, 0, 0.2) !important;
}

.ui-dialog-titlebar {
  border-radius: 5px 5px 0 0 !important;
  background: #F5F5F5 !important;
  color: #444444 !important;
  border-bottom: thin solid #e5e5e5 !important;
}

.ui-dialog-titlebar-close {
  border: 0 !important;
  background-color: transparent !important;
}

.ui-widget-header {
  border: 0;
}

.ui-widget-content {
  background-color: #f5f5f5;
}

.ui-dialog-buttonpane {
  border-radius: 0 0 5px 5px !important;
  border-top: thin solid #e5e5e5 !important;
}

.ui-dialog-buttonset .ui-button {
  border: thin solid #c5c5c5 !important;
  font-family: "Roboto Condensed" !important;
  font-size: 16px !important;
  color: #00449d;
}
.ui-dialog-buttonset .ui-button:hover {
  color: #770404;
}

.separateButtons .ui-dialog-buttonset {
  width: 100% !important;
  padding-left: 1rem;
}/*# sourceMappingURL=master.css.map */