/*
 * KBK123 Academy — WooCommerce Checkout UI Polish v1
 * Scope: WooCommerce Checkout only.
 *
 * Design source:
 * - KBK123 Academy master visual language
 * - Primary Navy: #001931
 * - Primary Blue: #227AFF
 * - Accent Red: #D80606
 *
 * Important:
 * - No checkout/payment logic is implemented here.
 * - No MasterStudy styling.
 * - No global WordPress selectors.
 * - Existing V6 "× Hapus" functionality is preserved.
 */

body.woocommerce-checkout .wp-block-woocommerce-checkout {
	--kbk123-navy: #001931;
	--kbk123-blue: #227AFF;
	--kbk123-red: #D80606;
	--kbk123-text: #1F2937;
	--kbk123-muted: #6B7280;
	--kbk123-border: #E5E7EB;
	--kbk123-surface: #FFFFFF;
	--kbk123-soft: #F8FAFC;
	--kbk123-radius: 12px;
	--kbk123-radius-sm: 8px;
	--kbk123-focus: 0 0 0 3px rgba(34, 122, 255, 0.16);
}

/* ------------------------------------------------------------
 * Checkout page container
 * ------------------------------------------------------------ */

body.woocommerce-checkout .wp-block-woocommerce-checkout {
	color: var(--kbk123-text);
}

body.woocommerce-checkout .wp-block-woocommerce-checkout h1,
body.woocommerce-checkout .wp-block-woocommerce-checkout h2,
body.woocommerce-checkout .wp-block-woocommerce-checkout h3,
body.woocommerce-checkout .wp-block-woocommerce-checkout h4 {
	color: var(--kbk123-navy);
	letter-spacing: -0.015em;
}

/* ------------------------------------------------------------
 * Section headings
 * ------------------------------------------------------------ */

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-title {
	color: var(--kbk123-navy);
	font-weight: 700;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading {
	margin-bottom: 10px;
}

/* ------------------------------------------------------------
 * Form fields
 * ------------------------------------------------------------ */

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-text-input textarea,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-combobox .components-combobox-control__input,
body.woocommerce-checkout .wp-block-woocommerce-checkout select {
	min-height: 48px;
	border: 1px solid var(--kbk123-border);
	border-radius: var(--kbk123-radius-sm);
	background: var(--kbk123-surface);
	color: var(--kbk123-text);
	box-shadow: none;
	transition:
		border-color 160ms ease,
		box-shadow 160ms ease,
		background-color 160ms ease;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-text-input input:focus,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-text-input textarea:focus,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-combobox .components-combobox-control__input:focus,
body.woocommerce-checkout .wp-block-woocommerce-checkout select:focus {
	border-color: var(--kbk123-blue);
	box-shadow: var(--kbk123-focus);
	outline: none;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-text-input label {
	color: var(--kbk123-muted);
	font-weight: 500;
}

/* ------------------------------------------------------------
 * Order summary
 * ------------------------------------------------------------ */

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-order-summary {
	border: 1px solid var(--kbk123-border);
	border-radius: var(--kbk123-radius);
	background: var(--kbk123-surface);
	overflow: hidden;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-order-summary-item {
	padding-top: 14px;
	padding-bottom: 14px;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-order-summary-item__image {
	border-radius: var(--kbk123-radius-sm);
	overflow: hidden;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-order-summary-item__description {
	color: var(--kbk123-text);
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-order-summary-item__individual-prices,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-order-summary-item__quantity {
	color: var(--kbk123-muted);
}

/* Existing V6 remove control: visual polish only. */
body.woocommerce-checkout .wp-block-woocommerce-checkout .kbk123-checkout-remove-v6 {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	margin-top: 8px;
	padding: 4px 9px;
	border: 1px solid rgba(216, 6, 6, 0.18);
	border-radius: 999px;
	background: rgba(216, 6, 6, 0.04);
	color: var(--kbk123-red);
	font-size: 12px;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
	transition:
		background-color 160ms ease,
		border-color 160ms ease,
		transform 160ms ease;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .kbk123-checkout-remove-v6:hover,
body.woocommerce-checkout .wp-block-woocommerce-checkout .kbk123-checkout-remove-v6:focus {
	border-color: rgba(216, 6, 6, 0.35);
	background: rgba(216, 6, 6, 0.08);
	text-decoration: none;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .kbk123-checkout-remove-v6:focus-visible {
	outline: none;
	box-shadow: 0 0 0 3px rgba(216, 6, 6, 0.12);
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .kbk123-checkout-remove-v6[aria-disabled="true"] {
	opacity: 0.55;
}

/* ------------------------------------------------------------
 * Totals
 * ------------------------------------------------------------ */

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-totals-wrapper {
	border-color: var(--kbk123-border);
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-totals-item__label {
	color: var(--kbk123-muted);
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-totals-item__value {
	color: var(--kbk123-navy);
	font-weight: 600;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-totals-footer-item {
	padding-top: 16px;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	color: var(--kbk123-navy);
	font-size: 18px;
	font-weight: 700;
}

/* ------------------------------------------------------------
 * Payment methods
 * ------------------------------------------------------------ */

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-radio-control {
	border-color: var(--kbk123-border);
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-radio-control__option {
	border-color: var(--kbk123-border);
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-radio-control__option-checked {
	border-color: rgba(34, 122, 255, 0.45);
	background: rgba(34, 122, 255, 0.035);
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-radio-control__option:focus-within {
	box-shadow: var(--kbk123-focus);
}

/* ------------------------------------------------------------
 * Notices / validation
 * ------------------------------------------------------------ */

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-notice-banner {
	border-radius: var(--kbk123-radius-sm);
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-validation-error {
	font-size: 13px;
}

/* ------------------------------------------------------------
 * Primary checkout button
 * ------------------------------------------------------------ */

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button .wc-block-components-button__text {
	font-weight: 700;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button {
	min-height: 52px;
	border-radius: 10px;
	background: var(--kbk123-blue);
	box-shadow: none;
	transition:
		transform 160ms ease,
		box-shadow 160ms ease,
		opacity 160ms ease;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button:hover {
	transform: translateY(-1px);
	box-shadow: 0 6px 18px rgba(0, 25, 49, 0.12);
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button:focus-visible {
	outline: none;
	box-shadow: var(--kbk123-focus);
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button:disabled {
	transform: none;
	opacity: 0.6;
}

/* ------------------------------------------------------------
 * Links
 * ------------------------------------------------------------ */

body.woocommerce-checkout .wp-block-woocommerce-checkout a:not(.kbk123-checkout-remove-v6) {
	color: var(--kbk123-blue);
}

body.woocommerce-checkout .wp-block-woocommerce-checkout a:not(.kbk123-checkout-remove-v6):hover {
	color: var(--kbk123-navy);
}

/* ------------------------------------------------------------
 * Mobile
 * ------------------------------------------------------------ */

@media (max-width: 767px) {
	body.woocommerce-checkout .wp-block-woocommerce-checkout {
		padding-left: 16px;
		padding-right: 16px;
	}

	body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-step {
		margin-bottom: 24px;
	}

	body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-order-summary {
		border-radius: 10px;
	}

	body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button {
		min-height: 54px;
		width: 100%;
	}
}

@media (max-width: 374px) {
	body.woocommerce-checkout .wp-block-woocommerce-checkout {
		padding-left: 12px;
		padding-right: 12px;
	}

	body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button {
		min-height: 52px;
	}
}

/* ------------------------------------------------------------
 * Mobile floating-widget cleanup
 *
 * Checkout only. Prevents non-checkout floating controls from
 * covering form content on narrow screens.
 * ------------------------------------------------------------ */

@media (max-width: 767px) {
	body.woocommerce-checkout #scroll-top,
	body.woocommerce-checkout #scroll_to_top,
	body.woocommerce-checkout .scroll-to-top,
	body.woocommerce-checkout .scroll_top,
	body.woocommerce-checkout .scrolltop,
	body.woocommerce-checkout .stm-scroll-top,
	body.woocommerce-checkout .stm_scroll_top,
	body.woocommerce-checkout .stm-to-top,
	body.woocommerce-checkout .to-top,
	body.woocommerce-checkout .back-to-top,
	body.woocommerce-checkout .back_to_top,
	body.woocommerce-checkout .wpfront-scroll-top-container,
	body.woocommerce-checkout .wpfront-scroll-top {
		display: none !important;
		visibility: hidden !important;
		pointer-events: none !important;
	}

	/*
	 * Common floating chat/contact widgets are intentionally hidden
	 * only on Checkout mobile so they cannot cover form controls.
	 * Desktop behavior remains unchanged.
	 */
	body.woocommerce-checkout .chaty-widget,
	body.woocommerce-checkout .chaty-widget-show,
	body.woocommerce-checkout .ht-ctc-chat,
	body.woocommerce-checkout .ht-ctc-chat-branding,
	body.woocommerce-checkout .tawk-min-container,
	body.woocommerce-checkout .crisp-client,
	body.woocommerce-checkout .tidio-chat,
	body.woocommerce-checkout .intercom-lightweight-app,
	body.woocommerce-checkout .fb_dialog,
	body.woocommerce-checkout .joinchat,
	body.woocommerce-checkout .joinchat__button,
	body.woocommerce-checkout .whatsapp-chat,
	body.woocommerce-checkout .wa-chat-box,
	body.woocommerce-checkout .floating-contact,
	body.woocommerce-checkout .floating-button {
		display: none !important;
		visibility: hidden !important;
		pointer-events: none !important;
	}

	/* Keep the checkout itself above any remaining third-party layer. */
	body.woocommerce-checkout .wp-block-woocommerce-checkout {
		position: relative;
		z-index: 2;
	}

	/* Fallback hook for small fixed widgets identified by the checkout script. */
	body.woocommerce-checkout .kbk123-checkout-mobile-floating-hidden {
		display: none !important;
		visibility: hidden !important;
		pointer-events: none !important;
	}
}

/* ------------------------------------------------------------
 * Reduced motion
 * ------------------------------------------------------------ */

@media (prefers-reduced-motion: reduce) {
	body.woocommerce-checkout .wp-block-woocommerce-checkout * {
		scroll-behavior: auto;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}

/*
 * KBK123 Academy v2
 * WooCommerce Cart UI Polish V1.2
 * Target: /online/cart/
 *
 * CSS ONLY
 * No PHP, WooCommerce logic, cart behavior, products, or checkout workflow changed.
 */

/* =========================================================
   DESIGN TOKENS
   ========================================================= */
.wp-block-woocommerce-empty-cart-block {
	--kbk123-navy: #001931;
	--kbk123-blue: #227AFF;
	--kbk123-text: #172033;
	--kbk123-border: #D9E0E8;
	--kbk123-soft-blue: #F3F7FD;
	--kbk123-white: #FFFFFF;
}

/* =========================================================
   EMPTY CART CONTAINER
   ========================================================= */
.wp-block-woocommerce-empty-cart-block {
	width: 100% !important;
	max-width: 1100px !important;
	margin: 0 auto !important;
	padding: 44px 24px 64px !important;
	box-sizing: border-box !important;
	color: #172033 !important;
}

/* =========================================================
   EMPTY CART MESSAGE
   ========================================================= */
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title {
	margin: 0 auto 20px !important;
	padding: 0 !important;
	color: #001931 !important;
	font-size: 30px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	letter-spacing: -0.02em !important;
	text-align: center !important;
	text-shadow: none !important;
}

.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title:before,
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title:after {
	display: none !important;
	content: none !important;
}

/* =========================================================
   SEPARATOR
   ========================================================= */
.wp-block-woocommerce-empty-cart-block > hr {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 auto 34px !important;
	border: 0 !important;
	border-top: 1px solid #D9E0E8 !important;
	background: transparent !important;
	opacity: 1 !important;
}

.wp-block-woocommerce-empty-cart-block > hr:before,
.wp-block-woocommerce-empty-cart-block > hr:after {
	display: none !important;
	content: none !important;
}

/* =========================================================
   NEW IN STORE
   ========================================================= */
.wp-block-woocommerce-empty-cart-block > h2:not(.wc-block-cart__empty-cart__title) {
	margin: 0 0 22px !important;
	padding: 0 !important;
	color: #001931 !important;
	font-size: 24px !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	letter-spacing: -0.01em !important;
	text-align: left !important;
	text-shadow: none !important;
}

/* =========================================================
   PRODUCT GRID
   ========================================================= */
.wp-block-woocommerce-empty-cart-block .wc-block-product-new {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 18px !important;
	box-sizing: border-box !important;
	list-style: none !important;
}

/* =========================================================
   PRODUCT CARD
   ========================================================= */
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product {
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 0 18px !important;
	box-sizing: border-box !important;
	float: none !important;
	display: flex !important;
	flex-direction: column !important;
	background: #FFFFFF !important;
	border: 1px solid #D9E0E8 !important;
	border-radius: 10px !important;
	overflow: hidden !important;
	box-shadow: none !important;
	color: #172033 !important;
	text-align: left !important;
}

/* =========================================================
   PRODUCT IMAGE
   ========================================================= */
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-link {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #001931 !important;
	text-decoration: none !important;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #F3F7FD !important;
	overflow: hidden !important;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 16 / 9 !important;
	object-fit: cover !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

/* =========================================================
   PRODUCT TITLE
   ========================================================= */
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title {
	margin: 0 !important;
	padding: 16px 16px 8px !important;
	color: #001931 !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	text-align: left !important;
	text-shadow: none !important;
}

/* =========================================================
   PRODUCT PRICE
   ========================================================= */
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price {
	margin: 0 !important;
	padding: 0 16px 14px !important;
	color: #001931 !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	text-align: left !important;
	text-shadow: none !important;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price .woocommerce-Price-amount,
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price .woocommerce-Price-currencySymbol {
	color: #001931 !important;
	opacity: 1 !important;
	font-weight: 700 !important;
	text-shadow: none !important;
}

/* =========================================================
   ADD TO CART BUTTON
   ========================================================= */
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart {
	width: auto !important;
	margin: auto 16px 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart a,
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-height: 42px !important;
	margin: 0 !important;
	padding: 10px 14px !important;
	box-sizing: border-box !important;
	border: 1px solid #227AFF !important;
	border-radius: 7px !important;
	background: #227AFF !important;
	color: #FFFFFF !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	text-align: center !important;
	text-decoration: none !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	box-shadow: none !important;
	text-shadow: none !important;
	opacity: 1 !important;
	transition: background-color 0.15s ease, border-color 0.15s ease !important;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart a:hover,
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart a:focus {
	background: #176BE8 !important;
	border-color: #176BE8 !important;
	color: #FFFFFF !important;
	text-decoration: none !important;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart a:active {
	background: #125FCF !important;
	border-color: #125FCF !important;
	color: #FFFFFF !important;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart a:before,
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart a:after {
	display: none !important;
	content: none !important;
}

/* =========================================================
   LINK / TEXT CLEANUP
   ========================================================= */
.wp-block-woocommerce-empty-cart-block a {
	text-shadow: none !important;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-link:hover .wc-block-grid__product-title {
	color: #227AFF !important;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-link:focus {
	outline: none !important;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-link:focus-visible {
	outline: 2px solid #227AFF !important;
	outline-offset: -2px !important;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width: 900px) {
	.wp-block-woocommerce-empty-cart-block {
		padding: 36px 20px 52px !important;
	}

	.wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 16px !important;
	}
}

@media (max-width: 600px) {
	.wp-block-woocommerce-empty-cart-block {
		max-width: 100% !important;
		padding: 30px 16px 44px !important;
	}

	.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title {
		margin-bottom: 18px !important;
		font-size: 25px !important;
		line-height: 1.3 !important;
	}

	.wp-block-woocommerce-empty-cart-block > hr {
		margin-bottom: 28px !important;
	}

	.wp-block-woocommerce-empty-cart-block > h2:not(.wc-block-cart__empty-cart__title) {
		margin-bottom: 18px !important;
		font-size: 21px !important;
		line-height: 1.35 !important;
		text-align: left !important;
	}

	.wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}

	.wp-block-woocommerce-empty-cart-block .wc-block-grid__product {
		width: 100% !important;
	}

	.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title {
		padding: 15px 16px 7px !important;
		font-size: 16px !important;
	}

	.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price {
		padding: 0 16px 13px !important;
		font-size: 17px !important;
	}
}

@media (max-width: 375px) {
	.wp-block-woocommerce-empty-cart-block {
		padding-left: 14px !important;
		padding-right: 14px !important;
	}

	.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title {
		font-size: 23px !important;
	}

	.wp-block-woocommerce-empty-cart-block > h2:not(.wc-block-cart__empty-cart__title) {
		font-size: 20px !important;
	}

	.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title {
		font-size: 15px !important;
	}

	.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart {
		margin-left: 14px !important;
		margin-right: 14px !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.wp-block-woocommerce-empty-cart-block *,
	.wp-block-woocommerce-empty-cart-block *:before,
	.wp-block-woocommerce-empty-cart-block *:after {
		transition: none !important;
	}
}


/* =========================================================
   KBK123 Academy v2
   WooCommerce Cart UI Polish V1.2 — FORCE LAYER
   Target: /online/cart/
   CSS ONLY — no cart logic changed.
   ========================================================= */

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block {
	width: 100% !important;
	max-width: 1120px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 44px 24px 64px !important;
	box-sizing: border-box !important;
	color: #172033 !important;
	text-align: initial !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-cart__empty-cart__title {
	display: block !important;
	width: 100% !important;
	margin: 0 auto 22px !important;
	padding: 0 !important;
	color: #001931 !important;
	font-size: 30px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	letter-spacing: -0.02em !important;
	text-align: center !important;
	text-shadow: none !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-cart__empty-cart__title svg {
	display: block !important;
	margin: 0 auto 18px !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > hr {
	display: block !important;
	width: 100% !important;
	height: 1px !important;
	margin: 0 0 34px !important;
	padding: 0 !important;
	border: 0 !important;
	border-top: 1px solid #D9E0E8 !important;
	background: transparent !important;
	opacity: 1 !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
> h2:not(.wc-block-cart__empty-cart__title) {
	display: block !important;
	width: 100% !important;
	margin: 0 0 22px !important;
	padding: 0 !important;
	color: #001931 !important;
	font-size: 24px !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	letter-spacing: -0.01em !important;
	text-align: left !important;
	text-shadow: none !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-product-new {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-grid__products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 18px !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-grid__product {
	display: flex !important;
	flex-direction: column !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 0 18px !important;
	box-sizing: border-box !important;
	float: none !important;
	border: 1px solid #D9E0E8 !important;
	border-radius: 10px !important;
	background: #FFFFFF !important;
	box-shadow: none !important;
	overflow: hidden !important;
	text-align: left !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-grid__product-link {
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #001931 !important;
	text-decoration: none !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-grid__product-image {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #F3F7FD !important;
	overflow: hidden !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-grid__product-image img {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 16 / 9 !important;
	object-fit: cover !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-grid__product-title {
	display: block !important;
	width: 100% !important;
	min-height: 68px !important;
	margin: 0 !important;
	padding: 16px 16px 8px !important;
	box-sizing: border-box !important;
	color: #001931 !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	text-align: left !important;
	text-shadow: none !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-grid__product-price,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-grid__product-price .price {
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 16px 14px !important;
	box-sizing: border-box !important;
	color: #001931 !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	text-align: left !important;
	text-shadow: none !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-grid__product-price .woocommerce-Price-amount,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-grid__product-price .woocommerce-Price-currencySymbol {
	color: #001931 !important;
	opacity: 1 !important;
	font-weight: 700 !important;
	text-shadow: none !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-grid__product-add-to-cart {
	display: block !important;
	width: auto !important;
	margin: auto 16px 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-grid__product-add-to-cart a,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-grid__product-add-to-cart .wp-block-button__link {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-height: 42px !important;
	margin: 0 !important;
	padding: 10px 14px !important;
	box-sizing: border-box !important;
	border: 1px solid #227AFF !important;
	border-radius: 7px !important;
	background: #227AFF !important;
	color: #FFFFFF !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	text-align: center !important;
	text-decoration: none !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	box-shadow: none !important;
	text-shadow: none !important;
	opacity: 1 !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-grid__product-add-to-cart a:hover,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-grid__product-add-to-cart a:focus {
	background: #176BE8 !important;
	border-color: #176BE8 !important;
	color: #FFFFFF !important;
	text-decoration: none !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-grid__product-add-to-cart a:active {
	background: #125FCF !important;
	border-color: #125FCF !important;
	color: #FFFFFF !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-grid__product-add-to-cart a::before,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-grid__product-add-to-cart a::after {
	display: none !important;
	content: none !important;
}

@media (max-width: 900px) {
	body.woocommerce-cart .wp-block-woocommerce-empty-cart-block {
		max-width: 100% !important;
		padding: 36px 20px 52px !important;
	}

	body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
	.wc-block-grid__products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 16px !important;
	}
}

@media (max-width: 600px) {
	body.woocommerce-cart .wp-block-woocommerce-empty-cart-block {
		padding: 30px 16px 44px !important;
	}

	body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
	.wc-block-cart__empty-cart__title {
		font-size: 25px !important;
	}

	body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
	> h2:not(.wc-block-cart__empty-cart__title) {
		font-size: 21px !important;
	}

	body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
	.wc-block-grid__products {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}

	body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
	.wc-block-grid__product-title {
		min-height: 0 !important;
		font-size: 16px !important;
	}

	/* Cart mobile: remove common floating controls that can cover content. */
	body.woocommerce-cart #scroll-top,
	body.woocommerce-cart #scroll_to_top,
	body.woocommerce-cart .scroll-to-top,
	body.woocommerce-cart .scroll_top,
	body.woocommerce-cart .scrolltop,
	body.woocommerce-cart .stm-scroll-top,
	body.woocommerce-cart .stm_scroll_top,
	body.woocommerce-cart .stm-to-top,
	body.woocommerce-cart .to-top,
	body.woocommerce-cart .back-to-top,
	body.woocommerce-cart .back_to_top,
	body.woocommerce-cart .wpfront-scroll-top-container,
	body.woocommerce-cart .wpfront-scroll-top,
	body.woocommerce-cart .chaty-widget,
	body.woocommerce-cart .chaty-widget-show,
	body.woocommerce-cart .ht-ctc-chat,
	body.woocommerce-cart .ht-ctc-chat-branding,
	body.woocommerce-cart .tawk-min-container,
	body.woocommerce-cart .crisp-client,
	body.woocommerce-cart .tidio-chat,
	body.woocommerce-cart .intercom-lightweight-app,
	body.woocommerce-cart .fb_dialog,
	body.woocommerce-cart .joinchat,
	body.woocommerce-cart .joinchat__button,
	body.woocommerce-cart .whatsapp-chat,
	body.woocommerce-cart .wa-chat-box,
	body.woocommerce-cart .floating-contact,
	body.woocommerce-cart .floating-button {
		display: none !important;
		visibility: hidden !important;
		pointer-events: none !important;
	}
}

@media (max-width: 375px) {
	body.woocommerce-cart .wp-block-woocommerce-empty-cart-block {
		padding-left: 14px !important;
		padding-right: 14px !important;
	}

	body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
	.wc-block-cart__empty-cart__title {
		font-size: 23px !important;
	}

	body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
	> h2:not(.wc-block-cart__empty-cart__title) {
		font-size: 20px !important;
	}

	body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
	.wc-block-grid__product-title {
		font-size: 15px !important;
	}

	body.woocommerce-cart .wp-block-woocommerce-empty-cart-block
	.wc-block-grid__product-add-to-cart {
		margin-left: 14px !important;
		margin-right: 14px !important;
	}
}
