.custom-template {
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
  right: -325px;
  width: 325px;
  height: max-content;
  display: block;
  z-index: 1;
  background: #ffffff;
  transition: all .3s;
  z-index: 1003;
  box-shadow: -1px 1px 20px rgba(69, 65, 78, 0.15);
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
  transition: all .5s;
}

.custom-template.open {
  right: 0px;
}



.custom-template .custom-toggle {
  position: absolute;
  width: 45px;
  height: 45px;
  background: rgb(88, 103, 221);
  top: 50%;
  left: -45px;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
  border-right: 1px solid #177dff;
  cursor: pointer;
  color: #ffffff;
  box-shadow: -5px 5px 20px rgba(69, 65, 78, 0.21);
}

.custom-template .custom-toggle i {
  font-size: 20px;
  animation: 1.3s spin linear infinite;
}

.custom-template .title{
    padding: 15px;
    text-align: left;
    font-size: 16px;
    font-weight: 600;
    color: #ffffff;
    border-top-left-radius: 5px;
    border-bottom: 1px solid #ebedf2;
    background: #5867dd;
}

.custom-template .custom-content{
  padding: 20px 15px;
  max-height: calc(100vh - 90px);
  overflow: auto;
}

.custom-template .switcher {
  padding: 5px 0;
}

.custom-template .switch-block h4 {
  font-size: 13px;
  font-weight: 600;
  color: #444;
  line-height: 1.3;
  margin-bottom: 0;
  text-transform: uppercase;
}

.custom-template .btnSwitch {
  margin-top: 20px;
  margin-bottom: 25px;
}

.custom-template .btnSwitch button {
  border: 0px;
  height: 20px;
  width: 20px;
  outline: 0;
  margin-right: 10px;
  margin-bottom: 10px;
  cursor: pointer;
  padding: 0;
  border-radius: 50%;
  border: 2px solid #eee;
  position: relative;
  transition: all .2s;
}

.custom-template .btnSwitch button:hover{
  border-color: #0bf;
}

.custom-template .btnSwitch button.selected{
  border-color: #0bf;
}

.custom-template .img-pick {
  padding: 4px;
  min-height: 100px;
  border-radius: 5px;
  cursor: pointer;
}

.custom-template .img-pick img {
  height: 100%;
  height: 100px;
  width: 100%;
  border-radius: 5px;
  border: 2px solid transparent;
}

.custom-template .img-pick:hover img, .custom-template .img-pick.active img{
  border-color: #177dff;
}

.demo .btn, .demo .progress{
  margin-bottom: 15px !important;
}

.demo .form-check-label, .demo .form-radio-label{
  margin-right: 15px;
}

.demo .toggle, .demo .btn-group{
  margin-right: 15px;
}

.demo #slider{
  margin-bottom: 15px;
}

.table-typo tbody > tr > td{
  border-color: #fafafa;
}

.table-typo tbody > tr > td:first-child{
  min-width: 200px;
  vertical-align: bottom;
}

.table-typo tbody > tr > td:first-child p{
  font-size: 14px;
  color: #333;
}

.demo-icon {
  display: flex;
  flex-direction: row;
  align-items: center;
  margin-bottom: 20px;
  padding: 10px;
  transition: all .2s;
}

.demo-icon:hover{
  background-color: #f4f5f8;
  border-radius: 3px;
}

.demo-icon .icon-preview{
  font-size: 1.8rem;
  margin-right: 10px;
  line-height: 1;
  color: #333439;
}

body[data-background-color="dark"] .demo-icon .icon-preview {
  color: #969696;
}

.demo-icon .icon-class{
  font-weight: 300;
  font-size: 13px;
  color: #777;
}

body[data-background-color="dark"] .demo-icon .icon-class {
  color: #a9a8a8;
}

.form-show-notify .form-control{
  margin-bottom: 15px;
}

.form-show-notify label{
  padding-top: 0.65rem;
}

.map-demo {
  height: 300px;
}

#instructions li{
  padding: 5px 0;
}

.row-demo-grid{
  margin-bottom: 15px;
}

.row-demo-grid [class^="col"]{
  text-align: center;
}

.row-demo-grid [class^="col"] .card-body{
  background: #ddd;
}

.btnSwitch button[data-color="white"] {
  background-color: #fff;
}
.btnSwitch button[data-color="grey"] {
  background-color: #f1f1f1;
}
.btnSwitch button[data-color="black"] {
  background-color: #191919;
}
.btnSwitch button[data-color="dark"] {
  background-color: #1a2035;
}
.btnSwitch button[data-color="blue"] {
  background-color: #1572E8;
}
.btnSwitch button[data-color="purple"] {
  background-color: #6861CE;
}
.btnSwitch button[data-color="light-blue"] {
  background-color: #48ABF7;
}
.btnSwitch button[data-color="green"] {
  background-color: #31CE36;
}
.btnSwitch button[data-color="orange"] {
  background-color: #FFAD46;
}
.btnSwitch button[data-color="red"] {
  background-color: #F25961;
}
.btnSwitch button[data-color="dark2"] {
  background-color: #1f283e;
}
.btnSwitch button[data-color="blue2"] {
  background-color: #1269DB;
}
.btnSwitch button[data-color="purple2"] {
  background-color: #5C55BF;
}
.btnSwitch button[data-color="light-blue2"] {
  background-color: #3697E1;
}
.btnSwitch button[data-color="green2"] {
  background-color: #2BB930;
}
.btnSwitch button[data-color="orange2"] {
  background-color: #FF9E27;
}
.btnSwitch button[data-color="red2"] {
  background-color: #EA4d56;
}
.btnSwitch button[data-color="bg1"] {
  background-color: #fafafa;
}
.btnSwitch button[data-color="bg2"] {
  background-color: #fff;
}
.btnSwitch button[data-color="bg3"] {
  background-color: #f1f1f1;
}

@media screen and (max-width: 550px){
  .table-typo tr td{
    display: flex;
    align-items: center;
    word-break: break-word;
  }

  .table-typo tr td:first-child p{
    margin-bottom: 0px;
  }
}

@media screen and (max-width: 576px){
  .custom-template .custom-content {
    overflow: auto;
  }
  .form-show-notify > .text-right, .form-show-validation > .text-right {
    text-align: left !important;
  }
}

@media screen and (max-width: 400px) {
  .custom-template {
    width: 85% !important;
    right: -85%;
  }
}

/* ===========
   Portlets
 =============*/
.portlet {
  background: #ffffff;
  border-radius: 3px;
  margin-bottom: 20px;
  transition: all 0.4s;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
}
.portlet .portlet-heading {
  -webkit-border-radius: 3px 3px 0 0;
  border-radius: 3px 3px 0 0;
  -moz-border-radius: 3px 3px 0 0;
  color: #ffffff;
  padding: 12px 20px;
}
.portlet .portlet-heading .portlet-title {
  color: #ffffff;
  float: left;
  font-size: 15px;
  font-weight: 600;
  margin-bottom: 0;
  margin-top: 9px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-family: 'Hind Madurai', sans-serif;
}
.portlet .portlet-heading .portlet-widgets {
  display: inline-block;
  float: right;
  font-size: 15px;
  line-height: 30px;
  padding-left: 15px;
  position: relative;
  text-align: right;
}
.portlet .portlet-heading .portlet-widgets .divider {
  margin: 0 5px;
}
.portlet .portlet-heading a {
  color: #999999;
}
.portlet .portlet-body {
  -moz-border-radius-bottomleft: 5px;
  -moz-border-radius-bottomright: 5px;
  -webkit-border-bottom-left-radius: 5px;
  -webkit-border-bottom-right-radius: 5px;
  background: #ffffff;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  padding: 15px;
}
.portlet-default .portlet-title {
  color: #797979 !important;
}
.portlet .portlet-heading .portlet-widgets .collapsed .ion-minus-round:before {
  content: "\f217" !important;
}
.portlet .portlet-heading.bg-purple a,
.portlet .portlet-heading.bg-info a,
.portlet .portlet-heading.bg-success a,
.portlet .portlet-heading.bg-primary a,
.portlet .portlet-heading.bg-danger a,
.portlet .portlet-heading.bg-warning a,
.portlet .portlet-heading.bg-inverse a,
.portlet .portlet-heading.bg-pink a,
.portlet .portlet-heading.bg-orange a,
.portlet .portlet-heading.bg-brown a,
.portlet .portlet-heading.bg-teal a {
  color: #ffffff;
}
.panel-disabled {
  background: rgba(49, 58, 70, 0.5);
  cursor: progress;
  bottom: 20px;
  border-radius: 3px;
  left: 10px;
  position: absolute;
  right: 10px;
  top: 0;
}
.portlet-loader {
  width: 30px;
  height: 30px;
  background-color: #313a46;
  border-radius: 2px;
  -webkit-animation: sk-rotateplane 1.2s infinite ease-in-out;
  animation: sk-rotateplane 1.2s infinite ease-in-out;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -15px;
  margin-top: -15px;
}
@-webkit-keyframes sk-rotateplane {
  0% {
    -webkit-transform: perspective(120px);
  }
  50% {
    -webkit-transform: perspective(120px) rotateY(180deg);
  }
  100% {
    -webkit-transform: perspective(120px) rotateY(180deg) rotateX(180deg);
  }
}
@keyframes sk-rotateplane {
  0% {
    transform: perspective(120px) rotateX(0deg) rotateY(0deg);
    -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg);
  }
  50% {
    transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
    -webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
  }
  100% {
    transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
    -webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
  }
}


/* Chat widget */
.conversation-list {
  list-style: none;
  padding: 0 10px;
}
.conversation-list li {
  margin-bottom: 24px;
}
.conversation-list .chat-avatar {
  display: inline-block;
  float: left;
  text-align: center;
  width: 42px;
}
.conversation-list .chat-avatar img {
  border-radius: 100%;
  width: 100%;
}
.conversation-list .chat-avatar i {
  font-size: 12px;
  font-style: normal;
}
.conversation-list .ctext-wrap {
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  background: rgba(243, 243, 243, 0.6);
  border-radius: 3px;
  display: inline-block;
  padding: 12px;
  position: relative;
}
.conversation-list .ctext-wrap i {
  color: #313a46;
  display: block;
  font-size: 12px;
  font-style: normal;
  font-weight: bold;
  font-family: 'Hind Madurai', sans-serif;
  position: relative;
}
.conversation-list .ctext-wrap p {
  margin: 0;
  padding-top: 3px;
}
.conversation-list .ctext-wrap:after {
  right: 100%;
  top: 0;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-top-color: rgba(243, 243, 243, 0.6);
  border-width: 8px;
  margin-left: -1px;
  border-right-color: rgba(243, 243, 243, 0.6);
}
.conversation-list .conversation-text {
  display: inline-block;
  float: left;
  font-size: 12px;
  margin-left: 12px;
  width: 70%;
}
.conversation-list .odd .chat-avatar {
  float: right !important;
}
.conversation-list .odd .conversation-text {
  float: right !important;
  margin-right: 12px;
  text-align: right;
  width: 70% !important;
}
.conversation-list .odd .ctext-wrap {
  background-color: #f5707a;
  color: #ffffff;
}
.conversation-list .odd .ctext-wrap i {
  color: #ffffff;
}
.conversation-list .odd .ctext-wrap:after {
  border-color: rgba(238, 238, 242, 0) !important;
  border-left-color: #f5707a !important;
  border-top-color: #f5707a !important;
  left: 100% !important;
  margin-right: -1px;
}
.chat-send {
  padding-left: 0;
  padding-right: 30px;
}
.chat-send button {
  width: 100%;
}
.chat-inputbar {
  padding-left: 30px;
}