


@media (min-width: 421px){
  .calendar{
    /* font-size:30.5%; */

    width:20rem;
    height:20rem;
    /* background-color: white; */
background: #eee;
    /* #222227; */
    box-shadow: 0 0.5rem 3rem rgba(0,0,0,0.4);
   padding: 0;
   margin:0 20%;
  }

  .month{
    width:100%;
    /* height:6rem; */
    background-color: #167e56; /*  background: #1abc9c;*/
    display:flex;
    justify-content: space-between;
    align-items: center;
    padding:0 1rem;
    text-align:center;
    text-shadow: 0 .3rem .5 rgba(0,0,0,0.4);

  }

  .month i{
    font-size: 2.5rem;
    cursor:pointer;
  }
  .month h1{
    font-size:2rem;
    font-weight:400:
    text-transform:uppercase;
    letter-spacing:0.2rem;
    /* margin-bottom:1rem; */

  }


  .month p{
    font-size: 1.3rem;
    margin-bottom: 0.2rem
  }

  .month .prev {
    float: left;
    padding-top: 10px;
  }

  .month .next {
    float: right;
    padding-top: 10px;
  }

  .weekdays{
    /* width: :100%; */
    /* height:4rem; */
    padding:0 0.4rem;
    display:flex;
    align-items:center;
    background-color: #ddd;
    margin: 0;
    padding: 10px 0;
  }

  .weekdays div{
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.05rem;
    width: calc(14.2%);
    display: flex;
    justify-content: center;
    align-items: center;
    /* text-shadow: 0 0.3rem 0.5 rem rgba(0,0,0,0.5); */

  }



  .days{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    padding: 0.2rem;
background: #eee;
  }

  .days div{
    font-size: 110%;
    /* margin:0.3rem; */
    width: calc(14.2%);
    height: 2rem;
    display: flex;
    justify-content: center;
    align-items: center;
    text-shadow: 0 0.3rem 0.5rem rgba(0,0,0,0.5);
    transition: background-color 0.2s;
  }

  .days div:hover:not(.today){
    background-color: #00864e85;
    border:0.2rem solid #777;
    cursor:pointer;
  }
  .prev-date,
  .next-date{
    opacity: 0.5;
  }

  .today{
    background-color: #167e56
  }

  .prev{
    color: black;
    font-weight: 700;
  }
  .next{
    color: black;
    font-weight: 700;
  }


 .disabled{
   background-color:  #ddd;;
 }

 .enabled{
   background-color: #5f975978;
 }
 .focusedC{
    background-color: #00864e;
 }

}

@media (max-width: 420px){
  .calendar{

    /* max-width:26rem; */
    height:20rem;
    background-color: #eee;
    font-size: 30.5%;
        width: 20rem;
        height: 20rem;
        /* background-color: white; */
        background: #eee;
        box-shadow: 0 0.5rem 3rem rgb(0 0 0 / 40%);
        padding: 0;
        margin: 0 20%;
  }

  .month{
    width:100%;
    height:6rem;
    background-color: #167e56;
    display:flex;
    justify-content: space-between;
    align-items: center;
    padding:0 1rem;
    text-align:center;
    text-shadow: 0 .3rem .5 rgba(0,0,0,0.4);

  }

  .month i{
    font-size: 2.5rem;
    cursor:pointer;
  }

  .month h1{
    font-size:2rem;
    font-weight:400:
    text-transform:uppercase;
    letter-spacing:0.2rem;
  }


  .month p{
    font-size: 1.6rem;
    margin-bottom: 0.2rem
  }

  .month .prev {
    float: left;
    padding-top: 10px;
  }

  .month .next {
    float: right;
    padding-top: 10px;
  }

  .weekdays{
    padding:0 0.4rem;
    display:flex;
    align-items:center;
    background-color: #ddd;
    margin: 0;
    padding: 10px 0;
  }

  .weekdays div{
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.1rem;
    width: calc(14.2%);
    display: flex;
    justify-content: center;
    align-items: center;
  }



  .days{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    padding: 0.2rem;
background: #eee;

  }

  .days div{
    font-size: 1rem;
    /* margin:0.3rem; */
    width: calc(14.2%);
    /* height: 3rem; */
    display: flex;
    justify-content: center;
    align-items: center;
    text-shadow: 0 0.3rem 0.5rem rgba(0,0,0,0.5);
    transition: background-color 0.2s;
  }

  .days div:hover:not(.today){
    background-color: #262626;
    border:0.2rem solid #777;
    cursor:pointer;
  }
  .prev-date,
  .next-date{
    /* opacity: 0.5; */
  }

  .today{
    background-color: #167e56
  }

  .prev{
    color: black;
    font-weight: 700;
  }
  .next{
    color: black;
    font-weight: 700;
  }

  .focusedC{
     background-color: #00864e;
  }
}





/* listbox */

 .listbox-area {
  /* display: grid;
  grid-gap: 2em; */
  min-width: 12rem;
  max-width: 22rem;
  max-height: 20rem;
  /* grid-template-columns: repeat(2, 1fr); */
  padding: 20px;
  /* border: 1px solid #aaa; */
  border-radius: 4px;
  background: #eee;
  box-shadow: 0 0.5rem 3rem rgba(0,0,0,0.4);

}

.listbox-label{
  font-size: 20px;
  /* font-weight: bold; */
  text-align: center;
  display: block;
}
[role="listbox"] {
  margin: 1em 0 0;
  padding: 0;
  min-height: 15rem;
  border: 1px solid #aaa;
  /* background: white; */
background-color: #c6e3d766;
}

[role="listbox"]#ss_elem_list {
  position: relative;
  max-height: 15rem;
  overflow-y: auto;
margin:1rem 3rem 0 3rem;

}

[role="listbox"] + *,
.listbox-label + * {
  margin-top: 1em;

}

[role="group1"] {
  margin: 0 auto;
  padding: 0;

}

[role="group1"] > [role="presentation"] {
  display: block;
  margin: 0;
  padding: 0 0.5em;
  font-weight: bold;
  line-height: 2;
  background-color: #ccc;
}

[role="option"] {
  position: relative;
  display: block;
  /* padding: 0 1em 0 1.5em; */
  line-height: 1.8em;
  font-size: 15px;
  text-align: center;
}

[role="option"].focused {
  background: #bde4ff;
}

[role="option"][aria-selected="true"]::before {
  position: absolute;
  left: 0.5em;
  content: "✓";
}
