/* ===================================================================
   피터캣클럽 — FluxShop 화면 (상품 목록·상세·장바구니·결제·주문·계정)

   원칙: FluxShop 마크업·스크립트는 그대로 두고 모양만 새 디자인 언어로(기능 회귀 방지).
     - 상품 상세의 구매 부품 = 강의 구매 상세(10.png)와 같은 규칙(DL-21~24) — "도서는 샵"
     - 목록·폼·표·빈 상태 = 규칙표 DL(9·11·12.png 언어)
   FluxShop 코어(fluxshop.css)는 `!important` 흑백 레이어가 있고 피터캣 스킨(fluxshop-petercat skin.css)은
   옛 보라 #532B83 을 `!important` 로 입힌다 → 같은 선택자 + `!important`, 이 파일이 두 파일 뒤에 로드된다.
   =================================================================== */

/* ===================
   1. CSS Variables — FluxShop 변수를 새 토큰으로
   =================== */

:root {
	--fhs-primary: var(--pc-purple-deep);
	--fhs-primary-hover: var(--pc-purple-deep);
	--fhs-accent: var(--pc-pink-sub-text);
	--fhs-accent-dark: var(--pc-pink-sub-text);
	--fhs-font: var(--pc-font);
	--fhs-radius: 0;
	--fhs-radius-sm: 0;
	--fhs-radius-lg: 0;
	--fhs-shop-ink: var(--pc-black);
	--fhs-shop-border-strong: var(--pc-black);
}

.fhs-pdp {
	--fhs-pdp-ink: var(--pc-black);
	--fhs-pdp-accent: var(--pc-pink-sub-text);
}

body .fluxshop,
body .fhs-account,
body .fhs-mypage,
body .fhs-cart-drawer {
	font-family: var(--pc-font) !important;
	color: var(--pc-ink);
}

/* ===================
   4. Components — 버튼 (DL-18 1차 · DL-19 2차)
   =================== */

body .fluxshop .fluxshop-btn--primary,
body .fhs-pdp .fhs-sidebar__actions .fluxshop-btn--buy,
body .fhs-sidebar__actions .fluxshop-btn--primary,
body .fluxshop-checkout .fluxshop-btn--primary,
body .fhs-cart2 .fhs-cart-order-all,
body #fhs-use-all-points,
body #fhs-apply-coupon {
	background: var(--pc-purple-deep) !important;
	border-color: var(--pc-purple-deep) !important;
	border-radius: var(--pc-radius-pill) !important;
	color: var(--pc-on-dark) !important;
	font-weight: 700;
	box-shadow: none;
	transition: transform var(--pc-dur-fast) ease, box-shadow var(--pc-dur-fast) ease;
}

body .fluxshop .fluxshop-btn--primary:hover,
body .fhs-pdp .fhs-sidebar__actions .fluxshop-btn--buy:hover,
body .fhs-sidebar__actions .fluxshop-btn--primary:hover,
body .fluxshop-checkout .fluxshop-btn--primary:hover,
body .fhs-cart2 .fhs-cart-order-all:hover,
body #fhs-use-all-points:hover,
body #fhs-apply-coupon:hover {
	background: var(--pc-purple-deep) !important;
	border-color: var(--pc-purple-deep) !important;
	transform: translateY(-2px);
	box-shadow: var(--pc-shadow-btn-hover);
}

body .fluxshop .fluxshop-btn--outline,
body .fhs-cart2 .fhs-cart-order-selected,
body .fluxshop .fluxshop-btn--cart {
	background: var(--pc-white) !important;
	border: var(--pc-line-width) solid var(--pc-black) !important;
	border-radius: var(--pc-radius-pill) !important;
	color: var(--pc-black) !important;
	font-weight: 700;
}

body .fluxshop .fluxshop-btn--outline:hover,
body .fhs-cart2 .fhs-cart-order-selected:hover,
body .fluxshop .fluxshop-btn--cart:hover {
	border-color: var(--pc-black) !important;
	color: var(--pc-black) !important;
	transform: translateY(-2px);
}

body .fluxshop .fluxshop-btn,
body .fluxshop button,
body .fluxshop input[type="submit"] {
	min-height: 44px;
	font-family: var(--pc-font);
}

body .fluxshop .fluxshop-btn:focus-visible,
body .fhs-pdp button:focus-visible,
body .fhs-cart2 button:focus-visible,
body .fluxshop a:focus-visible,
body .fluxshop input:focus-visible,
body .fluxshop select:focus-visible {
	outline: 2px solid var(--pc-ink);
	outline-offset: 2px;
}

/* 입력 — DL-30 (1px 검정, 모서리 0, 높이 48) */
body .fluxshop input[type="text"],
body .fluxshop input[type="email"],
body .fluxshop input[type="tel"],
body .fluxshop input[type="number"],
body .fluxshop input[type="password"],
body .fluxshop input[type="search"],
body .fluxshop select,
body .fluxshop textarea,
body .fluxshop-checkout input,
body .fluxshop-checkout select,
body .fluxshop-checkout textarea,
body .fhs-account .fhs-field input,
body .fhs-account .fhs-field select,
body .fhs-account .fhs-field textarea {
	min-height: 48px;
	border: var(--pc-line-width) solid var(--pc-black) !important;
	border-color: var(--pc-black) !important;
	border-radius: 0 !important;
	background: var(--pc-white) !important;
	color: var(--pc-ink) !important;
	font-size: var(--pc-fs-16);
}

body .fluxshop textarea,
body .fluxshop-checkout textarea {
	min-height: 96px;
}

body .fluxshop-checkout .fhs-ship-fields--locked input[readonly] {
	background: var(--pc-gray-soft) !important;
	color: var(--pc-ink-muted) !important;
}

/* 안내 문구 — DL-34 빈 상태 상자 */
body .fluxshop-notice,
body .fluxshop-cart__empty,
body .fhs-account .fhs-empty {
	max-width: 640px;
	margin: var(--pc-space-7) auto 0;
	padding: var(--pc-space-7) var(--pc-space-5);
	border: var(--pc-line-width) solid var(--pc-black);
	background: var(--pc-white);
	font-size: var(--pc-fs-16);
	line-height: 1.7;
	color: var(--pc-ink);
	text-align: center;
}

body .fluxshop-notice a,
body .fluxshop-cart__empty a:not(.fluxshop-btn) {
	color: var(--pc-ink);
	font-weight: 700;
	text-decoration: underline;
}

/* ===================
   5. Sections — 상품 목록
   =================== */

/* 카테고리 탭 → pill 칩(DL-29), 선택 = 안쪽 2px + 800 */
body .fhs-cats .fhs-cat-tab span {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0 var(--pc-space-5);
	border: var(--pc-line-width) solid var(--pc-black) !important;
	border-radius: var(--pc-radius-pill);
	background: var(--pc-white);
	font-size: var(--pc-fs-15);
	font-weight: 700 !important;
	color: var(--pc-black) !important;
}

body .fhs-cats .fhs-cat-tab.is-active span,
body .fhs-cats .fhs-cat-tab input:checked + span {
	background: var(--pc-white);
	border-color: var(--pc-black) !important;
	box-shadow: inset 0 0 0 2px var(--pc-black);
	color: var(--pc-black) !important;
	font-weight: 800 !important;
}

/* 레일은 가로 스크롤(코어 overflow-x:auto) — justify-content:center 는 넘칠 때 왼쪽 칩을 잘라낸다.
   양 끝 칩에 auto 여백을 줘서 넘치지 않으면 가운데, 넘치면 처음부터 스크롤되게 한다. */
body .fhs-cats__rail {
	justify-content: flex-start;
	gap: var(--pc-space-2) var(--pc-space-3);
	padding: 2px var(--pc-space-1);
}

body .fhs-cats__rail > :first-child {
	margin-left: auto;
}

body .fhs-cats__rail > :last-child {
	margin-right: auto;
}

/* 검색 한 줄 — DL-30 검색만 pill */
body .fhs-shop .fhs-fbar__search {
	display: flex;
	align-items: center;
	height: 44px;
	border: var(--pc-line-width) solid var(--pc-black);
	border-radius: var(--pc-radius-pill) !important;
	background: var(--pc-white);
	overflow: hidden;
}

/* 입력칸은 틀 안에서 틀 높이만 — 공통 입력 규칙(min-height 48·흰 배경)이 틀보다 커져 테두리를 덮었다 */
body .fhs-shop .fhs-fbar__search input {
	flex: 1 1 auto;
	min-width: 0;
	height: 100%;
	min-height: 0;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none;
}

/* 닫힌 장바구니 서랍 — 화면 밖에 있어도 그림자가 오른쪽 끝에 번졌다(DL-07 평상시 그림자 0) */
body .fhs-cart-drawer:not(.is-open) {
	box-shadow: none;
}

/* 필터 버튼·토글 — pill 1px 검정, 검정 글자(옛 #8A8A8A 3.45:1 → 보정) */
body .fhs-shop .fhs-f__btn,
body .fhs-shop .fhs-toggle span,
body .fhs-shop .fhs-filterbar__reset,
body .fsp-filter-toggle {
	min-height: 44px;
	border: var(--pc-line-width) solid var(--pc-black) !important;
	border-radius: var(--pc-radius-pill) !important;
	background: var(--pc-white) !important;
	color: var(--pc-black) !important;
	font-weight: 700;
}

body .fhs-shop .fhs-toggle input:checked + span,
body .fsp-filter-toggle.has-filters {
	box-shadow: inset 0 0 0 2px var(--pc-black);
	border-color: var(--pc-black) !important;
	color: var(--pc-black) !important;
}

body .fsp-filter-toggle__count:not(:empty) {
	background: var(--pc-black);
}

body .fhs-shop .fhs-loop-count {
	font-size: var(--pc-fs-14);
	color: var(--pc-ink-muted);
	font-variant-numeric: tabular-nums;
}

body .fhs-shop .fhs-loop-count strong {
	color: var(--pc-black);
}

/* 안쪽 span 은 코어 #8A8A8A(3.45:1) 그대로였다 */
body .fhs-shop .fhs-loop-count span {
	color: var(--pc-ink-muted);
}

/* 그리드 — 상품 목록 PC 4열(사용자 지시 2026-09-15) / 768~1023 2열 / <768 1열 */
body .fluxshop .fluxshop-products.fluxshop-grid,
body .fhs-shop--musinsa .fhs-shop-grid,
body .fluxshop .fhs-shop-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--pc-space-8) var(--pc-space-6);
}

/* 위시리스트(fluxshop-petercat [fluxshop_wishlist]) — 상품 목록과 같은 카드 규칙(DL-25)
   옛 모습: 썸네일 비율 제각각·삭제 버튼이 반투명 흰 원/그냥 ×로 섞임·빈 상태 문구만. */
body .fluxshop.fluxshop-wishlist {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--pc-space-7) var(--pc-space-6);
	max-width: 1200px;
	margin: 0 auto;
}

body .fluxshop-wishlist .fluxshop-product-card {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: var(--pc-space-3);
	padding: 0;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

/* 썸네일이 없는 글(아티클 등)도 같은 1:1 자리를 차지하게 */
body .fluxshop-wishlist .fluxshop-product-card:not(:has(.fluxshop-product-card__image-link))::before {
	content: "";
	display: block;
	aspect-ratio: 1 / 1;
	border: var(--pc-line-width) solid var(--pc-black);
	background: var(--pc-gray-soft);
}

body .fluxshop-wishlist .fluxshop-product-card__image-link {
	display: block;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	border: var(--pc-line-width) solid var(--pc-black);
	background: var(--pc-white);
}

body .fluxshop-wishlist .fluxshop-product-card__image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 0 !important;
	transition: transform 300ms var(--pc-ease);
}

body .fluxshop-wishlist .fluxshop-product-card:hover .fluxshop-product-card__image {
	transform: scale(1.03);
}

body .fluxshop-wishlist .fluxshop-product-card__body {
	padding: 0 !important;
}

body .fluxshop-wishlist .fluxshop-product-card__name {
	margin: 0;
	font-size: var(--pc-fs-16);
	font-weight: 700;
	line-height: 1.5;
}

body .fluxshop-wishlist .fluxshop-product-card__name a {
	display: -webkit-box;
	overflow: hidden;
	color: var(--pc-black) !important;
	text-decoration: none;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

body .fluxshop-wishlist .fluxshop-product-card__name a:hover {
	text-decoration: underline;
}

body .fluxshop-wishlist .fluxshop-price--current {
	font-size: var(--pc-fs-16);
	font-weight: 700;
	color: var(--pc-black);
	font-variant-numeric: tabular-nums;
}

/* 삭제 — 44 원형, 흰 바탕 1px 검정(모든 카드 같은 모양) */
body .fluxshop-wishlist .fsp-wishlist-remove {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	top: var(--pc-space-2);
	right: var(--pc-space-2);
	width: 44px;
	height: 44px;
	border: var(--pc-line-width) solid var(--pc-black) !important;
	border-radius: 50%;
	background: var(--pc-white) !important;
	color: var(--pc-black) !important;
	font-size: 22px;
	line-height: 1;
	transition: background var(--pc-dur-fast) ease, color var(--pc-dur-fast) ease;
}

body .fluxshop-wishlist .fsp-wishlist-remove:hover,
body .fluxshop-wishlist .fsp-wishlist-remove:focus-visible {
	background: var(--pc-purple-deep) !important;
	border-color: var(--pc-purple-deep) !important;
	color: var(--pc-on-dark) !important;
}

/* 비었을 때는 테마 안내(pc-wish-empty)가 대신한다 */
body .fluxshop-wishlist .fluxshop-empty {
	display: none;
}

.pc-wish-empty__actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--pc-space-3);
	margin-top: var(--pc-space-5);
}

.pc-wish-empty__actions .pc-button {
	margin-top: 0;
}

.pc-wish-more {
	margin: var(--pc-space-8) 0 0;
	font-size: var(--pc-fs-15);
	text-align: center;
	color: var(--pc-ink-muted);
}

.pc-wish-more a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0 var(--pc-space-2);
	font-weight: 700;
	color: var(--pc-ink);
	text-decoration: underline;
}

/* 카드 — DL-25: 상자 없음, 1:1 썸네일 1px 검정, 제목 700 검정 */
body .fhs-mcard__thumb {
	aspect-ratio: 1 / 1;
	border: var(--pc-line-width) solid var(--pc-black);
	border-radius: 0 !important;
	background: var(--pc-white) !important;
}

body .fhs-mcard__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 300ms var(--pc-ease);
}

body .fhs-mcard:hover .fhs-mcard__thumb img {
	transform: scale(1.03);
}

/* 카드 위 아이콘 — DL-26: 44 원형, 흰 바탕 1px 검정, 그림자 0 */
body .fhs-mcard__actions button {
	width: 44px !important;
	height: 44px !important;
	border: var(--pc-line-width) solid var(--pc-black) !important;
	border-radius: 50% !important;
	background: var(--pc-white) !important;
	box-shadow: none !important;
	color: var(--pc-black) !important;
}

body .fhs-mcard__actions button.active svg,
body .fhs-mcard__actions button.is-active svg,
body .fhs-mcard__heart.active svg {
	fill: var(--pc-pink-sub);
	color: var(--pc-pink-sub);
}

body .fhs-mcard__body {
	padding: var(--pc-space-3) 0 0;
}

body .fhs-mcard__name {
	margin-bottom: var(--pc-space-2);
	font-size: 21px;
	font-weight: 700;
	line-height: 30px;
}

body .fhs-mcard__name a {
	color: var(--pc-black) !important;
}

body .fhs-mcard__name a:hover {
	text-decoration: underline;
}

/* 가격 — DL-27: 판매가 700 검정, 할인율 핑크, 원가 muted */
body .fhs-mcard__price {
	font-variant-numeric: tabular-nums;
}

body .fhs-mcard__cur {
	font-size: var(--pc-fs-18);
	font-weight: 700;
	color: var(--pc-black) !important;
}

body .fhs-mcard__rate,
body .fhs-mcard__discount,
body .fhs-price-discount {
	font-weight: 700;
	color: var(--pc-pink-sub-text) !important;
}

body .fhs-mcard__orig,
body .fhs-price-original,
body .fhs-mcard del {
	color: var(--pc-ink-muted) !important;
}

/* ===================
   5. Sections — 상품 상세 (구매 부품 = 10.png, DL-21~24)
   =================== */

body .fhs-pdp {
	max-width: 1280px;
	margin: 0 auto;
	padding: 76px var(--pc-space-8) var(--pc-space-9);
}

body .fhs-pdp__breadcrumb {
	margin-bottom: var(--pc-space-4);
	font-size: var(--pc-fs-14);
	color: var(--pc-ink-muted);
}

body .fhs-pdp__breadcrumb a {
	color: var(--pc-ink-muted);
}

body .fhs-gallery__stage {
	border-radius: 0 !important;
	background: var(--pc-gray-soft) !important;
}

/* 구매 박스 — 1px 회색 선, 모서리 8, 그림자 0 */
body .fhs-pdp .fhs-sidebar {
	padding: 22px 20px 20px;
	border: var(--pc-line-width) solid var(--pc-gray-line);
	border-radius: 8px;
	background: var(--pc-white);
}

body .fhs-sidebar__name {
	font-size: 21px !important;
	font-weight: 700 !important;
	line-height: 1.35;
	color: var(--pc-black) !important;
	word-break: keep-all;
}

body .fluxshop-product-detail__short-desc {
	font-size: var(--pc-fs-14);
	line-height: 1.7;
	color: var(--pc-ink-muted);
}

body .fhs-sidebar__price {
	padding: var(--pc-space-4) 0;
	border-bottom: var(--pc-line-width) solid var(--pc-gray-line);
}

body .fhs-pdp .fhs-price-current,
body .fhs-sidebar__total .fluxshop-product-detail__total-amount {
	font-size: 30px !important;
	font-weight: 700 !important;
	letter-spacing: -0.02em;
	color: var(--pc-black) !important;
	font-variant-numeric: tabular-nums;
}

body .fhs-sidebar__total {
	border-top: var(--pc-line-width) solid var(--pc-gray-line) !important;
}

body .fhs-sidebar__total .fluxshop-product-detail__total-amount {
	font-size: var(--pc-fs-24) !important;
}

/* 수량 — 44px */
body .fhs-qty-wrap {
	border: var(--pc-line-width) solid var(--pc-black) !important;
	border-radius: 0 !important;
}

body .fhs-qty-btn {
	min-width: 44px;
	min-height: 44px;
	border: 0 !important;
	background: var(--pc-white) !important;
	color: var(--pc-black) !important;
}

body .fhs-qty-wrap input {
	min-height: 44px;
	border: 0 !important;
	border-left: var(--pc-line-width) solid var(--pc-black) !important;
	border-right: var(--pc-line-width) solid var(--pc-black) !important;
	font-variant-numeric: tabular-nums;
}

/* 구매 버튼 행 — 찜(회색 44), 장바구니(회색), 구매하기(딥퍼플) : 강의 구매 박스와 같은 모양(10.png) */
body .fhs-sidebar__actions {
	gap: var(--pc-space-1) !important;
}

body .fhs-sidebar__actions .fhs-sidebar__wish {
	flex: 0 0 44px;
	width: 44px;
	height: 44px;
	border: 0 !important;
	border-radius: 4px !important;
	background: var(--pc-gray-btn) !important;
	color: var(--pc-on-dark) !important;
}

body .fhs-sidebar__actions .fhs-sidebar__wish svg {
	stroke: var(--pc-on-dark);
}

body .fhs-sidebar__actions .fhs-sidebar__wish.active,
body .fhs-sidebar__actions .fhs-sidebar__wish.active svg {
	color: var(--pc-on-dark);
	fill: var(--pc-on-dark);
}

body .fhs-sidebar__actions .fhs-sidebar__wish-count {
	color: var(--pc-on-dark);
	font-size: 11px;
}

body .fhs-sidebar__actions .fluxshop-btn--cart {
	height: 44px;
	border: 0 !important;
	border-radius: 4px !important;
	background: var(--pc-gray-btn) !important;
	color: var(--pc-on-dark) !important;
}

body .fhs-sidebar__actions .fluxshop-btn--primary,
body .fhs-pdp .fhs-sidebar__actions .fluxshop-btn--buy {
	height: 44px;
	border-radius: 4px !important;
}

/* 상세 탭 바 — 10.png: 회색 바, 활성 흰 면(DL-23) */
body .fhs-pdp-tabs__nav {
	gap: var(--pc-space-1);
	padding: 4px;
	border: 0 !important;
	border-radius: 4px;
	background: var(--pc-gray-line) !important;
}

body .fhs-pdp-tabs__btn {
	min-height: 40px;
	padding: 0 var(--pc-space-4) !important;
	border: 0 !important;
	border-radius: 4px !important;
	background: transparent !important;
	font-size: var(--pc-fs-14) !important;
	font-weight: 500 !important;
	color: var(--pc-ink) !important;
}

body .fhs-pdp-tabs__btn.is-active {
	background: var(--pc-white) !important;
	font-weight: 700 !important;
	color: var(--pc-black) !important;
	box-shadow: none !important;
}

body .fhs-pdp-tabs__btn .fhs-tab-count {
	font-weight: 700;
	color: #C2185B; /* 10.png 빨간 숫자, 회색 바 위 4.66:1 */
}

body .fhs-pdp-section__heading,
body .fhs-pdp-block__title {
	padding-bottom: var(--pc-space-3);
	border-bottom: var(--pc-line-width) solid var(--pc-gray-line);
	font-size: var(--pc-fs-20) !important;
	font-weight: 700 !important;
	color: var(--pc-black) !important;
}

body .fhs-reviews .fhs-review,
body .fhs-reviews__item {
	border-radius: 4px;
	background: var(--pc-gray-soft);
}

body .fhs-more-btn,
body .fhs-btn-sm {
	min-height: 44px;
	border: var(--pc-line-width) solid var(--pc-black) !important;
	border-radius: var(--pc-radius-pill) !important;
	background: var(--pc-white) !important;
	color: var(--pc-black) !important;
	font-weight: 700;
}

body .fhs-btn-sm--primary {
	border-color: var(--pc-purple-deep) !important;
	background: var(--pc-purple-deep) !important;
	color: var(--pc-on-dark) !important;
}

/* 모바일 하단 구매바 — DL-39: 흰 바탕, 위 1px 검정, 그림자 0 */
@media (max-width: 1024px) {
	body .fhs-pdp-mobilebar {
		border-top: var(--pc-line-width) solid var(--pc-black) !important;
		box-shadow: none !important;
	}

	body .fhs-pdp-mobilebar__wish {
		border: var(--pc-line-width) solid var(--pc-black) !important;
		border-radius: 50% !important;
		color: var(--pc-black) !important;
	}

	body .fhs-pdp-mobilebar__cart {
		border: var(--pc-line-width) solid var(--pc-black) !important;
		border-radius: var(--pc-radius-pill) !important;
		background: var(--pc-white) !important;
		color: var(--pc-black) !important;
	}

	body .fhs-pdp-mobilebar__buy {
		border: 0 !important;
		border-radius: var(--pc-radius-pill) !important;
		background: var(--pc-purple-deep) !important;
		color: var(--pc-on-dark) !important;
	}
}

/* ===================
   5. Sections — 장바구니 · 결제 · 주문 (DL-32 표 · DL-33 구획 상자)
   =================== */

body .fhs-cart2,
body .fluxshop-checkout {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

body .fhs-cart-tabs .fhs-cart-tab {
	min-height: 44px;
	border-radius: var(--pc-radius-pill);
	font-weight: 700;
	color: var(--pc-black);
}

body .fhs-cart-tabs .fhs-cart-tab.is-active {
	box-shadow: inset 0 0 0 2px var(--pc-black);
}

body .fhs-cart-row {
	border-bottom: var(--pc-line-width) solid var(--pc-gray-line);
}

body .fhs-cart-row__thumb img {
	border: var(--pc-line-width) solid var(--pc-black);
	border-radius: 0 !important;
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

body .fhs-cart-row__name {
	font-weight: 700;
	color: var(--pc-black);
}

body .fhs-cart-row__sub,
body .fhs-cart-summary__total {
	font-weight: 700;
	color: var(--pc-black);
	font-variant-numeric: tabular-nums;
}

body .fhs-cart-summary,
body .fluxshop-checkout .fhs-checkout-section,
body .fluxshop-checkout__summary {
	border: var(--pc-line-width) solid var(--pc-black) !important;
	border-radius: 0 !important;
	background: var(--pc-white) !important;
	box-shadow: none !important;
}

body .fluxshop-checkout .fhs-pg-item.active,
body .fluxshop-checkout .fhs-pay-item.active,
body .fluxshop-checkout .fhs-abk-item.is-active {
	background: var(--pc-gray-soft) !important;
	border-color: var(--pc-black) !important;
}

body .fluxshop-checkout .fhs-btn,
body .fluxshop-checkout .fluxshop-btn,
body .fluxshop-checkout .fluxshop-btn--primary {
	border-radius: var(--pc-radius-pill) !important;
}

body .fluxshop-checkout .fhs-checkout-section,
body .fluxshop-checkout__summary {
	border-radius: 0 !important;
}

body .fluxshop-checkout #fhs-coupon-toggle {
	color: var(--pc-ink) !important;
	text-decoration: underline;
}

body .fluxshop-cart__title,
body .fhs-mypage-title {
	font-size: var(--pc-fs-24) !important;
	font-weight: 700 !important;
	color: var(--pc-black) !important;
}

/* ===================
   5. Sections — FluxShop 계정(마이페이지-2 · 주문·쿠폰·포인트)
   =================== */

body .fhs-account .fhs-account__nav {
	border: var(--pc-line-width) solid var(--pc-black) !important;
	border-radius: 0 !important;
}

body .fhs-account .fhs-account__nav a {
	min-height: 44px;
	color: var(--pc-ink-body) !important;
}

body .fhs-account .fhs-account__nav a.active,
body .fhs-account .fhs-account__nav a.is-active,
body .fhs-account .fhs-account__nav a[aria-current="page"] {
	background: var(--pc-gray-soft) !important;
	color: var(--pc-black) !important;
	box-shadow: inset 3px 0 0 var(--pc-black);
}

body .fhs-account .fhs-mypage-table th,
body .fhs-account .fluxshop-table th,
body .fhs-account .fhs-table th {
	background: var(--pc-white) !important;
	color: var(--pc-black) !important;
	font-weight: 700;
	border-top: var(--pc-line-width) solid var(--pc-black);
	border-bottom: var(--pc-line-width) solid var(--pc-black);
}

body .fhs-account .fhs-mypage-table td,
body .fhs-account .fluxshop-table td,
body .fhs-account .fhs-table td {
	color: var(--pc-ink) !important;
	border-bottom: var(--pc-line-width) solid var(--pc-gray-line);
}

body .fhs-account .fhs-coupon-card,
body .fhs-account .fhs-points-balance,
body .fhs-account .fhs-deposit-balance {
	border: var(--pc-line-width) solid var(--pc-black) !important;
	border-radius: 0 !important;
}

body .fhs-account .fhs-points-label {
	color: var(--pc-ink-muted) !important;
}

body .fhs-account .fhs-points-amount {
	color: var(--pc-black) !important;
	font-variant-numeric: tabular-nums;
}

/* ===================
   6. Responsive
   =================== */

@media (max-width: 1279px) {
	body .fhs-pdp {
		padding-left: var(--pc-space-6);
		padding-right: var(--pc-space-6);
	}
}

@media (max-width: 1023px) {
	body .fluxshop.fluxshop-wishlist {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: var(--pc-space-6) var(--pc-space-4);
	}

	body .fluxshop .fluxshop-products.fluxshop-grid,
	body .fhs-shop--musinsa .fhs-shop-grid,
	body .fluxshop .fhs-shop-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--pc-space-7) var(--pc-space-5);
	}

	body .fhs-pdp {
		padding-top: var(--pc-space-5);
		padding-bottom: 120px;
	}
}

@media (max-width: 767px) {
	body .fluxshop.fluxshop-wishlist {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--pc-space-5) var(--pc-space-3);
	}

	body .fluxshop .fluxshop-products.fluxshop-grid,
	body .fhs-shop--musinsa .fhs-shop-grid,
	body .fluxshop .fhs-shop-grid {
		grid-template-columns: 1fr;
		gap: var(--pc-space-7);
	}

	body .fhs-mcard__name {
		font-size: var(--pc-fs-18);
		line-height: 1.5;
	}

	body .fhs-pdp {
		padding-left: var(--pc-space-4);
		padding-right: var(--pc-space-4);
	}
}
