:root {
    --white: white;
    --gray: #999;
    --lightgray: whitesmoke;
    --green: #00d1b2;
    --popular: #ffdd40;
    --starter: #f73859;
    --essential: #209cee;
    --professional: #ff7f45;
  }
  
  /* SWITCH STYLES
  –––––––––––––––––––––––––––––––––––––––––––––––––– */
  .switch-wrapper {
    position: relative;
    display: inline-flex;
    padding: 4px;
    border: 1px solid lightgrey;
    margin-bottom: 5px;
    border-radius: 30px;
    background: var(--white);
  }
  
  .switch-wrapper [type="radio"] {
    position: absolute;
    left: -9999px;
  }
  
  .switch-wrapper [type="radio"]:checked#monthly ~ label[for="monthly"],
  .switch-wrapper [type="radio"]:checked#yearly ~ label[for="yearly"] {
    color: var(--white);
  }
  
  .switch-wrapper [type="radio"]:checked#monthly ~ label[for="monthly"]:hover,
  .switch-wrapper [type="radio"]:checked#yearly ~ label[for="yearly"]:hover {
    background: transparent;
  }
  
  .switch-wrapper
    [type="radio"]:checked#monthly
    + label[for="yearly"]
    ~ .highlighter {
    transform: none;
    background: var(--essential);
  }
  
  .switch-wrapper
    [type="radio"]:checked#yearly
    + label[for="monthly"]
    ~ .highlighter {
    transform: translateX(100%);
    background: var(--green);
  }
  
  .switch-wrapper label {
    font-size: 16px;
    z-index: 1;
    min-width: 150px;
    line-height: 35px;
    cursor: pointer;
    border-radius: 30px;
    transition: color 0.25s ease-in-out;
  }
  
  .switch-wrapper label:hover {
    background: var(--lightgray);
  }
  
  .switch-wrapper .highlighter {
    position: absolute;
    top: 4px;
    left: 4px;
    width: calc(50% - 4px);
    height: calc(100% - 8px);
    border-radius: 30px;
    /*background: var(--green);*/
    transition: transform 0.25s ease-in-out;
  }

  .highlighter.is-primary{
    background: var(--green);
  }
  .highlighter.is-info{
    background: var(--essential);
  }
  
  /* TABLE STYLES
  –––––––––––––––––––––––––––––––––––––––––––––––––– */
  .table-wrapper {
    background: var(--white);
    overflow-x: auto;
  }
  .hide {
    display: none;
  }
  /* SELECTEUR DE TYPE DE RDV : variante 3 positions
  –––––––––––––––––––––––––––––––––––––––––––––––––– */
  /* SELECTEUR A 2 POSITIONS : mode client, recherche de creneaux */
  .switch-wrapper.is-two-positions { display: flex; width: 100%; margin-bottom: 0; }

  .switch-wrapper.is-two-positions label {
    flex: 1 1 50%;
    min-width: 0;
    text-align: center;
    font-size: 13px;
    font-weight: 700;
    line-height: 32px;
  }

  .switch-wrapper.is-two-positions .highlighter { width: calc((100% - 8px) / 2); }

  .switch-wrapper.is-two-positions [type="radio"]:nth-of-type(1):checked ~ .highlighter { transform: none;             background: #3298dc; }
  .switch-wrapper.is-two-positions [type="radio"]:nth-of-type(2):checked ~ .highlighter { transform: translateX(100%); background: #3298dc; }

  .switch-wrapper.is-two-positions [type="radio"]:nth-of-type(1):checked ~ label:nth-of-type(1),
  .switch-wrapper.is-two-positions [type="radio"]:nth-of-type(2):checked ~ label:nth-of-type(2) { color: #fff; }

  .switch-wrapper.is-two-positions [type="radio"]:nth-of-type(1):checked ~ label:nth-of-type(1):hover,
  .switch-wrapper.is-two-positions [type="radio"]:nth-of-type(2):checked ~ label:nth-of-type(2):hover { background: transparent; }

  .switch-wrapper.is-booking-type { display: flex; width: 100%; margin-bottom: 0; }

  .switch-wrapper.is-booking-type label {
    flex: 1 1 33.333%;
    min-width: 0;
    text-align: center;
    font-size: 13px;
    font-weight: 700;
    line-height: 32px;
  }

  .switch-wrapper.is-booking-type .highlighter { width: calc((100% - 8px) / 3); }

  .switch-wrapper.is-booking-type [type="radio"]:nth-of-type(1):checked ~ .highlighter { transform: none;             background: #d8d8d8; }
  .switch-wrapper.is-booking-type [type="radio"]:nth-of-type(2):checked ~ .highlighter { transform: translateX(100%); background: #f1592a; }
  .switch-wrapper.is-booking-type [type="radio"]:nth-of-type(3):checked ~ .highlighter { transform: translateX(200%); background: #ffdd57; }

  .switch-wrapper.is-booking-type [type="radio"]:nth-of-type(1):checked ~ label:nth-of-type(1),
  .switch-wrapper.is-booking-type [type="radio"]:nth-of-type(3):checked ~ label:nth-of-type(3) { color: #363636; }
  .switch-wrapper.is-booking-type [type="radio"]:nth-of-type(2):checked ~ label:nth-of-type(2) { color: #fff; }

  /* Le survol ne doit pas repeindre l'onglet actif et masquer sa pastille. */
  .switch-wrapper.is-booking-type [type="radio"]:nth-of-type(1):checked ~ label:nth-of-type(1):hover,
  .switch-wrapper.is-booking-type [type="radio"]:nth-of-type(2):checked ~ label:nth-of-type(2):hover,
  .switch-wrapper.is-booking-type [type="radio"]:nth-of-type(3):checked ~ label:nth-of-type(3):hover { background: transparent; }
