.model-cards-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px; 
    width: 100%;
}

.model-card {
    width: calc(25% - 20px); 
    height: 500px;
    padding: 0;
    box-sizing: border-box;
    position: relative;
    margin: 0; 
    margin-bottom: 20px; 
    overflow: hidden;
    transition: transform 0.3s ease-out;
    background-color: transparent;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    border-radius: 10px;
}

.model-card:hover .model-photo {
    transform: scale(1.05);
}


.model-schedule {
    position: absolute;
    top: 70%;
    left: 20%;
    transform: translate(-50%, -50%);
    background: rgba(0, 0, 0, 0.6);
    text-align: left;
    font-size: 14px;
    padding: 10px;
    border-radius: 10px;
}

.model-timer{
    color: var(--white-back);
    font-size: 22px;
    font-weight: bold;
}

.model-photo-tile {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    overflow: hidden;
}

.model-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
    display: block;
}

.model-photo {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; 
    display: flex;
    justify-content: flex-end;
    padding: 0; 
    box-sizing: border-box;
    background: none;
    text-align: left;
    font-weight: bold;
    overflow: hidden;
    transition: box-shadow 0.3s ease-out, 
                border-radius 0.3s ease-out, 
                transform 0.3s ease-out;
    color: var(--white-back); 
    flex-direction: column;
    z-index: 1;
}

.model-photo::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 13%;
    background: rgba(0, 0, 0, 0.6);
    z-index: 2;
    border-radius: 10px 10px 0px 0px;
}

.model-photo.not-working {
    filter: grayscale(100%);
    opacity: 0.9; 
}

.model-photo p {
    margin: 10px;
    display: inline-block;
    font-weight: bold;
    position: relative;
    z-index: 5;
    color: var(--white-back);
}

.model-name-card {
    font-size: 1.2em;
    margin: 0;
}

.model-info-card-top {
    position: absolute; 
    bottom: 92%;
    z-index: 3;
    display: flex;
    justify-content: flex-end;
    padding: 10px 10px; 
    box-sizing: border-box;
    background: rgba(0, 0, 0, 0.6);  
    border-radius: 0px 0px 10px 0px;
}


.model-info-card {
    position: absolute; 
    bottom: 0; 
    width: 100%;
    z-index: 3;
    display: flex;
    align-items: center; 
    justify-content: space-between;
    padding: 5px 25px; 
    box-sizing: border-box;
    
}






.pulsing-dot-container {
    display: flex;
    margin: 5px;
    align-items: center;
    justify-content: center;
    position: relative; 
    width: 10px; 
    height: 10px;
}

.pulsing-dot {
    position: absolute;
    top: 0;
    left: 0;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 0;
    background-color: rgba(71, 225, 141, 1);
    -webkit-animation: pulse 2s ease-out infinite; 
}

.pulsing-dot::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: rgba(71, 225, 141, .7);
    -webkit-animation: sploosh 2s cubic-bezier(0.165, 0.84, 0.44, 1) infinite; 
}

@-webkit-keyframes sploosh {
  0% {
    box-shadow: 0 0 0 0px rgba(71, 225, 141, .7);
    background: rgba(71, 225, 141, .7);
  }
  80% {
    background: rgba(66, 166, 223, 0);
  }
  100% {
    box-shadow: 0 0 0 10px rgba(66, 166, 223, 0);
  }
}

@-webkit-keyframes pulse {
  0% {
    -webkit-transform: scale(1);
  }
  3.3% {
    -webkit-transform: scale(1.1);
  }
  16.5% {
    -webkit-transform: scale(1);
  }
  33% {
    -webkit-transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
  }
}









.model-badges {
    position: absolute;
    top: 10px;
    right: 5px;
    width: 150px; 
    height: 150px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.model-badge {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    text-transform: uppercase;
    padding: 10px;
}

.model-badge.badge-vip {
    background: linear-gradient(to bottom, #edbd20, #ab8713);
    width: 100px;
    height: 20px;
    font-size: 24px;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    transform: rotate(45deg);
    top: 0; 
    right: -50px; 
    color: var(--black-text); 
}

.badge-new {
    background: linear-gradient(to bottom, #cf5194, #972b65);
    border-radius: 10px;
    font-size: 12px;
    width: 45px;
    height: 10px;
    top: 253%;
    color: var(--white-back);
}

.badge-verified {
    background: linear-gradient(to bottom, #5397cf, #1769ad);
    border-radius: 10px;
    width: 55px;
    height: 10px;
    font-size: 12px;
    top: 253%;
    color: var(--white-back);
}

.badge-independent {
    background: linear-gradient(to bottom, #3bae3f, #367c38);
    border-radius: 10px;
    width: 98px;
    height: 10px;
    font-size: 12px;
    top: 253%;
    color: var(--white-back);
}

/* Позиції для бейджів */
.position-1 {
    right: 140%;
}

.position-2 {
    right: 85%;
}

.position-3 {
    right: 2%;
}


.vip_border {
    border: 7px solid var(--grey-theme);
}
.vip_border_not_active {
    border: 7px solid gray;
}









.model-price-card {
    margin: 0;
    font-weight: bold;
    font-size: 1.2em; 
    color: var(--white-back);
    padding: 5px 0px 0px 0px;
}

.model-available-card{
    margin: 0;
    font-weight: bold;
    font-size: 1em; 
    color: var(--white-back);
}

.model-name-available{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.model-cards-container > .model-card:nth-child(4n+1) {
    justify-content: center;
}
.model-cards-container > .model-card:nth-child(4n+2) {
    justify-content: space-evenly;
}
.model-cards-container > .model-card:nth-child(4n+3) {
    justify-content: space-around;
}



@media only screen and (max-width: 1350px) {
    
        
    .model-info-card-top {
        bottom: 92%;
    }
    
    .model-card {
        width: calc(33% - 20px); 
        height: 600px; 
    }
    
    .model-name-card {
        font-size: 2em;
        margin: 0;
    }
    
    .model-price-card {
        font-size: 1.2em; 
    }
    
    .badge-new {
        top: 300%;
    }
    
    .badge-verified {
        top: 300%;
    }
    
    .badge-independent {
        top: 300%;
    }
}

@media only screen and (max-width: 900px) {
    .model-card {
        width: calc(50% - 20px);
        height: 600px; 
    }
    .model-name-card {
        font-size: 1.5em;
        margin: 0;
    }
    
    .model-price-card {
        font-size: 1.2em; 
    }
            
    .model-info-card-top {
        bottom: 92%;
    }
    
    
    .badge-new {
        top: 300%;
    }
    
    .badge-verified {
        top: 300%;
    }
    
    .badge-independent {
        top: 300%;
    }

}

@media only screen and (max-width: 700px) {
    .model-card {
        width: 90%; 
        height: 500px; 
    }
        
    .model-name-card {
        font-size: 1.5em;
        margin: 0;
    }
    
    .model-price-card {
        font-size: 1.2em; 
    }
            
    .model-info-card-top {
        bottom: 92%;
    }
    
        .badge-new {
        top: 253%;
    }
    
    .badge-verified {
        top: 253%;
    }
    
    .badge-independent {
        top: 253%;
    }
}

