.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

.inner {
	max-width:1392px;
	width: 100%;
	margin: 0 auto;
	padding: 0 16px;
}

.text-primary {
	color: var(--primary);
}

.text-alert {
	color: var(--alert);
}

.text-alert--strong {
	font-weight: 700;
}

.star-icon {
	display: block;
	width: 17px;
	height: 16px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

.star-icon--fill {
	background-image: url('./img/star_icon_fill.svg');
}

.star-icon--empty {
	background-image: url('./img/star_icon_empty.svg');
}


.int-panel--center {
	text-align: center;
}

.int-panel__title {
	font-size: var(--text-h3);
	font-weight: 700;
	color: var(--primary);
	line-height: 1.4;
	letter-spacing: -0.015em;
}

.int-panel__title--complete {
	color: var(--secondary);
}

.int-panel__title--complete:before {
	content:'';
	display: block;
	margin: 0 auto 0.4em;
	width: 2.2728em;
	height: 2.2728em;
	background: url('./img/complete_icon.svg') no-repeat center / cover;
}

.int-panel__desc {
	margin-top: 0.75em;
	font-size: var(--text-h6);
	font-weight: 600;
	letter-spacing: -0.02em;
}

.int-panel__ment {
	margin-top: 0.55em;
  font-size: var(--text-h8);
	font-weight: 500;
	letter-spacing: -0.03em;
	color: var(--gray-800);
}

@media(max-width:769px){
	.int-panel__title {
		font-size: var(--text-h6);
	}
}

.ly-container {
    flex:1;
}

#ly-header {transition:box-shadow 0.5s;}
#ly-header.active {box-shadow: 0 0 10px rgba(9, 2, 94, 0.05);}
.header-top {
	padding:17px 0 13px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.header-banner {
	display: flex;
	align-items: center;	
	background-color: var(--primary);	
	min-height: 1.875em;
	gap: 2.25em;
	overflow: hidden;
}

.header-banner__flow {
	display: flex; 
	align-items: center;
	flex-shrink: 0;
	gap:2.25em;
	animation: marquee 120s linear infinite;
}

.header-banner__group {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	gap:12px;
}

.header-banner__text {
	font-size: 0.875em;
	flex-shrink:0;
	font-weight: 800;
	color: #fff;	
	letter-spacing: 2px;
}

@keyframes marquee {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(-100% - 2.25em));
  }
}

.header-ctrl {
	display: flex;
	align-items: center;
	gap:4px;
	padding:7px 0;
}

.header-my__list {
	display: flex;
	align-items: center;
	gap:4px;
}

.header-my__item {
	position: relative;
}

.header-my__btn {
	position: relative;
	display: block;
	width: 2.5rem;
	height: 2.5rem;
	transition: 0.3s;
}

.header-my__btn:before,
.header-my__btn:after {
	position: absolute;
	inset:0;
	content:'';
	display: block;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	transition: 0.3s;
}

.header-my__btn:after {
	opacity: 0;
}

.header-my__btn--page:before {
	background-image: url('./img/shop_my_icon.svg');
}

.header-my__btn--page:after {
	background-image: url('./img/shop_my_icon_on.svg');
}

.header-my__btn--cart:before {
	background-image: url('./img/shop_cart_icon.svg');
}

.header-my__btn--cart:after {
	background-image: url('./img/shop_cart_icon_on.svg');
}

.header-my__cnt {
	position: absolute;
	z-index: 1;
	top: 50%;
	left: 50%;
	transform: translate(-28%, -80%);
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: var(--text-3xs);
	font-weight: 600;
	width: 1.334em;
	height: 1.334em;
	background-color: var(--third);
	color: #fff;
	border-radius:50%;
	transition: 0.3s;
}

@media(hover:hover){
	.header-my__btn:hover {
		transform:translateY(-2px)
	}

	.header-my__btn:hover:before {
		opacity: 0;
	}

	.header-my__btn:hover:after {
		opacity: 1;
	}

	.header-my__btn:hover .header-my__cnt {
		background-color: var(--secondary);
	}
}


.header-cs {
	position: relative;
}

.header-cs__btn {
	display: flex;
	justify-content: center;
	align-items: center;
	max-width:100px;
	max-height:40px;
	width: 7.1429em;
	height: 2.8572em;
	font-size: var(--text-xs);
	font-weight: 600;
	color: var(--gray-600);
	letter-spacing: -0.02em;
	transition: 0.3s;
}

.header-cs__nav {
	display: none;
	position: absolute;
	z-index: 10;
	top: 100%;
	left: 50%;
	transform:translateX(-50%);
	border-radius:4px;
	overflow: hidden;
	box-shadow: 0 3px 6px rgba(0,0,0,0.15);
	background-color: #fff;
}

.header-cs__list {	
	overflow: hidden;
}

.header-cs__link {
	display: block;
	font-size: var(--text-xs);
	padding:0.5em 1em;
	font-weight: 500;
	white-space:nowrap;
	text-align: center;
	color: var(--gray-600);
	transition: 0.3s;
}

@media(hover:hover){
	.header-cs__btn:hover {
		color: var(--secondary);
	}

	.header-cs__link:hover {
		background-color: var(--secondary);
		color: #fff;
	}
}

.header-login__list {
	display: flex;
	align-items: center;
}

.header-login__btn {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	font-size: var(--text-xs);
	font-weight: 600;
	max-width:100px;
	width: 7.1429em;
	height: 2.143em;
	outline:1px solid var(--gray-600);
	color: var(--gray-600);
	letter-spacing: -0.02em;
}

.header-login__btn--primary {
	background-color: var(--primary);
	outline-color:var(--primary);
	color: #fff;
}

.header-login__btn--member {
	border-top-left-radius: 8px;
	border-bottom-left-radius: 8px;
}

.header-login__item:first-child .header-login__btn {
	border-top-left-radius: 8px;
	border-bottom-left-radius: 8px;
}

.header-login__item:last-child .header-login__btn {
	border-top-right-radius: 8px;
	border-bottom-right-radius: 8px;
}


.header-bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-bottom: 12px;
}

.header-category__btn {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 7.7778em;
	height: 3.5556em;
	font-size: var(--text-xl);
	font-weight: 500;
	letter-spacing: -0.03em;
	gap:4px;
	background-color: var(--primary);
	color: #fff;
	border-radius:4px;
}

.header-category__btn:before {
	content:'';
	display: block;
	width: 1.7778em;
	height: 1.7778em;
	background: url('./img/header_category_icon.svg') no-repeat center / cover;
}

.header-category { position: relative; }
.header-category__title {margin-bottom: 0.75em; font-size: var(--text-h8); font-weight: 600; color: var(--primary); letter-spacing: -0.03em;}
.header-category__dropdown { position: absolute; top: 0; left: 0; padding:18px 40px 26px; background: #fff; border: 1px solid #ddd; min-width: 200px; z-index: 9000; box-shadow: 0 4px 12px rgba(0,0,0,0.1);  height: 75dvh; overflow: auto;}
.header-category__group {border-top:1px solid var(--gray-900); padding:16px 0;}
.header-category__group-title { font-size: 14px; font-weight: 700;}
.header-category__group-title a { display: block; font-size: var(--text-h8); font-weight: 600; letter-spacing: -0.03em;}
.header-category__sub-list {margin-top: 10px; border-top:1px dashed var(--gray-500); padding-top: 16px;}
.header-category__sub-item {margin-bottom: 8px;}
.header-category__sub-item:last-child {margin-bottom: 0;}
.header-category__sub-item a {font-size: var(--text-xl); display: block; min-width: 260px; white-space:nowrap; line-height: 1.389;}


.header-gnb__main {
	display: flex;
	align-items: center;
	gap:8px;
}

.header-gnb__main-btn {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 6.6667em;
	height: 2.6667em;
	font-size: var(--text-xl);
	font-weight: 500;
	letter-spacing: -0.03em;
	transition: 0.3s;
}

.header-gnb__main-btn[aria-current="page"]{
	color: var(--secondary);
}

@media(hover:hover){
	.header-gnb__main-btn:hover{
		color: var(--secondary);
	}
}

/* ============================================================
   #ly-header 반응형
   ============================================================ */
@media (max-width:1361px){
	.header-gnb__main-btn { width: auto; padding: 0 12px; font-size: var(--text-lg); }
	.header-category__btn { font-size: var(--text-lg); }
}

@media (max-width:1025px){
	.header-top { padding: 14px 0 10px; }
	.header-banner { gap: 1.5em; }
	.header-banner__flow { gap: 1.5em; }
	.header-category__btn { width: 6.5em; height: 3em; font-size: var(--text-sm); }
	.header-gnb__main { gap: 4px; }
	.header-gnb__main-btn { height: 2.4em; font-size: var(--text-sm); padding: 0 10px; }
	.header-cs__btn { font-size: var(--text-3xs); }
	.header-login__btn { font-size: var(--text-3xs); }
}

@media (max-width:769px){
	.header-banner { min-height: 1.5em; }
	.header-banner__text { letter-spacing: 1px; }
	.header-top {
		padding: 10px 0 8px;
		align-items: center;
		gap: 12px;
	} 
	.header-ctrl { gap: 4px; padding: 0; flex-wrap: wrap; justify-content: flex-end; }
	.header-my__btn { width: 2.1rem; height: 2.1rem; }
	.header-cs__btn { width: auto; max-width: none; padding: 0 8px; height: 2.2em; max-height: none; }
	.header-login__btn { width: 5.2em; height: 2em; max-width: none; }
	.header-bottom {
		align-items: center;
		justify-content: flex-start;
		gap: 8px;
		padding:20px 0;
	}
	.header-category__btn {
		width: 2.5em;
		height: 2.5em;
		gap: 8px;
	}

	.header-category__btn span {
		display: none;
	}
	.header-category__dropdown {
		top: 100%;
		width: calc(100vw - 32px);
		min-width: 0;
	}
	.header-gnb {
		flex:1;
		overflow: auto;
	}
	.header-gnb__main {
		gap: 12px;
		overflow-x: auto;
	}
	.header-gnb__main::-webkit-scrollbar { display: none; }
	.header-gnb__main-btn {
		width: auto;
		padding: 0;
		height: 2.2em;
		font-size: var(--text-xs);
		flex-shrink: 0;
		white-space: nowrap;
	}
}

@media (max-width:501px){
	.header-category__title {font-size: var(--text-xl);}
	.header-category__group-title a,
	.header-category__sub-item a {font-size: var(--text-sm);}
	.header-banner__text { font-size: 0.75em; letter-spacing: 0.5px; }
	.header-cs { display: none; }
	.header-my__btn { width: 1.75rem; height: 1.75rem; }
	.header-login__list { gap: 2px; }
	.header-login__btn { width: 4.8em; }
	.header-category__btn { font-size: var(--text-xs); }
	.header-gnb__main-btn { font-size: var(--text-2xs);}
}

.ly-my {
	padding:clamp(40px, 12vw, 95px) 0 clamp(40px, 12vw, 100px);
	display: flex;
	gap:100px;
}

.my-content {
	flex:1;
}

.my-aside__nav {
	display: flex;
	flex-direction: column;;
	gap:38px;
	min-width: 210px;
	margin-top: 17px;
	padding-top: clamp(16px, 4.5vw, 40px);
	border-top:2px solid #000;
}

.my-aside__title {
	font-size: var(--text-xl);
	font-weight: 700;
	letter-spacing: -0.03em;
}

.my-aside__list {
	display: flex;
	flex-direction:column;
	gap:12px;
	margin-top: 21px;
}

.my-aside__link {
	color: var(--gray-600);
	font-weight: 500;
	letter-spacing: -0.025em;
}
.my-aside__link.is-active {
	color: var(--primary);
	font-weight: 700;
}

@media(max-width:769px) {
	.my-aside__title {font-size: 1rem;}
	.my-aside__list {gap:8px;}
	.my-aside__link {font-size: var(--text-xs);}
}

.my-header {
	display: flex; 
	justify-content: space-between;
	align-items: flex-end;
	border-bottom:2px solid #000;
	padding: 16px 0 33px;
}

.my-header--sh {
	padding-top: 0;
	padding-bottom: 10px;
}

.my-header--border-0 {
	border: none;
}

.my-header__title {
	font-size: var(--text-h7);
	font-weight: 600;
	letter-spacing: -0.015em;
}

.my-header__recent {
	font-weight: 600;
	letter-spacing: -0.03em;
}

.my-dashboard__order {
	display: flex;
	gap:20px;
}

.my-dashboard__status {
	flex:1;
}

.my-dashboard__status-list {
	display: flex;
	align-items: center;	
	padding-top: 26px;
}

.my-dashboard__status-item {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	gap:4px;
}

.my-dashboard__status-arrow {
	flex:1;
	text-align: center;
}

.my-dashboard__status-arrow:before {
	content:'';
	display: inline-block;
	width: 2rem;
	height: 2rem;
	background: url('./img/arrow_right_icon_gray.svg') no-repeat center / cover;
}

.my-dashboard__status-count {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: clamp(1.625rem, 1.227rem + 1.99vw, 2.5rem);
	font-weight: 800;
	width: 1.85em;
	height: 1.4em;
	color: var(--gray-300);
}

.my-dashboard__status-label {
	font-weight: 500;
	letter-spacing: -0.03em;
}

.my-dashboard__cancel {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 210px;
	height: 140px;
	padding:16px 26px;
	background-color: var(--gray-100);
}


.my-dashboard__cancel-list {
	width: 100%;
}

.my-dashboard__cancel-item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 36px;
	border-bottom:1px solid var(--gray-400);
	color: var(--gray-400);
}

.my-dashboard__cancel-item:last-child {
	border-bottom:none;
}

.my-dashboard__cancel-label {
	font-size: var(--text-3xs);	
	font-weight: 500;	
	letter-spacing: -0.015em;
	min-width: 5em;
}

.my-dashboard__cancel-count {
	font-size: var(--text-h7);
	font-weight: 800;
}

.my-dashboard__summary {
	margin-top: 16px;
}

.my-dashboard__summary-list {
	display: flex;
	background-color: var(--primary);
	color: #fff;
	border-radius:4px;
}

.my-dashboard__summary-item {
	position: relative;
	flex:1;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	font-weight: 500;
	min-height: 60px;
	padding:12px;
	gap:12px;
}

.my-dashboard__summary-item:after {
	position: absolute;
	top: 50%;
	right:0;
	transform: translateY(-50%);
	content:'';
	display: block;
	width: 1px;
	height: 40%;
	background-color: #fff;	
}

.my-dashboard__summary-item:last-child:after {
	display: none;
}

.my-dashboard__summary-value {
	font-size: var(--text-h7);
	font-weight: 500;
}

.my-dashboard__nav {
	padding:20px 0;
}

.my-dashboard__nav-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap:22px 20px;
}

.my-dashboard__nav-item {
	min-width: 0;
}

.my-dashboard__card {
	display: flex;
	flex-direction:column;
	justify-content: center;
	align-items: center;
	padding:18px 16px;
	border-radius:4px;
	border:1px solid var(--gray-400);
	text-align: center;
	color: var(--gray-800);
	height: 100%;
	transition: 0.3s;
}

.my-dashboard__card-title {
	margin:0.5em 0;
	font-size: var(--text-xl);
	font-weight: 500;
	letter-spacing: -0.04em;
}

.my-dashboard__card-desc {
	font-size: var(--text-xs);
	font-weight: 500;	
	letter-spacing: -0.03em;
}

.my-dashboard__card-icon {
	width: 3.75rem;
	transition: 0.3s;
}

.my-dashboard__coupon-link {
	display: flex; 
	justify-content: center;
	align-items: center;
	background-color: var(--primary);
	color: #fff;
	border-radius:4px;
	min-height: 60px;
	gap:20px;
	transition: 0.3s;
}

.my-dashboard__coupon-label {
	font-size: var(--text-xl);
	font-weight: 500;
	letter-spacing: -0.03em;
}

@media(hover:hover){
	.my-dashboard__card:hover {
		border-color: var(--secondary);
		background-color: var(--secondary);		
		color: #fff;
	}	

	.my-dashboard__card:hover .my-dashboard__card-icon {
		filter:brightness(0) invert(1);
	}	

	.my-dashboard__coupon-link:hover {
		background-color: var(--secondary);
	}
}

/* 1025px 이하: 레이아웃 전환 및 간격 축소 */
@media (max-width: 1025px) {
  .ly-my { flex-direction: column; gap: 40px; }
  .my-aside__nav { flex-direction: row; overflow-x: auto; gap: 30px; padding: 20px 0; border-bottom: 1px solid var(--gray-200); -webkit-overflow-scrolling: touch; }
  .my-aside__panel { flex-shrink: 0; }
  .my-aside__list { margin-top: 10px; }
  .my-dashboard__order { gap: 15px; }
}

/* 769px 이하: 대시보드 구조 최적화 */
@media (max-width: 769px) {
  .my-header { padding: 10px 0 20px; }
  .my-header__title { font-size: var(--text-h8); }
  
  /* 주문현황: 상태리스트와 취소내역 세로 배치 */
  .my-dashboard__order { flex-direction: column; }
  .my-dashboard__status-list { padding-top: 15px; }
  .my-dashboard__status-arrow:before { width: 1.2rem; height: 1.2rem; }
  .my-dashboard__status-label { font-size: var(--text-3xs); }
  .my-dashboard__cancel { width: 100%; height: auto; padding: 20px; }

  /* 적립금 요약: 2열 배치 */
  .my-dashboard__summary-list { flex-wrap: wrap; }
  .my-dashboard__summary-item { flex: none; width: 50%; min-height: 50px; border-bottom: 1px solid rgba(255,255,255,0.1); }
  .my-dashboard__summary-item:nth-child(2n):after { display: none; }
  .my-dashboard__summary-value { font-size: var(--text-sm); }

  /* 카드 네비게이션: 2열 배치 */
  .my-dashboard__nav-list { grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .my-dashboard__card { padding: 20px 10px; }
  .my-dashboard__card-icon { width: 2.5rem; }
  .my-dashboard__card-title { font-size: var(--text-sm); }
}

/* 501px 이하: 모바일 초소형 최적화 */
@media (max-width: 501px) {
  .ly-my { padding: 40px 0; }
  .my-header { flex-direction: column; align-items: flex-start; gap: 8px; }
  
  /* 주문상태: 화살표 제거하고 간격 조정 */
  .my-dashboard__status-arrow { display: none; }
  .my-dashboard__status-list { justify-content: space-between; }
  .my-dashboard__status-count { font-size: 1.8rem; }

	.my-dashboard__summary-item {font-size: var(--text-xs);}

  /* 카드 네비게이션: 텍스트 위주로 가독성 확보 */
  .my-dashboard__nav-list { grid-template-columns: 1fr; }
  .my-dashboard__card { flex-direction: row; justify-content: flex-start; gap: 15px; padding: 15px; }
  .my-dashboard__card-icon { width: 1.8rem; margin: 0; }
  .my-dashboard__card-title { margin: 0; font-size: var(--text-sm); }
  .my-dashboard__card-desc { display: none; } /* 모바일에서 설명 생략하여 깔끔하게 */
  
  .my-dashboard__coupon-label { font-size: var(--text-sm); }
  .my-dashboard__coupon-link img { width: 20px; }
}


.my-order__tab {
	margin-top: 20px;
}

.my-order__tab-list {
	display: flex;
}

.my-order__tab-item {
	flex:1;
}

.my-order__tab-btn {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	min-height: 3.334em;
	font-size: var(--text-xl);
	font-weight: 500;	
	color: var(--gray-800);
	border: 1px solid var(--primary);	
	letter-spacing: -0.03em;
}

.my-order__tab-btn[aria-current="page"] {
	background-color: var(--primary);
	color: #fff;
}

.my-order__tab-item:first-child .my-order__tab-btn {
	border-right:none;
}

.my-order__sch {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 12px 0;
	padding:10px;

	background-color: var(--gray-100);
}

.my-order__filter {
	display: flex;
	align-items: center;
}

.my-order__filter--btn {
	gap:8px;
}

.my-order__filter--input {
	gap:16px;
}

.my-order__period {
	display: flex;
	align-items: center;
	gap:8px;
}

.my-order__option {
	font-weight: 500;
	height: 2.5em;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	border:1px solid var(--primary);
	color: var(--gray-800);
	background-color: #fff;
	letter-spacing: -0.03em;
}

.my-order__option--btn {
	min-width: 3.75em;
}

.my-order__option--select {
	flex:1;
	padding-left: 24px;
	padding-right: 56px;
	background: var(--primary) url('./img/my_select_icon.svg') no-repeat right 24px center / 20px 20px;
	appearance: none;
	color: #fff;
	text-align:left;
}

.my-order__option--input {
	width: 11.25em;
}

.my-order__option--submit {
	min-width: 4.375em;
	background-color: var(--primary);
	color: #fff;
	border-color:var(--primary);
	gap:4px;
}

.my-order__manuel {
	padding:24px;
	background-color: var(--gray-50);
}

.my-order__manuel-text {
	font-size: var(--text-xs);
	font-weight: 500;
	color: var(--gray-800);	
	line-height: 1.715;
	letter-spacing: -0.03em;
}

.my-order__list {
	display: flex;
	flex-direction:column;
	gap:8px;
	margin-top: 21px;
}

.my-order__list-title {
	font-size: var(--text-h7);
	font-weight: 600;
	letter-spacing: -0.01em;
}

.my-wish__container {
	display: flex;
	flex-direction:column;
	gap:18px;
}

.my-point {
	display: flex;
	flex-direction:column;
	gap:32px;
}

.my-inquiry__form {
	padding:20px 0;
}

.my-inquiry__item {
	display: flex;
	align-items: center;
	margin-bottom: 20px;
}

.my-inquiry__item--items-start {
	align-items: flex-start;
}

.my-inquiry__email {
	width: 11.667em;
}

.my-inquiry__item:last-child {
	margin-bottom: 0;
}

.my-inquiry__group {
	display: flex;
	align-items: center;
	flex:1;
	gap:20px;
}

.my-inquiry__label {
	font-size: var(--text-xl);
	font-weight: 500;
	min-width: 8.334em;
}

.my-inquiry__attach {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: var(--text-xl);
	font-weight: 500;
	color: var(--gray-400);
	letter-spacing: -0.03em;
	gap:8px;
	border:1px solid var(--gray-400);
	width: 11.6667em;
	height: 3.3334em;
}

.my-inquiry__attach img {
	width: 2.223em;
}

.my-inquiry__attach-btn {
	display: none;
}

.my-inquiry__attach-name {
	font-size: var(--text-xl);
	font-weight: 500;
	color: var(--gray-400);
	letter-spacing: -0.03em;
}

.my-inquiry__submit {
	margin: 2.223em auto 0;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: var(--text-xl);
	font-weight: 700;
	letter-spacing: -0.03em;
	color: var(--gray-800);
	border:1px solid var(--gray-400);
	width: 11.6667em;
	height: 3.3334em;
	text-align: center;
}

@media(max-width:769px){
	.my-inquiry__item {
		flex-direction :column;
		align-items: stretch;
		gap:8px;
	}

	.my-inquiry__item .ui-input--flex {
		flex:none;
	}

	.my-inquiry__label,
	.my-inquiry__attach,
	.my-inquiry__attach-name,
	.my-inquiry__submit {font-size: var(--text-xs);}
}


.junam-list {
	border-top:2px solid #000;
}

.junam-list__row {
	display: grid;	
	border-bottom:1px solid var(--gray-400)
}

.junam-list__row--order {
	grid-template-columns: 60px 260px 1fr 80px repeat(3, 120px);
}

.junam-list__row--wish {
	grid-template-columns: 28px 120px 1fr repeat(2, 203px) 56px;
}

.junam-list__row--cart {
	grid-template-columns: 28px 120px 1fr 130px 188px 190px 50px;
}

.junam-list__row--point {
	grid-template-columns: 60px 219px 334px 1fr 119px;
}

.junam-list__row--post {
	grid-template-columns: 37px 60px 100px 1fr 140px 80px 120px 98px;
}

.junam-list__row--center {
	text-align: center;
}

.junam-list__cell {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}

.junam-list__cell--th {
	font-weight: 600;
	min-height: 3.75em;
}

.junam-list__cell--td {
	padding:20px 0;
	color: var(--gray-600);
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: -0.03em;
}

.junam-list__cell--sbj {
	text-align:left;
	padding-right: 12px; 
	padding-left: 12px;
}

.junam-list__cell--td img {
	height: auto;
}

.junam-list__cell--empty {
	min-height: 3.75em;
}

.junam-list__sm {
	font-size: var(--text-xs);
}

.junam-list__lg {
	font-size: var(--text-h8);
}


.junam-list__eb {
	font-weight: 600;	
	line-height: 1.4;
	color: #000;
}

.junam-list__eb--text-left {
	text-align:left;
}

/* (2026-08-18) 내 게시물 관리 - 상품후기 수정 버튼 */
.my-posts__edit-btn {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 4.5em;
	height: 2.2em;
	font-size: var(--text-xs);
	font-weight: 500;
	color: var(--gray-800);
	border: 1px solid var(--gray-400);
	border-radius: 4px;
	background: #fff;
	cursor: pointer;
}

.my-posts__edit-btn:hover {
	border-color: var(--primary);
	color: var(--primary);
}

.my-posts__edit-none {
	color: var(--gray-400);
}

.junam-ctrl {	
	margin-top: 40px;
	display: flex;
	justify-content: flex-end;	
}

.junam-ctrl__btn {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	width: 7.1875em;
	height: 2.5em;
	font-weight: 500;
	color: var(--gray-800);
	border:1px solid var(--primary)
}

@media(max-width: 769px){
	.junam-list__cell {
		font-size: var(--text-sm);
	}

	.junam-list__lg {
		font-size: var(--text-sm);
	}

	.junam-list__cell--sbj {
		margin-top: 10px;
	}
}

.ui-option {
	display: inline-flex;
	align-items: center;	
	cursor: pointer;
}

.ui-option--flex {
	display: flex;
}

.ui-option--checkbox {
	gap:8px;
}


.ui-option--items-start {
	align-items: flex-start;
}

.ui-option--checkbox3 {
	align-items: flex-start;
}

.ui-option--radio {
	gap:4px;
	color: var(--gray-400);
}

.ui-option__choice {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}

.ui-option__choice--checkbox {
	position: relative;
	min-width: 1.25em;
	min-height: 1.25em;
	border:1px solid #000;
	border-radius:4px;
	background-color: #fff;	
}

.ui-option__choice--checkbox:checked {
	background: url('./img/ui_check_icon.svg') no-repeat center / cover;
}

.ui-option__choice--checkbox-lg {
	position: relative;
	min-width: 1.5em;
	min-height: 1.5em;
	border:1px solid #000;
	border-radius:4px;
	background-color: #fff;	
}

.ui-option__choice--checkbox-lg:checked {
	background: url('./img/ui_check_icon.svg') no-repeat center / cover;
}



.ui-option--items-start .ui-option__choice--checkbox {
	margin-top: 0.4em;
}

.ui-option__choice--checkbox2 {
	position: relative;
	min-width: none;width: 1.25em;
	min-width: none;height: 1.25em;
	border:1px solid #000;
	border-radius:50%;
	background-color: #fff;	
}



.ui-option__choice--checkbox3 {
	position: relative;
	width: 1.112em;
	height: 1.112em;
	border:1px solid #d9d9d9;
	background-color: #fff;
}

.ui-option__choice--checkbox2:checked {
	background: url('./img/ui_check_icon.svg') no-repeat center / cover;
}

.ui-option__choice--checkbox3:after {
	content:'';
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform:translate(-50%, -50%);
	background: url('./img/ui_check_icon.svg') no-repeat center / cover;
}

.ui-option__choice--checkbox3:checked {
	background-color: var(--primary);
}

.ui-option__choice--checkbox3:after {
	filter:brightness(0) invert(1)
}

.ui-option__choice--radio {
	width: 1.25em;
	height: 1.25em;
	border-radius:50%;
	background-color: #fff;
	border-radius:50%;
	border:5px solid var(--gray-400);
}

.ui-option__choice--radio:checked {
	border-color: var(--primary);
}


.ui-option__label {
	flex:1;
	font-size: var(--text-xs);
	font-weight: 500;
	letter-spacing: -0.03em;
}

.ui-option__label--rg {
	font-size: 1rem;
}

.ui-option__label--md {
	font-size: var(--text-xl);
}

.ui-option__label--lg {
	font-size: var(--text-h7);
	font-weight: 600;
}

.ui-option__label--gray-600 {
	display: flex;
	align-items: center;
	color: var(--gray-400);
}

.ui-option__choice--radio:checked + .ui-label {
	color: var(--primary);
}

@media(max-width:769px){
	.ui-option--checkbox {
		align-items: flex-start;
		gap:4px;
	}
	
	.ui-option__choice--checkbox,
	.ui-option__choice--checkbox2,
	.ui-option--items-start .ui-option__choice--checkbox {	
		margin-top: 0.15em !important;
		min-width: 14px;
		min-height: 14px;
		align-items: flex-start;
	}
	
	.ui-option__label--rg,
	.ui-option__label--lg {font-size: var(--text-xs)}
}

.junam-actions {
	display: flex;
	justify-content: space-between;
	gap:12px;
}

.junam-actions--footer {
	margin-top: 20px;
}

.junam-actions--cart {
	justify-content: flex-end;
	margin-top: 20px;
}

.junam-actions__panel {
	display: flex;
	gap:20px;
}

.junam-actions__panel--grid {
	display: grid;
	gap:12px;
	grid-template-columns: repeat(2, 1fr);
}

.junam-actions__btn {
	width: 10em;
	height: 2.889em;
	display: flex;
	justify-content: center;
	align-items: center;
	gap:8px;
	font-size: var(--text-xl);
	font-weight: 700;
	letter-spacing: -0.015em;
	color: var(--gray-800);
	border:1px solid var(--primary);
	transition: 0.3s;
}

.junam-actions__btn--primary {
	background-color: var(--primary);
	color: #fff;
}

.junam-actions__btn--naver {
	background-color: var(--naver);
	border-color:var(--naver);
	color: #000;
}

.junam-actions__btn--kakao {
	background-color: var(--kakao);
	border-color:var(--kakao);
	color: #000;
}

.junam-actions__sm {
	font-size: 0.889em;
}

.junam-actions__btn--cart {width: 11.6667em;}

@media(hover:hover){
	.junam-actions__btn:hover {
		background-color: var(--primary);
		color: #fff;
	}

	.junam-actions__btn--primary:hover {
		background-color: var(--secondary);
		border-color: var(--secondary);
	}


	.junam-actions__btn--naver:hover {
		background-color: var(--naver);
		border-color:var(--naver);
		color: #000;
		opacity: 0.75;
	}

	.junam-actions__btn--kakao:hover {
		background-color: var(--kakao);
		border-color:var(--kakao);
		color: #000;
		opacity: 0.75;
	}
}

.my-cart__inner {
	max-width:1162px;
	width: 100%;
	margin: 0 auto;
}

.my-coupon__rgst {
	padding-top: 15px;
}

.my-coupon__rgst-box {
	display: flex;
	gap:12px;
	padding:20px;	
	background-color: var(--gray-100);	
}

.my-coupon__rgst-input {
	flex:1;
	height: 3.334em;
	padding:0 1.3em;
	font-size: var(--text-xl);
	font-weight: 500;	
	background-color: #fff;
	border:1px solid var(--gray-400);
	letter-spacing: -0.03em;
}

.my-coupon__rgst-input::placeholder {
	color: var(--gray-400);
}

.my-coupon__rgst-btn {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	width: 8.8889em;
	height: 3.334em;
	font-size: var(--text-xl);
	font-weight: 700;
	background-color: var(--primary);
	color: #fff;
}

.my-coupon__manuel {
	margin-top: 49px;
	padding:24px;
	background-color: var(--gray-50);
}

.my-coupon__manuel--point {
	margin-top: 15px;
}

.my-coupon__manuel-title {	
	display: flex;
	align-items: center;
	font-size: var(--text-xs);
	font-weight: 700;
	gap:10px;	
	letter-spacing: -0.03em;
}

.my-coupon__manuel-title:before {
	content:'';
	width: 1.4286em;
	height: 1.4286em;
	background: url('./img/my_manuel_icon.svg') no-repeat center / cover;
}

.my-coupon__manuel-list {
	margin-top: 15px;
}

.my-coupon__manuel-item {
	position: relative;
	font-size: var(--text-xs);
	font-weight: 500;
	color: var(--gray-800);
	line-height: 1.7;
	padding-left: 1.5em;
	letter-spacing: -0.03em;
}

.my-coupon__manuel-item:before {
	position: absolute;
	display: block;
	width: 3px;
	height: 3px;
	border-radius: 50%;
	background-color: var(--gray-800);
	top: 0.7em;
	left: 0.65em;
	content:'';
}

.my-coupon__status {
	margin-top: 62px;
}

.my-coupon__status-header {
	display: flex;
	align-items: center;	
}

.my-coupon__status-title {
	display: flex;
	align-items: center;
	font-size: var(--text-h7);
	font-weight: 600;
	letter-spacing: -0.03em;
	gap:0.5em;
}

.my-coupon__status-title:before {
	content:'';
	display: block;
	width: 1.667em;
	height: 1.667em;
	background: url('./img/my_coupon_icon_color.svg') no-repeat center / cover;	
}

.my-coupon__status-cnt {
	margin-left: 0.6em;
	font-size: var(--text-h7);
	font-weight: 600;
	letter-spacing: -0.03em;
	color: var(--secondary);
}

.my-coupon__list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap:29px;
	margin-top: 20px;
	padding-right: 115px;
}

.my-coupon__item {
	min-width: 0;
	padding:21px 24px 17px 0;
	color: #fff;
	background: url('./img/coupon_bg.png') no-repeat center / cover;
}


.my-coupon__header {
	display: flex; 
	justify-content: space-between;
	align-items: center;
	gap:34px;
}

.my-coupon__info {
	padding-left: 70px;
	flex:1;
}

.my-coupon__category {
	font-size: var(--text-h7);
	font-weight: 700;
}

.my-coupon__name {
	margin-top: 0.2em;
	font-size: var(--text-h8);
	font-weight: 700;
	color: var(--primary);
	letter-spacing: -0.03em;
}

.my-coupon__rate {
	display: flex;
	flex-direction:column;
	justify-content: center;
	align-items: center;
	text-align: center;
	width: 5.8334em;
	height: 5.8334em;
	border-radius:50%;
	font-size: var(--text-h7);
	font-weight: 600;
	background-color: var(--primary);
	color: #fff;
}

.my-coupon__rate-value {
	font-size: 1.667em;
	line-height: 1.2;
}

.my-coupon__desc {
	margin-top: 1em;
	padding:0.3417em 1em;
	font-size: var(--text-3xs);
	background-color: #fff;
	color: #000;
	border-radius:2em;
	font-weight: 500;
	text-align: center;
}

.my-coupon__date {
	text-align:right;
}

.my-coupon__date-label {
	margin-top: 2.3572em;
	display: inline-block;
	font-size: var(--text-xs);
	font-weight: 600;
	color: var(--secondary);
	background-color: #fff;
	padding:0.015em 0.665em;
	border-radius:2em;
}

.my-coupon__date-period {
	margin-top: 0.2em;
	font-size: var(--text-xs);
	font-weight: 600;
	letter-spacing: -0.03em;
}

@media(max-width: 769px){
	.my-coupon__manuel {margin-top: 32px;}
	.my-coupon__status {margin-top: 32px;}
}

.ui-field--flex {
	flex:1;
}

.ui-field--items-center {
	display: flex;
	align-items: center;
}

.ui-label {
	font-size: var(--text-xl);
	font-weight: 500;
	letter-spacing: -0.03em;
	min-width: 12.8em;
}

.ui-label--required {
	display: flex;
	align-items: center;
	gap:0.5em;
}

.ui-label--required:after {
	content:'';
	display: block;
	width: 0.4445em;
	height: 0.4445em;
	border-radius:50%;
	background-color: var(--secondary);
}


.ui-input {
	font-size: var(--text-h8);
	font-weight: 500;
	height: 60px;
	border:1px solid var(--gray-400);
	padding: 0 0.5em;
	letter-spacing: -0.02em;
}

.ui-input--flex {
	flex:1;
}

.ui-input--full {
	width: 100%;
}

.ui-input--select {
	background: url('./img/ui_select_icon.svg') no-repeat center right 0.889em;
	appearance: none;
}

.ui-input--sm {
	font-size: var(--text-xl);
	padding:0 1.2em;
}

.ui-input::placeholder {
	color: var(--gray-400);
}

@media(max-width: 769px){
	.ui-input {
		font-size: var(--text-sm);
		height: 40px;
	}

	.ui-input--select {
		background-size: 20px 20px;
	}
}

.ly-prd {
	padding:112px 0 100px;
}

.ly-prd__container {
	display: flex;
	flex-direction: column;
}


.ly-prd__container--all {
	gap:40px;
}
@media(max-width:501px){
	.ly-prd__container--all {gap:20px;}
}

.ly-prd__container--best {
	gap:52px;
}

.ly-prd__container--category {
	gap:60px;	
}

@media(max-width: 769px){
	.ly-prd {padding: 80px 0;}
	.ly-prd__container--best {gap:0;}
}

@media(max-width: 501px){
	.ly-prd {padding: 0 0 60px;}
}

.prd-int {
	display: flex;
	flex-direction:column;
	gap:12px;
}

.prd-int__menu {
	display: flex;
	align-items: center;
}

.prd-int__title {
	font-size: var(--text-h3);
	font-weight: 700;
	color: var(--primary);
}

.prd-int__desc {
	font-size: var(--text-h8);
	font-weight: 500;
	color: var(--gray-800);
	letter-spacing: -0.03em;
}

.prd-int__breadcrumb {
	position: relative;
	margin-left: 2.1em;
	padding-left: 2.1em;
	font-size: var(--text-h8);
	font-weight: 500;
	letter-spacing: -0.03em;
	color: var(--gray-800);
	line-height: 1.4;
}

.prd-int__breadcrumb:before {
	position: absolute;
	top: 50%;
	left: 0;
	width: 1px;
	height: 80%;
	transform:translateY(-50%);
	background-color: var(--gray-400);
	content:'';
	display: block;
}

@media(max-width:769px){
	.prd-int {gap:8px;}
	.prd-int__title {font-size: var(--text-h7);}
	.prd-int__desc {font-size: var(--text-sm);}
}

.prd-header {
	display: flex;
	flex-direction:column;
	gap:36px;
}

@media(max-width:501px){
	.prd-header {gap:16px;}
}

.prd-sort {
	flex:1;
}

.prd-sort__list {
	display: flex;
	justify-content: flex-end;
	border-top:1px solid var(--gray-500);
	border-bottom:1px solid var(--gray-300);
	padding:20px 10px;
	gap:33px;
}

.prd-sort__btn {
	display: flex;
	align-items: center;
	gap:8px;
	font-weight: 500;
	color: var(--gray-800);	
	letter-spacing: -0.03em;
}

.prd-sort__btn[aria-current="page"]{
	color: #000;
	font-weight: 700;
}

.prd-sort__btn[aria-current="page"]:before {
	content:'';
	display: block;
	width: 0.75em;
	height: 0.75em;
	background: url('./img/sort_current_icon.svg') no-repeat center / cover;
}

@media(max-width:769px){
	.prd-sort__list {padding: 12px 0; gap:16px; flex-wrap:wrap;}
	.prd-sort__btn {font-size: var(--text-xs);}
}

@media(max-width:501px){}
	.prd-sort__list {gap:8px}
	.prd-sort__btn {font-size: var(--text-2xs);}

.prd-empty {
		text-align: center;
    padding: 40px;
    color: #999;
}

.shop-list {
    display: grid;    
}

.shop-list--all {
    grid-template-columns: repeat(4, 1fr);
    gap:120px 20px;
}

.shop-list--best,
.shop-list--deal,
.shop-list--category {
    grid-template-columns: repeat(3, 1fr);
    gap: 80px 20px;
}

.shop-list--best {
	padding:60px 0 90px;
}


.shop-list--swiper {
	margin-top: 59px;
	display: block;
}

.shop-list--deal {
    padding-top: 38px;
}

.shop-list__item {
    position: relative;
    z-index: 0;
    min-width: 0;
}

.shop-list__rank {
    position: absolute;
    z-index: 1;
    top: 0; 
    left: 0;
    aspect-ratio:1;
    width: 5.3125em;
    background-color: var(--secondary);
    color: #fff;
    font-size: min(3vw, 32px);
    padding:14px 20px;
    font-weight: 600;
    clip-path: polygon(0 0, 0% 100%, 100% 0);
}

.shop-list__link {
    display: flex;
		flex-direction:column;
		height: 100%;
}

.shop-list__frame {
    position: relative;
    overflow: hidden;
    margin-bottom: 22px;
    transition: 0.3s;
}

.shop-list__frame img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.shop-list__cover {
    position: absolute;
    inset:0;
    display: flex;
    flex-direction:column;
    justify-content: center;
    align-items: center;
    text-align: center;
    background-color: rgba(9,2,94,0.8);
    color: #fff;
}

.shop-list__cover-time {
    font-size: clamp(24px, 4.5vw, 72px);
    display: flex;
    flex-direction: column;
    font-weight: 700;
}

.shop-list__cover-time:before {
    content:'';
    display: block;
    margin: 0 auto;
    width: 0.8334em;
    height: 0.8334em;
    background: url('../../include/img/time_cart_icon.svg') no-repeat center / cover;
}

.shop-list__cover-time span {
    display: block;
    width: max-content;
    margin: 0 auto;
    padding:0.1273em 0.4112em;
    font-size: 0.445em;    
    background-color: #fff;
    color: var(--primary);
    border-radius:2em;
}

.shop-list__info {
	margin-top: auto;
	padding-top: 20px;
	border-top:1px solid var(--gray-400)
}

.shop-list__timer {
    position: absolute;
    z-index: 1;
    inset:0;
    bottom:auto;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-size: var(--text-h6);
    font-weight: 600;
    color: #fff;
    background-color: var(--secondary);
    gap:0.25em;
    padding:0.05em 0.5em;
    min-height: 44px;
    overflow: hidden;
    transition: 0.3s;
}

.shop-list__timer-cnt {
    font-weight: inherit;
}

.shop-list__badge {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 3.75em;
    height: 2.0834em;
    text-align: center;
    font-size: var(--text-h7);    
    font-weight: 600;
    color: #fff;
    background-color: var(--fourth);
    border-radius :0.3334em;
    margin-right: auto;
}


/* 상품 카드 호버 시 노출되는 액션(장바구니/바로구매) 오버레이 */
.shop-list__actions {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    opacity: 0;
    transition: opacity 0.25s ease;
    pointer-events: none;
    z-index: 2;
}

.shop-list__item:hover .shop-list__actions {
    opacity: 1;
    pointer-events: auto;
}

.shop-list__action {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 48px;
    height: 48px;
    background-color: rgba(255,255,255,0.2);
    border-radius: 4px;
    cursor: pointer;
    transition: background-color 0.2s ease, transform 0.2s ease;
}

.shop-list__action:hover {
    background-color: var(--primary, #09025E);
    transform: translateY(-2px);
}

.shop-list__action img {
    width: 22px;
    height: 22px;
    object-fit: contain;
}

.shop-list__action:hover img {
    filter: brightness(0) invert(1);
}


.shop-list__price {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.shop-list__cust-price {
    margin-left: auto;
    font-size: var(--text-h8);
    text-decoration: line-through;
    color: var(--gray-500);
}

.shop-list__cust-price--sm {
	margin-left: 0;
	padding-left: 0.5em;
}

.shop-list__sell-price {
    margin-left: auto;
    font-size: clamp(1.5rem, 1.318rem + 0.91vw, 2rem);
    font-weight: 600;
    color: var(--secondary);
}

.shop-list__name {
    font-size: var(--text-h8);
    font-weight: 500;
    white-space: normal;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow:ellipsis;
    min-height: 72px; /* 2줄분(line-height≈26px×2 + padding 20px) 예약 → 데스크탑 이름 안 잘리고 정렬 유지 */
		padding-bottom: 20px;
}

.shop-list__option {
    text-align:right;
    font-size: var(--text-xl);
    font-weight: 500;
    color: var(--gray-700);
    letter-spacing: -0.03em;
    margin:0.6em 0 0.8em;
}


.shop-list__desc {
    text-align:right;
    font-weight: 500;
    color: var(--secondary);
    letter-spacing: -0.03em;
}

.shop-list__empty {
    margin-top: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    border-radius:16px;
    box-shadow: 0 0 8px rgba(0,0,0,0.1);
    padding:40px 16px;
    letter-spacing: -0.03em;
    color: var(--gray-400);
}

.shop-list__more-wrap {
    text-align: center;
    padding: 30px 0;
}

.shop-list__more-btn {
    background: none;
    border: 1px solid #333;
    padding: 12px 40px;
    font-size: 14px;
    cursor: pointer;
    color: #333;
}

.shop-list__more-btn:hover {
    background: #333;
    color: #fff;
}

.shop-list--all .shop-list__frame {
    aspect-ratio:325/380
}

.shop-list--best .shop-list__frame,
.shop-list--deal .shop-list__frame {
    aspect-ratio:440/460
}

.shop-list--all .shop-list__sell-price {
    margin-left: auto;
}

.shop-list--best .shop-list__sell-price,
.shop-list--deal .shop-list__sell-price {
    margin-left: 1em;
}

@media(hover:hover){
    .shop-list__link:hover .shop-list__frame {
        border-radius:20px;
    }

    .shop-list__link:hover .shop-list__timer {
        border-radius:20px 20px 0 0;
    }
}

@media (max-width: 769px) {
    .shop-list--all, .shop-list--best, .shop-list--deal, .shop-list--category { 
        grid-template-columns: repeat(2, 1fr); /* 모바일은 2단이 국룰 */
        gap: 40px 15px; 
    }

		.shop-list--best {padding:20px 0;}
    
    .shop-list--swiper { margin-top: 30px; }
    .shop-list--deal { padding-top: 20px; }

    /* 2. 랭킹 뱃지 크기 조정 */
    .shop-list__rank { 
				padding:0.5em;
        font-size: 16px; /* 모바일에서 너무 크지 않게 고정 */
    }

    /* 3. 이미지 및 프레임 */
    .shop-list__frame { margin-bottom: 12px; }
    .shop-list--best .shop-list__frame { aspect-ratio: 1 / 1; } /* 모바일: TOP3 썸네일 정사각 고정 (PC는 440/460 유지) */
    .shop-list__actions { display: none; } /* 모바일은 호버가 없으므로 숨김 권장 */

    /* 4. 상품명 및 정보 */
    .shop-list__name { 
        font-size: var(--text-sm); 
        white-space: normal; /* 모바일은 두줄까지 허용 권장 */
        display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; min-height: 50px; /* 2줄분(line-height 21px×2 + padding 8px) 예약 → 1줄 제목도 동일 높이로 가격·카드 정렬 통일 */
				padding-bottom: 8px;
    }

		.shop-list__info {
			padding-top: 8px;
		}

    /* 5. 가격 영역 조정 */
    .shop-list__price { justify-content: flex-start; gap: 5px; } /* 모바일은 왼쪽 정렬이 가독성 좋음 */
    
    .shop-list__sell-price { 
        font-size: var(--text-h6); 
        margin-left: 0 !important; /* 기존 margin 강제 해제 */
    }

    .shop-list__badge { 
        width: 3.2em; 
        height: 1.8em; 
        font-size: var(--text-xs); 
    }

    .shop-list__cust-price { font-size: var(--text-3xs); }

    /* 6. 기타 부가정보 */
    .shop-list__option { 
        text-align: left; 
        font-size: var(--text-xs); 
        margin: 4px 0; 
    }
    
    .shop-list__desc { 
        text-align: left; 
        font-size: var(--text-3xs); 
    }

    /* 7. 타이머 및 오버레이 (있는 경우) */
    .shop-list__timer { font-size: var(--text-xs); min-height: 34px; }
    .shop-list__cover-time { font-size: 32px; }
}


/* ============================================================
   마이페이지 공통 반응형: .junam-list / .junam-actions / .junam-ctrl
   ============================================================ */

/* 1321 이하: 셀 패딩·버튼 축소 */
@media (max-width: 1321px) {
    .junam-list__cell--td { padding: 16px 0; }
    .junam-actions__btn { font-size: var(--text-lg); width: 9em; }
    .junam-actions__btn--cart { width: 10.5em; }
}

/* 1025 이하: 그리드 컬럼 축소 + 비핵심 컬럼 숨김 */
@media (max-width: 1025px) {
    .junam-list__row--order { grid-template-columns: 40px 120px 1fr 60px repeat(3, 90px); font-size: 0.92em; }
    .junam-list__row--wish  { grid-template-columns: 28px 90px 1fr 140px 140px 44px; font-size: 0.92em; }
    .junam-list__row--cart  { grid-template-columns: 28px 90px 1fr 100px 140px 150px 44px; font-size: 0.92em; }
    .junam-list__row--point { grid-template-columns: 40px 130px 1fr 100px; font-size: 0.92em; }
    .junam-list__row--point > *:nth-child(3) { display: none; }
    /* (2026-08-18) 8번째 '수정' 컬럼 추가에 맞춰 조정. 기존처럼 '작성자'(7번째)만 숨기고 수정 버튼은 남긴다. */
    .junam-list__row--post  { grid-template-columns: 30px 40px 80px 1fr 100px 70px 72px; font-size: 0.92em; }
    .junam-list__row--post > *:nth-child(7) { display: none; }

    .junam-actions__btn { font-size: var(--text-sm); width: 8em; height: 3em; }
    .junam-actions__btn--cart { width: 9em; }
    .junam-actions__panel { gap: 12px; }
}

/* 769 이하: 카드 레이아웃 전환 */
@media (max-width: 769px) {
    .junam-list { border-top: 0; }
    .junam-list__head { display: none; }

    .junam-list__body {
        position: relative;
        margin-bottom: 10px;
        background: #fff;
				display: flex;
				flex-direction:column;
				gap:16px;
    }
    .junam-list__body .junam-list__row {
        display: flex;
        flex-wrap: wrap;
        grid-template-columns: none;
        align-items: center;
        gap: 0 10px;
        padding: 14px 16px;
        border-bottom: 0;
        min-height: 0;
        font-size: 1em;
				border:1px solid var(--gray-400);
				border-radius: 8px;
    }


    .junam-list__cell {
        justify-content: flex-start;
        text-align: left;
        padding: 0;
        min-height: 0;
    }
    .junam-list__cell--td { padding: 0; }
		.junam-list__cell--td[data-label="수량"] {
			flex:1;
		}
		.junam-list__cell--td[data-label="수량"]:before{
			content: attr(data-label);
			margin-right: 0.25em;
		}
    .junam-list__cell--sbj {
        flex: 1 1 100%;
        order: 1;
        padding: 0;
        font-weight: 600;
        color: #000;
        font-size: var(--text-sm);
    }
    .junam-list__cell--empty {
        justify-content: center;
        text-align: center;
        padding: 24px 16px;
    }
    .junam-list__sm { font-size: var(--text-xs); }
    .junam-list__lg { font-size: var(--text-sm); }
    .junam-list__eb { line-height: 1.35; }

    .junam-list__cell--td img { max-width: 100%; height: auto; }
		.junam-list__cell--td[data-label="이미지"] {
			width: 80px;
		}

		.junam-list__cell--td[data-label="상품정보"],
		.junam-list__cell--td[data-label="상품 정보"] {
			width: calc(100% - 94px);
			padding-bottom: 0;
			margin: 0;
		}

		.junam-list__cell--td[data-label="구매 금액"] {
			flex:1;
			justify-content: center;
		}

		.junam-list__cell--td[data-label="구매 금액"]:after {
			content:"원";
			color: #000;
		}

		.junam-list__cell--td[data-label="적립 포인트"] {
			flex:1;
			justify-content: center;
		}

		.junam-list__cell--td[data-label="적립 포인트"]:after {
			content:"포인트";
			color: #000;
		}

		.junam-list__cell--td[data-label="삭제"] {
			margin-left: auto;
			width: 40px;
		}

    /* NO 셀 숨김 (카드형에서 번호 불필요) */
    .junam-list__row--point > *:nth-child(1),
    .junam-list__row--post > .my-posts__col--no { display: none; }

    /* posts: 삭제 버튼 카드 우상단 고정 */
    .my-posts__col--del {
        position: absolute;
        top: 8px;
        right: 10px;
        order: 10;
        font-size: var(--text-xs);
    }

    /* junam-actions: 풀폭 버튼 스택 */
    .junam-actions {flex-wrap: wrap; justify-content: stretch; gap: 8px;}
		.junam-actions--cart {flex-wrap:nowrap}
    .junam-actions__panel { width: 100%; flex-wrap: wrap; gap: 8px; }
    .junam-actions__panel--grid { grid-template-columns: 1fr; }
    .junam-actions__btn,
    .junam-actions__btn--cart {
        flex: 1 1 100%;
        width: 100%;
        font-size: var(--text-sm);
        height: 3em;
    }

    /* junam-ctrl */
    .junam-ctrl { margin-top: 20px; }
    .junam-ctrl__btn { font-size: var(--text-xs); width: 6em; }
}

/* 501 이하: 초소형 */
@media (max-width: 501px) {
    .junam-list__body { margin-bottom: 8px; }
    .junam-list__body .junam-list__row { padding: 12px 14px; gap: 16px 8px; }
    .junam-list__cell--sbj { font-size: var(--text-sm); }
    .junam-list__sm { font-size: var(--text-2xs); }

    .junam-list__row--order > .junam-list__cell:nth-child(2),
    .junam-list__row--wish  > .junam-list__cell:nth-child(2),
    .junam-list__row--cart  > .junam-list__cell:nth-child(2) { width: 64px; }

    .junam-actions__btn,
    .junam-actions__btn--cart { font-size: var(--text-xs); height: 2.8em; }
}


/* ============================================================
   .my-order__tab / __form / __manuel 반응형
   ============================================================ */

@media (max-width: 1441px) {
    .my-order__sch {
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
    }
    .my-order__filter--btn,
    .my-order__filter--input { width: 100%; }
}

@media (max-width: 1321px) {
    .my-order__tab-btn { font-size: var(--text-lg); }
    .my-order__option { font-size: var(--text-sm); }
    .my-order__option--input { width: 10em; }
}

@media (max-width: 1025px) {
    .my-order__tab-btn { font-size: var(--text-sm); min-height: 2.8em; }

    .my-order__filter { flex-wrap: wrap; gap: 8px; }
    .my-order__period { flex-wrap: wrap; gap: 6px; }
    .my-order__option--select { flex: 1 1 100%; padding: 0 20px; background-position: right 16px center; }
    .my-order__option--input { width: 9em; }

    .my-order__manuel { padding: 18px; }
}

@media (max-width: 769px) {
    .my-order__tab { margin-top: 12px; }
    .my-order__tab-btn {
        font-size: var(--text-xs);
        min-height: 2.6em;
        padding: 0 6px;
        line-height: 1.3;
    }

    .my-order__sch {
        padding: 12px;
        margin: 10px 0;
        gap: 10px;
    }
    .my-order__filter--btn { flex-direction: column; align-items: stretch; }
    .my-order__filter--input { flex-direction: column; align-items: stretch; }
    .my-order__period--btn {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 6px 22px;
        width: 100%;
    }
    .my-order__period--btn--cal {
        display: flex;
				flex-wrap:nowrap;;
        justify-content: center;
        align-items: center;
        gap: 6px;
    }
    .my-order__option {
        height: 2.6em;
        font-size: var(--text-xs);
    }
    .my-order__option--btn { min-width: 0; }
    .my-order__option--input {
        width: 100%;
        flex: 1 1 auto;
        min-width: 0;
    }
    .my-order__option--submit {
        width: 100%;
        min-width: 0;
    }

    .my-order__manuel { padding: 14px; }
    .my-order__manuel-text {
        font-size: var(--text-2xs);
        line-height: 1.6;
    }

    .my-order__list { margin-top: 16px; gap: 6px; }
    .my-order__list-title { font-size: var(--text-h8); }
}

@media (max-width: 501px) {
    .my-order__tab-btn { font-size: var(--text-2xs); min-height: 2.4em; }

    .my-order__sch { padding: 10px; gap: 8px; }
    .my-order__period--btn {gap:4px;}
    .my-order__option { height: 2.4em; font-size: var(--text-2xs); }
    .my-order__option--select {flex:none; padding: 0 16px; background-position: right 12px center; background-size: 16px 16px; }

    .my-order__manuel { padding: 12px; }
    .my-order__manuel-text { font-size: var(--text-3xs); }
}


/* ============================================================
   .my-coupon__rgst-box / .my-coupon__list 반응형
   ============================================================ */

@media (max-width: 1321px) {
    .my-coupon__list { padding-right: 60px; gap: 20px; }
    .my-coupon__rgst-input,
    .my-coupon__rgst-btn { font-size: var(--text-lg); }
    .my-coupon__rgst-btn { width: 7.5em; }
}

@media (max-width: 1025px) {
    .my-coupon__list { padding-right: 0; gap: 16px; }
    .my-coupon__rgst-box { padding: 16px; gap: 10px; }
    .my-coupon__rgst-input,
    .my-coupon__rgst-btn { font-size: var(--text-sm); height: 3em; }
    .my-coupon__rgst-btn { width: 7em; }

    .my-coupon__info { padding-left: 30px; }
    .my-coupon__rate { width: 5em; height: 5em; font-size: var(--text-h8); }
}

@media (max-width: 769px) {
    .my-coupon__rgst-box {
        flex-direction: column;
        padding: 14px;
        gap: 8px;
    }
    .my-coupon__rgst-input {
        flex: 0 0 auto;
        width: 100%;
        height: 2.875em;
        padding: 0 1em;
        font-size: var(--text-sm);
    }
    .my-coupon__rgst-btn {
        width: 100%;
        height: 2.875em;
        font-size: var(--text-sm);
    }

    .my-coupon__list {
        grid-template-columns: 1fr;
        gap: 12px;
        margin-top: 16px;
    }
    .my-coupon__item { padding: 18px 20px 14px 0; }
    .my-coupon__header { gap: 16px; }
    .my-coupon__info { padding-left: 24px; }
    .my-coupon__category { font-size: var(--text-sm); }
    .my-coupon__name { font-size: var(--text-xs); }
    .my-coupon__desc { font-size: var(--text-3xs); }
    .my-coupon__rate {
        width: 4.5em;
        height: 4.5em;
        font-size: var(--text-sm);
    }
    .my-coupon__date-label,
    .my-coupon__date-period { font-size: var(--text-2xs); }
    .my-coupon__date-label { margin-top: 1.5em; }
}

@media (max-width: 501px) {
    .my-coupon__rgst-box { padding: 12px; }
    .my-coupon__rgst-input,
    .my-coupon__rgst-btn { font-size: var(--text-xs); height: 2.75em; }

    .my-coupon__item { padding: 16px 16px 12px 0; }
    .my-coupon__info { padding-left: 16px; }
    .my-coupon__header { gap: 10px; }
    .my-coupon__rate { width: 4em; height: 4em; font-size: var(--text-xs); }
}


.order-complete {
	padding: 31px 0 100px;
}

.order-complete__inner {
	max-width:1164px;
	width: 100%;
	padding: 0 16px;
	margin: 0 auto;
}

.order-complete__container {
	margin-top: 67px;
}

.order-complete__meta {
	border-top:2px solid #000;
}

.order-complete__meta--py {
	padding: 16px 0;
}

.order-complete__row {
	display: grid;
	grid-template-columns: 210px 1fr;
	gap:20px;
	grid-auto-rows: minmax(100px, auto);
	place-items:center;
	border-bottom:1px solid var(--gray-400);
}

.order-complete__row--addr {
	place-items:initial;
}
.order-complete__panel:last-child .order-complete__row {
	border-bottom:none;
}

.order-complete__label {
	justify-self: flex-start;
	font-size: var(--text-xl);
	font-weight: 700;
	letter-spacing: -0.03em;
}

.order-complete__label--addr {
	padding:20px 0;
}

.order-complete__content {
	padding:20px 0;
	justify-self: flex-start;
	font-size: var(--text-xl);
	font-weight: 500;
	letter-spacing: -0.03em;
	line-height: 1.7;
}

.order-complete__sh {
	font-size: var(--text-h7);
	font-weight: 600;
	letter-spacing: -0.03em;
}

.order-complete__summary {
	display: flex; 
	align-items: center;
	margin-top: 20px;
	gap:26px;
}

.order-complete__prd-name {
	font-weight: 700;
	letter-spacing: -0.03em;
}

.order-complete__prd-qty {
	margin-top: 0.5em;
	font-weight: 500;
	color: var(--gray-600);
	letter-spacing: -0.03em;
}

.order-complete__prd-cost {
	display: block;
	font-size: var(--text-xl);
	font-weight: 700;
	letter-spacing: -0.03em;
	margin-top: 0.4em;
}

.order-complete__delivery {
	padding-top: 22px;
	display: flex;
	justify-content: space-between;
}

.order-complete__delivery-label {
	font-weight: 600;
	letter-spacing: -0.03em;
	color: #333;
}


/* 주문 상태 라벨 */
.order-complete__prd-status {
	display: inline-block;
	margin-top: 0.6em;
	padding: 0.25em 0.7em;
	font-size: var(--text-xs);
	font-weight: 600;
	letter-spacing: -0.03em;
	color: var(--gray-700);
	background-color: var(--gray-100);
	border-radius: 3px;
	vertical-align: middle;
}

/* 후기작성 버튼 / 후기작성완료 표시 */
.order-complete__prd-review {
	display: inline-block;
	margin-top: 0.6em;
	margin-left: 6px;
	font-size: var(--text-xs);
	font-weight: 600;
	letter-spacing: -0.03em;
	vertical-align: middle;
}
a.order-complete__prd-review {
	padding: 0.25em 0.8em;
	color: var(--primary);
	border: 1px solid var(--primary);
	border-radius: 3px;
	transition: background-color .15s ease, color .15s ease;
}
a.order-complete__prd-review:hover {
	background-color: var(--primary);
	color: #fff;
}
span.order-complete__prd-review {
	color: var(--gray-500);
}


.order-complete__delivery-cost {
	font-size: var(--text-xl);
	font-weight: 700;
	letter-spacing: -0.03em;
}

.order-complete__pay-info {
	margin-top: 18px;
	padding: 21px 0;
	border-top:1px solid var(--gray-400);
	border-bottom:1px solid var(--gray-400);
}

.order-complete__pay-panel {
	display: flex;
	justify-content: space-between;	
	align-items: center;
	margin-bottom: 8px;
}

.order-complete__pay-panel:last-child {
	margin-bottom: 0;
}

.order-complete__pay-label {
	font-weight: 500;
	letter-spacing: -0.03em;
	color: var(--gray-600);
}

.order-complete__pay-label--lg {
	font-size: var(--text-h8);
	font-weight: 600;
	color: #000;
}

.order-complete__pay-cost {
	font-size: var(--text-h7);
	font-weight: 700;
	letter-spacing: -0.03em;	
}

.order-complete__pay-cost--sum {
	font-size: var(--text-h5);
	color: var(--secondary);
}

.order-complete__pay-result {
	padding:18px 0;
	border-bottom: 1px solid var(--gray-400);
}

.order-complete__action {
	margin-top: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	gap:20px;
}


.order-complete__btn {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	font-size: var(--text-xl);
	font-weight: 700;
	letter-spacing: -0.03em;
	width: 11.6667em;
	height: 3.334em;
	border:1px solid var(--gray-400);
	color: var(--gray-800);
}

.order-complete__btn--primary {
	background-color: var(--primary);
	border-color: var(--primary);
	color: #fff;
}


/* ============================================================
   .order-complete 반응형
   ============================================================ */

@media (max-width: 1321px) {
    .order-complete { padding: 24px 0 80px; }
    .order-complete__container { margin-top: 48px; }
    .order-complete__row { grid-template-columns: 180px 1fr; grid-auto-rows: minmax(80px, auto); }
    .order-complete__label,
    .order-complete__content,
    .order-complete__delivery-cost,
    .order-complete__prd-cost { font-size: var(--text-lg); }
    .order-complete__sh { font-size: var(--text-h8); }
    .order-complete__pay-cost { font-size: var(--text-h8); }
    .order-complete__pay-cost--sum { font-size: var(--text-h6); }
    .order-complete__btn { font-size: var(--text-lg); width: 10em; }
}

@media (max-width: 1025px) {
    .order-complete { padding: 20px 0 60px; }
    .order-complete__container { margin-top: 32px; }
    .order-complete__row { grid-template-columns: 140px 1fr; gap: 14px; grid-auto-rows: minmax(70px, auto); }
    .order-complete__label,
    .order-complete__content,
    .order-complete__delivery-cost,
    .order-complete__prd-cost { font-size: var(--text-sm); }
    .order-complete__content { padding: 16px 0; line-height: 1.6; }
    .order-complete__label--addr { padding: 16px 0; }
    .order-complete__sh { font-size: var(--text-sm); }
    .order-complete__summary { gap: 18px; margin-top: 16px; }
    .order-complete__pay-info { padding: 16px 0; }
    .order-complete__pay-label,
    .order-complete__pay-cost { font-size: var(--text-sm); }
    .order-complete__pay-label--lg { font-size: var(--text-sm); }
    .order-complete__pay-cost--sum { font-size: var(--text-h7); }
    .order-complete__btn { font-size: var(--text-sm); width: 9em; height: 3em; }
    .order-complete__action { gap: 12px; margin-top: 28px; }
}

@media (max-width: 769px) {
    .order-complete { padding: 16px 0 50px; }
    .order-complete__container { margin-top: 24px; }

    .order-complete__row {
        grid-template-columns: 1fr;
        gap: 4px;
        grid-auto-rows: auto;
        place-items: stretch;
        padding: 14px 0;
    }
    .order-complete__row--addr { padding: 14px 0; }
    .order-complete__label,
    .order-complete__label--addr {
        padding: 0;
        font-size: var(--text-xs);
        color: var(--gray-600);
        font-weight: 600;
    }
    .order-complete__content {
        padding: 0;
        font-size: var(--text-xs);
        line-height: 1.6;
    }
    .order-complete__info { font-size: var(--text-xs); }

    .order-complete__meta--py { padding: 14px 0; }
    .order-complete__sh { font-size: var(--text-xs); }
    .order-complete__summary {
        gap: 12px;
        margin-top: 12px;
        align-items: flex-start;
    }
    .order-complete__frame { width: 80px; flex: 0 0 80px; }
    .order-complete__frame img { width: 100%; height: auto; }
    .order-complete__prd-name { font-size: var(--text-xs); line-height: 1.4; }
    .order-complete__prd-qty { font-size: var(--text-2xs); }
    .order-complete__prd-cost { font-size: var(--text-sm); margin-top: 0.3em; }

    .order-complete__delivery { padding-top: 14px; }
    .order-complete__delivery-label { font-size: var(--text-xs); }
    .order-complete__delivery-cost { font-size: var(--text-sm); }

    .order-complete__pay-info { margin-top: 14px; padding: 14px 0; }
    .order-complete__pay-panel { margin-bottom: 6px; }
    .order-complete__pay-label,
    .order-complete__pay-cost { font-size: var(--text-xs); }
    .order-complete__pay-label--lg { font-size: var(--text-xs); }
    .order-complete__pay-cost--sum { font-size: var(--text-sm); }
    .order-complete__pay-result { padding: 14px 0; }

    .order-complete__action {
        margin-top: 24px;
        gap: 8px;
    }
    .order-complete__btn {
        flex: 1;
        width: auto;
        font-size: var(--text-xs);
        height: 2.9em;
    }
}

@media (max-width: 501px) {
    .order-complete { padding: 12px 0 40px; }
    .order-complete__container { margin-top: 18px; }

    .order-complete__row { padding: 12px 0; }
    .order-complete__label,
    .order-complete__content,
    .order-complete__info { font-size: var(--text-2xs); }

    .order-complete__sh { font-size: var(--text-2xs); }
    .order-complete__frame { width: 64px; flex: 0 0 64px; }
    .order-complete__prd-name { font-size: var(--text-2xs); }
    .order-complete__prd-qty { font-size: var(--text-3xs); }
    .order-complete__prd-cost { font-size: var(--text-xs); }

    .order-complete__delivery-label { font-size: var(--text-2xs); }
    .order-complete__delivery-cost { font-size: var(--text-xs); }

    .order-complete__pay-label,
    .order-complete__pay-cost,
    .order-complete__pay-label--lg { font-size: var(--text-2xs); }
    .order-complete__pay-cost--sum { font-size: var(--text-xs); }

    .order-complete__btn { font-size: var(--text-2xs); height: 2.75em; }
}