/* =============================================================================
   Loaded on is_cart() and is_checkout().
   ============================================================================= */

/* Winkelmand + afrekenen */
.kruimelpadje i { margin: 0 5px; }

/* Winkelmand pagina */
.woocommerce { color: black; }
#winkelmand .cart { border-collapse: collapse; }

#winkelmand table.cart{
	    background: #fff;
    padding: 1rem 2rem;
	box-shadow: 0 4px 6px -2px rgba(10, 13, 18, 0.03), 0 2px 2px -1px rgba(10, 13, 18, 0.04);
}

#winkelmand .cart tbody .cart_item td,
#winkelmand .cart tbody .cart_item th {
	padding: 1rem 0 !important;
}

#winkelmand .cart tbody .cart_item td { border-bottom: none; }
#winkelmand .cart thead th,
#winkelmand .cart tbody .cart_item:last-child td {
	border-bottom: 2px solid rgba(0,0,0,0.08) !important;
}

#winkelmand .cart thead th {
	position: relative;
	color: var(--color-content-heading);
	opacity: 1;
	font-weight: 600 !important;
	padding: 0.5rem 0 !important;
}
#winkelmand .cart .cart_item > td {
	vertical-align: middle;
	border: none !important;
	text-align: center;
}
#winkelmand .cart-collaterals .cart_totals,
#afrekenen #order-summary .wpb_column:last-child .wpb_wrapper {
	background: #fff;
	border-radius: var(--site-border-radius);
	padding: 24px;
    border: 1px solid rgba(0, 0, 0, 0.08);
	box-shadow: 
		0 4px 6px -2px rgba(10, 13, 18, 0.03),
		0 2px 2px -1px rgba(10, 13, 18, 0.04);
		    margin: 0rem;
}
.woocommerce .woocommerce-betaalmethodes {
	display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.75rem;
    margin-top: 1rem;
}
.current-broodkruimel {
	font-weight: 700 !important;
	color: var(--color-content-primary) !important;
}
.woocommerce-cart-form__cart-item  .quantity { justify-content: center; }
.woocommerce .shop_table td .button{
	font-size: inherit !important;
	background: var(--color-content-primary) !important;
	/* border-radius: 50px; */
}
.woocommerce .shop_table td .button::after {
  content: "\f01e";
  font-family: "fontawesome";
  font-weight: 300;
  display: inline-block;
  margin-left: 0.6rem;
}
.woocommerce .cart_totals .checkout-button {
	/* border-radius: 50px !important; */
	background-color: #3FA34F !important;
}
.woocommerce .cart_totals .checkout-button i, 
#afrekenen button i {
    margin-left: 0.6rem;
}
#winkelmand .cart tbody tr.cart_item::nth-last-child(-n+1) { border-bottom: 2px solid rgba(0,0,0,0.08) !important; }
#winkelmand .cart tbody tr.woocommerce-cart-form__cart-item.cart_item:last-child td { border-bottom: 2px solid rgba(0,0,0,0.08) !important; }
#winkelmand .cart .cart_item > td.product-name { 
	text-align: left;
	padding: 0 1rem !important;
}
#winkelmand .cart .cart_item > td.product-thumbnail { padding: 0 !important; }
.woocommerce-cart #winkelmand .woocommerce .shop_table.cart td.product-price {
	 text-align: center; 
	font-size: 0.95rem;
	padding: 1rem 1rem !important;
}
#winkelmand .cart {
  border-collapse: separate;
  border-spacing: 0 1rem;
}
#winkelmand .cart tbody .cart_item td { border-bottom: none; }
#winkelmand .cart tbody .cart_item td,
#winkelmand .cart tbody a {
	color: black;
}
#winkelmand .woocommerce .shop_table.cart .product-price {
    text-align: center;
}

#winkelmand .cart tbody a { 
	font-weight: bold;
	font-size: 0.85rem;
 }
.woocommerce .product-thumbnail img { width: 100px; }
.woocommerce .cart_totals .shop_table { margin: 1rem 0 !important; }
.woocommerce .cart-collaterals .woocommerce-cartpage-contact-link { text-align: center; }
.woocommerce .cart-collaterals .woocommerce-cartpage-contact-link a {
	color: black;
	font-weight: bold;
}
.woocommerce .cart-collaterals .woocommerce-cartpage-contact-link a:hover { color: var(--color-content-primary); }

/* Toggle rij */
.cart-discount-toggle th {
	border: none;
}
.cart-discount-toggle > th {
	width: 100%;
}
.cart-coupon-toggle {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 0.5rem;
	padding: 0;
	border: none;
	background: none;
	color: var(--color-content-primary);
	font-weight: 500;
	cursor: pointer;
}
.cart-coupon-panel {
	display: none;
}

/* Paneel */
.cart-discount-form-row td {
	padding-top: 0.4rem;
	flex: 1;
}
.cart-coupon-fields {
	display: flex;
	gap: 0.5rem;
}
.cart-coupon-fields .input-text { flex: 1; }
.cart-coupon-toggle-icon { font-size: 0.8rem; }


/* input:focus { border-bottom-color: rgba(0, 0, 0, 0.08) !important; } */
/* input:focus:invalid { border-color: var(--color-content-primary); } */
/* input:invalid { border-bottom-color: red; } */
/* input:valid { border-bottom-color: #3FA34F; } */
/* input:placeholder-shown { border-color: #ccc; } */

.woocommerce-invalid input:not([type=submit]),
.woocommerce-invalid select {
	border-bottom-color: red !important;
}
.woocommerce-invalid input:not([type=submit]), .woocommerce-invalid select {
	box-shadow: inherit !important;
}



/* Coupon */
.cart-coupon-panel > .cart-coupon-form .cart-coupon-fields {
	position: relative;
	width: 100%;
}

.cart-coupon-panel > .cart-coupon-form .cart-coupon-fields .coupon-input {
	width: 100%;
	padding-right: 95px; /* ruimte voor de knop */
	box-sizing: border-box;
}

/* .cart-coupon-panel > .cart-coupon-form > .cart-coupon-fields > .coupon-apply-btn {
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	border: none;
	font-weight: 500;
	cursor: pointer;

	padding: inherit;
    background: transparent !important;
    color: var(--color-content-primary) !important;
    text-decoration: none;
} */

/* update/refresh icon */
.cart-coupon-panel > .cart-coupon-form .cart-coupon-fields .coupon-apply-btn:after { display: none; }

.cart-coupon-panel > .cart-coupon-form .cart-coupon-fields .coupon-apply-btn:hover {
	/* text-decoration: underline !important;
    color: var(--color-content-primary) !important; */
}



/* Cart page header */
.woocommerce .woocommerce-cart-page-header {
	display: flex;
	justify-content: space-between;
	/* align-items: center; */
}
.woocommerce .woocommerce-cart-page-title, 
#afrekenen .woocommerce-billing-fields h3,
#afrekenen .woocommerce-checkout-review-order h3 {
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 31px;
}
.woocommerce .woocommerce-cart-item-count {
	color: #CCC;
}
#afrekenen  .woocommerce-billing-fields__field-wrapper,
#afrekenen .woocommerce-shipping-fields__field-wrapper {
	grid-template-columns: 1fr 1fr;
}
#afrekenen .woocommerce-checkout-review-order-table {
	font-weight: 600;
}
#afrekenen .woocommerce-checkout-review-order-table .cart_item .product-image {
	width: 75px;
	height: 75px;
}
#afrekenen .woocommerce-checkout-review-order-table .cart_item > td { vertical-align: middle; }
#afrekenen .woocommerce-checkout-review-order-table .cart_item > td.product-name { padding: 0 1rem; }

#afrekenen .woocommerce-checkout-review-order,
.w-checkout-payment {
	color: #000;
}

.woocommerce ul#shipping_method li {
	justify-content: flex-end;
}

#afrekenen .wc_payment_methods li > label {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	font-weight: 500 !important;
}

#afrekenen li.wc_payment_method input[type="radio"] {
    width: 16px;
    height: 16px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border: 2.5px solid var(--color-content-primary);
}
#afrekenen li.wc_payment_method input[type="radio"]::before {
    height: 75%;
    width: 75%;
    margin: 0 !important;
    background: var(--color-content-primary);
}

#afrekenen li.wc_payment_method input[type="radio"]:not(:checked) {
	border: 2.5px solid rgba(0, 0, 0, 0.1);
}

#payment .woocommerce-privacy-policy-text {
	display: none !important;
}

.woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions-link {
	color: #000;
    border-bottom: 1px solid #000;
    padding-bottom: 1.5px;
}
.woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions-link:hover {
	color: var(--color-content-primary);
    border-color: var(--color-content-primary);
}


/* .woocommerce-invalid input:not([type=submit]),
.woocommerce-invalid select {
	box-shadow: 0 0 0 0px red;
} */


.woocommerce .woocommerce-cartpage-text {
	color: #000;
	font-weight: 400;
	text-align: right;
	padding: 0 1.5rem;
}
.woocommerce .woocommerce-cartpage-text p { margin: 0; }
.woocommerce .woocommerce-cartpage-text p i { margin-left: 0.3rem; }
.woocommerce .woocommerce-cartpage-text p i.fa-check { color: #3FA34F !important; }
.woocommerce .woocommerce-cart-page-header { margin-bottom: 10px; }
.woocommerce .cart_totals:not(.w-cart-totals) h2 { display: block; }
.woocommerce .cart_totals h2 {
	font-size: 1.375rem;
	font-weight: 500;
}

/* Quantity */
.woocommerce .product-quantity .quantity > input.qty {
	color: #000;
	width: auto;
	min-width: 2ch;
	max-width: 4ch;
	max-height: 2.5ch;
	padding: 0;
	box-sizing: content-box;
	text-align: center;
	line-height: inherit;
	min-height: inherit;
	border-radius: inherit;
}
.woocommerce .product-quantity .quantity > input.qty::-webkit-outer-spin-button,
.woocommerce .product-quantity .quantity > input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Actions rond quantity in winkelmand */
#winkelmand .cart .cart_item .cart-qty-actions {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.75rem;
}
#winkelmand .cart .cart_item .ykr-cart-item-remove,
#winkelmand .cart .cart_item .cart-item-favorite {
	border: 0;
	background: none;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #000;
}
#winkelmand .cart .cart_item .ykr-cart-item-remove i,
#winkelmand .cart .cart_item .cart-item-favorite i {
	font-size: 1rem;
}
#winkelmand .cart .cart_item .ykr-cart-item-remove,
#winkelmand .cart .cart_item .cart-item-favorite {
	padding: 0;
}
#winkelmand .cart .cart_item .ykr-cart-item-remove i { font-weight: 500; }
#winkelmand .cart .cart_item .cart-item-favorite i { font-weight: 500; }
#winkelmand .cart .cart_item .cart-item-favorite.is-favorite i {
	font-weight: 900;
}
/* eventueel: actieve state later als favorieten echt werken */
#winkelmand .cart .cart_item .cart-item-favorite.is-favorite i {
	color: var(--color-content-primary);
}

.woocommerce-form-login,
.woocommerce-form-register,
.woocommerce-form-coupon,
.woocommerce .track_order,
.woocommerce .lost_reset_password {
	border: unset;
    border-radius: 2px;
	background: white;
	margin: 0;
	box-shadow: unset;
}

/* Cart Quantity */
.cart-qty-box {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.10rem 0.5rem;
	border: 1px solid rgba(0,0,0,0.08);
	background: #fff;
	    border: 2px solid rgba(0, 0, 0, 0.08);
border-radius: 10px;
}
.cart-qty-box .cart-qty-button {
    display: flex;
    justify-content: center;
    align-items: center;
    background: transparent;
    cursor: pointer;
    padding: 0;
}
.cart-qty-box .cart-qty-button i {
	font-weight: 500;
	font-size: 1rem;
}
.cart-qty-box .quantity {
	margin: 0;
}
.cart-qty-box .quantity .qty {
	border: none;
	background: transparent;
	width: 2.5ch;
	text-align: center;
	padding: 0;
	box-shadow: none;
}



/* Breadcrumbs */
/* Variabelen: pas sizes/kleuren naar wens */
.breadcrumbs {
  --circle-size: 44px;
  width: 100%;
}
/* Layout */
.g-breadcrumbs {
	font-size: .875rem;
	padding: 8px 0;
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
}
.g-breadcrumbs .g-breadcrumbs-separator {
	margin: 0 7px;
	color: #9E9E9E;
	font-size: 12px;
}
.g-breadcrumbs .g-breadcrumbs-item {
	color: var(--color-content-heading);
}
.g-breadcrumbs .g-breadcrumbs-item:last-of-type a {
	color: var(--color-content-heading);
}
.g-breadcrumbs .g-breadcrumbs-item a {
	color: var(--color-content-text);
}
.g-breadcrumbs .g-breadcrumbs-item a:hover {
	color: var(--color-content-heading);
}
.breadcrumbs-list {
  list-style: none;
  margin: 0;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  position: relative;
}
/* Horizontale dotted connector - 1 lijn over de hele breedte,
   ingesnoerd aan linker/rechter kant zodat cirkels netjes aansluiten */
.breadcrumbs-list::before {
	content: "";
	position: absolute;
	top: calc(var(--circle-size) / 2);
	left: 230px;
	right: 230px;
	border-top: 3px dotted #EBEEFF;
	z-index: 1;
}
/* Elke item staat boven de lijn (z-index) en centreert zijn inhoud */
.breadcrumb-item {
	position: relative;
	z-index: 2;
	text-align: center;
	flex: 1 1 0;
	display: flex;
	flex-direction: column;
	align-items: center;
}
/* De cirkel met nummer */
.step {
	width: var(--circle-size);
	height: var(--circle-size);
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #EBEEFF;
	color: #616161;
	font-weight: 500;
	box-shadow: 0 2px 0 rgba(0,0,0,0.04);
}
/* actieve stap */
.current-breadcrumb .step {
	background: var(--color-content-primary);
	color: #fff;
	box-shadow: 0 6px 18px rgba(52,104,255,0.18);
}
/* nummer stijl (kleinere tekst in cirkel) */
.step-number {
	display: inline-block;
	font-size: 1.125rem;
	line-height: 1;
	font-family: var(--h1-font-family);
}
/* label onder de cirkel */
.step-label {
	margin-top: .6rem;
	display: block;
	font-weight: 400;
	color: #000;
	font-size: 1.125rem;
	white-space: nowrap;
}
@media (max-width: 600px) {
  .breadcrumbs-list::before {
	left: 20px;
	right: 20px;
  }
  .step {
    width: 36px;
    height: 36px;
  }
  .step-label { font-size: 0.85rem; }
}



/* Afrekenen */
#afrekenen h3 { margin-bottom: 1.5rem; }
#afrekenen .w-checkout-order-review { margin-bottom: 1.5rem !important; }
/* #afrekenen .cart_item:not(:last-child){ border-bottom: solid 1px var(--color-content-border); } */
#afrekenen .cart_item > td { padding: 0.25rem 0; }
#afrekenen .wc_payment_method { box-shadow: none !important; }
#afrekenen li.wc_payment_method > * {
	padding-left: 0 !important;
	padding-right: 0 !important;
}
#afrekenen button { width: 100%; }
#afrekenen button i { font-weight: 300; }

/* Bestelling succesvol */
#custom-details {
	display: flex;
    gap: 4rem;
}
#custom-details .order-details-row {
	order: 2;
	width: 40%;
	padding: 1rem;
	border: 20px;
	box-shadow: 0 12px 16px -4px rgba(10, 13, 18, 0.08);
}
#custom-details .shipping-details-row {
	order: 1;
	width: 60%;
}
#custom-details .shipping-details-row .thanks-for-ordering { text-align: center; }
#custom-details .order-details-row > .woocommerce-customer-details { display: none; }
#custom-details .thank-you-icon {
    display: flex;
    justify-content: center;
}
#custom-details .thank-you-icon i {
    font-size: 1.5rem;
    color: #fff;
    background: var(--color-content-primary);
    width: 4rem;
    height: 4rem;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}
#custom-details .order-meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
#custom-details .order-meta .order-meta__number { margin: 0; }
#custom-details .order-meta .order-meta__date{
  width: 100%;
  margin-top: 0.5rem;
}


/* ─── Responsive ─────────────────────────────────────────────────────────────── */

@media screen and (max-width: 600px) {

	/* Bestelling compleet */
	#bestelnummer .woocommerce-order ul {
		display: block!important;
	}

	/* Winkelmand pagina */
	.woocommerce .shop_table.cart tr {
		border-top: 2px solid rgba(0,0,0,0.08) !important;
		justify-content: space-between;
		padding-top: 1rem;
	}
	.woocommerce .woocommerce-cart-page-header {
		flex-direction: column;
		gap: 1rem;
	}
	.woocommerce .woocommerce-cartpage-text {
		padding: 0 0rem;
    	font-size: 0.9rem;
	}
	#winkelmand .cart .cart_item > td.product-name {
		padding-left: 1rem !important;
	}
	.cart-coupon-fields {
		flex-direction: column;
	}
}
