/* DESIGN RESPONSIVE PROFESSIONNEL */
.woocommerce-shipping-fields,
.woocommerce-checkout-review-order-table,
.cart-collaterals {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
}

/* CARDS TRANSPORTEURS - DESIGN UNIFORME */
.woocommerce-shipping-fields label,
.woocommerce-checkout-review-order-table .shipping_method label,
.cart-collaterals .shipping_method label,
#shipping_method li label {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	padding: 16px 20px !important;
	margin: 12px 0 !important;
	background: #ffffff !important;
	border: 2px solid #e9ecef !important;
	border-radius: 12px !important;
	font-weight: 600 !important;
	color: #343a40 !important;
	transition: all 0.3s ease !important;
	cursor: pointer !important;
	line-height: 1.5 !important;
	box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important;
	position: relative !important;
	overflow: hidden !important;
	font-size: 14px !important;
}

/* EFFET BRILLANCE AU HOVER */
.woocommerce-shipping-fields label::before,
.woocommerce-checkout-review-order-table .shipping_method label::before,
.cart-collaterals .shipping_method label::before,
#shipping_method li label::before {
	content: "" !important;
	position: absolute !important;
	top: 0 !important;
	left: -100% !important;
	width: 100% !important;
	height: 100% !important;
	background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent) !important;
	transition: left 0.6s !important;
}

/* HOVER EFFECTS */
.woocommerce-shipping-fields label:hover,
.woocommerce-checkout-review-order-table .shipping_method label:hover,
.cart-collaterals .shipping_method label:hover,
#shipping_method li label:hover {
	transform: translateY(-3px) !important;
	border-color: #6c757d !important;
	box-shadow: 0 8px 25px rgba(0,0,0,0.15) !important;
}

.woocommerce-shipping-fields label:hover::before,
.woocommerce-checkout-review-order-table .shipping_method label:hover::before,
.cart-collaterals .shipping_method label:hover::before,
#shipping_method li label:hover::before {
	left: 100% !important;
}

/* SELECTION STATES */
.woocommerce-shipping-fields input[type="radio"]:checked + label,
.woocommerce-checkout-review-order-table input[type="radio"]:checked + label,
.cart-collaterals input[type="radio"]:checked + label,
#shipping_method input[type="radio"]:checked + label {
	background: linear-gradient(135deg, #2c2c2c 0%, #1a1a1a 100%) !important;
	color: #ffffff !important;
	border-color: #2c2c2c !important;
	box-shadow: 0 6px 20px rgba(44,44,44,0.3), inset 0 1px 0 rgba(255,255,255,0.1) !important;
	transform: translateY(-2px) !important;
}

/* ICONES */
.woocommerce-shipping-fields label img,
.woocommerce-checkout-review-order-table label img,
.cart-collaterals .shipping_method label img,
#shipping_method li label img,
.shipping_method img {
	max-width: 36px !important;
	height: auto !important;
	margin-right: 15px !important;
	filter: drop-shadow(0 2px 6px rgba(0,0,0,0.1)) !important;
	transition: transform 0.2s ease !important;
}

/* ANIMATION ICONES */
.woocommerce-shipping-fields label:hover img,
.woocommerce-checkout-review-order-table .shipping_method label:hover img,
.cart-collaterals .shipping_method label:hover img,
#shipping_method li label:hover img {
	transform: scale(1.05) !important;
}

/* PRIX TYPOGRAPHY */
.woocommerce-shipping-fields label .woocommerce-Price-amount,
.woocommerce-checkout-review-order-table .shipping_method label .woocommerce-Price-amount,
.cart-collaterals .shipping_method label .woocommerce-Price-amount,
#shipping_method li label .woocommerce-Price-amount {
	font-weight: 700 !important;
	font-size: 1.2em !important;
	letter-spacing: -0.5px !important;
}

/* CACHER RADIO BUTTONS */
.woocommerce-shipping-fields input[type="radio"],
.woocommerce-checkout-review-order-table input[type="radio"],
.cart-collaterals input[type="radio"],
#shipping_method input[type="radio"] {
	position: absolute !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

/* LISTE PANIER */
#shipping_method {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

#shipping_method li {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* BORDURES COLOREES PAR TRANSPORTEUR */
.woocommerce-shipping-fields label:has(img[alt="UPS"]),
.woocommerce-checkout-review-order-table .shipping_method label:has(img[alt="UPS"]),
.cart-collaterals .shipping_method label:has(img[alt="UPS"]),
#shipping_method li label:has(img[alt="UPS"]) {
	border-left: 5px solid #8b4513 !important;
}

.woocommerce-shipping-fields label:has(img[alt="Mondial Relay"]),
.woocommerce-checkout-review-order-table .shipping_method label:has(img[alt="Mondial Relay"]),
.cart-collaterals .shipping_method label:has(img[alt="Mondial Relay"]),
#shipping_method li label:has(img[alt="Mondial Relay"]) {
	border-left: 5px solid #e60012 !important;
}

.woocommerce-shipping-fields label:has(img[alt="Chronopost"]),
.woocommerce-checkout-review-order-table .shipping_method label:has(img[alt="Chronopost"]),
.cart-collaterals .shipping_method label:has(img[alt="Chronopost"]),
#shipping_method li label:has(img[alt="Chronopost"]) {
	border-left: 5px solid #0066cc !important;
}

/* FALLBACK BORDURES PAR ORDRE */
.shipping_method:nth-child(1) label,
#shipping_method li:nth-child(1) label { 
	border-left: 5px solid #8b4513 !important;
}
.shipping_method:nth-child(2) label,
#shipping_method li:nth-child(2) label { 
	border-left: 5px solid #e60012 !important;
}
.shipping_method:nth-child(3) label,
#shipping_method li:nth-child(3) label { 
	border-left: 5px solid #0066cc !important;
}

/* REMISE PRO - DESIGN ELEGANT */
.pro-remise {
	background: transparent !important;
	border: none !important;
}

.pro-remise th,
.pro-remise td {
	padding: 14px 18px !important;
	background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%) !important;
	border: 1px solid #e9ecef !important;
	border-radius: 12px !important;
	font-size: 14px !important;
	line-height: 1.4 !important;
	box-shadow: 0 2px 8px rgba(0,0,0,0.06) !important;
}

.pro-remise th {
	border-right: none !important;
	border-top-right-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
	border-left: 4px solid #28a745 !important;
	border-top-left-radius: 12px !important;
	border-bottom-left-radius: 12px !important;
}

.pro-remise td {
	border-left: none !important;
	border-top-left-radius: 0 !important;
	border-bottom-left-radius: 0 !important;
	text-align: right !important;
	border-top-right-radius: 12px !important;
	border-bottom-right-radius: 12px !important;
}

.pro-badge {
	background: linear-gradient(45deg, #28a745, #20c997) !important;
	color: #ffffff !important;
	padding: 4px 10px !important;
	font-size: 10px !important;
	border-radius: 6px !important;
	font-weight: 700 !important;
	margin-right: 8px !important;
	letter-spacing: 0.5px !important;
	text-shadow: 0 1px 2px rgba(0,0,0,0.2) !important;
	box-shadow: 0 2px 6px rgba(40,167,69,0.3) !important;
	animation: pro-glow 3s ease-in-out infinite !important;
}

.pro-text-highlight {
	color: #2c2c2c !important;
	font-weight: 600 !important;
	font-size: 0.95em !important;
}

.pro-discount-highlight {
	color: #28a745 !important;
	font-weight: 700 !important;
	font-size: 1.05em !important;
	text-shadow: 0 1px 3px rgba(40, 167, 69, 0.3) !important;
	line-height: 1.2 !important;
	vertical-align: middle !important;
	display: inline-block !important;
}

/* PAYS NON AUTORISE */
label[for*="no_shipping"] {
	background: linear-gradient(135deg, #f8d7da 0%, #f5c6cb 100%) !important;
	border: 2px solid #dc3545 !important;
	color: #721c24 !important;
	font-weight: 700 !important;
	text-align: center !important;
	cursor: not-allowed !important;
}

/* GRILLE TARIFS PRODUIT */
.pro-grille {
	margin: 20px 0 !important;
	padding: 20px 24px !important;
	background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%) !important;
	border: 1px solid #dee2e6 !important;
	border-left: 4px solid #2c2c2c !important;
	border-radius: 12px !important;
	font-size: 14px !important;
	line-height: 1.6 !important;
	box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important;
}

/* MASQUER ELEMENTS INDESIRABLES */
.ct-shipping-progress-cart-page,
.ct-shipping-progress-checkout-page,
.ct-shipping-progress-mini-cart {
	display: none !important;
}

/* ANIMATIONS */
@keyframes pro-glow {
	0%, 100% { 
		box-shadow: 0 2px 6px rgba(40,167,69,0.3) !important; 
	}
	50% { 
		box-shadow: 0 2px 10px rgba(40,167,69,0.5) !important; 
	}
}

/* RESPONSIVE TABLETTE (768px et moins) */
@media (max-width: 768px) {
	.woocommerce-shipping-fields label,
	.woocommerce-checkout-review-order-table .shipping_method label,
	.cart-collaterals .shipping_method label,
	#shipping_method li label {
		padding: 14px 18px !important;
		margin: 10px 0 !important;
		font-size: 13px !important;
		border-radius: 10px !important;
		min-height: 65px !important;
	}
	
	.shipping_method img,
	#shipping_method li label img {
		max-width: 32px !important;
		margin-right: 12px !important;
	}
	
	.woocommerce-shipping-fields label .woocommerce-Price-amount,
	.woocommerce-checkout-review-order-table .shipping_method label .woocommerce-Price-amount,
	.cart-collaterals .shipping_method label .woocommerce-Price-amount,
	#shipping_method li label .woocommerce-Price-amount {
		font-size: 1.1em !important;
	}
	
	.pro-remise th,
	.pro-remise td {
		padding: 12px 16px !important;
		font-size: 14px !important;
	}
	
	.pro-discount-highlight {
		font-size: 1em !important;
		line-height: 1.2 !important;
	}
	
	.pro-badge {
		font-size: 9px !important;
		padding: 3px 8px !important;
	}
	
	.woocommerce-shipping-fields label:active,
	.woocommerce-checkout-review-order-table .shipping_method label:active,
	.cart-collaterals .shipping_method label:active,
	#shipping_method li label:active {
		transform: scale(0.98) !important;
	}
}

/* RESPONSIVE MOBILE (480px et moins) */
@media (max-width: 480px) {
	.woocommerce-shipping-fields label,
	.woocommerce-checkout-review-order-table .shipping_method label,
	.cart-collaterals .shipping_method label,
	#shipping_method li label {
		padding: 16px 18px !important;
		margin: 8px 0 !important;
		font-size: 14px !important;
		border-radius: 12px !important;
		min-height: 72px !important;
		flex-direction: row !important;
		align-items: center !important;
		flex-wrap: nowrap !important;
	}
	
	.shipping_method img,
	#shipping_method li label img {
		max-width: 30px !important;
		margin-right: 12px !important;
		flex-shrink: 0 !important;
	}
	
	.woocommerce-shipping-fields label .woocommerce-Price-amount,
	.woocommerce-checkout-review-order-table .shipping_method label .woocommerce-Price-amount,
	.cart-collaterals .shipping_method label .woocommerce-Price-amount,
	#shipping_method li label .woocommerce-Price-amount {
		font-size: 1.15em !important;
	}
	
	.pro-remise th,
	.pro-remise td {
		padding: 14px 16px !important;
		font-size: 14px !important;
		border-radius: 8px !important;
	}
	
	.pro-text-highlight {
		font-size: 0.9em !important;
	}
	
	.pro-discount-highlight {
		font-size: 0.95em !important;
		line-height: 1.2 !important;
	}
	
	.pro-grille {
		margin: 16px 0 !important;
		padding: 16px 18px !important;
		font-size: 13px !important;
		border-radius: 10px !important;
	}
}