body {
    font-size: 100%;
    font-family: helvetica;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background: linear-gradient(
      to bottom,
      rgba(150, 150, 150, 1) 0%,
      rgba(110, 110, 110, 1) 100%
    );
    min-height: 100vh;
    
  }
  #root {
    height: 110vh;
  }

  button.neomorphic {
    color:#61677C;
    font-weight: bold;
    box-shadow: -5px -5px 20px #fff,  5px 5px 20px #EBECF0;
    transition: all 0.2s ease-in-out;
    cursor: pointer;
    font-weight: 600;
    height: 8vh;
    margin: 2vh 2vw 2vh 4vw;
    padding: 0 2.5vw;
    border-radius: 8px;
      
    
    &:hover {
      box-shadow: -2px -2px 5px #fff, 2px 2px 5px #EBECF0;
    }
    
    &:active {
      box-shadow: inset 1px 1px 2px #EBECF0, inset -1px -1px 2px #fff;
    }
    
    .icon {
      margin-right: 8px;
    }
    
    &.unit {
      border-radius: 8px;
      line-height: 0;
      width: 48px;
      height: 48px;
      display:inline-flex;
      justify-content: center;
      align-items:center;
      margin: 0 8px;
      font-size: 20px;
      
      .icon {
        margin-right: 0; 
      }
    }
    
    &.red {
      display: block;
      width: 100%;
      color:#ae1100;
    }
  }
    /* Music Player */
    *,
    *:before,
    *:after {
      box-sizing: border-box
    }

    * {
      background-image: linear-gradient(120deg, rgb(250,250,250), rgb(220,220,220));
       background: rgb(240,240,245);
       margin:0;
       padding:0;
      }

    h3 {

      margin: 10px 10px 30px 10px;
      padding: 0 10px;
      border-radius: 15px;
      overflow: hidden;
      border: 5px solid rgb(240,240,245);
      display: flex;
      align-items: center;
      background: rgb(240,240,245);
      box-shadow: -5px -5px 20px rgb(254,254,255),
               2px 2px 20px rgb(200,200,220)
    }
  
    .hide {
      display: none !important
    }
  
    button {
      margin: 0;
      padding: 0;
      transition: all 0.2s ease-in-out;
      cursor: pointer;
      border: 0;
      border-radius: 6px;
      outline: 0;
      background: transparent;
      max-width: 40vw;
      &:active {
        box-shadow: inset 1px 1px 2px #EBECF0, inset -1px -1px 2px #fff !important;
        outline:none !important;
      }
      &:focus {
        box-shadow: inset 1px 1px 2px #EBECF0, inset -1px -1px 2px #fff !important;
        outline:none !important;
      }
    }

    .slidecontainer {
      width: 100%; /* Width of the outside container */
    }
    
    /* The slider itself */
    .slider {
      width: 87vh; /* Full-width */
      height: 25px; /* Specified height */
      fill: #51666d; /* Grey background */
      outline: none; /* Remove outline */
      opacity: 0.7; /* Set transparency (for mouse-over effects on hover) */
      -webkit-transition: .2s; /* 0.2 seconds transition on hover */
      transition: opacity .2s;
      margin: 40px auto;
    }
    
    
    /* Mouse-over effects */
    .slider:hover {
      opacity: 1; /* Fully shown on mouse-over */
    }
  
    .ap {
      position: relative;
      right: 0;
      bottom: -25vh;
      left: 0;
      height: 50vh;
      margin: auto;
      font-family: Arial, sans-serif;
      font-size: 14px;
      user-select: none;
      color: #333;
      background: #f1f1f1;
      border-top: 1px solid #ccc;
      z-index: 9999;
      margin: 0 2vw 2vh 2vw;
      border-radius: 20px;
      overflow: hidden;
      border: 5px solid rgb(240,240,245);
      background: rgb(240,240,245);
      box-shadow: -5px -5px 20px rgb(254,254,255),
               2px 2px 20px rgb(200,200,220)
    }
  
    .ap-inner {
      max-width: 1440px;
      margin: auto auto;
      padding-top: 10vh;
    }
  
    .ap-panel {
      display: flex;
      
    }
  
    .ap-item {
      display: flex;
      flex: 1;
      justify-content: center;
      align-items: center
    }
  
    .ap--track {
      flex: 1 40%;
      padding: 0 15px
    }
  
    .ap-info {
      width: 100%;
      position: relative;
      align-self: flex-start;
      padding: 5px 0 0
    }
  
    .ap-title {
      position: relative;
      overflow: hidden;
      padding-right: 80px;
      text-align: left;
      white-space: nowrap;
      text-overflow: ellipsis
    }

    #ap01-sel, .ap-time{
      font-size: 1.2em;
     
    }
  
    .ap-time {
      position: absolute;
      top: 5px;
      right: 0
    }
  
    .ap-controls {
      position: relative;
      z-index: 1000;
      display: block;
      height: 50px;
      cursor: pointer;
      transition: background .2s ease;
      text-align: center;
      color: #fff;
      border: 0;
      outline: 0;
      background: none
    }
  
    .ap-controls svg {
      fill: #333
    }
  
    .ap-controls:hover svg {
      fill: #222
    }
  
    
  
    .ap--playback>.ap-controls,
    .ap--settings>.ap-controls {
      flex: 0 25%
    }
  
    .ap--pause, .ap--loading, .loading>.ap--play, .loading>.ap--pause,
    .playing>.ap--play {
      display: none
    }

    .playing>.ap--pause {
      display: inline
    }

    .loading>.ap--loading {
      display: inline;
    }

    
  
    
  
    .ap-active {
      background: rgba(0, 0, 0, .15);
      opacity: 1
    }
  
    
    .playing>.ap--pause {
      animation: blink 1.5s linear infinite
    }

    .btn-circle {
      -webkit-appearance: none;
      box-shadow: 
      -10px -10px 15px rgba(255 ,255 ,255 ,0.5),
      10px 10px 15px rgba(70, 70 ,70 ,0.12);
      border-radius: 50%;
      border: 1px solid #ececec;
      outline: none;
      width: 68px;
      height: 68px;
      text-align: center;
      padding: 0 0;
      font-size: 25px;
      line-height: 2.00;
      border-color: #e6e6e6;
      margin-left: 5px;
      color: #2d2c2c;
      z-index: 200;
  }

  .btn-circle:active {
    box-shadow: 
    -20px -10px 15px rgba(255 ,255 ,255 ,0.5),
    10px 10px 15px rgba(124, 124, 124, 0.12),
    inset -10px -10px 15px rgba(255 ,255 ,255 ,0.5),
    inset 10px 10px 15px rgba(121, 120, 120, 0.82);
  }
  
  button>span {
    margin: -14px 0 0 0;
    font-size: 10px;
    color: #61677C;
    background-color: transparent;
  }
  button.inv, button.inv:active, button.inv:focus {
    margin: -14px 0 0 0;
    font-size: 0px;
    color: transparent;
    background-color: transparent;
    box-shadow: none !important;
    border: none;
    outline: none !important;
    width: 100px;
    height:50px;
    position:fixed;
    top: 0;
    right:0;
  }

  #dialer {
    font-family: Helvetica, sans-serif;
    margin: 20px auto;
    padding: 0;
    width: 80vw;
    text-align: center;
  }
  .detail-form {
      width: 80%;
      margin: 4vh auto;
      margin-left: 10px;
  }
  
  .controls, .keys {
      padding-top: 10px;
  }
  
  .controls {
      float: left;
  }
  
  .controls .btn {
      display: block;
      margin-bottom: 20px;
  }
  
  .keys {
      padding-left: 20px;
      float: right;
      text-align: center;
      color: #fff;
  }
  
  .key-row {
      margin-bottom: 20px;
  }
  
  .key-row .btn {
      font-weight: 700;
      margin-top: -5px;
      /* background-color: transparent; */
  }
  
  .key-row .btn span {
      font-weight: 700;
      background-color: transparent;
      display: block;
      padding-top: 0px;
      font-size: 10px;
      color: #2a2829;
  }
  
  
  .form-control {
    font-size: 2rem;
    height: 80px;
    border-radius: 14px;
    text-align: center;
    margin: 40px 0 50px 0;
  }


  .fa-fw {
    background-color: transparent;
  }

  .phone {
    background-color: rgb(18, 145, 18);
  }
  .closen {
    background-color: rgb(120, 5, 8);
  }

  .fa-phone {
    background-color: rgb(18, 145, 18);
    color: white;
    border-color: rgb(18, 145, 18);
  }

  .fa-close {
    background-color: rgb(120, 8, 8);
    color: white;
    border-color: rgb(120, 5, 8);
  }

  
  #dialer{
    display: none;
  }
  #ap01 {
    display: block;
    left: -25vh;
    top: 50vw;
    width: 90vh;
    height: 80vw;
    transform: rotate(90deg);
  }

  #dialer.portrait{
    display:block;
   
  }
  #ap01.portrait, #buttons.portrait{
    display: none;
  }

  @media only screen and (orientation:portrait) {
    #dialer{
     
    }
  }
  

  


  
    @media (max-width: 880px) {
      .ap-item>.ap-controls {
        flex: 1;
        /*margin-top: -7vh;*/
      }
    }
  
    @media (max-width: 550px) {
     
  

    

      #btn-accept {
        margin-bottom: 3px;
      }

      #btn-reject {
          margin-bottom: 3px;
      }

      #btn-add-conf {
          font-size: 12px;
          margin-bottom: 10px;
      }
    }

    .spinner {
      -webkit-animation: rotate 2s linear infinite;
              animation: rotate 2s linear infinite;
      z-index: 2;
      position: absolute;
      top: 50%;
      left: 50%;
      margin: -25px 0 0 -25px;
      width: 50px;
      height: 50px;
    }
    .spinner .path {
      stroke: #cccccc;
      stroke-linecap: round;
      -webkit-animation: dash 1.5s ease-in-out infinite;
              animation: dash 1.5s ease-in-out infinite;
    }
    
    @-webkit-keyframes rotate {
      100% {
        -webkit-transform: rotate(360deg);
                transform: rotate(360deg);
      }
    }
    
    @keyframes rotate {
      100% {
        -webkit-transform: rotate(360deg);
                transform: rotate(360deg);
      }
    }
    @-webkit-keyframes dash {
      0% {
        stroke-dasharray: 1, 150;
        stroke-dashoffset: 0;
      }
      50% {
        stroke-dasharray: 90, 150;
        stroke-dashoffset: -35;
      }
      100% {
        stroke-dasharray: 90, 150;
        stroke-dashoffset: -124;
      }
    }
    @keyframes dash {
      0% {
        stroke-dasharray: 1, 150;
        stroke-dashoffset: 0;
      }
      50% {
        stroke-dasharray: 90, 150;
        stroke-dashoffset: -35;
      }
      100% {
        stroke-dasharray: 90, 150;
        stroke-dashoffset: -124;
      }
    }
    
  