.floorplan-container {
    overflow: visible;
    user-select: none;
}

#floorplan-toggle-btn {
    position: absolute;
    right: 1rem;
    bottom: 1.25rem;
    background-color: rgba(0, 0, 0, 0.7);
  
    
} 

#floorplan-toggle-btn.isOpen {
    
}

.floorplan {
    position: absolute;
    right: 1rem;
    bottom: 6rem;
    width: 30%;
    background-color: #343a40;
    color: white;
    cursor: initial;
    display: none;
    border-radius: 3px;
    padding: 20px;
    transition: opacity 1s ease-in-out;
}

.floorplan.isOpen {
    display: flex;
    flex-direction: column;
}

.floorplan--maps {
    display: grid;
}

.floorplan--headline {
    display: flex;
    align-items: center;
    border-bottom: 1px solid #575e64;
}

#floor-title{
    display:none;
    visibility: hidden;
}

#floor-subtitle{
    margin-left: 0px;
    color: white;
    font-size:18px;
}

.floorplan--selection {
    position: absolute;
    left: -1rem;
    top: 50%;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
}

.floor-select-btn {
    background-color: #343a40;
    margin-top: 10px;
    margin-bottom: 10px;
    border-radius: 50%;
    width: 2rem;
    height: 2rem;
    text-align: center;
    line-height: 2rem;
    vertical-align: middle;
    font-size: 1rem;
    color: #575e64;
    cursor: pointer;
    display:none;
}

.floor-select-btn:hover {
    color: white;
}

.floor-select-btn.isActive {
    color:white;
}

.floor-map {
    position: relative;
    grid-column: 1;
    grid-row: 1;
    opacity: 0;
    width: 100%;
    height: max-content;
    top: 50%;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    pointer-events: none;
}

.floor-map.isActive {
    opacity: 1;
    pointer-events: all;
}

.floor-map img {
    height: auto;
    width: 100%;
}

#floorplan-close-btn {
    background-color:#343a40; 
    border:0; display:block !important; 
    margin-top: -1.5rem; 
    margin-left:90%;
    height: 1.6rem;
    width: 1.6rem;
}

.floorplan a:link,
.floorplan a:visited {
  font-size:1rem !important;
   color: rgba(255,255,255,.5)!important;
}

.floorplan a:active,
.floorplan a:hover{
  font-size:1rem !important;
  color: rgba(255,255,255,1)!important;
}


.pois {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0px;
}

.poi {
    position: absolute;
    width: 1rem;
    height: 1rem;
    cursor: pointer;
    background-color: rgb(163, 163, 163);
    border-radius: 0.5rem;
    z-index:1;
    transform: translate(-50%, -50%);
}

.poi.isActive {
    background-color: white;
}

.poi:hover {
    background-color: white;
}

#fov-indicator {
    position: absolute;
    width: 2rem;
    height: 2rem;
    padding: 0;
    border-radius: 100%;
    z-index:0;
    transform: translate(-50%, -50%);
    overflow: hidden;
    /*background: #575e64;*/
    border:  rgb(163, 163, 163) solid 1px;
}

#fov {
    --degrees: calc(var(--offset, 0) - var(--value, 45) / 2);
    height: 100%;
    width: 100%;
    overflow: hidden;
    position: absolute;
    transform: translate(0, -50%) rotate(90deg) rotate(calc(var(--degrees, 0) * 1deg));
    transform-origin: 50% 100%;
}

#fov:before {
    --degrees: calc((var(--value, 45) / 100) * 360);
    background:  rgb(163, 163, 163);
    content: '';
    height: 100%;
    position: absolute;
    transform: translate(0, 100%) rotate(calc(var(--value, 45) * 1deg));
    transform-origin: 50% 0;
    width: 100%;
}

@media (max-width: 950px) { 

    #floorplan-toggle-btn {
        display:block;
        top:1rem;
        bottom:auto;
        right:125px;
   
    }
    
        .floorplan {
        position: absolute;
        right: 1rem;
        top: 4rem;
        bottom:auto;
        width: 40%;

    }
}
@media (max-width: 768px) { 

    #floorplan-toggle-btn {
        display:none;

   
    }
    .floorplan {display:none;}
    .floorplan.isOpen {display:none;}
}