/* Global Defaults */
html,body {
  margin: 0!important;
  padding: 0!important;
  font-family: "Noto Sans", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100;
}

/* Header - Homepage */
.header-home {
  background-color: #1A2129;
  max-height: 75px;
}
/* Header - Alert */
.header-alert {
  height: 165px;
  overflow-y: hidden;
}
.header-alert img {
  height: 30px;
}
.header-alert i {
  font-size: 25px;
}
.page-title-alert {
  font-size: 1.5rem;
}
/* Header - Account */
.header-account {
  height: 165px;
  overflow-y: hidden;
}
.header-account img {
  height: 30px;
}
.header-account i {
  font-size: 25px;
}
.page-title-account {
  font-size: 1.5rem;
}
.header-account .btn-danger {
  font-family: "Noto Sans", sans-serif;
}

/* Header - Defaults */
.alert-toggle {
  top: 0;
  right: 0;
  width: 15px;
  height: 15px;
  background-color: #BF0808;
}

/* Global - Homepage */
.homepage {
  background-color: #BC96E6;
}
.vh-33 {
  height: calc(33vh - 25px);
}
.homepage .calendar {
  background-color: #13243A;
  box-shadow: inset 0 12px 9px -5px rgba(0,0,0,0.4);
  background-image: url(./bg/FG-Home-Calendario.webp);
  background-position: -10% center;
  background-size: auto 70%;
  background-repeat: no-repeat;
}
.customer {
    background-color: #9CC4B2;
    box-shadow: inset 0 12px 9px -5px rgba(0,0,0,0.4);
    background-image: url(./bg/FG-Home-Clienti.webp);
    background-position: -10% center;
    background-size: auto 70%;
    background-repeat: no-repeat;
}

.customer2 {
    background-color: #BC96E6;
    box-shadow: inset 0 12px 9px -5px rgba(0,0,0,0.4);
    background-image: url(./bg/FG-Home-Clienti.webp);
    background-position: -10% center;
    background-size: auto 70%;
    background-repeat: no-repeat;
}

.calfilter {
    background-color: #9CC4B2;
    box-shadow: inset 0 12px 9px -5px rgba(0,0,0,0.4);
    background-image: url(./bg/FG-Home-Calendario-Search.webp);
    background-position: -10% center;
    background-size: auto 70%;
    background-repeat: no-repeat;
}

.communication {
    background-color: #BC96E6;
    box-shadow: inset 0 12px 9px -5px rgba(0,0,0,0.4);
    background-image: url(./bg/FG-Home-Comunicazioni.webp);
    background-position: -10% center;
    background-size: auto 70%;
    background-repeat: no-repeat;
}
.cta-home {
  font-size: 1.2rem;
  font-weight: 600;
  letter-spacing: 0.025em;
}
.icon-list {
  padding-left: 0;
  list-style: none;
}
.icon-list li {
  display: flex;
  align-items: flex-start;
  margin-bottom: .25rem;
}
.icon-list li::before {
  display: block;
  flex-shrink: 0;
  width: 1.5em;
  height: 1.5em;
  margin-right: .5rem;
  content: "";
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23212529' viewBox='0 0 16 16'%3E%3Cpath d='M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0zM4.5 7.5a.5.5 0 0 0 0 1h5.793l-2.147 2.146a.5.5 0 0 0 .708.708l3-3a.5.5 0 0 0 0-.708l-3-3a.5.5 0 1 0-.708.708L10.293 7.5H4.5z'/%3E%3C/svg%3E") no-repeat center center / 100% auto;
}

/* Global - Home Alert */
.homealert {
  background-color: #EA8771;
}
.alert-list {
  background-color: #fff;
  height: calc(100% - 165px);
  font-family: "Poppins", sans-serif;
}
.alert-list strong {
  font-weight: 600;
}
.alert-list button {
  font-family: "Noto Sans", sans-serif;
}
.alert-list .alert-toggle {
  width: 25px;
  height: 25px;
  right: 0.25rem;
  top: -0.75rem;
}
.alert-list .form-label strong {
  font-family: "Noto Sans", sans-serif;
}
.alert-list .form-control {
  font-size: 0.9rem;
}
.alert-list .btn-primary {
  font-family: "Noto Sans", sans-serif;
}
.alert-list .btn-outline-dark {
  font-family: "Noto Sans", sans-serif;
}

/* Global - Home Account */
.homeaccount {
  background-color: #3C7B8F;
}
.homeaccount .modal-title {
  font-family: "Noto Sans", sans-serif;
}
.homeaccount .modal-footer button {
  font-family: "Noto Sans", sans-serif;
}
.account-list {
  background-color: #fff;
  height: calc(100% - 165px);
  font-family: "Poppins", sans-serif;
}
.account-list .account-list-arrow img {
  height: 30px;
}
.account-list button {
  font-family: "Noto Sans", sans-serif;
}
.account-list .alert-toggle {
  width: 25px;
  height: 25px;
  right: 0.25rem;
  top: -0.75rem;
}
.account-list .form-label strong {
  font-family: "Noto Sans", sans-serif;
}
.account-list .form-control {
  font-size: 0.9rem;
}
.account-list .form-control::placeholder {
  color: #ADADAD;
}
.account-list input[type=time].form-control {
  align-self: center;
}
.account-list .btn-primary {
  font-family: "Noto Sans", sans-serif;
}
.account-list .btn-outline-dark {
  font-family: "Noto Sans", sans-serif;
}
.account-list .account-image {
  width: 200px;
  height: 200px;
  background-color: #EDEDF6;
}
.account-list .account-add-user {
  width: 35px;
  height: 35px;
}
.account-list .input-group .btn {
    height: 35px;
}
.account-list .input-group .form-control {
  background-color: #EDEDF6!important;
  height: 35px;
}
.account-list .input-group .form-control {
  margin-left: -0.5rem!important;
  font-size: 0.9rem;
}
.account-list .list-group {
  list-style: none;
}
.account-list .form-check-input {
  font-size: 1.2rem;
  margin-left: -2.2em;
}
.account-list .form-switch .form-check-label {
  margin-top: 2px;
}
.account-list .form-check-input:checked {
  background-color: #486FBB!important;
  border-color: #486FBB!important;
}

/* Global Calendar */
.calendar_content {
  background: #fff; 
}
.calendar_content, .calendar_weekdays, .calendar_header {
  position: relative;
  overflow: hidden; 
}
.calendar_weekdays div {
  display: inline-block;
  vertical-align: top;
  color: #1A2129;
  font-size: 0.9rem;
  font-weight: 600;
}
.calendar_weekdays div, .calendar_content div {
  width: 14.28571%;
  overflow: hidden;
  text-align: center;
  background-color: transparent;
  color: #000;
  padding: 9px 0;
}
.calendar_content div {
  border: 1px solid transparent;
  float: left;
  position: relative;
  z-index: 0;
  font-size: 0.9rem; 
}
.calendar_content div:hover {
  border: 1px solid #dcdcdc;
  cursor: default; 
}
.calendar_content div.blank:hover {
  cursor: default;
  border: 1px solid transparent; 
}
.calendar_content div.past-date {
  color: #d5d5d5; 
}
.calendar_content div.today,
.calendar_content div.selected {
  color: #fff !important; 
}
.calendar_content div.today:after,
.calendar_content div.selected:after {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  bottom: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  content: '';
  width: 30px;
  height: 30px;
  border-radius: 50%;
  margin: 0 auto;
  background: #F47458;
  z-index: -1;
  -webkit-box-shadow: 0px 5px 11px -9px rgba(0, 0, 0, 0.48);
  -moz-box-shadow: 0px 5px 11px -9px rgba(0, 0, 0, 0.48);
  box-shadow: 0px 5px 11px -9px rgba(0, 0, 0, 0.48); 
}
.calendar_content div.selected {
  background-color: #f0f0f0; 
}

.calendar_header h2 {
  font-size: 1.2rem;
  color: #1A2129;
  font-weight: 600;
}
.account-list button.switch-month {
  background-color: transparent!important;
  padding: 0;
  outline: none;
  border: none;
  color: #1A2129;
  -webkit-transition: color .2s;
  -o-transition: color .2s;
  transition: color .2s; 
}
button.switch-month:hover {
  color: #1089ff; 
}
.workTimeSpan {
  font-size: 0.9rem;
  color: #ADADAD;
}

/* Global - Anagrafica */
.homeanagrafica {
  background-color: #9CC4B2;
}
.anagrafica-list {
  background-color: #fff;
  height: calc(100% - 165px);
  font-family: "Poppins", sans-serif;
}
.anagrafica-list .account-list-arrow img {
  height: 30px;
}
.anagrafica-list button {
  font-family: "Noto Sans", sans-serif;
}
.anagrafica-list .alert-toggle {
  width: 25px;
  height: 25px;
  right: 0.25rem;
  top: -0.75rem;
}
.anagrafica-list .form-label strong {
  font-family: "Noto Sans", sans-serif;
}
.anagrafica-list .form-control {
  font-size: 0.9rem;
  color: #ADADAD;
}
.anagrafica-list.btn-primary {
  font-family: "Noto Sans", sans-serif;
}
.anagrafica-list .btn-outline-dark {
  font-family: "Noto Sans", sans-serif;
  background-color: #fff!important;
}
.anagrafica-list .account-image {
  width: 200px;
  height: 200px;
  background-color: #EDEDF6;
}
.anagrafica-list .account-add-user {
  width: 35px;
  height: 35px;
}

.anagrafica-list .input-group .form-control {
  background-color: #EDEDF6!important;
  height: 35px;
}

.anagrafica-list .input-group .btn
 {
    height: 35px;
 }

.anagrafica-list .input-group .form-control {
  margin-left: -0.5rem!important;
  font-size: 0.9rem;
}
.anagrafica-list .list-group {
  list-style: none;
}
.anagrafica-list .form-check-input {
  font-size: 1.2rem;
  margin-left: -2.2em;
}
.anagrafica-list.form-switch .form-check-label {
  margin-top: 2px;
}
.anagrafica-list .form-check-input:checked {
  background-color: #486FBB!important;
  border-color: #486FBB!important;
}

/* Global - Anagrafica */
.homecomunicazioni {
  background-color: #BC96E6;
}
.comunicazioni-list {
  background-color: #fff;
  height: calc(100% - 165px);
  font-family: "Poppins", sans-serif;
}

/* Global - Calendario */
.homecalendario {
  background-color: #13243A;
}
.calendario-list {
  background-color: #fff;
  height: calc(100% - 165px);
  font-family: "Poppins", sans-serif;
}
.homecalendario .calendar_content div.today::after {
  background-color: #13243A;
}
.homecalendario .switch-month {
  background-color: transparent!important;
  border: 0!important;
}
.homecalendario .calendar_content div.selected::after {
  background-color: transparent;
  border: 1px solid #13243A;
}
.homecalendario .calendar_content div.selected {
  color: #13243A!important;
}
.calendario-list .btn-primary {
  font-family: "Noto Sans", sans-serif;
}
.homecalendario .nav-tabs {
  background-color: #EDEDF6;
  font-size: 0.9rem;
}
.homecalendario .nav-tabs .nav-link {
  color: #767676;
}
.homecalendario .nav-tabs .nav-link.active {
  color: #1A2129;
}
.homecalendario table {
  font-size: 0.9rem;
}
.homecalendario table button {
  background-color: #91E12A;
  min-width: 72px;
  color: #1A2129!important;
}
.homecalendario table button.active {
  background-color: #F3B873;
}
.homecalendario table button.unactive {
  background-color: #EDEDF6;
}
.homecalendario .confirmed {
  background-color: #F3B873;
}
.homecalendario .unconfirmed {
  background-color: #EDEDF6;
}

/* Circular Menu */
.circular-menu {
  position: fixed;
  bottom: 1em;
  right: 1em;
}
.circular-menu .floating-btn {
  display: block;
  width: 2.5em;
  height: 2.5em;
  border-radius: 50%;
  background-color: #fff;
  box-shadow: 0 2px 5px 0 hsla(0, 0%, 0%, .26);  
  color: #1A2129;
  text-align: center;
  line-height: 2.8;
  cursor: pointer;
  outline: 0;
  font-size: 1.5em;
}
.circular-menu.active .floating-btn {
  box-shadow: inset 0 0 3px hsla(0, 0%, 0%, .3);
}
.circular-menu .floating-btn:active {
  box-shadow: 0 4px 8px 0 hsla(0, 0%, 0%, .4);
}
.circular-menu .floating-btn i {
  font-size: 1.3em;
  transition: transform .2s;  
}
.circular-menu.active .floating-btn i {
  transform: rotate(-45deg);
}
.circular-menu:after {
  display: block;
  content: ' ';
  width: 3.2em;
  height: 3.2em;
  border-radius: 50%;
  position: absolute;
  top: 2px;
  right: 2px;
  z-index: -2;
  background-color: #13243A;
  transition: all .3s ease;
}
.homeanagrafica .circular-menu::after {
  background-color: #9CC4B2;
}
.homecomunicazioni .circular-menu::after {
  background-color: #BC96E6;
}
.homecalendario .circular-menu::after {
  background-color: #13243A;
}
.circular-menu.active:after {
  transform: scale3d(5.5, 5.5, 1);
  transition-timing-function: cubic-bezier(.68, 1.55, .265, 1);
}
.circular-menu .items-wrapper {
  padding: 0;
  margin: 0;
}
.circular-menu .menu-item {
  position: absolute;
  z-index: -1;
  display: block;
  text-decoration: none;
  color:#fff;
  font-size: 2.5em;
  border-radius: 50%;
  text-align: center;
  line-height: 3;
  transition: transform .3s ease, background .2s ease;
}
.circular-menu .menu-item:hover {
  background-color: hsla(0,0%,0%,.3);
}
.circular-menu.active .menu-item {
  transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.circular-menu.active .menu-item:nth-child(1) {
  transform: translate3d(0.5em,-4.5em,0);
}
.circular-menu.active .menu-item:nth-child(2) {
  transform: translate3d(-1.3em,-3.8em,0);
}
.circular-menu.active .menu-item:nth-child(3) {
  transform: translate3d(-1.8em,-2em,0);
}

/* Global Billing */
.billing-plan-free {
  background: linear-gradient(#8FC74F, #55927A);
}
.billing-btn-std {
  background: linear-gradient(#7096D9, #402A62);
  font-size: 0.9rem;
}
.billing-plan-info {
  font-size: 1.2rem;
}
.billing-plan-expire {
  font-size: 0.9rem;
}
.billing-plan-expire h6 {
  font-size: 1.2rem;
}
.billing-plan-disc {
  font-size: 0.9rem;
  color: #636363;
}
.billing-plan-delete {
  color: #636363;
  border: 0.5px solid #636363
}
.billing-plan-std {
  background: linear-gradient(#7096D9, #402A62);
}
.billing-invoice-date {
  color: #4A427C;
}

/* Global Support */
.support-list {
  background-color: #fff;
  height: calc(100% - 165px);
  font-family: "Poppins", sans-serif;
}
.support-list .nav-tabs {
  background-color: #EDEDF6;
  font-size: 0.9rem;
}
.support-list .nav-tabs .nav-link {
  color: #767676;
}
.support-list .nav-tabs .nav-link.active {
  color: #1A2129;
  background-color: #fff;
}
#question-tab {
  float: right;
}
.support-list .form-label strong {
  font-family: "Noto Sans", sans-serif;
}
.support-list .form-control {
  font-size: 0.9rem;
}
.support-list .form-control::placeholder {
  color: #ADADAD;
}
.support-list .btn-primary {
  font-family: "Noto Sans", sans-serif;
}
.support-list .btn-outline-dark {
  font-family: "Noto Sans", sans-serif;
}
.tutorial-btn-link {
  color: #636363;
  font-size: 0.9rem;
}
#question table {
  font-size: 0.9rem;
  overflow: hidden;
}
#question table td {
  font-size: 0.8rem;
  text-align: center;
  min-width: 100px;
  vertical-align: middle;
  padding-top: 1rem!important;
  padding-bottom: 1rem!important;
}
#question table th {
  background-color: #EDEDF6;
  font-size: 0.9rem;
  font-weight: 600;
  padding-top: 1rem!important;
  padding-bottom: 1rem!important;
}
.question-wait {
  display: block;
  background-color: #F36F56;
  width: 0.8rem;
  height: 0.8rem;
}
.question-ready {
  display: block;
  background-color: #91E12A;
  width: 0.8rem;
  height: 0.8rem;
}
.question-close {
  display: block;
  background-color: #636363;
  width: 0.8rem;
  height: 0.8rem;
}