@charset "utf-8";
/** review_write **/
.btn_star_group { display: flex; }
.btn_star_group .btn_star { text-indent: -9999px; background-image: url(../../image/icon/icon_star_empty.svg); background-repeat: no-repeat; background-position: center center; overflow: hidden; display: inline-block; }
.btn_star_group .btn_star.on { background-image: url(../../image/icon/icon_star.svg); }

/* 후기 작성 */
.review_star_box { margin-top: 8px; }
.review_star_box .btn_star_group .btn_star { width: 35px; height: 35px; background-size: 35px; margin-right: 14px; }
.review_text_box { position: relative; width: 100%; height: 160px; padding: 15px 15px 40px; background: var(--gray-50); border: 1px solid var(--gray-50); border-radius: 12px; overflow: hidden; margin-top: 16px; transition: all 0.1s ease-in-out; }
.review_text_box.focus { border: 1px solid var(--purple); }
.review_text_box.error { border: 1px solid var(--error); }
.review_text_box textarea { display: block; width: 100%; height: 100%; font-size: 15px; font-weight: 400; line-height: 22px; background: transparent; border: none; resize: none; -ms-overflow-style: none; }
.review_text_box textarea::-webkit-scrollbar{ display:none; }
.review_text_box textarea::placeholder { color: var(--gray-400); }
.review_text_box .text_count { position: absolute; right: 15px; bottom: 15px; font-size: 13px; font-weight: 400; color: var(--gray-400); }
.review_upload_box { margin-top: 16px; }
.review_upload_box .btn_file_box { position: relative; padding: 16px; background: #ffffff; border: 1px solid var(--gray-300); border-radius: 6px; }
.review_upload_box .file_input_box { position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: 5; }
.review_upload_box .file_input_box input[type=file] { position: absolute; left: 0; top: 0; display: block; width: 100%; height: 100%; opacity: 0; cursor: pointer; }
.review_upload_box .file_text_box { display: flex; justify-content: center; }
.review_upload_box .file_text_box::after { width: 24px; height: 24px; background: url(../../image/icon/icon_arrow_right_b.svg) no-repeat center center; background-size: contain; content: ''; display: inline-block; vertical-align: -6px; content: ''; display: inline-block; }
.review_upload_box .file_text_box p { font-size: 16px; font-weight: 700; line-height: 24px; }
.review_upload_box .file_text_box p::before { width: 24px; height: 24px; background: url(../../image/icon/icon_camera.svg) no-repeat center center; background-size: contain; content: ''; display: inline-block; vertical-align: -6px; margin-right: 6px; }
.review_upload_box .file_text_box .file_count { font-size: 15px; font-weight: 700; color: var(--purple); line-height: 24px; display: inline-block; margin-left: 20px; }
.review_upload_box .file_list_box { width: 100%; }
.review_upload_box .file_list_box ul { display: flex; flex-wrap: wrap; }
.review_upload_box .file_list_box ul > li { margin-top: 8px; }
.review_upload_box .file_list_box ul > li:nth-of-type(odd) { margin-right: 8px; }
.review_upload_box .file_list_box .item { position: relative; width: calc(50% - 4px); padding: 8px 16px; background: var(--gray-02); border-radius: 8px; }
.review_upload_box .file_list_box .item .file_name { width: 100px; height: 22px; font-size: 13px; line-height: 22px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: block; }
.review_upload_box .file_list_box .item .btn_file_delete { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); width: 16px; height: 16px; background: url(../../image/btn/btn_close_b.svg) no-repeat center center; background-size: contain; text-indent: -9999px; overflow: hidden; }
.review_banner { width: calc(100% + 40px); font-size: 14px; font-weight: 600; color: var(--purple); line-height: 18px; text-align: center; background: var(--purple-25); padding: 10px; margin-left: -20px; margin-top: 16px; }

/* 후기 평가 */
.survey_list_box .item { padding: 24px 0; border-bottom: 1px solid var(--gray-02); }
.survey_list_box > div:first-of-type { padding-top: 0; }
.survey_list_box > div:last-of-type { border-bottom: none; }
.survey_info_box { display: flex; align-items: center; margin-top: 16px; }
.survey_info_box .img_box { position: relative; width: 56px; height: 56px; border: 1px solid var(--gray-100); border-radius: 4px; overflow: hidden; }
.survey_info_box .img_box img { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 200%; max-width: 200%; }
.survey_info_box .text_box { flex: 1; margin-left: 12px; }
.survey_info_box .text_box > span { font-size: 14px; color: var(--gray-03); line-height: 20px; }
.survey_info_box .text_box > p { font-size: 15px; font-weight: 500; line-height: 22px; }
.survey_star_box { display: flex; align-items: center; margin-top: 16px; }
.survey_star_box dt { font-size: 14px; font-weight: 400; color: var(--gray-400); line-height: 22px; margin-top: 1px; margin-right: 6px; }
.survey_star_box .btn_star_group .btn_star { width: 22px; height: 22px; background-size: 22px; margin-right: 5px; }
.survey_keyword_box { display: flex; flex-wrap: wrap; margin-top: 16px; }
.survey_keyword_box li { margin: 0 8px 8px 0; }
.survey_keyword_box li input[type=checkbox] + label { display: inline-block; height: 28px; font-size: 14px; font-weight: 400; color: var(--purple); line-height: 26px; padding: 0 12px; background: #ffffff; border: 1px solid var(--purple-200); border-radius: 14px; overflow: hidden; }
.survey_keyword_box li input[type=checkbox]:checked + label { color: #ffffff; background: var(--purple); border: 1px solid var(--purple); }

/* POPUP - 작성완료 */
#popup .pop_point_review { position: relative; overflow: visible; text-align: center; padding-top: 16px; }
#popup .pop_point_review::before { position: absolute; left: 50%; top: -32px; transform: translateX(-50%); width: 64px; height: 64px; background: url(../../image/logo_symbol.svg) no-repeat center center, var(--purple); border-radius: 50%; content: ''; display: block; z-index: 5; }
#popup .pop_point_review .title { font-size: 24px; font-weight: 700; color: var(--purple); line-height: 31px; }
#popup .pop_point_review .text { font-size: 16px; font-weight: 500; line-height: 21px; margin-top: 16px; }
#popup .pop_point_review .point_info_box { display: flex; align-items: center; justify-content: space-between; width: 100%; background: var(--purple-50); padding: 8px 10px; border-radius: 8px; margin-top: 24px; }
#popup .pop_point_review .point_info_box .point_title { font-size: 14px; font-weight: 500; color: var(--purple); line-height: 24px; display: inline-block; }
#popup .pop_point_review .point_info_box .point_value { font-size: 18px; font-weight: 700; color: var(--purple); line-height: 24px; display: inline-block; }
#popup .pop_point_review .point_info_box .point_value::before { width: 24px; height: 24px; background: url(../../image/icon/Icon_coin.svg) no-repeat center center; background-size: contain; content: ''; display: inline-block; vertical-align: -6px; margin-right: 4px; }
#popup .pop_point_review .btn_pop_submit { height: 40px; font-size: 14px; padding: 10px 16px; margin-top: 16px; }