/* Styles pour les champs enfants sur la page produit */

.psw-children-container { 
	margin: 2rem 0 3rem; 
	padding: 2rem; 
	border: 2px solid #e5e7eb; 
	background: #fff; 
	border-radius: 8px;
}

.psw-children-container h3 { 
	margin-top: 0; 
	margin-bottom: 1rem;
	font-size: 1.2rem;
}

.psw-children-container .description {
	margin-bottom: 1.5rem;
	color: #666;
}

.psw-child-entry { 
	border: 2px solid #e5e7eb; 
	padding: 1.5rem; 
	margin-bottom: 1.5rem; 
	background: #fafafa; 
	border-radius: 6px;
	transition: border-color 0.2s ease;
}

.psw-child-entry:hover {
	border-color: #d1d5db;
}

.psw-child-entry:last-child {
	margin-bottom: 0;
}

.psw-child-entry h4 { 
	margin-top: 0; 
	margin-bottom: 1.25rem;
	font-size: 1.1rem;
	color: #333;
}

.psw-child-fields { 
	display: grid; 
	grid-template-columns: 1fr; 
	gap: 1.25rem; 
}

.psw-child-fields .form-row { 
	margin: 0; 
}

.psw-child-fields label { 
	display: block; 
	margin-bottom: 0.5rem; 
	font-weight: 600;
	font-size: 0.95rem;
	color: #374151;
}

.psw-child-fields label .required {
	color: #dc2626;
}

.psw-child-fields input[type="text"],
.psw-child-fields input[type="number"] { 
	width: 100%; 
	padding: 0.75rem; 
	border: 2px solid #e5e7eb;
	border-radius: 4px;
	font-size: 1rem;
	transition: border-color 0.2s ease;
}

.psw-child-fields input[type="text"]:focus,
.psw-child-fields input[type="number"]:focus {
	outline: none;
	border-color: #9ca3af;
}

/* Les champs sont déjà sur une colonne, donc pas besoin de media query pour mobile */

/* Styles pour le service de garde */

.psw-daycare-service-container {
	margin: 2rem 0 3rem;
	padding: 2rem;
	border: 2px solid #e5e7eb;
	background: #fff;
	border-radius: 8px;
}

.psw-daycare-service-container h3 {
	margin-top: 0;
	margin-bottom: 1rem;
	font-size: 1.2rem;
}

.psw-daycare-description {
	margin-bottom: 1.5rem;
	color: #666;
}

.psw-daycare-choices-frontend .form-row {
	margin: 0.75rem 0;
}

.psw-daycare-choices-frontend label {
	display: flex;
	align-items: center;
	cursor: pointer;
	font-weight: 500;
}

.psw-daycare-choices-frontend input[type="checkbox"] {
	margin-right: 0.75rem;
	width: auto;
}

/* Styles pour l'affichage dans le panier et checkout */
.psw-cart-item-list {
	margin: 0;
	padding-left: 20px;
	list-style: disc;
}

.psw-cart-item-list li {
	margin-bottom: 5px;
}

/* Aligner les labels en haut et ajouter de l'espacement */
/* Forcer align-items: flex-start pour surcharger les règles du thème (Breakdance notamment) */
dl.variation,
.woocommerce-table--order-details dl.variation,
.woocommerce-cart-form__cart-item dl.variation,
.breakdance-woocommerce dl.variation,
table.woocommerce-table dl.variation,
.woocommerce-checkout-review-order-table dl.variation {
	margin-bottom: 1rem;
	align-items: flex-start !important;
}

/* Surcharger spécifiquement pour Breakdance */
.breakdance-woocommerce dl.variation {
	align-items: flex-start !important;
}

dl.variation dt,
.woocommerce-table--order-details dl.variation dt,
.woocommerce-cart-form__cart-item dl.variation dt,
.breakdance-woocommerce dl.variation dt,
table.woocommerce-table dl.variation dt,
.woocommerce-checkout-review-order-table dl.variation dt {
	font-weight: 600;
	margin-bottom: 0.5rem;
	vertical-align: top !important;
	display: block;
	float: none;
	clear: both;
	align-self: flex-start !important;
}

dl.variation dd,
.woocommerce-table--order-details dl.variation dd,
.woocommerce-cart-form__cart-item dl.variation dd,
.breakdance-woocommerce dl.variation dd,
table.woocommerce-table dl.variation dd,
.woocommerce-checkout-review-order-table dl.variation dd {
	margin-bottom: 0.5rem;
	margin-left: 0;
	vertical-align: top !important;
	display: block;
	align-self: flex-start !important;
	width: 100%;
}

dl.variation dd:last-child,
.woocommerce-table--order-details dl.variation dd:last-child,
.woocommerce-cart-form__cart-item dl.variation dd:last-child,
.breakdance-woocommerce dl.variation dd:last-child,
table.woocommerce-table dl.variation dd:last-child,
.woocommerce-checkout-review-order-table dl.variation dd:last-child {
	margin-bottom: 0;
}
