.select-box {padding: 6px 10px; border-radius: 3px; border: 1px solid #eee; display: flex; gap: 8px; width: fit-content; font-size: 12px; color: #555; position: absolute; top: 0; right: 0;}
.select-box em {width: 9px;}
.select-box em img {object-fit: contain;}

.sel-tit {position: relative; display: flex; align-items: center; gap: 10px;}
.sel-tit p {display: inline-block; padding: 4px 12px; border-radius: 5px; background-color: #ff7a27; color: #fff; display: flex; align-items: center; gap: 10px; width: fit-content; font-size: 17px;}
.sel-tit p em {width: 8px;}


.pro-con-wrap2 {margin-top: 40px;}
.pro-con-wrap2 .pro-con-inner {display: flex; flex-wrap: wrap; column-gap: 10px; row-gap: 30px;} 
.pro-con-wrap2 .pro-con-inner > div {width: calc((100% - 10px) / 2);}
.pro-con-wrap2 > p {font-size: 14px; color: #777; margin-top: -5px; margin-bottom: 15px;}
.pro-con-wrap2 > p span {font-weight: 600; color: #222; display: inline-block;}

.ce-info {padding: 30px 20px; border-bottom: 8px solid #f9f9f9;}
.ce-info h2, .re-info h2 {font-size: 18px; color: #222; font-weight: 600; margin-bottom: 15px;}

.re-input-wrap {display: flex; flex-direction: column; gap: 20px;}
.re-info {padding: 30px 20px;}
textarea {border: 1px solid #eee; border-radius: 8px; padding: 15px; width: 100%; height: 80px; font-family: inherit; font-size: 15px;}
textarea::placeholder {color: #aaa;}
.re-input-wrap .input {display: flex; flex-direction: column; gap: 8px;}
.re-input-wrap .input p {font-size: 15px; color: #666;}
.re-input-wrap button {margin-top: 15px;}


/* 상세페이지 */

.tab {width: 100%; border-bottom: 1px solid #eee; padding: 0 20px; position: sticky; left: 0; top: 58px; background-color: #fff; z-index: 5;}
.tab ul {display: flex;}
.tab ul li {flex-grow: 1; text-align: center; padding: 15px 0; font-size: 14px; font-weight: 600;}
.tab ul li.on {font-weight: 900; border-bottom: 2px solid #333;}

.detail-sec {padding: 30px 20px;}
.detail-sec h4 {font-size: 20px; font-weight: bold; margin-bottom: 15px; display: flex; align-items: center; gap: 5px;}
.detail-sec h4 span {font-weight: 900; color: #FB8500;}
.detail-sec > p {margin-top: -8px; font-size: 16px; font-weight: 600; color: #444;}
.detail-sec > p > b {color: #FB8500;}
.review-wrap {display: flex; flex-direction: column;}
.review-wrap > div:last-child {border: none; padding-bottom: 0;}
.review-wrap .re-info {padding: 30px 0; border-bottom: 1px solid #eee;}
.review-name {display: flex; align-items: center; justify-content: space-between; margin-bottom: 15px;}
.review-name > div {display: flex; align-items: center; gap: 5px;}
.review-name > div .stars {display: flex; align-items: center; gap: 3px;}
.review-name > div .stars img {width: 10px;}
.review-name span {font-size: 12px; color: #999;}
.review-txt p {font-size: 14px; color: #555;}
.re-info > em {font-size: 12px; font-weight: 888; color: #999; margin-bottom: 10px;}

.bd-b {border-bottom: 8px solid #f9f9f9;}
.detail-pro-img {position: relative; height: 250px;}
.detail-pro-img span {position: absolute; display: flex; gap: 5px; align-items: center; bottom: 15px; right: 20px; font-size: 12px; color: #555; background-color: #fff; padding: 5px 12px; border-radius: 50px;}
.detail-pro-img span em {background: url(../img/like_btn2.png) no-repeat center/cover; width: 14px; height: 13px;}
.detail-pro-img span.on em {background: url(../img/like_btn2_on.png) no-repeat center/cover; width: 14px; height: 13px;}

.detail-center-info {padding: 20px;}

.photo-wrap {display: flex; flex-wrap: wrap; column-gap: 7px; row-gap: 7px;}
.photo-wrap em {width: calc((100% - 14px) / 3); aspect-ratio: 1 / 1;}

.pro-detail .pro-txt ul li {font-size: 14px !important; display: flex; align-items: center; gap: 5px;}
.pro-detail .pro-txt ul li em {width: 15px;}

.payment .list-top {padding: 25px 0;}
.payment .list-top .pro-txt em {color: #666; margin-top: 3px; font-size: 12px; font-weight: 500;}



/* 예약하기 달력 */

.calendar-wrap {position: relative;}
.calendar-control {display: flex; justify-content: center; align-items: center; gap:10px; text-align: center; margin: 10px 0;}

.cal-box{width: 100%;}
.date-select{width: 100%; padding: 10px; border-radius: 8px; border: 1px solid #eee;}
#year-month {color: #222; display: inline-block; font-size: 18px; font-weight: bold; }

#calendar { display: grid; grid-template-columns: repeat(7, 1fr); gap: 5px; max-width: 100%; margin: 20px auto 0;}

#calendar div { text-align: center; padding: 10px; cursor: pointer; color: #222;}

.edit-list li button.cali-arrow {width: auto; min-width: calc(100% / 10); padding: 0; margin: 0; color: #ddd !important; border: 0; background-color: #fff;}

/* #calendar .day-header { font-weight: bold; }
#calendar .day-header:first-child{color: #BF1212;}
#calendar div:nth-child(7n):not(.prev-month, .next-month){color: #1229BF;}
#calendar div:nth-child(1):not(.prev-month, .next-month), #calendar div:nth-child(8n):not(.prev-month, .next-month){color: #BF1212;} */


#calendar .selected { background-color: #ff7a27; color: #fff; border-radius: 50px;}

#calendar .prev-month,
#calendar .next-month { color: #d0d0d0;}

.calendar-control button{width: 20px; height: 20px; margin-top: 0; display: flex; align-items: center; justify-content: center;}
.calendar-control button img {object-fit: contain; width: 20px;}
.cal-btn{margin-top: 10rem;}

.date-select.select-btn__complete{background: #fff; border-color: var(--c-01); color: var(--c-01);}
.selected-date{font-size: 15rem; color: #111;  border: 1px solid #eee; border-radius: 8rem; padding: 12rem 16rem; width: 100%; outline: none; font-weight: 500; margin-top: 10rem; width: 100%; display: block; min-height: 50rem;}

.time-box{margin-top: 10rem; display: flex; gap: 10rem;}
.time-box > div{width: 100%;}

.disabled {
    color: #c3c3c3 !important;
    pointer-events: none; /* 클릭 방지 */

}

/* 상품없을때 */

.none-con {padding: 50px 0;justify-content: center;}
.none-con p { color: #666;}
.rev-tit {margin-bottom: 0 !important;}
.rev-tit span {padding-right: 3px;}
.rev-tit p {display: flex; align-items: center; gap: 5px; font-size: 16px; font-weight: 600; padding-left: 6px; position: relative;}
.rev-tit p::after {content: ""; display: block; width: 3px; height: 3px; border-radius: 50%; background-color: #ddd; position: absolute; top: 50%; left: -1px; transform: translateX(-50%);}
.rev-tit p em {flex-shrink: 0; width: 15px; height: 15px;}

