@charset "utf-8";

/* 로그인 */
.required {color:#FF4647 !important;}
.modal-member .login-logo {margin-bottom:40px; text-align:center;}

.login-content dl {margin-bottom:20px;}
.login-content dl .input {display:block; width:100%; height:44px; font-size:14px; border-radius:12px;}
.login-content dl:last-child {margin-bottom:0;}
.login-content dt {margin-bottom:1em; font-size:14px; font-weight:600; line-height:1.2; letter-spacing:0; color:#121212;}

.login-content .links {text-align:right; margin-top:8px; font-size:12px; color:#616161; font-weight:500; line-height:1em;}
.login-content .links a:hover {text-decoration:underline;}
.login-content .links .bar {display:inline-block; vertical-align:middle; margin:-.2em 12px 0; width:1px; height:16px; background:#ddd;}
.login-content .checkbox label:before {width:15px; height:15px; border-radius:100%; background-size:50% auto !important; border-width:1px;}

.login-content .btn-pack {display:block; width:100%; margin-top:20px;}
.login-content .btn-pack.large {font-size:14px; font-weight:400; height:44px; line-height:42px; border-radius:12px;}
.login-content .link {margin-top:16px; font-size:12px; font-weight:500; letter-spacing:0; line-height:1; color:#616161; text-align:center;}
.login-content .link a {display:inline-block; position:relative; padding:0 8px; }
.login-content .link a:before {content:''; position:absolute; right:0; top:50%; margin-top:-4.5px; width:1px; height:9px; background:#BABABA;}
.login-content .link a:last-child:before {display:none;}
.join-btn {margin-top:16px;}
.join-btn .btn-pack.large {display:block; width:100%; font-size:14px; font-weight:400; height:44px; line-height:42px;}
.login-txt {margin-top:20px; font-size:14px; font-weight:500; line-height:1.4; letter-spacing:0; color:#6C6C6C; text-align:center;}

.easy-login-wrap {margin-top:40px;}
.easy-login-wrap a {display:block; padding:1em; background:#F9E64D url('/images/common/icon-kakao.png') no-repeat left 25px center; border-radius:12px;  text-align:center; font-size:0.88em; font-weight:500; line-height:1; letter-spacing:0; color:#000;}
.easy-login-wrap .tit {margin-bottom:1em; font-size:14px; font-weight:600; line-height:1.2; letter-spacing:0; color:#121212;}

/* modal */
.ws-modal-open,
.ws-modal-open body {_overflow:hidden; /*사이트에 position:sticky 사용으로 인해서 overflow:hidden 사용 불가 */ }

.ws-modal-wrap {display:flex; flex-direction:column; align-items:center; justify-content:center; position:fixed; top:0; left:0; z-index:1000; width:100%; height:100%; overflow:hidden; background:rgba(0,0,0,.4); transition:.2s;}

.ws-modal-outer {position:relative; flex:0 0 auto; width:100%; max-height:100%; padding:20px; overflow:auto; -ms-overflow-style:none;/* IE and Edge */ scrollbar-width:none;/* Firefox */}
.ws-modal-outer::webkit-scrollbar {display:none;}

.ws-modal-inner {position:relative; width:100%; max-width:660px; margin:0 auto; padding:120px 40px; background:#fff; border-radius:20px;}

.modal-sm .ws-modal-inner {max-width:400px; padding:30px;}
.modal-member .ws-modal-inner {max-width:376px; padding:40px 20px 37px;}
.modal-find .ws-modal-inner {max-width:376px; padding:20px;}

.ws-modal-header {position:relative; margin-bottom:20px;}
.ws-modal-header h2 {margin-bottom:0.77em; color:#000; font-size:26px; font-weight:700; line-height:1.3em; text-align:center;}
.ws-modal-header p {font-size:15px; font-weight:500; line-height:1.2; letter-spacing:0; color:#8D8D8D; text-align:center;}

.ws-modal-close {position:absolute; top:20px; right:20px; border:0; width:24px; height:24px; background:none;}
.ws-modal-close svg {display:block; width:100%; height:auto;}

.ws-modal-section {margin-bottom:30px;}
.ws-modal-section:last-child {margin-bottom:0;}

.ws-modal-section-title {position:relative; margin-bottom:16px;}
.ws-modal-section-title h3 {font-size:16px; color:#242424; font-weight:700; line-height:1.2em;}
.ws-modal-section-title p {margin-top:8px; font-size:14px; font-weight:500; line-height:1.2; letter-spacing:0; color:#8D8D8D;}
.ws-modal-section-title .required {color:#f84949;}

.ws-modal-textarea.input {display:block; width:100%; height:220px; border-radius:4px;}
.ws-modal-textarea.input::placeholder {font-size:14px; font-weight:500; color:#8D8D8D;}

.ws-modal-btns {display:flex; justify-content:center; gap:12px; margin-top:clamp(20px, calc( 80 / var(--inner) * 100vw ), 80px);}
.ws-modal-btns .btn-pack {display:inline-block; min-width:180px; font-size:16px; font-weight:500;}

.ws-modal-prev-next button {display:flex; align-items:center; justify-content:center; position:absolute; top:50%; z-index:10; width:60px; height:60px; background:none; border:0; -webkit-transform:translateY(-50%); transform:translateY(-50%);}
.ws-modal-prev-next button span {display:none;}
.ws-modal-prev {left:-80px;}
.ws-modal-next {right:-80px;}

.ws-modal-input-group {display:grid; gap:8px;}
.ws-modal-input-group .btn-pack {display:block; width:100%; font-weight:700;}
.ws-modal-input-group .input {display:block; width:100%;}

/* 삭제 */
.ws-password .txt {margin-bottom:1.5rem; text-align:center; font-size:15px; font-weight:500; line-height:1.5em;}
.ws-password .input-wrap {display:flex;}
.ws-password .input-wrap .input {flex:1 1 auto; min-width:0; width:1%; border-top-right-radius:0; border-bottom-right-radius:0; border-right:0;}
.ws-password .input-wrap .btn-pack {border-top-left-radius:0; border-bottom-left-radius:0;}

/* 상품 선택 */
.ws-product-select-wrap {position:relative; z-index:2;}
.ws-product-select-wrap.active .ws-product-select-list {display:block;}
.ws-product-select-btn {display:flex; align-items:center; justify-content:space-between; width:100%; height:40px; padding:6px 13px; border:1px solid #dfdfdf; border-radius:6px; background:#fff; color:#a8a8a8; font-size:15px; text-align:left;}
.ws-product-select-list {display:none; position:absolute; margin-top:2px; width:100%; max-height:300px; overflow:auto; border:1px solid #dfdfdf; border-radius:6px; background:#fff;}
.ws-product-select-list .ws-product-select-item {padding:13px; border-bottom:1px solid #eee; transition:.2s;}
.ws-product-select-list .ws-product-select-item:last-child {border-bottom:0;}
.ws-product-select-list .ws-product-select-item:hover {background:#f7f7f7;}

.ws-product-select-item {display:flex; align-items:center; gap:20px; width:100%; background:none; border:0; text-align:left; overflow:hidden;}
.ws-product-select-image {position:relative; width:100px; height:100px; overflow:hidden;}
.ws-product-select-image img {position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover;}
.ws-product-select-content {display:grid; font-size:14px; line-height:1.5em;}
.ws-product-select-content .ws-product-title {font-weight:600; color:#242424;}

/* 별점 평가 */
.rating-flex-wrap {display:flex; align-items:center;}
.rating-flex-wrap .ws-modal-section-title {margin-bottom:0; flex:1 1 auto; min-width:0; width:1%;}

.ws-modal-rating {display:flex; justify-content:center; align-items:center; margin-bottom:40px; padding:20px; background:#FAFAFC;}
.ws-modal-rating .review-product-rating ul li {padding:0 5px;}

.ws-modal-rating .review-modal-txt {margin-right:0.5em; font-size:40px; font-weight:700; line-height:1; letter-spacing:0; color:#000;}
.ws-modal-rating .review-product-rating ul {margin:0 -5px;}

.review-product-rating ul {display:flex; gap:5px;}
.review-product-rating .rating-input-star {display:block; position:relative; width:28px; height:28px; background:url('/images/sub/rating-off.png') 50% 50%/contain no-repeat; transition:.2s;}
.review-product-rating .rating-input-star input {position:absolute; top:0; left:0; width:0; height:0; border:0; opacity:0; z-index:-1;}
.review-product-rating .hover .rating-input-star {background-image:url('/images/sub/rating-on.png');}
.review-product-rating .selected .rating-input-star {background-image:url('/images/sub/rating-on.png');}
.review-product-rating p {margin-top:10px; font-size:1em; font-weight:500; line-height:1.2; letter-spacing:0; color:#8D8D8D;}

/* 리뷰 팝업 */
.photo-flex-wrap {display:flex;}
.photo-upload-btn {display:inline-block; width:80px; height:80px; background:#fff url('/images/sub/icon-add.png') no-repeat 50% 50%; border:1px solid #ddd; text-indent:-999em; overflow:hidden;}
.photo-upload-btn svg {width:18px; height:auto; margin:-.2em 5px 0 0; vertical-align:middle;}
.photo-upload-preview {display:inline-flex;}
.photo-upload-preview li {position:relative; width:80px; margin-right:10px;}
.photo-upload-preview li:before {content:''; display:block; padding-bottom:100%;}
.photo-upload-preview li:after {content:''; position:absolute; left:0; top:0; right:0; bottom:0; border:1px solid #ddd;}
.photo-upload-preview li img {position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover;}
.photo-upload-preview li button {display:flex; align-items:center; justify-content:center; position:absolute; z-index:1; top:-5px; right:-5px; width:20px; height:20px; border:0; border-radius:100%; background:rgba(0,0,0,.7);}
.photo-upload-preview li button svg {width:8px; height:auto;}
.photo-desc {margin-top:1em; font-size:14px; font-weight:400; line-height:1.3; letter-spacing:-0.03em; color:#242424;}

/* 환불 정보 */
.modal-refund .tit-wrap {margin-bottom:clamp(30px, calc( 174 / var(--inner) * 100vw ), 174px); text-align:center;}
.modal-refund .tit {margin-bottom:2em; font-size:clamp(18px, calc( 26 / var(--inner) * 100vw ), 26px); font-weight:700; line-height:1.2; letter-spacing:0; color:#000;}
.modal-refund .info {display:inline-block;}
.modal-refund .info p {margin-bottom:0.5em; letter-spacing:0; line-height:1.4; color:#000; text-align:left;}
.modal-refund .info p:last-child {margin-bottom:0;}
.refund-info {width:100%; max-width:344px; margin:0 auto clamp(30px, calc( 135 / var(--inner) * 100vw ), 135px);}
.refund-info .box:first-child {margin-top:0;}
.refund-info .box {position:relative; padding:clamp(15px, calc( 24 / var(--inner) * 100vw ), 24px); margin-top:-1px; border:1px solid #DADADA; background:#F5F5F5;}
.refund-info .box:before {content:''; position:absolute; z-index:1; left:50%; bottom:0; margin-bottom:-11px; margin-left:-11px; width:22px; height:22px; background:url('/images/sub/icon-minus2.png') no-repeat 50% 50%/contain;}
.refund-info .box:last-child:before {display:none;}
.refund-info .box:first-child:before {background-image:url('/images/sub/icon-minus.png');}
.refund-info .box dl {display:flex; font-weight:500; line-height:1.4; letter-spacing:0; color:#8D8D8D;}
.refund-info .box dt {flex:1 1 auto; min-width:0; width:1%;}
.refund-info .box dd {font-size:0.88em;}
.refund-info .box dd strong {font-size:1.26em; color:#000;}
.refund-info .box.total dl {color:#FF4647;}
.refund-info .box.total dd strong {color:#FF4647;}
.refund-info + .buttons {margin:0;}
.refund-info + .buttons .btn-pack {margin:0 10px; min-width:180px;}

/* 아이디 찾기 */
.modal-find .tit {padding-bottom:1.3em; margin-bottom:1.3em; border-bottom:1px solid #D9D9D9; font-weight:700; line-height:1.2; letter-spacing:0; color:#000; text-align:center;}
.modal-find .txt {margin-bottom:1em; font-size:0.88em; font-weight:500; line-height:1.2; letter-spacing:0; color:#000;}
.modal-find .txt2 {font-size:0.88em; font-weight:400; line-height:1.2; letter-spacing:0; color:#000;}

.modal-find .radiobox {font-weight:500; line-height:1.3; letter-spacing:0; color:#000;}
.modal-find .radiobox label:before {content:""; display:inline-block; vertical-align:middle; margin:-.2em 8px 0 0; width:18px; height:18px; background-color:#f4f4f4; border:1px solid #ccc; border-radius:100%;}
.modal-find .radiobox input:checked + label:before {background:#fff url("/images/bbs/radiobox.png") 50% 50% no-repeat;}
.modal-find .radiobox input:focus + label:before {outline:2px solid highlight;}

.modal-find .wrap {margin-bottom:clamp(15px, calc( 23 / var(--inner) * 100vw ), 23px);}
.modal-find .wrap dl {display:flex; align-items:center; margin-bottom:14px;}
.modal-find .wrap dl:last-child {margin-bottom:0;}
.modal-find .wrap dt {width:102px; font-weight:600; letter-spacing:0; color:#000;}
.modal-find .wrap dd {flex:1 1 auto; min-width:0; width:1%; font-size:0.88em; font-weight:500;}
.modal-find .wrap dl.wide {display:block;}
.modal-find .wrap dl.wide dt {width:100%;}
.modal-find .wrap dl.wide dd {width:100%; font-size:12px;}
.modal-find .wrap dl.type2 dt {width:112px;}
.modal-find .wrap .send-btn {display:inline-block; margin-left:6px; border:1px solid #A2A2A2; border-radius:2px; padding:3px; font-size:0.84em; font-weight:500; line-height:1.2; letter-spacing:0; color:#000;}
.modal-find .wrap .input {height:23px; border-radius:4px;}

.modal-find .buttons {margin:23px 0 0;}
.modal-find .buttons.type2 {margin-top:clamp(30px, calc( 52 / var(--inner) * 100vw ), 52px);}
.modal-find .buttons .btn-pack {display:block; margin:0 0 12px 0; width:100%; height:44px; line-height:42px; font-size:0.88em;}
.modal-find .buttons .btn-pack:last-child {margin-bottom:0;}

/* 반응형 */
@media (max-width: 1024px) {
	#wsPhotoReview .ws-modal-inner {max-width:800px;}
	#wsPhotoReviewList .ws-modal-inner {max-width:800px;}
	.ws-modal-rating .review-modal-txt {font-size:24px;}
	.review-photo img {max-height:80px;}
}

@media (max-width: 640px) {	
	.ws-modal-open,
	.ws-modal-open body {overflow:hidden;}
	.ws-modal-inner {padding:40px 20px;}

	.modal-lg .ws-modal-outer {height:100%; padding:0;}
	.modal-lg .ws-modal-inner {display:flex; flex-direction:column; border-radius:0; height:100%;}
	.modal-lg .ws-modal-content {position:relative; flex:1 1 auto; min-height:0; height:1%; overflow:auto;}

	.modal-sm .ws-modal-inner {max-width:320px; padding:20px;}

	.ws-modal-btns {margin-top:20px;}
	.ws-modal-btns .btn-pack {min-width:130px; font-size:12px;}

	.review-photo img {max-height:114px;}

	.ws-modal-prev-next {margin-top:20px;}

	.ws-modal-header h2 {font-size:20px;}
	.ws-modal-header p {font-size:14px;}

	.ws-photo-review {display:block;}
	.ws-photo-review-slider {width:100%; margin:0 0 20px;}
	.ws-photo-review-summary {display:block; width:100%;}
	.ws-photo-review-summary .review-item-cnt-info .info {margin-bottom:24px;}
	.ws-photo-review-summary .review-item-cnt-txt {max-height:none;}
	
	.ws-modal-rating .review-product-rating ul {margin:0; justify-content:center;}
	.ws-modal-rating .review-product-rating ul li {padding:0;}
	.ws-modal-rating .review-modal-txt {margin-right:0; margin-bottom:10px;}
	.ws-modal-rating {display:block; margin-bottom:20px; text-align:center;}
	.review-product-rating p {font-size:13px;}
	.review-product-rating .rating-input-star {width:16px; height:16px;}

	.ws-photo-review-list {max-height:none; margin-right:0; padding-right:0;}
	.ws-photo-review-list .items {grid-template-columns: repeat(4, 1fr); gap:8px;}
	.photo-upload-preview li {widtH:50px;}
	.photo-upload-btn {width:50px; height:50px;}

	.modal-member .login-logo {margin-bottom:20px;}
	.easy-login-wrap {margin-top:30px;}
	.login-content .links {padding:0; margin-top:10px; font-size:12px;}
	.login-content .btn-pack.large {margin-top:12px; line-height:38px; height:40px; font-size:12px;}
	.login-content dl .input {height:40px; line-height:38px; font-size:12px;}
	.login-content dt {font-size:14px; margin-bottom:0.5em;}
	.login-txt {margin-top:15px;}
}