/**
 * Formulaire de commande composé — la grille des largeurs + l'habillage.
 *
 * Les blocs de champs du checkout passent en grille 12 colonnes : chaque
 * rangée prend la largeur réglée dans le composeur (classe ckwc-wNN), le
 * reste s'écoule. Les floats form-row-first/last de WooCommerce sont
 * neutralisés (le composeur a déjà retiré ces classes de ses champs, mais un
 * thème peut les reposer).
 */
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout .woocommerce-additional-fields__field-wrapper,
.woocommerce-checkout .ckwc-valid__fields {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	column-gap: 24px;
	align-items: start;
}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row,
.woocommerce-checkout .woocommerce-additional-fields__field-wrapper > .form-row,
.woocommerce-checkout .ckwc-valid__fields > .form-row {
	grid-column: span 12;
	float: none;
	width: auto;
}
.woocommerce-checkout .form-row.ckwc-w75 { grid-column: span 9; }
.woocommerce-checkout .form-row.ckwc-w66 { grid-column: span 8; }
.woocommerce-checkout .form-row.ckwc-w50 { grid-column: span 6; }
.woocommerce-checkout .form-row.ckwc-w33 { grid-column: span 4; }
.woocommerce-checkout .form-row.ckwc-w25 { grid-column: span 3; }

/* Sur mobile, tous les champs repassent en pleine largeur. */
@media (max-width: 768px) {
	.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row,
	.woocommerce-checkout .woocommerce-additional-fields__field-wrapper > .form-row,
	.woocommerce-checkout .ckwc-valid__fields > .form-row {
		grid-column: span 12 !important;
	}
}

/* Un champ conditionnel démarre masqué : la passe JS tranche (checkout-cond.js). */
.woocommerce-checkout .form-row.ckwc-cond { display: none; }

/* ── Habillage ──────────────────────────────────────────────────────────── */
.ckwc-row-heading h2, .ckwc-row-heading h3,
.ckwc-row-heading h4, .ckwc-row-heading h5 { margin: .4em 0 .2em; }
.ckwc-row-paragraph p { margin: 0 0 .6em; }
.ckwc-row-paragraph p:last-child { margin-bottom: 0; }
.ckwc-row-sep hr { border: 0; border-top: 1px solid currentColor; opacity: .18; margin: .8em 0; }
.ckwc-row-sep.is-space { min-height: 1.6em; }

/* ── Choix multiple ─────────────────────────────────────────────────────── */
.ckwc-row-checkboxes .ckwc-group-label { display: block; margin-bottom: .35em; }
.ckwc-row-checkboxes .ckwc-choices { display: flex; flex-direction: column; gap: .35em; }
.ckwc-row-checkboxes .ckwc-choice { display: flex; align-items: baseline; gap: .45em; }
.woocommerce-checkout .form-row.ckwc-inline .ckwc-choices { flex-direction: row; flex-wrap: wrap; gap: .4em 1.2em; }

/* Choix unique (radio Woo natif) côte à côte. */
.woocommerce-checkout .form-row.ckwc-inline label.radio { display: inline-flex; align-items: baseline; gap: .45em; margin-right: 1.2em; }
