/* 整體佈局 */
.userControl{
    width: 100%;
    height: 85%;
    left: 0%;
    top: 3.5%;
}
@media (max-width:768px) {
    .userControl{
        height: 90%;
    }
}
/* 評論區塊 */
.comment_box {
    width: 100%;
    height: 60%;
    margin: 0 auto;
    font-family: 'Noto Sans TC', sans-serif;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    padding-top: 5%;
}

/* 篩選器 */
.filter_title {
    position: absolute;
    width: 95%;
    height: 20%;
    display: flex;
    align-items: center;
    justify-content: center;
    left: 50%;
    transform: translateX(-50%);
}

.filterbox {
    width: 95%;
    display: inline-flex;
    padding: 2%;
    border: 1px solid #7a01ad;
    border-radius: 10px;
    margin: 0 3% 0 2%;
}

.filterbox .form-select {
    font-size: 1.5rem;
    vertical-align: top;
}

.addComment {
    width: 100%;
    margin-left: -2%;
}

/* 輪播區域 */
.renew {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 80%;
}

#recipeCarousel {
    position: absolute;
    top: 2%;
    left: 0;
    width: 100%;
    height: 80%;
}

#recipeCarousel .carousel-inner,
#recipeCarousel .carousel-inner .carousel-item,
#recipeCarousel .carousel-inner .carousel-item .col-12 {
    height: 100%;
}

.carousel-control-prev {
    width: 1% !important;
    left: 10% !important;
}

.carousel-control-next {
    width: 1% !important;
    right: 10% !important;
}

.chevron {
    font-size: 40px;
}

/* 評論卡片 */
.commentBG {
    background: #fff;
    color: #000;
    width: 70%;
    height: 90%;
    border: 1px solid #AE7C0D;
    padding: 3%;
    margin: 0 auto;
    border-radius: 10px;
    font-family: 'Noto Sans TC', sans-serif;
    text-align: left;
}

.gender_icon {
    display: inline-block;
    width: 50px !important;
    margin-right: 3%;
}

.card-flex {
    width: 100%;
    display: inline-flex;
    align-items: center;
    flex-wrap: nowrap;
}

.card-mb {
    margin-bottom: 4.5%;
}

.card-name {
    font-size: 1.5rem;
}

.card-sat {
    font-size: 1.75rem;
    font-weight: 600;
}

.card-txt {
    font-size: 1.3rem;
    line-height: 2.5rem;
}

.satStars {
    color: #fbc416;
}

/* Modal 表單 */
.modal-body {
    padding: 0 !important;
}

.btn-close {
    position: absolute;
    top: 4%;
    right: 6%;
    font-size: 22px;
    opacity: 1 !important;
}

#form {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    background: #F2F4F7;
    border-radius: 10px;
    padding: 10% 0 5% 0;
}
.stars {
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
}

.stars input {
    display: none;
}

.stars label {
    display: inline-block;
    width: 40px;
    height: 40px;
    font-size: 40px;
    padding: 2px;
    cursor: pointer;
    color: #3d3d3d;
    transition: color 0.1s ease-out;
    margin-right: 5px;
    /* 移除 float: right */
}

.stars input:checked ~ label {
    color: #fbc416;
    animation: wobble 0.8s ease-out;
}

/* 動畫效果 */



@keyframes wobble {
    0% { transform: scale(0.8); }
    20% { transform: scale(1.1); }
    40% { transform: scale(0.9); }
    60% { transform: scale(1.05); }
    80% { transform: scale(0.96); }
    100% { transform: scale(1); }
}

/* RWD */
@media (max-width: 768px) {
    .sec14 {
        padding: 5% 0 15% 0;
    }

  

    .filterbox {
        margin-left: 2%;
    }

    .filterbox .form-select {
        padding: 0 !important;
        padding-left: .4rem !important;
        background-position: right 0.4rem center !important;
        font-size: 1rem !important;
    }

    .addComment {
        width: 95%;
        margin-left: 0%;
    }

    .stars label {
        font-size: 32px;
        margin-right: 0;
    }
}

@media (max-width: 568px) {
    #recipeCarousel {
        height: 90%;
    }

    .chevron {
        font-size: 24px;
    }

    .carousel-control-prev {
        left: 3% !important;
    }

    .carousel-control-next {
        right: 3% !important;
    }

    .commentBG {
        width: 84%;
    }

    .gender_icon {
        width: 10% !important;
    }

    .card-mb {
        margin-bottom: 0%;
    }

    .card-name {
        font-size: 1rem;
    }

    .card-sat {
        font-size: 1.15rem;
    }

    .card-txt {
        font-size: 0.9rem;
        line-height: 1rem;
    }
}