<?php
// Layout duel_comparatif — design DistributionSolution : en-tête + 2 cartes
// comparatives (toiture classique vs cool roof) avec image, badge, métrique et
// arguments, puis bande de key-points à icônes + phrase de transition. Exposé
// au BO (rend le composant bespoke via le registry générique, paramétré par ces
// champs).

defined('ABSPATH') || exit;

$l = 'duel_comparatif';

return cvb_layout($l, 'Duel comparatif (2 cartes classique vs cool)', [
    cvb_clone_entete($l),

    // 2 cartes comparatives. Nom UNIQUE préfixé `duel_cartes` (anti-collision
    // WPGraphQL-ACF) → type SectionsSectionsDuelComparatifDuelCartes.
    cvb_repeater("field_cvb_{$l}_duel_cartes", 'duel_cartes', 'Cartes comparatives', [
        cvb_field("field_cvb_{$l}_duel_cartes_titre", 'titre', 'Titre', 'text', [
            'instructions' => 'Ex. « Toiture classique ».',
        ]),
        cvb_field("field_cvb_{$l}_duel_cartes_label", 'label', 'Badge (coin image)', 'text', [
            'instructions' => 'Ex. « Absorption » / « Réflexion ».',
        ]),
        cvb_select("field_cvb_{$l}_duel_cartes_tone", 'tone', 'Tonalité', [
            'warm' => 'Chaude (terracotta — classique)',
            'cool' => 'Froide (teal — cool roof)',
        ], 'warm'),
        cvb_image("field_cvb_{$l}_duel_cartes_image", 'image', 'Illustration'),
        cvb_field("field_cvb_{$l}_duel_cartes_metric", 'metric', 'Métrique — valeur', 'text', [
            'instructions' => 'Ex. « jusqu\'à 80°C ».',
        ]),
        cvb_field("field_cvb_{$l}_duel_cartes_metric_label", 'metric_label', 'Métrique — libellé', 'text', [
            'instructions' => 'Ex. « en surface ».',
        ]),
        // Arguments de la carte. Nom UNIQUE préfixé `duel_cartes_arguments`
        // (anti-collision) → type SectionsSectionsDuelComparatifDuelCartesDuelCartesArguments.
        cvb_repeater("field_cvb_{$l}_duel_cartes_arguments", 'duel_cartes_arguments', 'Arguments', [
            cvb_field("field_cvb_{$l}_duel_cartes_arguments_texte", 'texte', 'Texte', 'text'),
        ], ['max' => 4]),
    ], ['min' => 2, 'max' => 2]),

    // Bande de key-points (icône + label). Nom UNIQUE préfixé `duel_points_cles`
    // (anti-collision) → type SectionsSectionsDuelComparatifDuelPointsCles.
    cvb_repeater("field_cvb_{$l}_duel_points_cles", 'duel_points_cles', 'Points clés', [
        cvb_select_icone("field_cvb_{$l}_duel_points_cles_icone"),
        cvb_field("field_cvb_{$l}_duel_points_cles_label", 'label', 'Label', 'text'),
    ], ['max' => 4]),

    cvb_field("field_cvb_{$l}_transition", 'transition', 'Phrase de transition', 'textarea', [
        'rows'         => 2,
        'instructions' => 'Texte centré sous la bande de points clés.',
    ]),
]);
