.kshop-core-placeholder {
	padding: 18px 20px;
	border: 1px solid #d7dde5;
	border-radius: 8px;
	background: #f8fafc;
	color: #1f2933;
}

.kshop-core-placeholder strong {
	display: block;
	margin-bottom: 6px;
	font-size: 16px;
}

.kshop-core-placeholder p {
	margin: 0;
}

.kshop-product-detail-hero {
	padding: 96px 0 112px;
	background: #fff;
	color: #171b26;
}

body.single-product .woocommerce-notices-wrapper {
	position: fixed;
	z-index: 100001;
	top: 116px;
	right: 28px;
	width: min(420px, calc(100% - 56px));
	pointer-events: none;
}
body.admin-bar.single-product .woocommerce-notices-wrapper {
	top: 148px;
}
body.single-product .woocommerce-notices-wrapper:empty {
	display: none;
}
body.single-product .woocommerce-notices-wrapper .woocommerce-message,
body.single-product .woocommerce-notices-wrapper .woocommerce-error,
body.single-product .woocommerce-notices-wrapper .woocommerce-info {
	margin: 0 !important;
	padding: 16px 18px !important;
	border: 1px solid #dfe3e8 !important;
	border-radius: 6px !important;
	background: rgba(255, 255, 255, .98) !important;
	box-shadow: 0 18px 48px rgba(15, 18, 26, .12);
	color: #171b26 !important;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.55;
	pointer-events: auto;
}
body.single-product .woocommerce-notices-wrapper .woocommerce-message::before,
body.single-product .woocommerce-notices-wrapper .woocommerce-error::before,
body.single-product .woocommerce-notices-wrapper .woocommerce-info::before {
	display: none;
}
body.single-product .woocommerce-notices-wrapper a {
	float: right;
	margin-left: 16px;
	color: #171b26;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.kshop-product-detail-hero__inner,
.kshop-product-native-content__inner {
	width: min(1500px, calc(100% - 80px));
	margin: 0 auto;
}

.kshop-product-detail-breadcrumb {
	margin-bottom: 28px;
	color: #7b828d;
	font-size: 13px;
	font-weight: 600;
}

.kshop-product-detail-breadcrumb a {
	color: inherit;
	text-decoration: none;
}

.kshop-product-detail-layout {
	display: grid;
	grid-template-columns: minmax(0, 1.38fr) minmax(380px, 0.62fr);
	gap: clamp(44px, 6vw, 108px);
	align-items: start;
}

.kshop-product-gallery__stage {
	position: relative;
	aspect-ratio: 1.18 / 1;
	overflow: hidden;
	border-radius: 8px;
	background: #f2f3f5;
}

.kshop-product-gallery__slide,
.kshop-product-gallery__placeholder,
.kshop-product-gallery__slide img,
.kshop-product-gallery__placeholder img {
	width: 100%;
	height: 100%;
}

.kshop-product-gallery__slide img,
.kshop-product-gallery__placeholder img {
	display: block;
	object-fit: cover;
}

.kshop-product-gallery__slide.is-active {
	animation: kshop-gallery-in 0.3s ease both;
}

@keyframes kshop-gallery-in {
	from { opacity: 0.45; transform: scale(1.006); }
	to { opacity: 1; transform: scale(1); }
}

.kshop-product-detail-badge {
	position: absolute;
	top: 16px;
	left: 16px;
	padding: 8px 12px;
	border-radius: 999px;
	background: #dfff73;
	color: #171b26;
	font-size: 12px;
	font-weight: 700;
}

.kshop-product-gallery__controls {
	position: absolute;
	right: 16px;
	bottom: 16px;
	display: flex;
	gap: 8px;
}

.kshop-product-gallery__controls button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border: 1px solid rgba(17, 24, 39, .12);
	border-radius: 999px;
	background: rgba(255, 255, 255, .72);
	backdrop-filter: blur(14px);
	color: #111827;
	cursor: pointer;
	transition: background .18s ease, border-color .18s ease, transform .18s ease;
}

.kshop-product-gallery__controls button:hover,
.kshop-product-gallery__controls button:focus-visible {
	border-color: rgba(17, 24, 39, .28);
	background: rgba(255, 255, 255, .92);
	transform: translateY(-1px);
}

.kshop-product-gallery__thumbs {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 10px;
	margin-top: 12px;
}

.kshop-product-gallery__thumbs button {
	aspect-ratio: 1 / 1;
	padding: 0;
	overflow: hidden;
	border: 1px solid transparent;
	border-radius: 6px;
	background: #f2f3f5;
	cursor: pointer;
}

.kshop-product-gallery__thumbs button.is-active {
	border-color: #171b26;
}

.kshop-product-gallery__thumbs button:focus-visible {
	outline: 2px solid #171b26;
	outline-offset: 3px;
}

.kshop-product-gallery__thumbs img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.kshop-product-summary {
	position: sticky;
	top: 112px;
	min-width: 0;
}

.kshop-product-summary__eyebrow,
.kshop-product-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 14px;
	color: #7b828d;
	font-size: 13px;
	font-weight: 600;
}

.kshop-product-summary__eyebrow a {
	color: inherit;
	text-decoration: none;
}

.kshop-product-summary__eyebrow .is-stock,
.kshop-product-summary__eyebrow .is-soldout {
	padding: 5px 9px;
	border-radius: 999px;
	background: #edf8f0;
	color: #26723b;
}

.kshop-product-summary__eyebrow .is-soldout {
	background: #f3f3f3;
	color: #666;
}

.kshop-product-summary h1 {
	margin: 20px 0 0;
	color: #111;
	font-size: clamp(44px, 4.6vw, 78px);
	font-weight: 500;
	line-height: 0.98;
	letter-spacing: 0;
	word-break: keep-all;
}

.kshop-product-rating {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin-top: 20px;
	color: #555d68;
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
}

.kshop-product-rating .star-rating {
	margin: 0;
	color: #171b26;
}

.kshop-product-summary__description {
	margin-top: 24px;
	color: #555d68;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.65;
	word-break: keep-all;
}

.kshop-product-summary__description p {
	margin: 0;
}

.kshop-product-event-strip {
	display: inline-grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	gap: 10px;
	align-items: center;
	width: 100%;
	margin: 14px 0 0;
	padding: 12px 0;
	border-top: 1px solid #edf0f4;
	border-bottom: 1px solid #edf0f4;
	color: #171b26;
	text-decoration: none;
	transition: color .2s ease;
}
.kshop-product-event-strip:hover {
	color: #000;
}
.kshop-product-event-strip span {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding: 0 8px;
	border-radius: 999px;
	background: #171b26;
	color: #fff;
	font-size: 11px;
	font-weight: 500;
	white-space: nowrap;
}
.kshop-product-event-strip strong {
	overflow: hidden;
	font-size: 13px;
	font-weight: 500;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.kshop-product-event-strip i {
	color: #606b7a;
	font-size: 12px;
	transition: transform .2s ease;
}
.kshop-product-event-strip:hover i {
	transform: translateX(3px);
}

.kshop-product-event-banner {
	width: min(100% - 48px, 1500px);
	margin: 0 auto 34px;
}
.kshop-product-event-banner a {
	display: block;
	overflow: hidden;
	border-radius: 8px;
	background: #f3f5f7;
}
.kshop-product-event-banner img {
	display: block;
	width: 100%;
	height: clamp(150px, 18vw, 280px);
	object-fit: cover;
}

.kshop-product-summary__price {
	margin-top: 30px;
	color: #171b26;
	font-size: clamp(23px, 2vw, 30px);
	font-weight: 700;
}

@media (max-width: 767px) {
	.kshop-product-event-strip {
		grid-template-columns: minmax(0, 1fr) auto;
	}
	.kshop-product-event-strip span {
		grid-column: 1 / -1;
		width: fit-content;
	}
	.kshop-product-event-banner {
		width: min(100% - 28px, 1500px);
		margin-bottom: 24px;
	}
	.kshop-product-event-banner img {
		height: clamp(118px, 36vw, 190px);
	}
}

.kshop-product-summary__price del {
	margin-right: 8px;
	color: #9a9da3;
	font-size: 0.65em;
	font-weight: 500;
}

.kshop-product-summary__price ins {
	text-decoration: none;
}

.kshop-product-summary__actions {
	display: grid;
	gap: 10px;
	margin-top: 26px;
}
.kshop-stock-alert-box {
	display: grid;
	gap: 15px;
	margin-top: 12px;
	padding: 18px;
	border: 1px solid #e0e4ea;
	border-radius: 6px;
	background: #f7f8fa;
}
.kshop-stock-alert-box span,
.kshop-stock-alert-box h3,
.kshop-stock-alert-box p {
	margin: 0;
}
.kshop-stock-alert-box > div > span {
	display: block;
	margin-bottom: 5px;
	color: #7b8492;
	font-family: "Google Sans Flex", sans-serif;
	font-size: 10px;
	font-weight: 500;
	text-transform: uppercase;
}
.kshop-stock-alert-box h3 {
	color: #171b26;
	font-size: 15px;
	font-weight: 500;
}
.kshop-stock-alert-box p {
	margin-top: 5px;
	color: #707987;
	font-size: 11px;
	line-height: 1.55;
}
.kshop-stock-alert-box form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 8px;
}
.kshop-stock-alert-box input,
.kshop-stock-alert-box button {
	min-height: 46px;
	box-sizing: border-box;
	border-radius: 4px;
}
.kshop-stock-alert-box input {
	width: 100%;
	padding: 0 12px;
	border: 1px solid #d7dce3;
	background: #fff;
	color: #171b26;
}
.kshop-stock-alert-box button {
	display: inline-flex;
	gap: 8px;
	align-items: center;
	justify-content: center;
	padding: 0 16px;
	border: 1px solid #171b26;
	background: #171b26;
	color: #fff;
	font-size: 11px;
	font-weight: 500;
	cursor: pointer;
	transition: background-color .2s ease, color .2s ease;
}
.kshop-stock-alert-box button:hover {
	background: #fff;
	color: #171b26;
}
.kshop-stock-alert-success {
	display: flex;
	gap: 8px;
	align-items: center;
	color: #27683b;
	font-size: 12px;
}

.kshop-product-summary__cart form.cart {
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr) minmax(0, 1.15fr);
	gap: 10px;
	margin: 0;
}

.kshop-product-summary__cart .quantity .qty {
	width: 72px;
	height: 52px;
	border: 1px solid #dce0e6 !important;
	border-radius: 6px;
	background: #fff !important;
	color: #171b26 !important;
	font-size: 16px !important;
	font-weight: 600;
	line-height: 50px !important;
	padding: 0 !important;
	text-align: center;
}

.kshop-product-summary__cart button.single_add_to_cart_button,
.kshop-buy-now-button,
.kshop-product-quote-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	min-height: 52px;
	padding: 0 24px;
	border: 0;
	border-radius: 6px !important;
	background: #fff;
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
	transition: background .28s ease, border-color .28s ease, color .28s ease, transform .28s ease;
}

.kshop-product-summary__cart button.single_add_to_cart_button {
	border: 1px solid #171b26 !important;
	background: #fff !important;
	color: #171b26 !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	padding: 0 24px !important;
}

.kshop-product-summary__cart button.single_add_to_cart_button::after {
	display: none !important;
}

.kshop-product-quote-button {
	background: #eff1f4;
	color: #171b26;
}

.kshop-buy-now-button {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	padding: 0 24px !important;
	border: 1px solid #171b26;
	background: #171b26;
	color: #fff;
}
.kshop-buy-now-button::before {
	position: absolute;
	z-index: -1;
	inset: -2px;
	border-radius: inherit;
	background: #fff;
	content: "";
	transform: translateX(-104%);
	transition: transform .42s cubic-bezier(.65, 0, .35, 1);
}
.kshop-buy-now-button span,
.kshop-buy-now-button i {
	position: relative;
	transition: transform .32s ease, color .25s ease;
}
.kshop-buy-now-button:hover::before,
.kshop-buy-now-button:focus-visible::before {
	transform: translateX(0);
}
.kshop-buy-now-button:hover,
.kshop-buy-now-button:focus-visible {
	color: #171b26;
	transform: translateY(-1px);
}
.kshop-buy-now-button:hover span,
.kshop-buy-now-button:focus-visible span {
	transform: translateX(4px);
}
.kshop-buy-now-button:hover i,
.kshop-buy-now-button:focus-visible i {
	transform: translateX(5px);
}
.kshop-product-summary__cart button.single_add_to_cart_button:hover {
	border-color: #171b26 !important;
	background: #171b26 !important;
	color: #fff !important;
	transform: translateY(-1px);
}
.kshop-product-quote-button:hover {
	background: #171b26;
	color: #fff;
	transform: translateY(-1px);
}

.kshop-product-summary__note {
	margin: 16px 0 0;
	color: #7b828d;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.55;
	word-break: keep-all;
}

.kshop-product-benefits {
	display: grid;
	gap: 0;
	margin: 28px 0 0;
	padding: 0;
	border-top: 1px solid #e8eaee;
	list-style: none;
}

.kshop-product-benefits li {
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 47px;
	border-bottom: 1px solid #e8eaee;
	color: #3f4651;
	font-size: 14px;
	font-weight: 600;
}

.kshop-product-benefits i {
	color: #87909d;
	font-size: 12px;
}

.kshop-product-meta {
	justify-content: space-between;
	margin-top: 22px;
}

.kshop-product-meta button {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 0;
	border: 0;
	background: none;
	color: #555d68;
	font: inherit;
	cursor: pointer;
}

.kshop-product-native-content {
	padding: 112px 0;
	background: #fff;
	color: #171b26;
}

.kshop-product-description {
	width: min(100%, 1200px);
	margin: 0 auto;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.7;
	word-break: keep-all;
}

.kshop-product-description > :first-child {
	margin-top: 0;
}

.kshop-product-description > :last-child {
	margin-bottom: 0;
}

.kshop-product-description h1,
.kshop-product-description h2,
.kshop-product-description h3,
.kshop-product-description h4 {
	margin: 1.5em 0 0.55em;
	color: #171b26;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0;
	word-break: keep-all;
}

.kshop-product-description p,
.kshop-product-description ul,
.kshop-product-description ol,
.kshop-product-description figure,
.kshop-product-description blockquote {
	margin: 0 0 1.35em;
}

.kshop-product-description img,
.kshop-product-description video,
.kshop-product-description iframe {
	display: block;
	max-width: 100%;
	height: auto;
	margin-right: auto;
	margin-left: auto;
}

.kshop-product-description .alignwide {
	width: 100%;
	max-width: 100%;
}

.kshop-product-description .alignfull {
	width: 100%;
	max-width: none;
}

.kshop-product-description table {
	display: block;
	width: 100%;
	max-width: 100%;
	overflow-x: auto;
	border-collapse: collapse;
}

.kshop-product-description__empty {
	margin: 0;
	padding: 32px;
	border: 1px dashed #d7dce3;
	border-radius: 8px;
	color: #69717d;
	font-size: 14px;
	text-align: center;
}

.kshop-product-overview {
	padding: 128px 0;
	background: #f4f5f7;
	color: #171b26;
}
.kshop-product-overview__inner {
	width: min(1500px, calc(100% - 80px));
	margin: 0 auto;
}
.kshop-product-overview__head {
	display: grid;
	grid-template-columns: minmax(160px, .35fr) minmax(0, 1fr) minmax(260px, .55fr);
	align-items: start;
	gap: 36px;
	margin-bottom: 58px;
}
.kshop-product-overview__head > p {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 8px 0 0;
	font-size: 13px;
	font-weight: 500;
}
.kshop-product-overview__head > p span {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #171b26;
}
.kshop-product-overview h2 {
	margin: 0;
	font-size: clamp(48px, 6vw, 92px);
	font-weight: 500;
	line-height: .96;
	letter-spacing: 0;
	word-break: keep-all;
}
.kshop-product-overview__head > div {
	color: #626a76;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.65;
	word-break: keep-all;
}
.kshop-product-overview__media {
	aspect-ratio: 2 / 1;
	overflow: hidden;
	border-radius: 8px;
	background: #e8eaed;
}
.kshop-product-overview__media img,
.kshop-product-overview__media video,
.kshop-product-overview__placeholder {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.kshop-product-overview__items {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 28px;
	margin-top: 38px;
}
.kshop-product-overview__items article {
	padding-top: 20px;
	border-top: 1px solid #cfd3d9;
}
.kshop-product-overview__items span {
	color: #8a919c;
	font-size: 12px;
	font-weight: 500;
}
.kshop-product-overview__items h3 {
	margin: 24px 0 10px;
	font-size: 23px;
	font-weight: 500;
	line-height: 1.25;
	word-break: keep-all;
}
.kshop-product-overview__items p {
	margin: 0;
	color: #626a76;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.58;
	word-break: keep-all;
}

@media (max-width: 1100px) {
	.kshop-product-detail-hero__inner,
	.kshop-product-native-content__inner {
		width: min(100% - 44px, 920px);
	}
	.kshop-product-detail-layout {
		grid-template-columns: minmax(0, 1fr) minmax(330px, 0.72fr);
		gap: 34px;
	}
	.kshop-product-summary {
		top: 94px;
	}
	.kshop-product-overview__inner {
		width: min(100% - 44px, 920px);
	}
	.kshop-product-overview__head {
		grid-template-columns: 1fr 2fr;
	}
	.kshop-product-overview__head > div {
		grid-column: 2;
	}
}

@media (max-width: 767px) {
	.kshop-product-detail-hero {
		padding: 78px 0 72px;
	}
	.kshop-product-detail-hero__inner,
	.kshop-product-native-content__inner {
		width: calc(100% - 28px);
	}
	.kshop-product-detail-breadcrumb {
		margin-bottom: 18px;
	}
	.kshop-product-detail-layout {
		grid-template-columns: 1fr;
		gap: 28px;
	}
	.kshop-product-gallery__stage {
		aspect-ratio: 1.08 / 1;
	}
	.kshop-product-gallery__thumbs {
		display: flex;
		overflow-x: auto;
	}
	.kshop-product-gallery__thumbs button {
		flex: 0 0 64px;
	}
	.kshop-product-gallery__controls {
		right: 12px;
		bottom: 12px;
	}
	.kshop-product-gallery__controls button {
		width: 38px;
		height: 38px;
	}
	.kshop-product-summary {
		position: static;
	}
	.kshop-product-summary h1 {
		margin-top: 14px;
		font-size: clamp(38px, 12vw, 56px);
		line-height: 1.02;
	}
	.kshop-product-summary__description {
		margin-top: 18px;
		font-size: 14px;
		line-height: 1.55;
	}
	.kshop-product-summary__price {
		margin-top: 22px;
	}
	.kshop-product-summary__actions {
		margin-top: 20px;
	}
	.kshop-product-summary__cart form.cart {
		display: grid;
		grid-template-columns: 68px minmax(0, 1fr);
	}
	.kshop-product-summary__cart .quantity .qty {
		width: 68px;
	}
	.kshop-product-native-content {
		padding: 72px 0;
	}
	.kshop-product-description {
		font-size: 14px;
		line-height: 1.58;
	}
	.kshop-product-overview {
		padding: 76px 0;
	}
	.kshop-product-overview__inner {
		width: calc(100% - 28px);
	}
	.kshop-product-overview__head {
		display: block;
		margin-bottom: 30px;
	}
	.kshop-product-overview__head > p {
		margin: 0 0 18px;
	}
	.kshop-product-overview h2 {
		font-size: clamp(42px, 13vw, 58px);
		line-height: 1;
	}
	.kshop-product-overview__head > div {
		margin-top: 20px;
		font-size: 14px;
		line-height: 1.55;
	}
	.kshop-product-overview__media {
		aspect-ratio: 1.1 / 1;
	}
	.kshop-product-overview__items {
		grid-template-columns: 1fr;
		gap: 26px;
		margin-top: 30px;
	}
	.kshop-product-overview__items h3 {
		margin-top: 14px;
		font-size: 21px;
	}
}

/* Notice and event boards */
.kshop-board {
	padding: 146px 0 120px;
	background: #fff;
	color: #171b26;
}
.kshop-board-head,
.kshop-board__inner {
	width: min(1500px, calc(100% - 80px));
	margin: 0 auto;
}
.kshop-board-head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 48px;
	margin-bottom: 64px;
	padding-bottom: 42px;
	border-bottom: 1px solid #e3e7ed;
}
.kshop-board-head > div {
	max-width: 920px;
}
.kshop-board-head span,
.kshop-event-detail header > span {
	display: block;
	margin-bottom: 14px;
	color: #647084;
	font-size: 13px;
	font-weight: 500;
	text-transform: uppercase;
}
.kshop-board-head h1,
.kshop-event-detail h1 {
	margin: 0;
	color: #171b26;
	font-size: clamp(50px, 6vw, 92px);
	font-weight: 400;
	line-height: 1.02;
	letter-spacing: 0;
	word-break: keep-all;
}
.kshop-board-head p {
	max-width: 680px;
	margin: 22px 0 0;
	color: #687386;
	font-size: 16px;
	line-height: 1.7;
	word-break: keep-all;
}
.kshop-board-head > strong {
	flex: 0 0 auto;
	color: #171b26;
	font-size: clamp(42px, 5vw, 78px);
	font-weight: 400;
	line-height: 1;
}
.kshop-board-head > strong small {
	color: #8b94a3;
	font-size: 13px;
	font-weight: 500;
}
.kshop-notice-list {
	border-top: 1px solid #171b26;
}
.kshop-notice-item {
	border-bottom: 1px solid #e3e7ed;
}
.kshop-notice-item summary {
	display: grid;
	grid-template-columns: 100px minmax(0, 1fr) 110px 24px;
	gap: 22px;
	align-items: center;
	min-height: 92px;
	padding: 0 8px;
	cursor: pointer;
	list-style: none;
}
.kshop-notice-item summary::-webkit-details-marker {
	display: none;
}
.kshop-notice-item__type {
	color: #7c8696;
	font-size: 12px;
	font-weight: 500;
}
.kshop-notice-item.is-important .kshop-notice-item__type {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	min-height: 26px;
	padding: 0 10px;
	border: 1px solid #d8dee7;
	border-radius: 6px;
	background: #f4f6f8;
	color: #171b26;
}
.kshop-notice-item summary strong {
	color: #171b26;
	font-size: 17px;
	font-weight: 500;
	word-break: keep-all;
}
.kshop-notice-item time {
	color: #8b94a3;
	font-size: 12px;
	text-align: right;
}
.kshop-notice-item__toggle {
	position: relative;
	display: block;
	width: 24px;
	height: 24px;
}
.kshop-notice-item__toggle::before,
.kshop-notice-item__toggle::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 12px;
	height: 1px;
	background: #657083;
	content: "";
	transform: translate(-50%, -50%);
	transition: opacity .18s ease, background-color .18s ease;
}
.kshop-notice-item__toggle::after {
	transform: translate(-50%, -50%) rotate(90deg);
}
.kshop-notice-item summary:hover .kshop-notice-item__toggle::before,
.kshop-notice-item summary:hover .kshop-notice-item__toggle::after {
	background: #171b26;
}
.kshop-notice-item[open] .kshop-notice-item__toggle::after {
	opacity: 0;
}
.kshop-notice-item__content {
	padding: 4px 142px 38px 130px;
	color: #586477;
	font-size: 15px;
	line-height: 1.75;
}
.kshop-board-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 34px;
}
.kshop-board-tabs a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	padding: 0 17px;
	border: 1px solid #dfe4eb;
	border-radius: 999px;
	background: #fff;
	color: #677386;
	font-size: 13px;
	font-weight: 500;
	text-decoration: none;
	transition: border-color .2s ease, background-color .2s ease, color .2s ease;
}
.kshop-board-tabs a:hover,
.kshop-board-tabs a:focus-visible,
.kshop-board-tabs a.is-active {
	border-color: #171b26;
	background: #171b26;
	color: #fff;
	outline: 0;
}
.kshop-event-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 56px 24px;
}
.kshop-event-card {
	min-width: 0;
}
.kshop-event-card__media {
	display: block;
	position: relative;
	aspect-ratio: 1.35 / 1;
	overflow: hidden;
	border-radius: 8px;
	background:
		radial-gradient(circle at 30% 30%, rgba(73, 117, 255, .14), transparent 30%),
		radial-gradient(circle at 74% 70%, rgba(255, 196, 87, .18), transparent 34%),
		#edf0f4;
}
.kshop-event-card__media img,
.kshop-event-card__media > span {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .42s cubic-bezier(.16,1,.3,1);
}
.kshop-event-card:hover .kshop-event-card__media img {
	transform: scale(1.035);
}
.kshop-event-card__media b,
.kshop-event-detail header b {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 0 10px;
	border-radius: 999px;
	background: #171b26;
	color: #fff;
	font-size: 11px;
	font-weight: 500;
}
.kshop-event-card__media b {
	position: absolute;
	top: 14px;
	left: 14px;
}
.kshop-event-card__media b.is-upcoming,
.kshop-event-detail header b.is-upcoming {
	background: #edf2ff;
	color: #315bea;
}
.kshop-event-card__media b.is-ended,
.kshop-event-detail header b.is-ended {
	background: #edf0f4;
	color: #7b8594;
}
.kshop-event-card__body {
	padding-top: 18px;
}
.kshop-event-card__body time,
.kshop-event-detail time {
	color: #8791a0;
	font-size: 12px;
	font-weight: 500;
}
.kshop-event-card__body h2 {
	margin: 9px 0 0;
	font-size: clamp(20px, 1.8vw, 28px);
	font-weight: 500;
	line-height: 1.28;
	word-break: keep-all;
}
.kshop-event-card__body h2 a {
	color: #171b26;
	text-decoration: none;
}
.kshop-event-card__body p {
	margin: 12px 0 18px;
	color: #687386;
	font-size: 14px;
	line-height: 1.65;
	word-break: keep-all;
}
.kshop-event-card__body > a,
.kshop-event-detail__back {
	display: inline-flex;
	gap: 9px;
	align-items: center;
	color: #171b26;
	font-size: 13px;
	font-weight: 500;
	text-decoration: none;
}
.kshop-event-card__body > a i,
.kshop-event-detail__back i {
	font-size: 11px;
	transition: transform .2s ease;
}
.kshop-event-card__body > a:hover i,
.kshop-event-detail__back:hover i {
	transform: translateX(3px);
}
.kshop-board-empty {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 280px;
	border-top: 1px solid #e3e7ed;
	border-bottom: 1px solid #e3e7ed;
	color: #8892a1;
	font-size: 14px;
}
.kshop-event-detail__back {
	margin-bottom: 46px;
}
.kshop-event-detail header {
	max-width: 1060px;
	margin-bottom: 46px;
}
.kshop-event-detail header b {
	margin-bottom: 18px;
}
.kshop-event-detail time {
	display: block;
	margin-top: 22px;
}
.kshop-event-detail figure {
	margin: 0 0 64px;
	overflow: hidden;
	border-radius: 8px;
}
.kshop-event-detail figure img {
	display: block;
	width: 100%;
	height: auto;
}
.kshop-event-detail__content {
	max-width: 980px;
	color: #4f5b6c;
	font-size: 16px;
	line-height: 1.8;
}
@media (max-width: 1100px) {
	.kshop-board-head,
	.kshop-board__inner {
		width: min(100% - 44px, 920px);
	}
	.kshop-event-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
@media (max-width: 767px) {
	.kshop-board {
		padding: 106px 0 78px;
	}
	.kshop-board-head,
	.kshop-board__inner {
		width: calc(100% - 28px);
	}
	.kshop-board-head {
		align-items: flex-start;
		flex-direction: column;
		gap: 26px;
		margin-bottom: 34px;
		padding-bottom: 26px;
	}
	.kshop-board-head h1,
	.kshop-event-detail h1 {
		font-size: 42px;
		line-height: 1.08;
	}
	.kshop-board-head p {
		margin-top: 14px;
		font-size: 14px;
		line-height: 1.58;
	}
	.kshop-board-head > strong {
		font-size: 38px;
	}
	.kshop-notice-item summary {
		grid-template-columns: minmax(0, 1fr) 20px;
		gap: 8px 14px;
		min-height: 88px;
		padding: 14px 0;
	}
	.kshop-notice-item__type,
	.kshop-notice-item time {
		grid-column: 1;
		text-align: left;
	}
	.kshop-notice-item summary strong {
		grid-column: 1;
		font-size: 15px;
	}
	.kshop-notice-item__toggle {
		grid-column: 2;
		grid-row: 1 / 4;
	}
	.kshop-notice-item__content {
		padding: 0 28px 28px 0;
		font-size: 14px;
		line-height: 1.65;
	}
	.kshop-board-tabs {
		margin-bottom: 24px;
	}
	.kshop-board-tabs a {
		min-height: 34px;
		padding: 0 13px;
		font-size: 12px;
	}
	.kshop-event-grid {
		grid-template-columns: 1fr;
		gap: 38px;
	}
	.kshop-event-card__body h2 {
		font-size: 21px;
	}
	.kshop-event-detail__back {
		margin-bottom: 34px;
	}
	.kshop-event-detail header {
		margin-bottom: 34px;
	}
	.kshop-event-detail figure {
		margin-bottom: 36px;
	}
	.kshop-event-detail__content {
		font-size: 14px;
		line-height: 1.7;
	}
}

/* Member pages */
.kshop-member-template,
.kshop-member-header,
.kshop-member-content {
	background: #fff;
	color: #171b26;
}
.kshop-member-inner {
	width: min(1500px, calc(100% - 80px));
	margin: 0 auto;
}
.kshop-member-header {
	padding: 96px 0 44px;
}
.kshop-member-header span,
.kshop-register-benefits > span,
.kshop-account-section-head span,
.kshop-member-state > span {
	display: block;
	margin-bottom: 12px;
	color: #7b828d;
	font-size: 11px;
	font-weight: 500;
	text-transform: uppercase;
}
.kshop-member-header h1 {
	margin: 0;
	font-size: clamp(48px, 6vw, 82px);
	font-weight: 500;
	line-height: 1.08;
	letter-spacing: 0;
}
.kshop-member-header p {
	max-width: 620px;
	margin: 18px 0 0;
	color: #69717d;
	font-size: 14px;
	line-height: 1.65;
}
.kshop-member-content {
	padding: 24px 0 112px;
}
.kshop-register-layout {
	display: grid;
	grid-template-columns: minmax(280px, .72fr) minmax(480px, 1.28fr);
	gap: clamp(50px, 8vw, 140px);
	padding-top: 38px;
	border-top: 1px solid #171b26;
}
.kshop-register-benefits {
	position: sticky;
	top: 120px;
	align-self: start;
}
.kshop-register-benefits h2,
.kshop-register-form-wrap > h2,
.kshop-account-section-head h2,
.kshop-member-state h2 {
	margin: 0;
	font-size: 28px;
	font-weight: 500;
	letter-spacing: 0;
}
.kshop-register-benefits ol {
	margin: 34px 0 0;
	padding: 0;
	list-style: none;
}
.kshop-register-benefits li {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr);
	gap: 16px;
	padding: 20px 0;
	border-top: 1px solid #e2e5e9;
}
.kshop-register-benefits li b {
	color: #9ba1aa;
	font-size: 11px;
	font-weight: 500;
}
.kshop-register-benefits li p {
	margin: 0;
	font-size: 14px;
	line-height: 1.65;
}
.kshop-register-form-wrap {
	max-width: 720px;
}
.kshop-register-form {
	display: grid;
	gap: 20px;
	margin-top: 30px;
}
.kshop-register-form label {
	display: grid;
	gap: 8px;
	font-size: 12px;
	font-weight: 500;
}
.kshop-register-form label em {
	margin-left: 5px;
	color: #9ba1aa;
	font-size: 10px;
	font-style: normal;
}
.kshop-register-form input:not([type="checkbox"]) {
	width: 100%;
	min-height: 48px;
	box-sizing: border-box;
	padding: 0 14px;
	border: 1px solid #d7dce3;
	border-radius: 4px;
	background: #fff;
	font: inherit;
	transition: border-color .2s ease, box-shadow .2s ease;
}
.kshop-register-form input:focus {
	outline: 0;
	border-color: #171b26;
	box-shadow: 0 0 0 3px rgba(23, 27, 38, .07);
}
.kshop-register-form small {
	color: #8b929c;
	font-size: 10px;
	font-weight: 400;
}
.kshop-register-form__pair {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
}
.kshop-register-terms {
	display: flex !important;
	align-items: center;
	gap: 9px !important;
	padding: 18px 0;
	border-top: 1px solid #e2e5e9;
	border-bottom: 1px solid #e2e5e9;
}
.kshop-register-terms b {
	font-weight: 500;
}
.kshop-member-button {
	display: inline-flex;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	padding: 0 22px;
	border: 1px solid #171b26;
	border-radius: 4px;
	background: #fff;
	color: #171b26;
	font-size: 13px;
	font-weight: 500;
	text-decoration: none;
	cursor: pointer;
	transition: background .22s ease, color .22s ease;
}
.kshop-member-button.is-primary,
.kshop-member-button:hover {
	background: #171b26;
	color: #fff;
}
.kshop-member-button.is-primary:hover {
	background: #fff;
	color: #171b26;
}
.kshop-register-login {
	margin: 20px 0 0;
	color: #7b828d;
	font-size: 12px;
	text-align: center;
}
.kshop-register-login button {
	padding: 0;
	border: 0;
	background: transparent;
	color: #171b26;
	font: inherit;
	font-weight: 500;
	text-decoration: underline;
	text-underline-offset: 3px;
	cursor: pointer;
}
.kshop-member-success {
	display: flex;
	align-items: center;
	gap: 13px;
	margin-bottom: 24px;
	padding: 16px;
	border: 1px solid #dfe3e8;
	border-radius: 6px;
	background: #f6f8f7;
}
.kshop-member-success i {
	display: grid;
	width: 32px;
	height: 32px;
	place-items: center;
	border-radius: 50%;
	background: #171b26;
	color: #fff;
	font-size: 11px;
}
.kshop-member-success strong,
.kshop-member-success span {
	display: block;
	font-size: 12px;
}
.kshop-member-success span {
	margin-top: 3px;
	color: #7b828d;
}
.kshop-account-dashboard {
	display: grid;
	gap: 48px;
	padding-top: 0;
	border-top: 0;
}
.kshop-account-welcome {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 30px;
}
.kshop-account-welcome span,
.kshop-account-welcome p {
	color: #7b828d;
	font-size: 12px;
}
.kshop-account-welcome h2 {
	margin: 7px 0;
	font-size: 36px;
	font-weight: 500;
}
.kshop-account-welcome p {
	margin: 0;
}
.kshop-account-welcome > a,
.kshop-account-welcome > button,
.kshop-account-section-head a {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	color: #171b26;
	border: 0;
	background: transparent;
	font-family: inherit;
	font-size: 12px;
	text-decoration: none;
	cursor: pointer;
	transition: color .2s ease, transform .2s ease;
}
.kshop-account-welcome > a:hover,
.kshop-account-welcome > button:hover,
.kshop-account-section-head a:hover {
	color: #69717d;
	transform: translateX(3px);
}
.kshop-account-orders {
	padding: 32px 0;
	border-top: 1px solid #e2e5e9;
	border-bottom: 1px solid #e2e5e9;
}
.kshop-account-section-head {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 20px;
}
.kshop-order-statuses {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 30px;
}
.kshop-order-statuses a {
	display: grid;
	gap: 8px;
	color: #171b26;
	text-align: center;
	text-decoration: none;
}
.kshop-order-statuses a + a {
	border-left: 1px solid #e2e5e9;
}
.kshop-order-statuses strong {
	font-size: 32px;
	font-weight: 500;
}
.kshop-order-statuses span {
	color: #69717d;
	font-size: 12px;
}
.kshop-account-services {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	border-top: 1px solid #e2e5e9;
	border-bottom: 1px solid #e2e5e9;
}
.kshop-account-services a {
	display: grid;
	min-height: 180px;
	align-content: end;
	gap: 8px;
	padding: 24px;
	color: #171b26;
	text-decoration: none;
	transition: background .22s ease;
}
.kshop-account-services a + a {
	border-left: 1px solid #e2e5e9;
}
.kshop-account-services a:hover {
	background: #f5f6f7;
}
.kshop-account-services i {
	margin-bottom: auto;
	color: #69717d;
	font-size: 18px;
}
.kshop-account-services span {
	font-size: 16px;
	font-weight: 500;
}
.kshop-account-services b {
	color: #8b929c;
	font-size: 11px;
	font-weight: 400;
}
.kshop-account-footer {
	display: flex;
	justify-content: flex-end;
	gap: 20px;
}
.kshop-account-footer a,
.kshop-account-footer button {
	color: #69717d;
	font-size: 11px;
	text-decoration: none;
	transition: color .2s ease;
}
.kshop-account-footer a:hover,
.kshop-account-footer button:hover {
	color: #171b26;
}
.kshop-member-state {
	display: grid;
	min-height: 360px;
	place-items: center;
	align-content: center;
	gap: 14px;
	border-top: 1px solid #171b26;
	border-bottom: 1px solid #e2e5e9;
	text-align: center;
}
.kshop-member-state p {
	margin: 0 0 8px;
	color: #69717d;
	font-size: 13px;
}
.kshop-account-native {
	padding-top: 38px;
	border-top: 1px solid #171b26;
}
.kshop-account-native .woocommerce-MyAccount-navigation ul {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 34px;
	padding: 0;
	list-style: none;
}
.kshop-account-native .woocommerce-MyAccount-navigation a {
	display: inline-flex;
	min-height: 38px;
	align-items: center;
	padding: 0 14px;
	border: 1px solid #d7dce3;
	border-radius: 4px;
	color: #171b26;
	font-size: 11px;
	text-decoration: none;
}
.kshop-account-native .woocommerce-MyAccount-navigation .is-active a {
	border-color: #171b26;
	background: #171b26;
	color: #fff;
}
.kshop-account-native .woocommerce-MyAccount-content {
	float: none;
	width: 100%;
}
@media (max-width: 980px) {
	.kshop-member-inner {
		width: min(calc(100% - 44px), 920px);
	}
	.kshop-register-layout {
		grid-template-columns: 1fr;
	}
	.kshop-register-benefits {
		position: static;
	}
	.kshop-account-services {
		grid-template-columns: 1fr 1fr;
	}
	.kshop-account-services a:nth-child(3) {
		border-left: 0;
		border-top: 1px solid #e2e5e9;
	}
	.kshop-account-services a:nth-child(4) {
		border-top: 1px solid #e2e5e9;
	}
}
@media (max-width: 767px) {
	.kshop-member-inner {
		width: calc(100% - 28px);
	}
	.kshop-member-header {
		padding: 64px 0 26px;
	}
	.kshop-member-header h1 {
		font-size: 42px;
	}
	.kshop-member-content {
		padding: 16px 0 72px;
	}
	.kshop-register-layout,
	.kshop-account-dashboard {
		gap: 34px;
		padding-top: 24px;
	}
	.kshop-register-benefits h2,
	.kshop-register-form-wrap > h2,
	.kshop-account-section-head h2 {
		font-size: 22px;
	}
	.kshop-register-form__pair {
		grid-template-columns: 1fr;
	}
	.kshop-account-welcome {
		align-items: start;
		flex-direction: column;
	}
	.kshop-account-welcome h2 {
		font-size: 28px;
	}
	.kshop-order-statuses strong {
		font-size: 25px;
	}
	.kshop-account-services {
		grid-template-columns: 1fr;
	}
	.kshop-account-services a,
	.kshop-account-services a:nth-child(3),
	.kshop-account-services a:nth-child(4) {
		min-height: 120px;
		border-top: 1px solid #e2e5e9;
		border-left: 0;
	}
	.kshop-account-services a:first-child {
		border-top: 0;
	}
}

/* Cart and checkout */
.kshop-commerce-template {
	background: #fff;
	color: #171b26;
}
.kshop-commerce-inner {
	width: min(1500px, calc(100% - 80px));
	margin: 0 auto;
}
.kshop-commerce-header {
	padding: 100px 0 20px;
	background: #fff;
}
.kshop-commerce-header__row {
	display: block;
}
.kshop-commerce-header h1 {
	margin: 0;
	font-size: clamp(44px, 6vw, 82px);
	font-weight: 500;
	line-height: 1.12;
	letter-spacing: 0;
}
.kshop-cart-count {
	display: inline-grid;
	width: 26px;
	height: 26px;
	margin-left: 12px;
	place-items: center;
	border-radius: 50%;
	background: var(--kshop-brand-color, #171b26);
	color: #fff;
	font-size: 11px;
	font-weight: 600;
	vertical-align: top;
}
.kshop-commerce-header p {
	margin: 18px 0 0;
	color: #69717d;
	font-size: 14px;
}
.kshop-commerce-content {
	padding: 28px 0 112px;
	background: #fff;
}
.kshop-commerce-content .woocommerce {
	color: #171b26;
}
.kshop-commerce-content .woocommerce-info,
.kshop-commerce-content .woocommerce-message,
.kshop-commerce-content .woocommerce-error {
	margin-bottom: 32px;
	padding: 22px 24px 22px 54px !important;
	border: 1px solid #dfe3e8 !important;
	border-top: 1px solid #171b26 !important;
	border-radius: 6px !important;
	background: #fafafa !important;
	color: #171b26 !important;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.65;
	list-style: none !important;
}
.kshop-commerce-content .woocommerce-info::before,
.kshop-commerce-content .woocommerce-message::before,
.kshop-commerce-content .woocommerce-error::before {
	top: 22px;
	color: #171b26;
}
.kshop-commerce-content .woocommerce-info a,
.kshop-commerce-content .woocommerce-message a,
.kshop-commerce-content .woocommerce-error a {
	color: #171b26;
	font-weight: 600;
	text-decoration: none;
}
.kshop-commerce-content .woocommerce-error li + li {
	margin-top: 2px;
}
.kshop-commerce-content table.shop_table {
	border: 0;
	border-collapse: collapse;
	border-radius: 0;
}
.kshop-commerce-content table.shop_table th {
	padding: 14px 12px;
	border-bottom: 1px solid #cfd4da;
	color: #69717d;
	font-size: 11px;
	font-weight: 500;
	text-transform: uppercase;
}
.kshop-commerce-content table.shop_table td {
	padding: 22px 12px;
	border-top: 0;
	border-bottom: 1px solid #e2e5e9;
}
.kshop-cart-content .product-thumbnail img {
	width: 104px;
	border-radius: 6px;
	background: #f4f6f6;
}
.kshop-cart-content .product-name a {
	color: #171b26;
	font-size: 16px;
	font-weight: 600;
}
.kshop-cart-content .product-remove a {
	display: grid;
	width: 32px;
	height: 32px;
	place-items: center;
	border: 1px solid #d7dce3;
	border-radius: 50%;
	color: #69717d !important;
	font-size: 18px;
	line-height: 1;
}
.kshop-commerce-content .quantity .qty {
	min-height: 42px;
	border: 1px solid #d7dce3 !important;
	border-radius: 6px !important;
	background: #fff !important;
	color: #171b26 !important;
	font-size: 14px !important;
}
.kshop-commerce-content .coupon {
	display: flex;
	gap: 8px;
}
.kshop-commerce-content .coupon .input-text,
.kshop-checkout-content .input-text,
.kshop-checkout-content select,
.kshop-checkout-content textarea {
	min-height: 46px;
	padding: 10px 13px !important;
	border: 1px solid #d7dce3 !important;
	border-radius: 6px !important;
	background: #fff !important;
	font: inherit;
	transition: border-color .2s ease, box-shadow .2s ease;
}
.kshop-commerce-content .coupon .input-text:focus,
.kshop-checkout-content .input-text:focus,
.kshop-checkout-content select:focus,
.kshop-checkout-content textarea:focus {
	outline: 0;
	border-color: #171b26 !important;
	box-shadow: 0 0 0 3px rgba(23, 27, 38, .08);
}
.kshop-commerce-content .button,
.kshop-commerce-content a.checkout-button,
.kshop-commerce-content #place_order {
	min-height: 46px;
	padding: 0 20px !important;
	border: 1px solid #171b26 !important;
	border-radius: 6px !important;
	background: #fff !important;
	color: #171b26 !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 44px !important;
	transition: background .25s ease, color .25s ease, transform .25s ease;
}
.kshop-commerce-content .button:hover {
	background: #171b26 !important;
	color: #fff !important;
	transform: translateY(-1px);
}
.kshop-commerce-content a.checkout-button,
.kshop-commerce-content #place_order {
	width: 100%;
	background: #171b26 !important;
	color: #fff !important;
}
.kshop-commerce-content a.checkout-button:hover,
.kshop-commerce-content #place_order:hover {
	background: #fff !important;
	color: #171b26 !important;
	transform: translateY(-1px);
}
.kshop-cart-content .cart-collaterals {
	margin-top: 48px;
}
.kshop-cart-content .cart_totals {
	padding: 28px;
	border: 1px solid #dfe3e8;
	border-radius: 6px;
	background: #fff;
}
.kshop-cart-content .cart_totals h2,
.kshop-checkout-content h3 {
	margin: 0 0 22px;
	font-size: 22px;
	font-weight: 500;
	letter-spacing: 0;
}
.kshop-cart-table-head,
.kshop-cart-item {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 140px 170px 150px;
}
.kshop-cart-table-head {
	padding: 14px 0;
	border-top: 1px solid #171b26;
	border-bottom: 1px solid #dfe3e8;
	color: #7b828d;
	font-size: 11px;
}
.kshop-cart-table-head span:not(:first-child) {
	text-align: center;
}
.kshop-cart-item {
	min-height: 190px;
	border-bottom: 1px solid #dfe3e8;
}
.kshop-cart-item > div {
	padding: 26px 20px;
}
.kshop-cart-item > div + div {
	display: flex;
	align-items: center;
	justify-content: center;
	border-left: 0;
	text-align: center;
}
.kshop-cart-item__product {
	display: grid;
	grid-template-columns: 132px minmax(0, 1fr);
	gap: 22px;
	padding-left: 0 !important;
}
.kshop-cart-item__image {
	display: block;
	overflow: hidden;
	aspect-ratio: 1;
	border-radius: 6px;
	background: #f3f5f6;
}
.kshop-cart-item__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.kshop-cart-item__details {
	min-width: 0;
}
.kshop-cart-item__topline {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
}
.kshop-cart-item__name {
	color: #171b26;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.45;
}
.kshop-cart-content .woocommerce a.kshop-cart-item__remove {
	flex: 0 0 auto;
	padding: 4px;
	color: #9ba1aa !important;
	background: transparent !important;
	font-size: 13px;
	transition: color .2s ease, transform .2s ease;
}
.kshop-cart-content .woocommerce a.kshop-cart-item__remove:hover {
	color: #171b26 !important;
	transform: translateY(-1px);
}
.kshop-cart-item__meta {
	margin-top: 14px;
	padding: 12px 14px;
	border-radius: 6px;
	background: #f5f6f7;
	color: #626a75;
	font-size: 12px;
}
.kshop-cart-item__meta:empty {
	display: none;
}
.kshop-cart-item__meta dl,
.kshop-cart-item__meta p {
	margin: 0;
}
.kshop-cart-item__unit-price {
	display: flex;
	gap: 12px;
	margin-top: 18px;
	color: #171b26;
	font-size: 13px;
}
.kshop-cart-item__unit-price span {
	color: #8b929c;
}
.kshop-quantity-stepper {
	display: grid;
	grid-template-columns: 38px 46px 38px;
	align-items: center;
	width: 122px;
	overflow: hidden;
	border: 1px solid #d7dce3;
	border-radius: 8px;
	background: #fff;
	box-shadow: inset 0 0 0 1px rgba(255,255,255,.35);
}
.kshop-quantity-stepper .quantity {
	position: relative;
	display: block;
	width: 46px !important;
	min-width: 46px !important;
	height: 40px;
	margin: 0 !important;
}
.kshop-quantity-stepper .qty {
	width: 46px !important;
	height: 40px !important;
	min-height: 40px !important;
	box-sizing: border-box !important;
	padding: 0 !important;
	border: 0 !important;
	border-right: 1px solid #edf0f2 !important;
	border-left: 1px solid #edf0f2 !important;
	border-radius: 0 !important;
	background: #fff !important;
	color: #171b26 !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 40px !important;
	text-align: center;
	-webkit-text-fill-color: #171b26 !important;
	appearance: textfield;
	-moz-appearance: textfield;
	opacity: 0;
	pointer-events: none;
}
.kshop-qty-value {
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
	border-right: 1px solid #edf0f2;
	border-left: 1px solid #edf0f2;
	color: #171b26;
	font-size: 14px;
	font-weight: 500;
	line-height: 1;
	pointer-events: none;
}
.kshop-quantity-stepper .qty::-webkit-outer-spin-button,
.kshop-quantity-stepper .qty::-webkit-inner-spin-button {
	margin: 0;
	-webkit-appearance: none;
}
.kshop-qty-button {
	display: grid;
	min-width: 38px;
	height: 40px;
	place-items: center;
	padding: 0;
	border: 0;
	background: #fff;
	color: #6f7680;
	font-size: 0;
	font-weight: 500;
	cursor: pointer;
	transition: background .2s ease, color .2s ease;
}
.kshop-qty-button::before {
	color: currentColor;
	font-size: 16px;
	line-height: 1;
	content: attr(data-kshop-symbol);
}
.kshop-qty-button[data-direction="minus"]::before {
	content: "-";
}
.kshop-qty-button[data-direction="plus"]::before {
	content: "+";
}
.kshop-qty-button:hover {
	background: #f3f5f6;
	color: #171b26;
}
.kshop-cart-item__subtotal {
	flex-direction: column;
	gap: 4px;
}
.kshop-cart-item__subtotal strong {
	font-size: 18px;
	font-weight: 600;
}
.kshop-cart-item__shipping {
	flex-direction: column;
	gap: 5px;
	color: #171b26;
}
.kshop-cart-item__shipping strong {
	font-size: 12px;
	font-weight: 600;
}
.kshop-cart-item__shipping small {
	color: #9ba1aa;
	font-size: 11px;
}
.kshop-cart-mobile-label {
	display: none;
}
.kshop-cart-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 20px;
	padding: 18px 0;
	border-bottom: 1px solid #dfe3e8;
}
.kshop-cart-actions .kshop-update-cart {
	margin-left: auto !important;
}
.kshop-cart-collaterals {
	display: block;
	padding-top: 20px;
	border-top: 1px solid #171b26;
}
.kshop-cart-content .kshop-cart-summary {
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	padding: 0;
	border: 0;
	background: #fff;
}
.kshop-cart-summary__count {
	padding: 12px 0 16px;
	border-bottom: 1px solid #dfe3e8;
	color: #171b26;
	font-size: 13px;
}
.kshop-cart-summary__count strong {
	color: var(--kshop-brand-color, #f5b900);
	font-weight: 600;
}
.kshop-cart-summary__panel {
	padding: 34px 0 30px;
	border-bottom: 1px solid #171b26;
}
.kshop-cart-summary__title {
	text-align: center;
}
.kshop-cart-summary__title span {
	color: #8b929c;
	font-size: 11px;
	text-transform: uppercase;
}
.kshop-cart-summary__title h2 {
	margin: 9px 0 26px !important;
	font-size: 24px !important;
}
.kshop-cart-summary__formula {
	display: grid;
	grid-template-columns: minmax(120px, auto) 24px minmax(96px, auto) 24px minmax(120px, auto);
	align-items: start;
	justify-content: center;
	gap: 18px;
	text-align: center;
}
.kshop-cart-summary__formula div {
	display: flex;
	flex-direction: column;
	gap: 9px;
}
.kshop-cart-summary__formula strong {
	color: #171b26;
	font-size: 23px;
	font-weight: 600;
	line-height: 1;
	white-space: nowrap;
}
.kshop-cart-summary__formula strong .amount,
.kshop-cart-summary__formula strong .woocommerce-Price-currencySymbol {
	color: inherit;
	font-size: inherit;
	font-weight: inherit;
}
.kshop-cart-summary__formula .is-total strong {
	color: #171b26;
	font-size: 27px;
}
.kshop-cart-summary__formula span {
	color: #8b929c;
	font-size: 11px;
}
.kshop-cart-summary__formula i {
	padding-top: 3px;
	color: #171b26;
	font-style: normal;
	font-size: 20px;
	font-weight: 500;
}
.kshop-cart-summary__rows {
	width: min(100%, 620px);
	margin: 22px auto 0;
}
.kshop-cart-summary__rows:empty {
	display: none;
}
.kshop-cart-summary__rows div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 12px 0;
	border-top: 1px solid #edf0f2;
}
.kshop-cart-summary__rows dt,
.kshop-cart-summary__rows dd {
	margin: 0;
	font-size: 12px;
}
.kshop-cart-summary__actions {
	width: min(100%, 360px);
	margin: 28px auto 0;
}
.kshop-cart-summary .wc-proceed-to-checkout {
	width: 100%;
	margin: 0;
	padding: 0;
}
.kshop-cart-summary .checkout-button {
	margin: 0 !important;
}
.kshop-cart-continue {
	display: block;
	margin-top: 15px;
	color: #747b86;
	font-size: 12px;
	text-align: center;
	text-decoration: none;
}
.kshop-cart-continue:hover {
	color: #171b26;
	text-decoration: none;
}
.kshop-commerce-content .button::after,
.kshop-commerce-content .button::before,
.kshop-commerce-content a.checkout-button::after,
.kshop-commerce-content a.checkout-button::before,
.kshop-commerce-content #place_order::after,
.kshop-commerce-content #place_order::before {
	display: none !important;
	content: none !important;
}
.kshop-commerce-content .button,
.kshop-commerce-content a.checkout-button,
.kshop-commerce-content #place_order {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	margin: 0 !important;
	text-align: center;
}
.kshop-commerce-content .button:hover,
.kshop-commerce-content a.checkout-button:hover,
.kshop-commerce-content #place_order:hover {
	padding: 0 20px !important;
}
.kshop-empty-cart {
	display: grid;
	min-height: 380px;
	place-items: center;
	align-content: center;
	border-top: 1px solid #171b26;
	border-bottom: 1px solid #dfe3e8;
	text-align: center;
}
.kshop-empty-cart__icon {
	display: grid;
	width: 64px;
	height: 64px;
	place-items: center;
	border-radius: 50%;
	background: #f3f5f6;
	color: #a2a8b0;
	font-size: 22px;
}
.kshop-empty-cart h2 {
	margin: 20px 0 7px;
	font-size: 20px;
	font-weight: 500;
}
.kshop-empty-cart p {
	margin: 0 0 24px;
	color: #8b929c;
	font-size: 13px;
}
.kshop-empty-cart .kshop-button {
	display: inline-flex;
	align-items: center;
	gap: 16px;
	min-height: 48px;
	padding: 0 22px;
	border: 1px solid #171b26;
	border-radius: 6px;
	background: #171b26;
	color: #fff;
	font-size: 13px;
	font-weight: 600;
}
.kshop-checkout-content form.checkout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 440px);
	gap: 28px 48px;
}
.kshop-checkout-entry,
.kshop-checkout-products,
.kshop-checkout-coupons,
.kshop-checkout-customer {
	grid-column: 1;
}
.kshop-checkout-review {
	grid-column: 2;
	grid-row: 1 / span 4;
}
.kshop-checkout-entry,
.kshop-checkout-block {
	padding: 28px 0;
	border-top: 1px solid #171b26;
	background: #fff;
}
.kshop-checkout-review {
	position: sticky;
	top: 110px;
	align-self: start;
	padding: 0;
	border: 0;
	border-radius: 0;
}
.kshop-checkout-entry {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding-top: 0;
	border-top: 0;
}
.kshop-checkout-entry span,
.kshop-checkout-block > header span,
.kshop-checkout-payment > header span,
.kshop-checkout-terms > header span {
	display: inline-grid;
	width: 24px;
	height: 24px;
	place-items: center;
	border-radius: 50%;
	background: #f0f1f2;
	color: #8b929c;
	font-size: 9px;
}
.kshop-checkout-entry h2,
.kshop-checkout-block > header h2,
.kshop-checkout-payment > header h2,
.kshop-checkout-terms > header h2 {
	margin: 10px 0 0;
	font-size: 22px;
	font-weight: 500;
}
.kshop-checkout-entry p,
.kshop-checkout-block > header p {
	margin: 8px 0 0;
	color: #7b828d;
	font-size: 12px;
}
.kshop-checkout-entry__actions {
	display: flex;
	gap: 8px;
}
.kshop-checkout-entry__actions button {
	min-height: 44px;
	padding: 0 16px;
	border: 1px solid #171b26;
	border-radius: 6px;
	background: #171b26;
	color: #fff;
	font-size: 12px;
	font-weight: 600;
}
.kshop-checkout-entry__actions .is-secondary {
	background: #fff;
	color: #171b26;
}
.kshop-checkout-product-list article {
	display: grid;
	grid-template-columns: 86px minmax(0, 1fr) auto;
	align-items: center;
	gap: 18px;
	padding: 22px 0 0;
}
.kshop-checkout-product__image {
	overflow: hidden;
	aspect-ratio: 1;
	border-radius: 6px;
	background: #f3f5f6;
}
.kshop-checkout-product__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.kshop-checkout-product-list strong,
.kshop-checkout-product-list b {
	font-size: 14px;
	font-weight: 600;
}
.kshop-checkout-product-list b span {
	display: inline;
	margin: 0;
	color: inherit;
	font-size: inherit;
}
.kshop-checkout-product-list span {
	display: block;
	margin-top: 8px;
	color: #8b929c;
	font-size: 11px;
}
.kshop-checkout-coupon-list {
	display: grid;
	gap: 8px;
	margin-top: 22px;
}
.kshop-checkout-coupon-list article {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 16px;
	border: 1px solid #e2e5e9;
	border-radius: 6px;
	transition: border-color .2s ease, background-color .2s ease;
}
.kshop-checkout-coupon-list article.is-applied {
	border-color: #171b26;
	background: #f7f8f9;
}
.kshop-checkout-coupon-list strong,
.kshop-checkout-coupon-list span {
	display: block;
}
.kshop-checkout-coupon-list strong {
	color: #171b26;
	font-size: 14px;
	font-weight: 500;
}
.kshop-checkout-coupon-list span {
	margin-top: 4px;
	color: #7b828d;
	font-size: 11px;
}
.kshop-checkout-coupon-list button {
	flex: 0 0 auto;
	min-width: 64px;
	min-height: 38px;
	padding: 0 14px;
	border: 1px solid #171b26;
	border-radius: 4px;
	background: #171b26;
	color: #fff;
	font-size: 11px;
	font-weight: 500;
	cursor: pointer;
	transition: background-color .2s ease, color .2s ease;
}
.kshop-checkout-coupon-list button:hover:not(:disabled) {
	background: #fff;
	color: #171b26;
}
.kshop-checkout-coupon-list button:disabled {
	border-color: #dfe3e8;
	background: #eef0f2;
	color: #747d89;
	cursor: default;
}
.kshop-checkout-coupon-feedback {
	min-height: 18px;
	margin-top: 10px;
	color: #357a4b;
	font-size: 11px;
}
.kshop-checkout-coupon-feedback.is-error {
	color: #b42318;
}
.kshop-checkout-fields .woocommerce-billing-fields__field-wrapper,
.kshop-checkout-shipping .woocommerce-shipping-fields__field-wrapper {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	max-width: 720px;
	margin-top: 24px;
}
.kshop-checkout-content .form-row {
	width: 100%;
	margin: 0;
}
.kshop-checkout-content .form-row-wide {
	grid-column: 1 / -1;
}
.kshop-checkout-fields #billing_first_name_field,
.kshop-checkout-fields #billing_phone_field {
	grid-column: auto;
}
.kshop-checkout-fields #billing_email_field {
	grid-column: 1 / -1;
	max-width: 520px;
}
.kshop-checkout-shipping #billing_postcode_field {
	max-width: 390px;
}
.kshop-checkout-shipping #billing_address_1_field,
.kshop-checkout-shipping #billing_address_2_field {
	max-width: 720px;
}
.kshop-checkout-content .kshop-field-hidden {
	display: none !important;
}
.kshop-checkout-content .form-row label {
	display: block;
	margin-bottom: 7px;
	font-size: 12px;
	font-weight: 500;
}
.kshop-postcode-field {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: end;
	gap: 8px;
}
.kshop-postcode-field label {
	grid-column: 1 / -1;
}
.kshop-postcode-button {
	min-height: 46px;
	padding: 0 15px;
	border: 1px solid #171b26;
	border-radius: 6px;
	background: #fff;
	color: #171b26;
	font-size: 12px;
	font-weight: 600;
	cursor: pointer;
	transition: background .22s ease, color .22s ease, transform .22s ease, box-shadow .22s ease;
}
.kshop-postcode-button:hover {
	background: #171b26;
	color: #fff;
	transform: translateY(-1px);
	box-shadow: 0 10px 22px rgba(23,27,38,.12);
}
.kshop-checkout-toggle {
	display: flex;
	align-items: center;
	gap: 9px;
	margin: 22px 0 0;
	font-size: 13px;
	font-weight: 600;
}
.kshop-checkout-summary dl {
	margin: 24px 0 0;
	padding: 18px 0;
	border-top: 1px solid #dfe3e8;
	border-bottom: 1px solid #dfe3e8;
}
.kshop-checkout-summary dl div,
.kshop-checkout-summary__total {
	display: flex;
	justify-content: space-between;
	gap: 20px;
}
.kshop-checkout-summary dl div + div {
	margin-top: 12px;
}
.kshop-checkout-summary dt,
.kshop-checkout-summary dd {
	margin: 0;
	font-size: 12px;
}
.kshop-cart-summary .woocommerce-remove-coupon,
.kshop-checkout-summary .woocommerce-remove-coupon {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	margin-left: 7px;
	padding: 0 9px;
	border: 1px solid #d8dde4;
	border-radius: 999px;
	background: #fff;
	color: #69717d !important;
	font-size: 0;
	font-weight: 600;
	line-height: 1;
	text-decoration: none !important;
	vertical-align: 1px;
	transition: background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}
.kshop-cart-summary .woocommerce-remove-coupon::before,
.kshop-checkout-summary .woocommerce-remove-coupon::before {
	content: "쿠폰 제거";
	font-size: 11px;
}
.kshop-cart-summary .woocommerce-remove-coupon:hover,
.kshop-checkout-summary .woocommerce-remove-coupon:hover {
	border-color: #171b26;
	background: #171b26;
	color: #fff !important;
	transform: translateY(-1px);
}
.kshop-checkout-summary__total {
	align-items: end;
	padding-top: 20px;
}
.kshop-checkout-summary__total strong {
	font-size: 24px;
}
.kshop-checkout-payment {
	margin-top: 32px;
	padding-top: 28px;
	border: 0 !important;
	border-top: 1px solid #171b26 !important;
	border-radius: 0 !important;
	background: #fff !important;
}
.kshop-checkout-payment .payment_methods {
	margin: 20px 0 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: #fff !important;
}
.kshop-payment-empty {
	padding: 16px;
	border-radius: 6px;
	background: #f4f5f6;
	color: #737b86;
	font-size: 12px;
	line-height: 1.6;
}
.kshop-checkout-terms {
	margin-top: 28px;
	padding-top: 28px;
	border-top: 1px solid #171b26;
}
.kshop-agreement-list {
	display: grid;
	gap: 10px;
	margin-top: 20px;
}
.kshop-required-agreement {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 14px;
	border: 1px solid #dfe3e8;
	border-radius: 6px;
	background: #fff;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.5;
}
.kshop-required-agreement span {
	flex: 1 1 auto;
	min-width: 0;
}
.kshop-required-agreement input {
	margin: 0;
}
.kshop-terms-detail-button {
	flex: 0 0 auto;
	min-height: 30px;
	padding: 0 11px;
	border: 1px solid #dfe3e8;
	border-radius: 999px;
	background: #fff;
	color: #626a75;
	font-size: 11px;
	font-weight: 600;
	cursor: pointer;
	transition: border-color .2s ease, color .2s ease, background .2s ease;
}
.kshop-terms-detail-button:hover {
	border-color: #171b26;
	background: #171b26;
	color: #fff;
}
.kshop-terms-modal[hidden] {
	display: none;
}
.kshop-terms-modal {
	position: fixed;
	inset: 0;
	z-index: 1000002;
	display: grid;
	padding: 24px;
	place-items: center;
	background: rgba(23,27,38,.52);
	backdrop-filter: blur(10px);
}
.kshop-terms-modal__panel {
	position: relative;
	width: min(100%, 560px);
	max-height: min(680px, 82vh);
	overflow: auto;
	padding: 30px;
	border: 1px solid rgba(255,255,255,.7);
	border-radius: 8px;
	background: rgba(255,255,255,.94);
	box-shadow: 0 28px 90px rgba(23,27,38,.18);
}
.kshop-terms-modal__panel h3 {
	margin: 0 34px 18px 0;
	color: #171b26;
	font-size: 20px;
	font-weight: 600;
}
.kshop-terms-modal__body {
	color: #4f5762;
	font-size: 13px;
	line-height: 1.75;
}
.kshop-terms-modal__body p {
	margin: 0 0 12px;
}
.kshop-terms-modal__close {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 34px;
	height: 34px;
	border: 1px solid #dfe3e8;
	border-radius: 50%;
	background: #fff;
	color: #171b26;
	font-size: 20px;
	line-height: 1;
	cursor: pointer;
}
.kshop-checkout-terms .woocommerce-privacy-policy-text {
	margin-top: 12px;
	color: #7b828d;
	font-size: 11px;
	line-height: 1.6;
}
.kshop-checkout-payment .place-order {
	padding: 0 !important;
	margin-top: 26px;
}
.kshop-order-complete {
	display: grid;
	width: min(760px, 100%);
	margin: 0 auto;
	padding: 92px 0 120px;
	place-items: center;
	text-align: center;
}
.kshop-order-complete__icon {
	display: grid;
	width: 58px;
	height: 58px;
	place-items: center;
	border-radius: 50%;
	background: #171b26;
	color: #fff;
	font-size: 18px;
}
.kshop-order-complete__icon.is-failed {
	background: #f0f1f2;
	color: #171b26;
}
.kshop-order-complete h2 {
	margin: 24px 0 0;
	font-size: clamp(32px, 5vw, 54px);
	font-weight: 500;
	letter-spacing: 0;
}
.kshop-order-complete > p {
	margin: 16px 0 0;
	color: #737b86;
	font-size: 14px;
}
.kshop-order-complete__summary {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	width: 100%;
	margin: 48px 0 0;
	padding: 24px 0;
	border-top: 1px solid #171b26;
	border-bottom: 1px solid #dfe3e8;
}
.kshop-order-complete__summary div + div {
	border-left: 1px solid #e4e7ea;
}
.kshop-order-complete__summary dt {
	color: #8b929c;
	font-size: 10px;
}
.kshop-order-complete__summary dd {
	margin: 9px 0 0;
	font-size: 13px;
	font-weight: 600;
}
.kshop-order-complete__actions {
	display: flex;
	gap: 8px;
	margin-top: 30px;
}
.kshop-commerce-button {
	display: inline-flex;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	padding: 0 22px;
	border: 1px solid #171b26;
	border-radius: 6px;
	background: #fff;
	color: #171b26;
	font-size: 13px;
	font-weight: 600;
}
.kshop-commerce-button.is-primary {
	background: #171b26;
	color: #fff;
}
@media (max-width: 1100px) {
	.kshop-commerce-inner {
		width: min(100% - 44px, 920px);
	}
	.kshop-checkout-content form.checkout {
		display: block;
	}
	.kshop-checkout-review {
		position: static;
		margin-top: 32px;
	}
	.kshop-cart-table-head,
	.kshop-cart-item {
		grid-template-columns: minmax(0, 1fr) 130px 160px;
	}
	.kshop-cart-table-head span:last-child,
	.kshop-cart-item__shipping {
		display: none !important;
	}
}
@media (max-width: 767px) {
	.kshop-commerce-inner {
		width: calc(100% - 28px);
	}
	.kshop-commerce-header {
		padding: 70px 0 24px;
	}
	.kshop-commerce-header__row {
		display: block;
	}
	.kshop-commerce-header h1 {
		font-size: 42px;
	}
	.kshop-commerce-content {
		padding: 20px 0 72px;
	}
	.kshop-checkout-content form.checkout {
		display: block;
	}
	.kshop-checkout-entry {
		display: block;
	}
	.kshop-checkout-entry__actions {
		display: grid;
		margin-top: 20px;
	}
	.kshop-checkout-fields .woocommerce-billing-fields__field-wrapper,
	.kshop-checkout-shipping .woocommerce-shipping-fields__field-wrapper {
		grid-template-columns: 1fr;
	}
	.kshop-checkout-review {
		padding: 0 14px 18px;
	}
	.kshop-checkout-product-list article {
		grid-template-columns: 72px minmax(0, 1fr);
	}
	.kshop-checkout-product-list article b {
		grid-column: 2;
	}
	.kshop-cart-summary__rows {
		display: block;
		width: 100%;
	}
	.kshop-order-complete {
		padding: 58px 0 80px;
	}
	.kshop-order-complete__summary {
		grid-template-columns: 1fr 1fr;
		gap: 20px 0;
	}
	.kshop-order-complete__summary div + div {
		border-left: 0;
	}
	.kshop-order-complete__actions {
		display: grid;
		width: 100%;
	}
	.kshop-cart-content .cart_totals {
		padding: 18px;
	}
	.kshop-cart-count {
		width: 22px;
		height: 22px;
		margin-left: 8px;
		font-size: 10px;
	}
	.kshop-cart-table-head {
		display: none;
	}
	.kshop-cart-item {
		display: grid;
		grid-template-columns: 1fr 1fr;
		min-height: 0;
		padding: 22px 0;
	}
	.kshop-cart-item > div {
		padding: 12px 0 0;
	}
	.kshop-cart-item > div + div {
		justify-content: flex-start;
		border-left: 0;
		text-align: left;
	}
	.kshop-cart-item__product {
		grid-column: 1 / -1;
		grid-template-columns: 96px minmax(0, 1fr);
		gap: 16px;
		padding-top: 0 !important;
	}
	.kshop-cart-item__name {
		font-size: 15px;
	}
	.kshop-cart-item__meta {
		margin-top: 9px;
		padding: 9px 10px;
	}
	.kshop-cart-item__unit-price {
		margin-top: 11px;
		font-size: 12px;
	}
	.kshop-cart-item__quantity,
	.kshop-cart-item__subtotal {
		display: flex !important;
		flex-direction: column;
		align-items: flex-start !important;
		gap: 7px;
	}
	.kshop-cart-item__subtotal {
		align-items: flex-end !important;
	}
	.kshop-cart-item__subtotal strong {
		font-size: 16px;
	}
	.kshop-cart-mobile-label {
		display: block;
		color: #969da6;
		font-size: 10px;
		font-weight: 500;
	}
	.kshop-cart-actions {
		align-items: stretch;
		flex-direction: column;
	}
	.kshop-cart-actions .coupon {
		display: grid;
		grid-template-columns: 1fr auto;
	}
	.kshop-cart-actions .coupon .input-text {
		width: 100% !important;
	}
	.kshop-cart-actions .kshop-update-cart {
		width: 100%;
		margin: 0 !important;
	}
	.kshop-cart-collaterals {
		margin-top: 30px !important;
		padding-top: 34px;
	}
	.kshop-cart-content .kshop-cart-summary {
		padding: 0;
	}
	.kshop-cart-summary__title h2 {
		font-size: 20px !important;
	}
	.kshop-cart-summary__panel {
		padding: 26px 0 24px;
	}
	.kshop-cart-summary__formula {
		grid-template-columns: 1fr;
		gap: 12px;
	}
	.kshop-cart-summary__formula i {
		padding: 0;
		font-size: 16px;
	}
	.kshop-cart-summary__formula strong {
		font-size: 21px;
	}
	.kshop-cart-summary__actions {
		width: 100%;
	}
	.kshop-empty-cart {
		min-height: 310px;
	}
}

.kshop-product-community,
.kshop-product-purchase-info {
	padding: 112px 0;
	background: #fff;
	color: #171b26;
}
.kshop-product-inquiry {
	background: #f4f5f7;
}
.kshop-product-community__inner,
.kshop-product-purchase-info__inner {
	width: min(1500px, calc(100% - 80px));
	margin: 0 auto;
}
.kshop-product-community__head {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 30px;
	padding-bottom: 28px;
	border-bottom: 1px solid #d7dce3;
}
.kshop-product-community__head span,
.kshop-product-purchase-info header span {
	display: block;
	margin-bottom: 12px;
	font-size: 12px;
	font-weight: 500;
	text-transform: uppercase;
}
.kshop-product-community__head h2,
.kshop-product-purchase-info h2 {
	margin: 0;
	font-size: clamp(38px, 5vw, 72px);
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0;
	word-break: keep-all;
}
.kshop-product-community__head p {
	margin: 15px 0 0;
	color: #69717d;
	font-size: 14px;
}
.kshop-review-score {
	display: grid;
	text-align: right;
}
.kshop-review-score strong {
	font-size: 48px;
	font-weight: 500;
	line-height: 1;
}
.kshop-review-score span,
.kshop-product-community__head > strong {
	margin-top: 8px;
	color: #69717d;
	font-size: 13px;
	font-weight: 500;
}
.kshop-community-layout {
	display: grid;
	grid-template-columns: minmax(0, 1.65fr) minmax(320px, .65fr);
	gap: 64px;
	margin-top: 38px;
}
.kshop-community-item {
	padding: 26px 0;
	border-bottom: 1px solid #e1e4e9;
}
.kshop-community-item:first-child {
	padding-top: 0;
}
.kshop-community-item__meta {
	display: flex;
	justify-content: space-between;
	gap: 20px;
}
.kshop-community-item__meta strong,
.kshop-community-item__meta span {
	font-size: 13px;
	font-weight: 500;
}
.kshop-community-item__meta span {
	color: #69717d;
}
.kshop-community-item p {
	margin: 16px 0 0;
	color: #424955;
	font-size: 15px;
	line-height: 1.7;
	word-break: keep-all;
}
.kshop-community-empty {
	padding: 42px 0;
	color: #69717d;
	border-bottom: 1px solid #e1e4e9;
}
.kshop-community-form {
	align-self: start;
	padding: 28px;
	border: 1px solid #dde1e7;
	border-radius: 8px;
	background: #fff;
}
.kshop-community-form h3 {
	margin: 0 0 22px;
	font-size: 20px;
	font-weight: 500;
}
.kshop-data-form {
	display: grid;
	gap: 14px;
}
.kshop-data-form label {
	display: grid;
	gap: 7px;
	font-size: 12px;
	font-weight: 500;
}
.kshop-data-form input,
.kshop-data-form select,
.kshop-data-form textarea {
	width: 100%;
	box-sizing: border-box;
	padding: 11px 12px;
	border: 1px solid #d7dce3;
	border-radius: 6px;
	background: #fff;
	font: inherit;
	transition: border-color .2s ease, box-shadow .2s ease;
}
.kshop-data-form input:focus,
.kshop-data-form select:focus,
.kshop-data-form textarea:focus {
	outline: 0;
	border-color: #171b26;
	box-shadow: 0 0 0 3px rgba(23, 27, 38, .08);
}
.kshop-data-form button {
	min-height: 46px;
	border: 0;
	border-radius: 4px;
	background: #171b26;
	color: #fff;
	font-weight: 500;
	cursor: pointer;
	transition: background .2s ease, transform .2s ease;
}
.kshop-data-form button:hover {
	background: #303642;
	transform: translateY(-1px);
}
.kshop-data-form .kshop-check-label {
	display: flex;
	align-items: center;
	gap: 8px;
}
.kshop-data-form .kshop-check-label input {
	width: auto;
}
.kshop-honeypot {
	position: absolute !important;
	left: -9999px !important;
}
.kshop-form-success,
.kshop-inquiry-answer {
	padding: 15px 18px;
	border-radius: 4px;
	background: #eaf6ee;
	color: #195c31;
}
.kshop-inquiry-answer {
	margin-top: 18px;
}
.kshop-inquiry-answer p {
	margin: 8px 0 0;
}
.kshop-product-purchase-info {
	background: #171b26;
	color: #fff;
}
.kshop-product-purchase-info header {
	margin-bottom: 42px;
}
.kshop-purchase-info-list {
	border-top: 1px solid #3b414b;
}
.kshop-purchase-info-list details {
	border-bottom: 1px solid #3b414b;
}
.kshop-purchase-info-list summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 25px 0;
	list-style: none;
	cursor: pointer;
}
.kshop-purchase-info-list summary::-webkit-details-marker {
	display: none;
}
.kshop-purchase-info-list summary span {
	display: flex;
	align-items: center;
	gap: 14px;
	font-size: 17px;
	font-weight: 500;
}
.kshop-purchase-info-list details[open] summary > i {
	transform: rotate(45deg);
}
.kshop-purchase-info-list details > div {
	max-width: 820px;
	padding: 0 0 28px 31px;
	color: #b9c0ca;
	font-size: 14px;
	line-height: 1.75;
	word-break: keep-all;
}

@media (max-width: 1100px) {
	.kshop-product-community__inner,
	.kshop-product-purchase-info__inner {
		width: min(100% - 44px, 920px);
	}
	.kshop-community-layout {
		gap: 32px;
	}
}

@media (max-width: 767px) {
	.kshop-product-community,
	.kshop-product-purchase-info {
		padding: 72px 0;
	}
	.kshop-product-community__inner,
	.kshop-product-purchase-info__inner {
		width: calc(100% - 28px);
	}
	.kshop-product-community__head {
		display: block;
	}
	.kshop-review-score {
		margin-top: 24px;
		text-align: left;
	}
	.kshop-review-score strong {
		font-size: 38px;
	}
	.kshop-community-layout {
		grid-template-columns: 1fr;
		margin-top: 28px;
	}
	.kshop-community-item__meta {
		display: grid;
		gap: 7px;
	}
	.kshop-community-form {
		padding: 20px;
	}
}

/* Product detail commerce system */
.kshop-product-detail-template > section,
.kshop-product-detail-template .kshop-product-native-content,
.kshop-product-community,
.kshop-product-inquiry,
.kshop-product-purchase-info {
	background: #fff;
	color: #171b26;
	border-top: 1px solid #e2e5e9;
}
.kshop-product-detail-template > section:first-child {
	border-top: 0;
}
.kshop-product-purchase-info .kshop-purchase-info-list {
	border-top-color: #dfe3e8;
}
.kshop-product-purchase-info .kshop-purchase-info-list details {
	border-bottom-color: #dfe3e8;
}
.kshop-product-purchase-info .kshop-purchase-info-list details > div {
	color: #5f6772;
}
.kshop-community-form {
	box-shadow: 0 18px 50px rgba(23, 27, 38, .06);
}
.kshop-community-form > p {
	margin: -12px 0 22px;
	color: #69717d;
	font-size: 13px;
	line-height: 1.6;
}
.kshop-community-item__meta strong {
	display: flex;
	align-items: center;
	gap: 8px;
}
.kshop-community-item__meta strong em {
	padding: 3px 7px;
	border-radius: 3px;
	background: #edf6f0;
	color: #28643b;
	font-size: 10px;
	font-style: normal;
}
.kshop-community-item__meta b {
	color: #171b26;
	font-size: 11px;
	letter-spacing: 2px;
}
.kshop-form-notice {
	margin: 22px 0 0;
	padding: 15px 18px;
	border: 1px solid #e2e5e9;
	background: #fff;
	color: #424955;
}
.kshop-form-user {
	margin: 0 !important;
	padding: 12px 14px;
	background: #f5f6f7;
	color: #424955;
	font-size: 13px;
}
.kshop-rating-field {
	margin: 0;
	padding: 0;
	border: 0;
}
.kshop-rating-field legend {
	margin-bottom: 8px;
	font-size: 12px;
	font-weight: 500;
}
.kshop-rating-field > div {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 4px;
}
.kshop-rating-field label {
	display: block;
}
.kshop-rating-field input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}
.kshop-rating-field span {
	display: grid;
	min-height: 38px;
	place-items: center;
	border: 1px solid #d7dce3;
	border-radius: 4px;
	font-size: 11px;
	cursor: pointer;
}
.kshop-rating-field input:checked + span,
.kshop-rating-field span:hover {
	border-color: #171b26;
	background: #171b26;
	color: #fff;
}
.kshop-auth-required-button {
	width: 100%;
	min-height: 48px;
	border: 0;
	border-radius: 4px;
	background: #171b26;
	color: #fff;
	font-weight: 500;
	cursor: pointer;
}
body.kshop-modal-open {
	overflow: hidden;
}
.kshop-search-modal[hidden] {
	display: none;
}
.kshop-search-modal {
	position: fixed;
	inset: 0;
	z-index: 100050;
	display: grid;
	place-items: center;
	padding: 34px;
	box-sizing: border-box;
}
.kshop-search-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(248, 249, 251, .86);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
	opacity: 0;
	transition: opacity .24s ease;
}
.kshop-search-modal__panel {
	position: relative;
	z-index: 1;
	width: min(740px, 100%);
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	opacity: 0;
	transform: translateY(16px);
	transition: opacity .24s ease, transform .28s cubic-bezier(.16, 1, .3, 1);
}
.kshop-search-modal.is-open .kshop-search-modal__backdrop,
.kshop-search-modal.is-open .kshop-search-modal__panel {
	opacity: 1;
}
.kshop-search-modal.is-open .kshop-search-modal__panel {
	transform: translateY(0);
}
.kshop-search-modal__close {
	position: absolute;
	top: -78px;
	right: 0;
	display: grid;
	width: 42px;
	height: 42px;
	border: 1px solid rgba(23, 27, 38, .12);
	border-radius: 50%;
	background: rgba(255, 255, 255, .68);
	color: #171b26;
	place-items: center;
	cursor: pointer;
	transition: background .2s ease, border-color .2s ease;
}
.kshop-search-modal__close:hover,
.kshop-search-modal__close:focus-visible {
	border-color: rgba(23, 27, 38, .32);
	background: #fff;
}
.kshop-search-modal__form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 54px;
	gap: 0;
	align-items: end;
	border-bottom: 1px solid rgba(23, 27, 38, .55);
}
.kshop-search-modal__form label,
.kshop-search-modal__form input {
	min-width: 0;
}
.kshop-search-modal__form input {
	width: 100%;
	height: 64px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-sizing: border-box;
	color: #171b26;
	font-size: clamp(22px, 3vw, 28px);
	font-weight: 400;
	outline: none;
}
.kshop-search-modal__form input::-webkit-search-cancel-button,
.kshop-search-modal__form input::-webkit-search-decoration,
.kshop-product-search-header__form input::-webkit-search-decoration,
.kshop-product-search-header__form input::-webkit-search-cancel-button {
	display: none;
	-webkit-appearance: none;
}
.kshop-search-modal__form input::placeholder {
	color: rgba(23, 27, 38, .56);
	opacity: 1;
}
.kshop-search-modal__form input:focus {
	box-shadow: none;
}
.kshop-search-modal__form button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 64px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #171b26;
	font-size: 27px;
	cursor: pointer;
	transition: color .2s ease, transform .2s ease;
}
.kshop-search-modal__form button:hover,
.kshop-search-modal__form button:focus-visible {
	color: rgba(23, 27, 38, .68);
	transform: translateX(2px);
}
.kshop-login-modal[hidden] {
	display: none;
}
.kshop-login-modal {
	position: fixed;
	z-index: 1000001;
	inset: 0;
	display: grid;
	place-items: center;
	padding: 18px;
}
.kshop-login-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(16, 19, 26, .42);
	backdrop-filter: blur(10px);
	opacity: 0;
	transition: opacity .22s ease;
}
.kshop-login-modal__panel {
	position: relative;
	width: min(100%, 430px);
	max-height: calc(100vh - 36px);
	overflow: auto;
	padding: 36px;
	border: 1px solid rgba(255, 255, 255, .8);
	border-radius: 8px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 30px 100px rgba(15, 18, 26, .18);
	opacity: 0;
	transform: translateY(14px) scale(.98);
	transition: opacity .22s ease, transform .22s ease;
}
.kshop-login-modal.is-open .kshop-login-modal__backdrop,
.kshop-login-modal.is-open .kshop-login-modal__panel {
	opacity: 1;
}
.kshop-login-modal.is-open .kshop-login-modal__panel {
	transform: translateY(0) scale(1);
}
.kshop-login-modal__close {
	position: absolute;
	top: 16px;
	right: 16px;
	width: 36px;
	height: 36px;
	border: 0;
	background: transparent;
	font-size: 18px;
	cursor: pointer;
}
.kshop-login-modal header span {
	display: block;
	margin-bottom: 10px;
	color: #69717d;
	font-size: 11px;
	font-weight: 500;
	text-transform: uppercase;
}
.kshop-login-modal h2 {
	margin: 0;
	font-size: 28px;
	font-weight: 500;
	letter-spacing: 0;
}
.kshop-login-modal header p {
	margin: 12px 0 24px;
	color: #69717d;
	font-size: 13px;
	line-height: 1.65;
}
.kshop-login-modal__form {
	display: grid;
	gap: 13px;
}
.kshop-login-modal__form label {
	display: grid;
	gap: 7px;
	font-size: 12px;
	font-weight: 500;
}
.kshop-login-modal__form input[type="text"],
.kshop-login-modal__form input[type="email"],
.kshop-login-modal__form input[type="password"] {
	min-height: 46px;
	padding: 0 13px;
	border: 1px solid #d7dce3;
	border-radius: 4px;
	background: #fff;
	font: inherit;
}
.kshop-login-modal__remember {
	display: flex !important;
	align-items: center;
	grid-template-columns: auto 1fr;
}
.kshop-login-modal__message {
	min-height: 18px;
	margin: 0;
	color: #b53a3a;
	font-size: 12px;
}
.kshop-login-modal__form button[type="submit"] {
	min-height: 48px;
	border: 0;
	border-radius: 4px;
	background: #171b26;
	color: #fff;
	font-weight: 500;
	cursor: pointer;
}
.kshop-login-modal__social {
	margin-top: 26px;
	padding-top: 22px;
	border-top: 1px solid #e2e5e9;
	text-align: center;
}
.kshop-login-modal__social > span,
.kshop-login-modal__social small {
	display: block;
	color: #69717d;
	font-size: 11px;
}
.kshop-login-modal__social div,
.kshop-social-login {
	display: flex;
	justify-content: center;
	gap: 8px;
	margin: 12px 0 9px;
}
.kshop-login-modal__social button,
.kshop-social-login a {
	width: 40px;
	height: 40px;
	border: 1px solid #d7dce3;
	border-radius: 50%;
	background: #f5f6f7;
	color: #8a919b;
}
.kshop-social-login a,
.kshop-social-login button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.kshop-social-login a:hover,
.kshop-social-login a:focus-visible {
	border-color: #171b26;
	box-shadow: 0 10px 24px rgba(17, 24, 39, .12);
	transform: translateY(-1px);
}
.kshop-social-login .is-naver:not(:disabled) {
	border-color: #03c75a;
	background: #03c75a;
	color: #fff;
}
.kshop-social-login .is-kakao:not(:disabled) {
	border-color: #fee500;
	background: #fee500;
	color: #191600;
}
.kshop-social-login .is-google:not(:disabled) {
	border-color: #d7dce3;
	background: #fff;
	color: #171b26;
}
.kshop-login-modal footer {
	display: grid;
	gap: 10px;
	margin-top: 20px;
	text-align: center;
}
.kshop-login-modal footer a {
	color: #424955;
	font-size: 12px;
	text-decoration: none;
}
.kshop-login-modal footer a:hover {
	color: #171b26;
}
.kshop-login-modal__guest {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	border: 1px solid #171b26;
	border-radius: 6px;
	color: #171b26 !important;
	font-weight: 600;
	transition: background .22s ease, color .22s ease, transform .22s ease;
}
[data-kshop-login-guest][hidden],
.kshop-login-modal:not(.has-guest-checkout) .kshop-login-modal__guest {
	display: none !important;
}
.kshop-login-modal__guest:hover {
	background: #171b26;
	color: #fff !important;
	transform: translateY(-1px);
}

.kshop-product-section-label {
	display: inline-flex !important;
	overflow: visible !important;
	box-sizing: border-box;
	align-items: center;
	gap: 8px;
	width: fit-content;
	min-height: 27px;
	margin-bottom: 16px !important;
	padding: 6px 11px;
	border: 1px solid #cfd4da;
	border-radius: 999px;
	background: #fff;
	color: #4f5762;
	font-size: 11px !important;
	font-weight: 500;
	line-height: 1.2;
	text-transform: none !important;
	white-space: nowrap;
}
.kshop-product-section-label i {
	flex: 0 0 auto;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #171b26;
}
.kshop-community-head-actions {
	display: flex;
	align-items: end;
	gap: 24px;
}
.kshop-community-head-actions > strong {
	color: #69717d;
	font-size: 13px;
	font-weight: 500;
	white-space: nowrap;
}
.kshop-community-write-button {
	min-height: 44px;
	padding: 0 18px;
	border: 1px solid #171b26;
	border-radius: 4px;
	background: #171b26;
	color: #fff;
	font-size: 13px;
	font-weight: 500;
	cursor: pointer;
	white-space: nowrap;
}
.kshop-community-write-button.is-disabled {
	border-color: #d7dce3;
	background: #f1f3f5;
	color: #9aa1aa;
	cursor: not-allowed;
}
.kshop-product-community .kshop-community-list {
	margin-top: 32px;
}
.kshop-product-community .kshop-community-item {
	padding: 26px 0;
}
.kshop-inquiry-list {
	border-top: 0;
}
.kshop-inquiry-item {
	border-bottom: 1px solid #e1e4e9;
}
.kshop-inquiry-item summary {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 24px;
	padding: 24px 0;
	list-style: none;
	cursor: pointer;
}
.kshop-inquiry-item summary::-webkit-details-marker {
	display: none;
}
.kshop-inquiry-item__title {
	display: flex;
	align-items: center;
	gap: 9px;
	min-width: 0;
	font-size: 15px;
	font-weight: 500;
	word-break: keep-all;
}
.kshop-inquiry-item__title i {
	color: #8a919b;
	font-size: 11px;
}
.kshop-inquiry-item__meta {
	display: flex;
	align-items: center;
	gap: 16px;
	color: #8a919b;
	font-size: 12px;
	white-space: nowrap;
}
.kshop-inquiry-item__meta em {
	padding: 5px 8px;
	border-radius: 3px;
	background: #f1f3f5;
	color: #69717d;
	font-style: normal;
	font-weight: 500;
}
.kshop-inquiry-item__meta em.is-answered {
	background: #edf6f0;
	color: #28643b;
}
.kshop-inquiry-item__meta > i {
	transition: transform .2s ease;
}
.kshop-inquiry-item[open] .kshop-inquiry-item__meta > i {
	transform: rotate(180deg);
}
.kshop-inquiry-item__body {
	display: grid;
	gap: 18px;
	padding: 4px 0 28px;
}
.kshop-inquiry-item__body > div {
	padding: 8px 0 4px;
	background: #fff;
}
.kshop-inquiry-item__body strong {
	font-size: 12px;
	font-weight: 600;
}
.kshop-inquiry-item__body p {
	margin: 10px 0 0;
	color: #424955;
	font-size: 14px;
	line-height: 1.75;
}
.kshop-inquiry-item__body .kshop-inquiry-answer {
	position: relative;
	margin: 8px 0 0 34px;
	padding: 8px 0 4px 28px;
	border: 0;
	border-radius: 0;
	background: #fff;
	color: #171b26;
}
.kshop-inquiry-item__body .kshop-inquiry-answer::before {
	position: absolute;
	top: 5px;
	left: 0;
	width: 15px;
	height: 18px;
	border-bottom: 2px solid #171b26;
	border-left: 2px solid #171b26;
	content: "";
}
.kshop-review-upload {
	position: relative;
}
.kshop-review-upload small {
	color: #8a919b;
	font-size: 10px;
	font-weight: 400;
}
.kshop-review-upload input {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
}
.kshop-review-upload__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 44px;
	border: 1px dashed #aeb5bf;
	border-radius: 6px;
	background: #fff;
	color: #424955;
	cursor: pointer;
}
.kshop-review-upload__preview,
.kshop-review-photos {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
.kshop-review-upload__preview:empty {
	display: none;
}
.kshop-review-upload__preview span,
.kshop-review-photos a {
	position: relative;
	display: block;
	width: 72px;
	aspect-ratio: 1;
	overflow: hidden;
	border: 1px solid #e1e4e9;
	border-radius: 6px;
	background: #f5f6f7;
}
.kshop-review-upload__preview img,
.kshop-review-photos img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.kshop-review-upload__remove {
	position: absolute;
	top: 4px;
	right: 4px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	min-height: 0;
	padding: 0;
	border: 1px solid rgba(255, 255, 255, .75);
	border-radius: 999px;
	background: rgba(17, 24, 39, .82);
	color: #fff;
	font-size: 11px;
	line-height: 1;
	box-shadow: 0 6px 14px rgba(15, 23, 42, .18);
}
.kshop-review-upload__remove:hover {
	background: #111827;
	transform: none;
}
.kshop-review-photos {
	margin-top: 18px;
}
.kshop-composer-modal[hidden] {
	display: none;
}
.kshop-composer-modal {
	position: fixed;
	z-index: 1000000;
	inset: 0;
	display: grid;
	place-items: center;
	padding: 18px;
}
.kshop-composer-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(16, 19, 26, .42);
	backdrop-filter: blur(10px);
	opacity: 0;
	transition: opacity .22s ease;
}
.kshop-composer-modal__panel {
	position: relative;
	width: min(100%, 520px);
	box-sizing: border-box;
	max-height: calc(100vh - 36px);
	overflow-x: hidden;
	overflow-y: auto;
	padding: 34px;
	border: 1px solid rgba(255, 255, 255, .8);
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 30px 100px rgba(15, 18, 26, .18);
	opacity: 0;
	transform: translateY(14px) scale(.98);
	transition: opacity .22s ease, transform .22s ease;
}
.kshop-composer-modal.is-open .kshop-composer-modal__backdrop,
.kshop-composer-modal.is-open .kshop-composer-modal__panel {
	opacity: 1;
}
.kshop-composer-modal.is-open .kshop-composer-modal__panel {
	transform: translateY(0) scale(1);
}
.kshop-composer-modal__close {
	position: absolute;
	top: 16px;
	right: 16px;
	width: 36px;
	height: 36px;
	border: 0;
	background: transparent;
	font-size: 18px;
	cursor: pointer;
}
.kshop-composer-modal__panel > header {
	padding-right: 38px;
}
.kshop-composer-modal__panel > header span {
	display: block;
	margin-bottom: 8px;
	color: #7b8492;
	font-size: 10px;
	font-weight: 500;
	letter-spacing: 0;
}
.kshop-composer-modal__panel > header h3 {
	margin: 0;
	font-size: 26px;
	font-weight: 500;
}
.kshop-composer-modal__panel > header p {
	margin: 10px 0 24px;
	color: #69717d;
	font-size: 13px;
}
.kshop-composer-modal .kshop-community-form {
	padding: 0;
	border: 0;
	box-shadow: none;
}
.kshop-form-help {
	margin: -4px 0 0;
	color: #8a929e;
	font-size: 12px;
	line-height: 1.55;
}
.kshop-composer-restriction {
	margin: 0;
	padding: 18px;
	background: #f5f6f7;
	color: #69717d;
	font-size: 13px;
	line-height: 1.65;
}
@media (max-width: 767px) {
	body.single-product .woocommerce-notices-wrapper,
	body.admin-bar.single-product .woocommerce-notices-wrapper {
		top: 82px;
		right: 14px;
		width: calc(100% - 28px);
	}
	.kshop-login-modal {
		align-items: end;
		padding: 0;
	}
	.kshop-login-modal__panel {
		width: 100%;
		max-height: 92vh;
		padding: 30px 20px calc(24px + env(safe-area-inset-bottom));
		border-radius: 8px 8px 0 0;
		transform: translateY(30px);
	}
	.kshop-product-community,
	.kshop-product-purchase-info {
		padding: 62px 0;
	}
	.kshop-product-community__head h2,
	.kshop-product-purchase-info h2 {
		font-size: 34px;
	}
	.kshop-community-head-actions {
		align-items: center;
		justify-content: space-between;
		margin-top: 24px;
	}
	.kshop-review-score {
		margin-top: 0;
	}
	.kshop-community-write-button {
		min-height: 42px;
		padding: 0 14px;
	}
	.kshop-inquiry-item summary {
		grid-template-columns: 1fr;
		gap: 10px;
		padding: 20px 0;
	}
	.kshop-inquiry-item__meta {
		justify-content: space-between;
	}
	.kshop-composer-modal {
		align-items: end;
		padding: 0;
	}
	.kshop-composer-modal__panel {
		width: 100%;
		box-sizing: border-box;
		max-height: 92vh;
		overflow-x: hidden;
		padding: 28px 18px calc(22px + env(safe-area-inset-bottom));
		border-radius: 8px 8px 0 0;
		transform: translateY(30px);
	}
	.kshop-rating-field > div {
		grid-template-columns: 1fr;
	}
	.kshop-product-summary__cart form.cart {
		grid-template-columns: 62px minmax(0, 1fr);
	}
	.kshop-buy-now-button {
		grid-column: 1 / -1;
	}
	.kshop-inquiry-item__body .kshop-inquiry-answer {
		margin-left: 18px;
		padding-left: 24px;
	}
}

/* Final commerce overrides. */
body.single-product .woocommerce-notices-wrapper .woocommerce-message,
body.single-product .woocommerce-notices-wrapper .woocommerce-error,
body.single-product .woocommerce-notices-wrapper .woocommerce-info {
	position: relative;
	display: block;
	min-height: 62px;
	padding: 20px 118px 16px 18px !important;
	border-color: rgba(215, 220, 227, .82) !important;
	background: rgba(255, 255, 255, .76) !important;
	box-shadow: 0 12px 32px rgba(15, 18, 26, .09) !important;
	-webkit-backdrop-filter: blur(18px) saturate(135%);
	backdrop-filter: blur(18px) saturate(135%);
}
body.single-product .woocommerce-notices-wrapper .woocommerce-message::before,
body.single-product .woocommerce-notices-wrapper .woocommerce-error::before,
body.single-product .woocommerce-notices-wrapper .woocommerce-info::before {
	display: none;
	content: none;
}
body.single-product .woocommerce-notices-wrapper a.button.wc-forward {
	position: absolute;
	top: 14px;
	right: 14px;
	float: none;
	min-height: 34px;
	margin: 0 !important;
	padding: 0 13px !important;
	border: 1px solid #171b26 !important;
	border-radius: 4px !important;
	background: #171b26 !important;
	color: #fff !important;
	font-size: 11px !important;
	font-weight: 500 !important;
	line-height: 32px !important;
	text-decoration: none;
	white-space: nowrap;
	transition: background .2s ease, color .2s ease, box-shadow .2s ease;
}
body.single-product .woocommerce-notices-wrapper a.button.wc-forward:hover {
	padding: 0 13px !important;
	background: #fff !important;
	color: #171b26 !important;
	box-shadow: 0 6px 16px rgba(15, 18, 26, .1);
	transform: none;
}
body.single-product .woocommerce-notices-wrapper a.button.wc-forward::before,
body.single-product .woocommerce-notices-wrapper a.button.wc-forward::after,
body.single-product .woocommerce-notices-wrapper a.button.wc-forward:hover::before,
body.single-product .woocommerce-notices-wrapper a.button.wc-forward:hover::after {
	display: none !important;
	margin: 0 !important;
	content: none !important;
	opacity: 0 !important;
}
.kshop-commerce-content .woocommerce-info,
.kshop-commerce-content .woocommerce-message,
.kshop-commerce-content .woocommerce-error {
	position: relative;
	padding: 18px 22px 18px 52px !important;
	border: 1px solid #dfe3e8 !important;
	background: #fff !important;
	box-shadow: 0 12px 36px rgba(15, 18, 26, .06);
}
.kshop-commerce-content .woocommerce-info::before,
.kshop-commerce-content .woocommerce-message::before,
.kshop-commerce-content .woocommerce-error::before {
	display: grid;
	top: 50%;
	left: 18px;
	width: 24px;
	height: 24px;
	margin-top: -12px;
	place-items: center;
	border-radius: 50%;
	background: #f3f5f6;
	color: #171b26;
	font-family: inherit;
	font-size: 11px;
	line-height: 24px;
	text-align: center;
	content: "✓";
}
.kshop-cart-table-head,
.kshop-cart-item {
	grid-template-columns: minmax(0, 1fr) 160px 170px 150px;
}
.kshop-cart-item__quantity {
	padding-right: 12px !important;
	padding-left: 12px !important;
}
.kshop-quantity-stepper {
	display: grid !important;
	grid-template-columns: 38px 46px 38px !important;
	align-items: stretch !important;
	width: 122px;
	min-width: 122px;
	height: 42px;
	max-width: none;
}
.kshop-quantity-stepper .quantity {
	display: grid !important;
	align-items: center !important;
	height: 40px !important;
	margin: 0 !important;
}
.kshop-quantity-stepper .qty,
.kshop-quantity-stepper .kshop-qty-value,
.kshop-quantity-stepper .kshop-qty-button {
	box-sizing: border-box !important;
	height: 40px !important;
	min-height: 40px !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1 !important;
}
.kshop-quantity-stepper .kshop-qty-button {
	position: relative !important;
	display: grid !important;
	align-items: center !important;
	justify-items: center !important;
	align-self: center !important;
	font-size: 0 !important;
}
.kshop-quantity-stepper .kshop-qty-button::before,
.kshop-quantity-stepper .kshop-qty-button::after {
	position: absolute !important;
	top: 50% !important;
	left: 50% !important;
	display: block !important;
	width: 10px !important;
	height: 1px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: currentColor !important;
	line-height: 1 !important;
	content: "" !important;
	transform: translate(-50%, -50%) !important;
}
.kshop-quantity-stepper .kshop-qty-button[data-direction="minus"]::after {
	display: none !important;
}
.kshop-quantity-stepper .kshop-qty-button[data-direction="plus"]::after {
	width: 1px !important;
	height: 10px !important;
}
.kshop-empty-cart .kshop-button {
	text-decoration: none;
	transition: background .22s ease, color .22s ease, transform .22s ease;
}
.kshop-empty-cart .kshop-button:hover {
	background: #fff;
	color: #171b26;
	transform: translateY(-1px);
}
.kshop-login-modal__form button[type="submit"] {
	transition: background .22s ease, color .22s ease, box-shadow .22s ease, transform .22s ease;
}
.kshop-login-modal__form button[type="submit"]:hover {
	background: #fff;
	box-shadow: inset 0 0 0 1px #171b26;
	color: #171b26;
	transform: translateY(-1px);
}
.kshop-login-modal__account-links {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0;
}
.kshop-login-modal__account-links a {
	position: relative;
	padding: 0 12px;
}
.kshop-login-modal__account-links a + a::before {
	position: absolute;
	top: 50%;
	left: 0;
	width: 1px;
	height: 10px;
	background: #d7dce3;
	content: "";
	transform: translateY(-50%);
}

/* Member system v2 */
.kshop-register-modal[hidden] {
	display: none;
}
.kshop-register-modal {
	position: fixed;
	z-index: 1000002;
	inset: 0;
	display: grid;
	place-items: center;
	padding: 18px;
}
.kshop-register-modal__panel {
	position: relative;
	width: min(100%, 580px);
	max-height: calc(100vh - 36px);
	overflow: auto;
	padding: 36px;
	border: 1px solid rgba(255, 255, 255, .8);
	border-radius: 8px;
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 30px 100px rgba(15, 18, 26, .18);
	opacity: 0;
	transform: translateY(14px) scale(.98);
	transition: opacity .22s ease, transform .22s ease;
}
.kshop-register-modal.is-open .kshop-login-modal__backdrop,
.kshop-register-modal.is-open .kshop-register-modal__panel {
	opacity: 1;
}
.kshop-register-modal.is-open .kshop-register-modal__panel {
	transform: translateY(0) scale(1);
}
.kshop-register-modal h2 {
	margin: 0;
	font-size: 30px;
	font-weight: 500;
	letter-spacing: 0;
}
.kshop-register-modal header p {
	margin: 10px 0 24px;
	color: #69717d;
	font-size: 13px;
}
.kshop-register-modal .kshop-register-form {
	grid-template-columns: 1fr;
	margin-top: 0;
}
.kshop-register-modal .kshop-register-form > label,
.kshop-register-modal .kshop-register-form__pair,
.kshop-register-modal .kshop-register-agreements,
.kshop-register-modal .kshop-register-form > .kshop-member-button {
	grid-column: 1 / -1;
}
.kshop-register-modal .kshop-register-form__pair {
	align-items: start;
}
.kshop-register-modal .kshop-register-form__pair label {
	display: flex;
	flex-direction: column;
	align-items: stretch;
}
.kshop-register-modal .kshop-register-form input:not([type="checkbox"]) {
	height: 48px;
	min-height: 48px;
}
.kshop-register-agreements {
	display: grid;
	border-top: 1px solid #e2e5e9;
}
.kshop-register-agreements > div {
	display: flex;
	min-height: 46px;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	border-bottom: 1px solid #e2e5e9;
}
.kshop-register-agreements label {
	display: flex;
	align-items: center;
	grid-template-columns: auto 1fr;
	gap: 8px;
}
.kshop-register-agreements button {
	flex: 0 0 auto;
	padding: 3px 0;
	border: 0;
	border-bottom: 1px solid #aeb4bd;
	background: transparent;
	color: #69717d;
	font-size: 11px;
	cursor: pointer;
}
.kshop-register-social {
	margin-top: 26px;
	padding-top: 20px;
	border-top: 1px solid #e2e5e9;
	text-align: center;
}
.kshop-register-social span,
.kshop-register-social small {
	display: block;
	color: #69717d;
	font-size: 11px;
}
.kshop-register-social div,
.kshop-register-social .kshop-social-login {
	display: flex;
	justify-content: center;
	gap: 8px;
	margin: 12px 0 9px;
}
.kshop-register-social button,
.kshop-register-social .kshop-social-login a {
	width: 40px;
	height: 40px;
	border: 1px solid #d7dce3;
	border-radius: 50%;
	background: #f5f6f7;
	color: #8a919b;
}
.kshop-login-modal__account-links button {
	padding: 0 12px;
	border: 0;
	background: transparent;
	color: #424955;
	font-size: 12px;
	cursor: pointer;
}
.kshop-account-shell {
	display: grid;
	grid-template-columns: 210px minmax(0, 1fr);
	gap: clamp(36px, 6vw, 90px);
	padding-top: 38px;
	border-top: 1px solid #e2e5e9;
}
.kshop-account-sidebar {
	min-width: 0;
	align-self: start;
}
.kshop-account-sidebar > strong {
	display: block;
	margin-bottom: 20px;
	font-size: 13px;
	font-weight: 500;
}
.kshop-account-sidebar nav {
	display: grid;
	border-top: 1px solid #e2e5e9;
}
.kshop-account-sidebar a,
.kshop-account-sidebar button {
	position: relative;
	display: flex;
	width: 100%;
	min-height: 46px;
	align-items: center;
	justify-content: space-between;
	padding: 0 10px;
	border: 0;
	border-bottom: 1px solid #e2e5e9;
	background: transparent;
	color: #454c57;
	font-size: 12px;
	font-family: inherit;
	text-align: left;
	text-decoration: none;
	cursor: pointer;
	transition: background .2s ease, color .2s ease, padding .2s ease;
}
.kshop-account-sidebar a:hover,
.kshop-account-sidebar button:hover {
	padding-left: 14px;
	background: #f7f8f9;
	color: #171b26;
}
.kshop-account-sidebar a.is-active,
.kshop-account-sidebar button.is-active {
	background: #f2f4f6;
	color: #171b26;
	font-weight: 500;
}
.kshop-account-sidebar i {
	color: #a0a6af;
	font-size: 9px;
}
.kshop-account-dashboard,
.kshop-account-native {
	min-width: 0;
	padding-top: 0;
	border-top: 0;
}
.kshop-account-benefits {
	display: grid;
	grid-template-columns: 1fr 1fr;
	border: 1px solid #e2e5e9;
	border-radius: 6px;
}
.kshop-account-benefits > div {
	display: grid;
	gap: 8px;
	padding: 24px;
}
.kshop-account-benefits > div + div {
	border-left: 1px solid #e2e5e9;
}
.kshop-account-benefits span,
.kshop-account-benefits small,
.kshop-account-benefits a {
	color: #7b828d;
	font-size: 11px;
	text-decoration: none;
}
.kshop-account-benefits button {
	justify-self: start;
	padding: 0;
	border: 0;
	border-bottom: 1px solid #aeb4bd;
	background: transparent;
	color: #69717d;
	font-size: 11px;
	cursor: pointer;
	transition: color .2s ease, border-color .2s ease;
}
.kshop-account-benefits button:hover {
	border-bottom-color: #171b26;
	color: #171b26;
}
.kshop-account-benefits strong {
	font-size: 26px;
	font-weight: 500;
}
.kshop-account-native .woocommerce-MyAccount-navigation {
	display: none;
}
.kshop-account-native .woocommerce-MyAccount-content {
	float: none;
	width: 100%;
}
.kshop-account-endpoint > header {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 20px;
	padding-bottom: 24px;
	border-bottom: 1px solid #e2e5e9;
}
.kshop-account-endpoint h2,
.kshop-account-endpoint header strong {
	margin: 0;
	font-size: 28px;
	font-weight: 500;
}
.kshop-points-list > div {
	display: grid;
	grid-template-columns: 120px minmax(0, 1fr) auto;
	gap: 20px;
	padding: 20px 0;
	border-bottom: 1px solid #e2e5e9;
	font-size: 12px;
}
.kshop-points-list > p {
	margin: 0;
	padding: 28px 0;
	color: #8b929c;
	font-size: 12px;
	text-align: center;
}
.kshop-points-list b {
	font-weight: 400;
}
.kshop-points-list strong {
	color: #198b3b;
	font-weight: 500;
}
.kshop-member-empty {
	display: grid;
	min-height: 280px;
	place-items: center;
	align-content: center;
	gap: 14px;
	border: 1px solid #edf0f2;
	border-radius: 6px;
	background: #fafbfc;
	color: #7b828d;
	font-size: 13px;
}
.kshop-member-empty.is-compact {
	min-height: 150px;
}
.kshop-member-empty.is-compact p {
	margin: 0;
	color: #454c57;
}
.kshop-member-empty.is-compact small {
	color: #9299a3;
	font-size: 11px;
}
.kshop-account-list > div {
	display: grid;
	grid-template-columns: 120px minmax(0, 1fr) auto;
	gap: 20px;
	padding: 20px 0;
	border-bottom: 1px solid #e2e5e9;
	font-size: 12px;
}
.kshop-points-summary {
	display: grid;
	gap: 8px;
	margin: 24px 0 34px;
	padding: 28px;
	border: 1px solid #e5e8ec;
	border-radius: 6px;
	background: #f7f8f9;
}
.kshop-points-summary span,
.kshop-points-summary small {
	color: #717985;
	font-size: 12px;
}
.kshop-points-summary strong {
	font-size: 36px;
	font-weight: 500;
}
.kshop-list-heading {
	display: grid;
	grid-template-columns: 120px minmax(0, 1fr) auto;
	gap: 20px;
	padding: 0 0 12px;
	border-bottom: 1px solid #dfe3e8;
	color: #8b929c;
	font-size: 11px;
}
.kshop-account-detail {
	border-bottom: 1px solid #e5e8ec;
	background: transparent;
}
.kshop-account-detail summary {
	display: grid;
	grid-template-columns: 96px minmax(0, 1fr) auto 28px;
	gap: 20px;
	align-items: center;
	padding: 22px 0;
	font-size: 12px;
	cursor: pointer;
	list-style: none;
	transition: color .2s ease;
}
.kshop-account-detail summary::-webkit-details-marker {
	display: none;
}
.kshop-account-detail summary:hover {
	color: #69717d;
}
.kshop-account-detail summary span,
.kshop-account-detail__date {
	color: #8b929c;
}
.kshop-account-detail summary b {
	display: grid;
	gap: 6px;
	color: #171b26;
	font-size: 15px;
	line-height: 1.45;
	word-break: keep-all;
}
.kshop-account-detail summary b small {
	color: #7b8492;
	font-size: 11px;
	font-weight: 500;
}
.kshop-account-detail summary strong {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 24px;
	padding: 0 9px;
	border-radius: 999px;
	background: #f7f8f9;
	color: #6b7482;
	font-size: 11px;
	font-weight: 500;
}
.kshop-account-detail summary strong.is-done {
	background: #f0f6f2;
	color: #2f7145;
}
.kshop-account-detail__toggle {
	position: relative;
	width: 28px;
	height: 28px;
	border: 0;
	border-radius: 50%;
	background: transparent;
}
.kshop-account-detail__toggle::before,
.kshop-account-detail__toggle::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 10px;
	height: 1px;
	background: #7e8794;
	content: "";
	transform: translate(-50%, -50%);
}
.kshop-account-detail__toggle::after {
	transform: translate(-50%, -50%) rotate(90deg);
}
.kshop-account-detail[open] .kshop-account-detail__toggle::after {
	opacity: 0;
}
.kshop-account-detail__body {
	display: grid;
	gap: 12px;
	padding: 0 0 26px 116px;
}
.kshop-account-detail__body > div {
	padding: 0;
	border-radius: 0;
	background: transparent;
}
.kshop-account-detail__body .is-answer {
	margin-top: 4px;
	padding-top: 18px;
	border-top: 1px solid #eef1f4;
	background: transparent;
}
.kshop-account-detail__body .is-answer.has-answer {
	background: transparent;
}
.kshop-account-detail__body em {
	color: #707884;
	font-size: 11px;
	font-style: normal;
}
.kshop-account-detail__body p {
	margin: 8px 0 0;
	color: #353c47;
	font-size: 13px;
	line-height: 1.75;
	word-break: keep-all;
}
.kshop-review-stars {
	color: #171b26;
}
.kshop-account-review-photos {
	display: flex;
	gap: 8px;
	margin-top: 14px;
}
.kshop-account-review-photos img {
	width: 72px;
	height: 72px;
	border-radius: 4px;
	object-fit: cover;
}
.kshop-account-list span {
	color: #8b929c;
}
.kshop-account-list b,
.kshop-account-list strong {
	font-weight: 500;
}
.kshop-coupon-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin-top: 28px;
}
.kshop-coupon-list article {
	position: relative;
	padding: 24px;
	border: 1px solid #e2e5e9;
	border-radius: 6px;
}
.kshop-coupon-list span,
.kshop-coupon-list p {
	color: #7b828d;
	font-size: 11px;
}
.kshop-coupon-list strong {
	display: block;
	margin: 20px 0 8px;
	font-size: 22px;
	font-weight: 500;
}
.kshop-coupon-list h4 {
	margin: 0 0 7px;
	color: #252c38;
	font-size: 13px;
	font-weight: 500;
}
.kshop-coupon-list code {
	display: inline-flex;
	margin-top: 14px;
	padding: 8px 11px;
	border-radius: 4px;
	background: #f1f3f6;
	color: #252c38;
	font-size: 14px;
	font-weight: 500;
}
.kshop-coupon-list form {
	margin-top: 14px;
}
.kshop-coupon-list button {
	display: inline-flex;
	gap: 7px;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	padding: 0 13px;
	border: 1px solid #171b26;
	border-radius: 4px;
	background: #171b26;
	color: #fff;
	font-size: 11px;
	font-weight: 500;
	cursor: pointer;
	transition: background-color .2s ease, color .2s ease;
}
.kshop-coupon-list button:hover {
	background: #fff;
	color: #171b26;
}
.kshop-member-coupon-group + .kshop-member-coupon-group {
	margin-top: 40px;
}
.kshop-account-endpoint > header + .kshop-member-coupon-group {
	margin-top: 30px;
}
.kshop-member-coupon-group > header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 14px;
	padding-bottom: 12px;
	border-bottom: 1px solid #e2e5e9;
}
.kshop-member-coupon-group > header h3 {
	margin: 0;
	color: #171b26;
	font-size: 16px;
	font-weight: 500;
}
.kshop-member-coupon-group > header span {
	color: #7b8493;
	font-size: 11px;
}
.kshop-product-coupon {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin-top: 18px;
	padding: 16px;
	border: 1px solid #e2e5e9;
	border-radius: 6px;
	background: #f8f9fa;
}
.kshop-product-coupon > div span,
.kshop-product-coupon > div strong,
.kshop-product-coupon > div small {
	display: block;
}
.kshop-product-coupon > div span {
	color: #687386;
	font-size: 9px;
	font-weight: 500;
}
.kshop-product-coupon > div strong {
	margin-top: 5px;
	color: #171b26;
	font-size: 17px;
	font-weight: 500;
}
.kshop-product-coupon > div small {
	margin-top: 3px;
	color: #7b828d;
	font-size: 11px;
}
.kshop-product-coupon form {
	margin: 0;
}
.kshop-product-coupon button,
.kshop-product-coupon .is-owned {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	min-height: 38px;
	padding: 0 13px;
	border: 1px solid #171b26;
	border-radius: 4px;
	background: #171b26;
	color: #fff;
	font-size: 11px;
	font-weight: 500;
	white-space: nowrap;
}
.kshop-product-coupon button {
	cursor: pointer;
	transition: background-color .2s ease, color .2s ease;
}
.kshop-product-coupon button:hover {
	background: #fff;
	color: #171b26;
}
.kshop-product-coupon .is-owned {
	border-color: #dfe3e8;
	background: #fff;
	color: #697382;
}
.kshop-member-success-modal[hidden],
.kshop-member-dialog[hidden] {
	display: none;
}
.kshop-member-success-modal,
.kshop-member-dialog {
	position: fixed;
	z-index: 1000003;
	inset: 0;
	display: grid;
	place-items: center;
	padding: 18px;
}
.kshop-member-dialog__panel {
	position: relative;
	width: min(100%, 430px);
	padding: 34px;
	border: 1px solid rgba(255,255,255,.8);
	border-radius: 8px;
	background: rgba(255,255,255,.98);
	box-shadow: 0 30px 100px rgba(15,18,26,.18);
	text-align: left;
	opacity: 0;
	transform: translateY(14px) scale(.98);
	transition: opacity .22s ease, transform .22s ease;
}
.kshop-member-dialog__panel.is-wide {
	width: min(100%, 760px);
	max-height: calc(100vh - 36px);
	overflow: auto;
}
.kshop-member-dialog__panel.is-account-edit {
	width: min(100%, 580px);
	max-height: calc(100vh - 36px);
	overflow: auto;
}
.kshop-member-success-modal.is-open .kshop-login-modal__backdrop,
.kshop-member-success-modal.is-open .kshop-member-dialog__panel,
.kshop-member-dialog.is-open .kshop-login-modal__backdrop,
.kshop-member-dialog.is-open .kshop-member-dialog__panel {
	opacity: 1;
}
.kshop-member-success-modal.is-open .kshop-member-dialog__panel,
.kshop-member-dialog.is-open .kshop-member-dialog__panel {
	transform: translateY(0) scale(1);
}
.kshop-member-success-modal .kshop-member-dialog__panel {
	text-align: center;
}
.kshop-member-dialog__icon {
	display: grid;
	width: 42px;
	height: 42px;
	margin: 0 auto 20px;
	place-items: center;
	border-radius: 50%;
	background: #171b26;
	color: #fff;
}
.kshop-member-dialog h2,
.kshop-member-success-modal h2 {
	margin: 0;
	font-size: 26px;
	font-weight: 500;
}
.kshop-member-dialog p,
.kshop-member-success-modal p {
	margin: 12px 0 24px;
	color: #69717d;
	font-size: 12px;
	line-height: 1.65;
}
.kshop-member-success-modal a {
	display: block;
	margin-top: 14px;
	color: #69717d;
	font-size: 11px;
}
.kshop-grade-list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}
.kshop-grade-list article {
	padding: 20px;
	border: 1px solid #e3e7eb;
	border-radius: 6px;
	background: #fafbfc;
}
.kshop-grade-list header {
	display: grid;
	gap: 5px;
	padding-bottom: 14px;
	border-bottom: 1px solid #e3e7eb;
}
.kshop-grade-list b {
	font-size: 16px;
	font-weight: 500;
}
.kshop-grade-list span,
.kshop-grade-list li {
	color: #69717d;
	font-size: 11px;
}
.kshop-grade-list ul {
	display: grid;
	gap: 7px;
	margin: 14px 0 0;
	padding-left: 16px;
}
.kshop-withdraw-form {
	display: grid;
	gap: 16px;
}
.kshop-withdraw-form label {
	display: grid;
	gap: 8px;
	font-size: 12px;
}
.kshop-withdraw-form input[type="password"] {
	min-height: 46px;
	padding: 0 13px;
	border: 1px solid #d7dce3;
	border-radius: 4px;
}
.kshop-withdraw-form button {
	min-height: 46px;
	border: 1px solid #b53a3a;
	border-radius: 4px;
	background: #fff;
	color: #b53a3a;
	cursor: pointer;
}
.kshop-account-footer button {
	padding: 0;
	border: 0;
	background: transparent;
	color: #8b929c;
	font-size: 11px;
	cursor: pointer;
}
.kshop-account-endpoint > header p {
	margin: 8px 0 0;
	color: #69717d;
	font-size: 12px;
}
.kshop-account-native-content {
	margin-top: 28px;
}
.kshop-account-native .woocommerce-info,
.kshop-account-native .woocommerce-message,
.kshop-account-native .woocommerce-error {
	margin: 0 !important;
	padding: 22px 24px !important;
	border: 1px solid #dfe3e8 !important;
	border-top: 1px solid #dfe3e8 !important;
	border-radius: 6px !important;
	background: #fafafa !important;
	color: #171b26 !important;
	font-size: 13px !important;
	line-height: 1.6 !important;
}
.kshop-account-native .woocommerce-info::before,
.kshop-account-native .woocommerce-message::before,
.kshop-account-native .woocommerce-error::before {
	display: none !important;
}
.kshop-account-native .woocommerce-info .button,
.kshop-account-native .woocommerce-message .button,
.kshop-account-native .woocommerce-error .button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 0 18px !important;
	border: 1px solid #171b26 !important;
	border-radius: 4px !important;
	background: #171b26 !important;
	color: #fff !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	line-height: 1 !important;
	transition: background .2s ease, color .2s ease;
}
.kshop-account-native .woocommerce-info .button::after,
.kshop-account-native .woocommerce-message .button::after,
.kshop-account-native .woocommerce-error .button::after,
.kshop-account-edit-modal .woocommerce-EditAccountForm button::after {
	display: none !important;
	content: none !important;
}
.kshop-member-content .kshop-member-button,
.kshop-member-content .kshop-link-button,
.kshop-member-dialog .kshop-member-button {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 0 18px;
	border: 1px solid #d7dce3;
	border-radius: 4px;
	background: #fff;
	color: #171b26;
	font-family: inherit;
	font-size: 12px;
	font-weight: 500;
	text-decoration: none;
	cursor: pointer;
	transition: background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}
.kshop-member-content .kshop-member-button:hover,
.kshop-member-dialog .kshop-member-button:hover {
	border-color: #171b26;
	background: #171b26;
	color: #fff;
	transform: translateY(-1px);
}
.kshop-member-content .kshop-member-button.is-primary,
.kshop-member-dialog .kshop-member-button.is-primary {
	border-color: #171b26;
	background: #171b26;
	color: #fff;
}
.kshop-member-content .kshop-member-button.is-primary:hover,
.kshop-member-dialog .kshop-member-button.is-primary:hover {
	background: #fff;
	color: #171b26;
}
.kshop-member-content .kshop-link-button {
	min-height: auto;
	padding: 4px 0;
	border: 0;
	background: transparent;
}
.kshop-member-content .kshop-link-button:hover {
	color: #69717d;
	transform: translateX(3px);
}
.kshop-account-edit-modal .woocommerce-EditAccountForm .form-row-first,
.kshop-account-edit-modal .woocommerce-EditAccountForm .form-row-last {
	float: none;
	width: 100%;
}
.kshop-account-edit-modal .woocommerce-EditAccountForm p,
.kshop-account-edit-modal .woocommerce-EditAccountForm fieldset {
	margin: 0 0 16px;
	padding: 0;
	border: 0;
}
.kshop-profile-form {
	display: grid;
	gap: 16px;
}
.kshop-profile-form > label,
.kshop-profile-form fieldset {
	display: grid;
	gap: 8px;
}
.kshop-profile-form fieldset {
	margin-top: 4px !important;
	padding-top: 18px !important;
	border-top: 1px solid #e2e5e9 !important;
}
.kshop-profile-form fieldset legend {
	margin-bottom: 6px;
	font-size: 14px;
}
.kshop-profile-form small {
	color: #8b929c;
	font-size: 10px;
	line-height: 1.6;
}
.kshop-account-edit-modal .woocommerce-EditAccountForm label,
.kshop-account-edit-modal .woocommerce-EditAccountForm legend {
	display: block;
	margin-bottom: 7px;
	font-size: 12px;
	font-weight: 500;
}
.kshop-account-edit-modal .woocommerce-EditAccountForm input {
	width: 100%;
	min-height: 46px;
	box-sizing: border-box;
	padding: 0 12px;
	border: 1px solid #d7dce3;
	border-radius: 4px;
	background: #fff;
}
.kshop-account-edit-modal .woocommerce-EditAccountForm em {
	color: #8b929c;
	font-size: 11px;
	font-style: normal;
}
.kshop-account-edit-modal .woocommerce-EditAccountForm button {
	width: 100%;
	min-height: 46px;
	border: 1px solid #171b26;
	border-radius: 4px;
	background: #171b26;
	color: #fff;
	cursor: pointer;
	font-family: inherit;
	font-size: 12px;
	font-weight: 500;
	transition: background .2s ease, color .2s ease;
}
.kshop-account-edit-modal .woocommerce-EditAccountForm button:hover {
	background: #fff;
	color: #171b26;
}
.kshop-recovery-form {
	display: grid;
	gap: 16px;
	margin-top: 22px;
}
.kshop-recovery-tabs {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 6px;
	padding: 4px;
	border: 1px solid #e1e5eb;
	border-radius: 8px;
	background: #f5f7fa;
}
.kshop-recovery-tabs label {
	display: block;
}
.kshop-recovery-tabs input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}
.kshop-recovery-tabs span {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	border-radius: 6px;
	color: #69717d;
	font-size: 12px;
	font-weight: 500;
	cursor: pointer;
	transition: background .2s ease, color .2s ease, box-shadow .2s ease;
}
.kshop-recovery-tabs input:checked + span {
	background: #fff;
	color: #171b26;
	box-shadow: 0 8px 22px rgba(17, 24, 39, .08);
}
.kshop-recovery-form label {
	display: grid;
	gap: 8px;
	font-size: 12px;
	font-weight: 500;
}
.kshop-recovery-fields {
	display: grid;
	gap: 12px;
}
.kshop-recovery-fields[hidden] {
	display: none !important;
}
.kshop-member-dialog .kshop-recovery-form input[type="email"],
.kshop-member-dialog .kshop-recovery-form input[type="text"],
.kshop-member-dialog .kshop-recovery-form input[type="tel"] {
	box-sizing: border-box;
	width: 100%;
	min-height: 46px;
	padding: 0 18px;
	border: 1px solid #d7dce3;
	border-radius: 4px;
	background: #fff;
	font: inherit;
}
.kshop-recovery-form button {
	min-height: 46px;
	border: 1px solid #171b26;
	border-radius: 6px;
	background: #171b26;
	color: #fff;
	font-family: inherit;
	font-size: 12px;
	font-weight: 500;
	cursor: pointer;
	transition: background .2s ease, color .2s ease;
}
.kshop-recovery-form button:hover {
	background: #fff;
	color: #171b26;
}
.kshop-recovery-form p {
	margin: 0;
	color: #366b45;
	font-size: 11px;
	line-height: 1.55;
}
.kshop-recovery-form p.is-error {
	color: #b53a3a;
}
.kshop-recovery-note {
	display: block;
	margin-top: 16px;
	color: #8b929c;
	font-size: 10px;
	line-height: 1.6;
}
.kshop-account-native .woocommerce-info .button:hover,
.kshop-account-native .woocommerce-message .button:hover,
.kshop-account-native .woocommerce-error .button:hover {
	background: #fff !important;
	color: #171b26 !important;
}
.kshop-account-native .woocommerce-orders-table,
.kshop-account-native .woocommerce-table {
	width: 100%;
	border: 0;
	border-collapse: collapse;
}
.kshop-account-native .woocommerce-orders-table .woocommerce-button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	margin: 2px 4px 2px 0 !important;
	padding: 0 13px !important;
	border: 1px solid #d9dee6 !important;
	border-radius: 4px !important;
	background: #fff !important;
	color: #252c38 !important;
	font-size: 11px !important;
	font-weight: 500 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	transition: border-color .2s ease, background-color .2s ease, color .2s ease;
}
.kshop-account-native .woocommerce-orders-table .woocommerce-button:hover {
	border-color: #171b26 !important;
	background: #171b26 !important;
	color: #fff !important;
}

.kshop-order-request-dialog__eyebrow,
.kshop-customer-request-list > header span {
	display: block;
	margin-bottom: 7px;
	color: #747e8d;
	font-size: 10px;
	font-weight: 500;
	text-transform: uppercase;
}
.kshop-order-request-dialog .kshop-member-dialog__panel {
	max-width: 520px;
}
.kshop-order-request-dialog .kshop-data-form {
	margin-top: 22px;
}
.kshop-order-request-dialog .kshop-data-form label small {
	color: #9299a5;
	font-size: 10px;
	font-weight: 400;
}
.kshop-account-notice {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr);
	gap: 12px;
	align-items: center;
	margin-bottom: 18px;
	padding: 15px;
	border: 1px solid #d9e9df;
	border-radius: 6px;
	background: #f4faf6;
}
.kshop-account-notice > i {
	display: grid;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: #e0f2e6;
	color: #307648;
	place-items: center;
}
.kshop-account-notice strong,
.kshop-account-notice span {
	display: block;
}
.kshop-account-notice strong {
	margin-bottom: 3px;
	font-size: 12px;
}
.kshop-account-notice span {
	color: #697386;
	font-size: 11px;
}
.kshop-customer-request-list {
	margin-top: 32px;
}
.kshop-customer-request-list > header {
	margin-bottom: 12px;
}
.kshop-customer-request-list > header h3 {
	margin: 0;
	font-size: 16px;
}
.kshop-customer-request-list article {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(220px, .65fr);
	gap: 18px;
	padding: 18px 0;
	border-top: 1px solid #e5e8ed;
}
.kshop-customer-request-list article span,
.kshop-customer-request-list article strong,
.kshop-customer-request-list article small {
	display: block;
}
.kshop-customer-request-list article span,
.kshop-customer-request-list article small {
	color: #87909d;
	font-size: 10px;
}
.kshop-customer-request-list article strong {
	margin: 5px 0;
	font-size: 12px;
}
.kshop-customer-request-list article b {
	display: inline-flex;
	padding: 5px 8px;
	border-radius: 999px;
	background: #f0f2f5;
	color: #596475;
	font-size: 10px;
}
.kshop-customer-request-list article p {
	margin: 8px 0 0;
	color: #657083;
	font-size: 11px;
	line-height: 1.6;
}
@media (max-width: 767px) {
	.kshop-customer-request-list article {
		grid-template-columns: 1fr;
		gap: 10px;
	}
}
.kshop-account-native .woocommerce-orders-table th,
.kshop-account-native .woocommerce-orders-table td,
.kshop-account-native .woocommerce-table th,
.kshop-account-native .woocommerce-table td {
	padding: 18px 12px;
	border: 0;
	border-bottom: 1px solid #e2e5e9;
	background: #fff;
	font-size: 12px;
	text-align: left;
}
.kshop-account-native .woocommerce-EditAccountForm {
	max-width: 620px;
}
.kshop-account-native .woocommerce-EditAccountForm .form-row-first,
.kshop-account-native .woocommerce-EditAccountForm .form-row-last {
	float: none;
	width: 100%;
}
.kshop-account-native .woocommerce-EditAccountForm p,
.kshop-account-native .woocommerce-EditAccountForm fieldset {
	margin: 0 0 18px;
	padding: 0;
	border: 0;
}
.kshop-account-native .woocommerce-EditAccountForm label,
.kshop-account-native .woocommerce-EditAccountForm legend {
	display: block;
	margin-bottom: 8px;
	font-size: 12px;
	font-weight: 500;
}
.kshop-account-native .woocommerce-EditAccountForm input {
	width: 100%;
	min-height: 48px !important;
	box-sizing: border-box;
	padding: 0 13px !important;
	border: 1px solid #d7dce3 !important;
	border-radius: 4px !important;
	background: #fff !important;
	color: #171b26 !important;
	font-style: normal !important;
}
.kshop-account-native .woocommerce-EditAccountForm button {
	min-height: 48px;
	padding: 0 22px;
	border: 1px solid #171b26;
	border-radius: 4px;
	background: #171b26;
	color: #fff;
	cursor: pointer;
}
.kshop-customer-shipment-list,
.kshop-order-detail-tracking {
	margin-top: 44px;
}
.kshop-customer-shipment-list > header {
	margin-bottom: 18px;
}
.kshop-customer-shipment-list > header span {
	display: block;
	margin-bottom: 5px;
	color: #7b8493;
	font-family: "Google Sans Flex", sans-serif;
	font-size: 11px;
	font-weight: 500;
	text-transform: uppercase;
}
.kshop-customer-shipment-list h3,
.kshop-order-detail-tracking h2 {
	margin: 0 0 18px;
	color: #171b26;
	font-size: 22px;
	font-weight: 500;
}
.kshop-shipment-card {
	display: flex;
	gap: 20px;
	align-items: center;
	justify-content: space-between;
	padding: 20px 0;
	border-top: 1px solid #e2e5e9;
}
.kshop-shipment-card:last-child {
	border-bottom: 1px solid #e2e5e9;
}
.kshop-shipment-card span,
.kshop-shipment-card strong,
.kshop-shipment-card small {
	display: block;
}
.kshop-shipment-card span {
	margin-bottom: 6px;
	color: #7b8493;
	font-size: 11px;
}
.kshop-shipment-card strong {
	margin-bottom: 5px;
	color: #171b26;
	font-size: 14px;
	font-weight: 500;
}
.kshop-shipment-card small {
	color: #697386;
	font-size: 11px;
}
.kshop-shipment-card a,
.kshop-shipment-card b {
	display: inline-flex;
	gap: 8px;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	box-sizing: border-box;
	padding: 0 15px;
	border: 1px solid #171b26;
	border-radius: 4px;
	background: #171b26;
	color: #fff;
	font-size: 11px;
	font-weight: 500;
	text-decoration: none;
	white-space: nowrap;
	transition: background-color .2s ease, color .2s ease;
}
.kshop-shipment-card a:hover {
	background: #fff;
	color: #171b26;
}
.kshop-shipment-card b {
	border-color: #e2e5e9;
	background: #f5f6f8;
	color: #697386;
}
@media (max-width: 980px) {
	.kshop-account-shell {
		grid-template-columns: minmax(0, 1fr);
	}
	.kshop-account-sidebar nav {
		display: flex;
		max-width: 100%;
		overflow-x: auto;
		border-bottom: 1px solid #e2e5e9;
	}
	.kshop-account-sidebar a,
	.kshop-account-sidebar button {
		flex: 0 0 auto;
		width: auto;
		padding: 0 14px;
		border-bottom: 0;
	}
	.kshop-account-sidebar i {
		display: none;
	}
}
@media (max-width: 767px) {
	.kshop-register-modal {
		align-items: end;
		padding: 0;
	}
	.kshop-register-modal__panel {
		width: 100%;
		max-height: 94vh;
		padding: 30px 18px calc(24px + env(safe-area-inset-bottom));
		border-radius: 8px 8px 0 0;
		transform: translateY(30px);
	}
	.kshop-register-modal .kshop-register-form,
	.kshop-account-benefits,
	.kshop-coupon-list,
	.kshop-grade-list {
		grid-template-columns: 1fr;
	}
	.kshop-account-detail summary {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 10px 12px;
		padding: 18px 16px;
	}
	.kshop-account-detail summary > span:not(.kshop-account-detail__toggle) {
		grid-column: 1 / -1;
	}
	.kshop-account-detail summary b {
		grid-column: 1;
		grid-row: 2;
	}
	.kshop-account-detail summary strong {
		grid-column: 1;
		grid-row: 3;
		width: fit-content;
	}
	.kshop-account-detail__toggle {
		grid-column: 2;
		grid-row: 2;
		align-self: center;
		justify-self: end;
	}
	.kshop-account-detail__body {
		padding: 0 16px 18px;
	}
	.kshop-list-heading {
		display: none;
	}
	.kshop-account-benefits > div + div {
		border-top: 1px solid #e2e5e9;
		border-left: 0;
	}
	.kshop-points-list > div {
		grid-template-columns: 1fr auto;
	}
	.kshop-account-list > div {
		grid-template-columns: 1fr auto;
	}
	.kshop-account-list span {
		grid-column: 1 / -1;
	}
	.kshop-points-list span {
		grid-column: 1 / -1;
	}
	.kshop-shipment-card {
		align-items: flex-start;
		flex-direction: column;
	}
	.kshop-shipment-card a,
	.kshop-shipment-card b {
		width: 100%;
	}
}
@media (max-width: 980px) and (min-width: 768px) {
	.kshop-cart-table-head,
	.kshop-cart-item {
		grid-template-columns: minmax(0, 1fr) 150px 160px;
	}
}
.kshop-promo[hidden] {
	display: none !important;
}
.kshop-promo {
	letter-spacing: 0;
	transition: opacity .22s ease, transform .22s ease;
}
.kshop-promo.is-closing {
	opacity: 0;
	transform: translateY(8px);
}
.kshop-promo--popup {
	position: fixed;
	z-index: 1000010;
	right: 24px;
	bottom: 24px;
	width: min(390px, calc(100% - 48px));
}
.kshop-promo--popup.is-center {
	inset: 50% auto auto 50%;
	transform: translate(-50%, -50%);
}
.kshop-promo--popup.is-center.is-closing {
	transform: translate(-50%, calc(-50% + 8px));
}
.kshop-promo__panel {
	position: relative;
	overflow: hidden;
	border: 1px solid rgba(223,227,232,.88);
	border-radius: 8px;
	background: rgba(255,255,255,.96);
	box-shadow: 0 22px 70px rgba(23,27,38,.16);
	backdrop-filter: blur(18px);
}
.kshop-promo__media {
	display: block;
	overflow: hidden;
	aspect-ratio: 16 / 9;
	background: #f3f5f6;
}
.kshop-promo__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.kshop-promo__content {
	padding: 22px;
}
.kshop-promo__content span,
.kshop-promo__content strong,
.kshop-promo__content p {
	display: block;
	margin: 0;
}
.kshop-promo__content span {
	color: #687386;
	font-size: 9px;
	font-weight: 500;
	text-transform: uppercase;
}
.kshop-promo__content strong {
	margin-top: 7px;
	color: #171b26;
	font-size: 22px;
	font-weight: 500;
	line-height: 1.3;
}
.kshop-promo__content p {
	margin-top: 8px;
	color: #68717d;
	font-size: 12px;
	line-height: 1.65;
}
.kshop-promo__content > a {
	display: inline-flex;
	align-items: center;
	gap: 14px;
	min-height: 40px;
	margin-top: 18px;
	padding: 0 14px;
	border: 1px solid #171b26;
	border-radius: 4px;
	background: #171b26;
	color: #fff;
	font-size: 11px;
	font-weight: 500;
	text-decoration: none;
	transition: background-color .2s ease, color .2s ease;
}
.kshop-promo__content > a:hover {
	background: #fff;
	color: #171b26;
}
.kshop-promo__close {
	position: absolute;
	top: 10px;
	right: 10px;
	display: grid;
	width: 32px;
	height: 32px;
	padding: 0;
	place-items: center;
	border: 1px solid rgba(223,227,232,.9);
	border-radius: 50%;
	background: rgba(255,255,255,.9);
	color: #171b26;
	cursor: pointer;
}
.kshop-promo--topbar {
	position: relative;
	z-index: 1000000;
	width: 100%;
	background: #171b26;
}
.kshop-promo--topbar .kshop-promo__panel {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}
.kshop-promo--topbar .kshop-promo__media,
.kshop-promo--topbar .kshop-promo__content span,
.kshop-promo--topbar .kshop-promo__content p {
	display: none;
}
.kshop-promo--topbar .kshop-promo__content {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 8px 52px;
}
.kshop-promo--topbar .kshop-promo__content strong {
	margin: 0;
	color: #fff;
	font-size: 11px;
	font-weight: 500;
}
.kshop-promo--topbar .kshop-promo__content > a {
	min-height: auto;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: #fff;
	text-decoration: underline;
}
.kshop-promo--topbar .kshop-promo__close {
	top: 5px;
	right: 14px;
	border-color: rgba(255,255,255,.2);
	background: transparent;
	color: #fff;
}
@media (min-width: 768px) {
	.kshop-promo.is-device-mobile {
		display: none;
	}
}
@media (max-width: 767px) {
	.kshop-promo.is-device-desktop {
		display: none;
	}
	.kshop-promo--popup,
	.kshop-promo--popup.is-center {
		inset: auto 14px 14px;
		width: auto;
		transform: none;
	}
	.kshop-promo--popup.is-center.is-closing {
		transform: translateY(8px);
	}
	.kshop-promo__content {
		padding: 18px;
	}
	.kshop-promo__content strong {
		font-size: 19px;
	}
	.kshop-promo--topbar .kshop-promo__content {
		padding: 9px 50px 9px 14px;
		text-align: left;
	}
	.kshop-promo--topbar .kshop-promo__content strong {
		line-height: 1.45;
	}
	body.single-product .woocommerce-notices-wrapper .woocommerce-message,
	body.single-product .woocommerce-notices-wrapper .woocommerce-error,
	body.single-product .woocommerce-notices-wrapper .woocommerce-info {
		min-height: 58px;
		padding: 17px 12px 12px !important;
	}
body.single-product .woocommerce-notices-wrapper a.button.wc-forward {
		position: static;
		display: table !important;
		margin-top: 10px !important;
	}
	.kshop-cart-item__quantity {
		padding-right: 0 !important;
		padding-left: 0 !important;
	}
	.kshop-cart-item {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		width: 100%;
	}
	.kshop-cart-item__product {
		grid-column: 1 / -1;
		width: 100%;
	}
	.kshop-cart-item__details {
		min-width: 0;
	}
	.kshop-cart-item__subtotal {
		min-width: 0;
		text-align: right;
	}
	.kshop-stock-alert-box form {
		grid-template-columns: 1fr;
	}
	.kshop-product-coupon {
		align-items: flex-start;
		flex-direction: column;
	}
	.kshop-product-coupon button,
	.kshop-product-coupon form {
		width: 100%;
	}
	.kshop-checkout-coupon-list article {
		align-items: flex-start;
	}
}

.kshop-gift-item-badge {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin: 0 8px 5px 0;
	padding: 4px 7px;
	border-radius: 4px;
	background: #eef3ff;
	color: #315bea;
	font-size: 10px;
	font-weight: 500;
	vertical-align: middle;
}
.kshop-gift-item-label {
	display: block;
	margin-top: 5px;
	color: #7b8698;
	font-size: 11px;
}
.kshop-gift-item-quantity,
.kshop-gift-item-auto {
	display: inline-flex;
	align-items: center;
	min-height: 38px;
	color: #7b8698;
	font-size: 11px;
}
.kshop-product-bundle {
	margin-top: 14px;
	padding: 17px;
	border: 1px solid #e2e7ee;
	border-radius: 7px;
	background: #fbfcfe;
}
.kshop-product-bundle header {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 3px 12px;
	align-items: center;
}
.kshop-product-bundle header span {
	grid-column: 1 / -1;
	color: #315bea;
	font-size: 10px;
	font-weight: 500;
	text-transform: uppercase;
}
.kshop-product-bundle header strong {
	color: #19202d;
	font-size: 14px;
	font-weight: 500;
}
.kshop-product-bundle header small {
	color: #315bea;
	font-size: 11px;
}
.kshop-product-bundle__items {
	display: flex;
	gap: 8px;
	align-items: center;
	margin-top: 14px;
}
.kshop-product-bundle__items article {
	position: relative;
	display: grid;
	grid-template-columns: 38px minmax(0, 1fr);
	gap: 7px;
	align-items: center;
	min-width: 0;
	flex: 1;
}
.kshop-product-bundle__items img {
	width: 38px;
	height: 38px;
	border-radius: 5px;
	object-fit: cover;
}
.kshop-product-bundle__items span {
	overflow: hidden;
	color: #586476;
	font-size: 10px;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.kshop-product-bundle__items i {
	position: absolute;
	right: -8px;
	z-index: 1;
	display: grid;
	width: 16px;
	height: 16px;
	border: 1px solid #e2e7ee;
	border-radius: 50%;
	background: #fff;
	color: #7a8596;
	font-size: 7px;
	place-items: center;
}
.kshop-product-bundle__footer {
	display: flex;
	gap: 12px;
	align-items: flex-end;
	justify-content: space-between;
	margin-top: 15px;
	padding-top: 14px;
	border-top: 1px solid #e7ebf1;
}
.kshop-product-bundle__footer div {
	display: flex;
	gap: 7px;
	align-items: baseline;
	flex-wrap: wrap;
}
.kshop-product-bundle__footer del {
	color: #9aa3b0;
	font-size: 10px;
}
.kshop-product-bundle__footer strong {
	color: #19202d;
	font-size: 15px;
	font-weight: 500;
}
.kshop-product-bundle__footer small {
	color: #315bea;
	font-size: 10px;
}
.kshop-product-bundle__footer button {
	display: inline-flex;
	gap: 8px;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	padding: 0 14px;
	border: 1px solid #19202d;
	border-radius: 5px;
	background: #19202d;
	color: #fff;
	font-size: 11px;
	cursor: pointer;
	transition: background-color .2s ease, color .2s ease;
}
.kshop-product-bundle__footer button:hover {
	background: #fff;
	color: #19202d;
}
.kshop-bundle-item-badge {
	display: inline-flex;
	gap: 5px;
	align-items: center;
	margin: 0 8px 5px 0;
	padding: 4px 7px;
	border-radius: 4px;
	background: #eef3ff;
	color: #315bea;
	font-size: 10px;
	font-weight: 500;
	vertical-align: middle;
}
.kshop-bundle-item-label {
	display: block;
	margin-top: 5px;
	color: #7b8698;
	font-size: 11px;
}
.kshop-bundle-item-quantity,
.kshop-bundle-item-auto {
	display: inline-flex;
	align-items: center;
	min-height: 38px;
	color: #7b8698;
	font-size: 11px;
}
.kshop-quantity-stepper:has(.kshop-bundle-item-quantity) .kshop-qty-button {
	display: none;
}
@media (max-width: 767px) {
	.kshop-search-modal {
		padding: 28px;
	}
	.kshop-search-modal__panel {
		width: 100%;
	}
	.kshop-search-modal__close {
		top: -64px;
		width: 38px;
		height: 38px;
	}
	.kshop-search-modal__form {
		grid-template-columns: minmax(0, 1fr) 46px;
	}
	.kshop-search-modal__form input,
	.kshop-search-modal__form button {
		height: 58px;
	}
	.kshop-search-modal__form button {
		width: 46px;
		font-size: 24px;
	}
	.kshop-product-bundle__items {
		align-items: stretch;
		flex-direction: column;
	}
	.kshop-product-bundle__items article {
		width: 100%;
	}
	.kshop-product-bundle__items i {
		right: auto;
		bottom: -12px;
		left: 11px;
	}
	.kshop-product-bundle__footer {
		align-items: stretch;
		flex-direction: column;
	}
	.kshop-product-bundle__footer form,
	.kshop-product-bundle__footer button {
		width: 100%;
	}
}
