/* ==========================================================================
   Zentrix — design system (thèmes DaisyUI + quelques compléments)
   Une seule couleur d'action (primary), des neutres slate, bordures > ombres.
   ========================================================================== */

/* ---------- Thème clair ---------- */
html[data-theme="zentrix"] {
    color-scheme: light;
    --color-base-100: #ffffff;
    --color-base-200: #f8fafc;
    --color-base-300: #e2e8f0;
    --color-base-content: #0f172a;
    --color-primary: #2563eb;
    --color-primary-content: #ffffff;
    --color-secondary: #475569;
    --color-secondary-content: #ffffff;
    --color-accent: #2563eb;
    --color-accent-content: #ffffff;
    --color-neutral: #0f172a;
    --color-neutral-content: #f8fafc;
    --color-info: #0369a1;
    --color-info-content: #ffffff;
    --color-success: #15803d;
    --color-success-content: #ffffff;
    --color-warning: #b45309;
    --color-warning-content: #ffffff;
    --color-error: #dc2626;
    --color-error-content: #ffffff;
    --zx-hover: #f1f5f9;
    --zx-shadow: 0 1px 2px rgb(15 23 42 / 0.04), 0 8px 24px -12px rgb(15 23 42 / 0.12);
}

/* ---------- Thème sombre ---------- */
html[data-theme="zentrix-dark"] {
    color-scheme: dark;
    --color-base-100: #111827;
    --color-base-200: #0b1120;
    --color-base-300: #243045;
    --color-base-content: #e2e8f0;
    --color-primary: #3b82f6;
    --color-primary-content: #ffffff;
    --color-secondary: #94a3b8;
    --color-secondary-content: #0b1120;
    --color-accent: #3b82f6;
    --color-accent-content: #ffffff;
    --color-neutral: #e2e8f0;
    --color-neutral-content: #0b1120;
    --color-info: #38bdf8;
    --color-info-content: #0b1120;
    --color-success: #22c55e;
    --color-success-content: #052e16;
    --color-warning: #f59e0b;
    --color-warning-content: #1c1003;
    --color-error: #f87171;
    --color-error-content: #2a0606;
    --zx-hover: #1a2335;
    --zx-shadow: 0 1px 2px rgb(0 0 0 / 0.3), 0 12px 32px -12px rgb(0 0 0 / 0.6);
}

/* ---------- Géométrie commune (variables DaisyUI 5) ---------- */
html[data-theme] {
    --radius-selector: 0.375rem;
    --radius-field: 0.5rem;
    --radius-box: 0.75rem;
    --size-selector: 0.25rem;
    --size-field: 0.25rem;
    --border: 1px;
    --depth: 0;
    --noise: 0;
}

/* ---------- Base ---------- */
html { -webkit-text-size-adjust: 100%; }
body {
    font-family: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
    font-feature-settings: "cv11", "ss01";
    background: var(--color-base-200);
    color: var(--color-base-content);
    -webkit-font-smoothing: antialiased;
}
.tabular { font-variant-numeric: tabular-nums; }

/* Focus clavier toujours visible, jamais au clic souris */
:focus-visible:not(.input, .select, .textarea, .file-input, .checkbox, .radio, .toggle, .range) {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}

/* Champs composés DaisyUI (<label class="input"><input>) : l'anneau de focus est porté par le label */
:is(label.input, label.select) :is(input, select):focus-visible { outline: none; }

/* Focus des champs DaisyUI : couleur d'action plutôt que la couleur du texte */
:is(.input, .select, .textarea, .file-input):is(:focus, :focus-within) {
    --input-color: var(--color-primary);
    outline-width: 1px;
    outline-offset: 0;
}

/* ---------- Surfaces ---------- */
.zx-card {
    background: var(--color-base-100);
    border: 1px solid var(--color-base-300);
    border-radius: var(--radius-box);
}
.zx-elevated { box-shadow: var(--zx-shadow); }

/* ---------- Navigation latérale ---------- */
.zx-nav-link {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 0.75rem;
    border-radius: var(--radius-field);
    font-size: 0.875rem;
    font-weight: 500;
    color: color-mix(in oklab, var(--color-base-content) 72%, transparent);
    transition: background-color .15s ease, color .15s ease;
}
.zx-nav-link:hover { background: var(--zx-hover); color: var(--color-base-content); }
.zx-nav-link.is-active {
    background: color-mix(in oklab, var(--color-primary) 10%, transparent);
    color: var(--color-primary);
}

/* ---------- Tableaux ---------- */
.zx-table { width: 100%; font-size: 0.875rem; }
.zx-table thead th {
    text-align: left;
    font-size: 0.75rem;
    font-weight: 500;
    color: color-mix(in oklab, var(--color-base-content) 62%, transparent);
    padding: 0.625rem 1rem;
    border-bottom: 1px solid var(--color-base-300);
    background: var(--color-base-200);
    white-space: nowrap;
}
.zx-table tbody td { padding: 0.75rem 1rem; border-bottom: 1px solid var(--color-base-300); vertical-align: middle; }
.zx-table tbody tr:last-child td { border-bottom: 0; }
.zx-table tbody tr { transition: background-color .12s ease; }
.zx-table tbody tr:hover { background: var(--zx-hover); }

/* ---------- Onglets d'un espace de module ---------- */
.zx-tabs { position: relative; border-bottom: 1px solid var(--color-base-300); }
.zx-tabs ul { display: flex; gap: 1.5rem; overflow-x: auto; scrollbar-width: none; }
.zx-tabs ul::-webkit-scrollbar { display: none; }
.zx-tab {
    display: inline-flex; align-items: center; gap: 0.5rem;
    height: 2.5rem; margin-bottom: -1px; white-space: nowrap;
    font-size: 0.875rem; font-weight: 500;
    color: color-mix(in oklab, var(--color-base-content) 62%, transparent);
    border-bottom: 2px solid transparent;
    transition: color .15s ease;
}
.zx-tab:hover { color: var(--color-base-content); }
.zx-tab.is-active { color: var(--color-base-content); border-bottom-color: var(--color-primary); }
/* Avec JS, un indicateur unique glisse d'un onglet à l'autre */
.zx-tabs.has-ind .zx-tab.is-active { border-bottom-color: transparent; }
.zx-tabs-ind {
    position: absolute; left: 0; bottom: -1px; height: 2px; width: 0;
    background: var(--color-primary); border-radius: 2px; pointer-events: none;
}

/* ---------- Pastilles d'état ---------- */
.zx-badge {
    display: inline-flex; align-items: center; gap: 0.375rem;
    font-size: 0.75rem; font-weight: 500; line-height: 1.25rem; white-space: nowrap;
}
.zx-dot { width: 0.375rem; height: 0.375rem; border-radius: 9999px; background: currentColor; flex-shrink: 0; }
.zx-badge-success { color: var(--color-success); }
.zx-badge-warning { color: var(--color-warning); }
.zx-badge-error { color: var(--color-error); }
.zx-badge-neutre { color: color-mix(in oklab, var(--color-base-content) 65%, transparent); }
.zx-badge-neutre .zx-dot { background: color-mix(in oklab, var(--color-base-content) 35%, transparent); }

/* ---------- Indicateurs chiffrés ---------- */
.zx-stat { display: block; padding: 1rem 1.25rem; }
a.zx-stat { transition: border-color .15s ease, background-color .15s ease; }
a.zx-stat:hover { border-color: color-mix(in oklab, var(--color-base-content) 22%, transparent); }
.zx-stat[aria-current="true"] {
    border-color: var(--color-primary);
    box-shadow: inset 0 0 0 1px var(--color-primary);
}

/* ---------- Panneau latéral (consultation sans quitter la liste) ---------- */
dialog.zx-panel {
    margin: 0 0 0 auto; padding: 0; border: 0;
    width: min(100%, 30rem); height: 100dvh; max-height: 100dvh; max-width: 100%;
    background: transparent; color: var(--color-base-content); overflow: visible;
}
dialog.zx-panel::backdrop { background: rgb(15 23 42 / 0.35); }
dialog.zx-panel[open] { display: flex; }
.zx-panel-box {
    display: flex; flex-direction: column; width: 100%; height: 100%;
    background: var(--color-base-100); border-left: 1px solid var(--color-base-300);
    box-shadow: var(--zx-shadow);
}

/* ---------- Chronologie (mouvements, historique) ---------- */
.zx-timeline > li { position: relative; display: flex; gap: 0.75rem; padding-bottom: 1rem; }
.zx-timeline > li:not(:last-child)::before {
    content: ""; position: absolute; left: 0.9375rem; top: 2rem; bottom: 0.25rem;
    width: 1px; background: var(--color-base-300);
}
.zx-timeline-icon {
    width: 2rem; height: 2rem; flex-shrink: 0; border-radius: 9999px;
    display: flex; align-items: center; justify-content: center;
    background: var(--color-base-200); border: 1px solid var(--color-base-300);
    color: color-mix(in oklab, var(--color-base-content) 65%, transparent);
}

/* ---------- Encaissement : champs Mobile Money seulement si ce mode est choisi ---------- */
.zx-paiement .zx-mm { display: none; }
.zx-paiement:has(input[name="mode"][value="mobile_money"]:checked) .zx-mm { display: grid; }

/* ---------- Carte de choix (radio) : la carte cochée prend la couleur d'action ---------- */
.zx-choix:has(:checked) {
    border-color: var(--color-primary);
    background: color-mix(in oklab, var(--color-primary) 5%, transparent);
}
.zx-choix:has(:focus-visible) { outline: 2px solid var(--color-primary); outline-offset: 2px; }

/* ---------- Jauge (crédit utilisé, progression) ---------- */
.zx-jauge { height: 0.25rem; border-radius: 9999px; background: var(--color-base-300); overflow: hidden; }
.zx-jauge > span { display: block; height: 100%; border-radius: inherit; background: color-mix(in oklab, var(--color-base-content) 45%, transparent); }
.zx-jauge.is-warning > span { background: var(--color-warning); }
.zx-jauge.is-error > span { background: var(--color-error); }

/* ---------- Squelette de chargement ---------- */
.zx-skeleton {
    border-radius: var(--radius-field);
    background: linear-gradient(90deg, var(--color-base-200) 25%, var(--color-base-300) 50%, var(--color-base-200) 75%);
    background-size: 200% 100%; animation: zx-shimmer 1.4s ease-in-out infinite;
}
@keyframes zx-shimmer { from { background-position: 200% 0; } to { background-position: -200% 0; } }

/* ---------- Barre de progression HTMX ---------- */
#zx-progress {
    position: fixed; inset: 0 0 auto 0; height: 2px; z-index: 80;
    background: var(--color-primary); transform-origin: left;
    opacity: 0; transition: opacity .2s ease;
    pointer-events: none;
}
#zx-progress.htmx-request, .htmx-request #zx-progress { opacity: 1; animation: zx-progress 1.2s ease-in-out infinite; }
@keyframes zx-progress {
    0% { transform: scaleX(0); } 50% { transform: scaleX(.6); } 100% { transform: scaleX(.95); }
}

/* ---------- États de chargement des formulaires ---------- */
.zx-spin { display: none; }
form.htmx-request .zx-spin, form.is-loading .zx-spin { display: inline-block; }
form.htmx-request [type="submit"], form.is-loading [type="submit"] { pointer-events: none; opacity: .75; }

/* ---------- Toasts ---------- */
#zx-toasts { pointer-events: none; }
#zx-toasts > * { pointer-events: auto; }
/* L'entrée des notifications est animée par GSAP (Zx.toast) : on coupe l'animation CSS de DaisyUI,
   qui partait de opacity 0 / scale(0.9) et entrait en conflit avec elle (notifications restées invisibles). */
#zx-toasts > * { animation: none; }

/* ---------- Thème : icône de la bascule ---------- */
html[data-theme="zentrix-dark"] .zx-theme-light, html[data-theme="zentrix"] .zx-theme-dark { display: none; }

/* ---------- Divers ---------- */
.lucide { stroke-width: 1.75; }
.scrollbar-none { scrollbar-width: none; }
.scrollbar-none::-webkit-scrollbar { display: none; }
[x-cloak], [hidden] { display: none !important; }

/* Champ en erreur (validation HTML5 après interaction) */
.input:user-invalid, .select:user-invalid, .textarea:user-invalid { border-color: var(--color-error); }

/* Impression du reçu uniquement */
@media print {
    body * { visibility: hidden !important; }
    #zx-receipt, #zx-receipt * { visibility: visible !important; }
    #zx-receipt { position: absolute; inset: 0; padding: 1rem; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

/* Assistant en étapes (inscription) : sans JavaScript, toutes les étapes restent visibles et les boutons de navigation sont masqués */
form[data-assistant]:not(.zx-assistant-actif) [data-assistant-seul] { display: none; }

/* ---------------------------------------------------------------- Centre d'aide */
/* Texte des tutoriels (Markdown simple rendu par tutoriels/contenu.py) */
.zx-prose { line-height: 1.65; }
.zx-prose > * + * { margin-top: 0.75em; }
.zx-prose h3 { font-weight: 600; font-size: 1.05rem; margin-top: 1.25em; }
.zx-prose h4 { font-weight: 600; margin-top: 1em; }
.zx-prose ul { list-style: disc; padding-left: 1.25rem; }
.zx-prose ol { list-style: decimal; padding-left: 1.25rem; }
.zx-prose li + li { margin-top: 0.25em; }
.zx-prose strong { font-weight: 600; color: var(--color-base-content); }
.zx-kbd {
    display: inline-block; padding: 0 0.4em; border-radius: 0.375rem; font-size: 0.85em; font-family: inherit;
    font-weight: 500; border: 1px solid var(--color-base-300); background: var(--color-base-200); white-space: nowrap;
}

/* Visite guidée (Zx.visite) : voile, élément mis en lumière, bulle d'explication */
.zx-visite-voile { position: fixed; inset: 0; z-index: 90; }
.zx-visite-trou {
    position: fixed; z-index: 91; border-radius: 0.75rem; pointer-events: none;
    box-shadow: 0 0 0 9999px rgb(2 6 23 / 0.55), 0 0 0 2px var(--color-primary);
}
.zx-visite-bulle {
    position: fixed; z-index: 92; padding: 1rem; border-radius: var(--radius-box, 0.75rem);
    background: var(--color-base-100); border: 1px solid var(--color-base-300);
    box-shadow: 0 12px 32px rgb(2 6 23 / 0.25);
}

/* Bouton « Aide » flottant : au-dessus de la barre d'actions mobile quand elle est présente */
.zx-aide { position: fixed; right: 1rem; bottom: 1rem; z-index: 35; }
.zx-avec-dock .zx-aide { bottom: 5.5rem; }
@media (min-width: 1024px) { .zx-avec-dock .zx-aide { bottom: 1rem; } }

/* ---------- Sections repliables des fiches (informations facultatives) ---------- */
.zx-section {
    grid-column: 1 / -1;
    border: 1px solid var(--color-base-300);
    border-radius: var(--radius-box);
    margin-top: 0.75rem;
    background: var(--color-base-100);
}
.zx-section > summary {
    list-style: none;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    cursor: pointer;
    border-radius: var(--radius-box);
    user-select: none;
}
.zx-section > summary::-webkit-details-marker { display: none; }
.zx-section > summary:hover { background: var(--zx-hover); }
.zx-section > summary:focus-visible { outline: 2px solid var(--color-primary); outline-offset: -2px; }
.zx-section-icone {
    display: flex; align-items: center; justify-content: center;
    width: 2rem; height: 2rem; flex-shrink: 0;
    border-radius: var(--radius-field);
    background: var(--color-base-200);
    color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
}
.zx-section-chevron { transition: transform .2s ease; color: color-mix(in oklab, var(--color-base-content) 50%, transparent); }
.zx-section[open] > summary .zx-section-chevron { transform: rotate(180deg); }
.zx-section[open] > summary { border-bottom: 1px solid var(--color-base-300); border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
.zx-section-corps {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    column-gap: 1rem;
    row-gap: 0.25rem;
    padding: 0.75rem 1rem 1rem;
}
@media (min-width: 640px) { .zx-section-corps { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.zx-section-compteur { font-variant-numeric: tabular-nums; }

/* Jauge de complétude d'une fiche */
.zx-completude { height: 0.375rem; border-radius: 9999px; background: var(--color-base-200); overflow: hidden; }
.zx-completude > span { display: block; height: 100%; border-radius: inherit; background: var(--color-primary); transition: width .4s ease; }
.zx-completude[data-niveau="haut"] > span { background: var(--color-success); }
.zx-completude[data-niveau="bas"] > span { background: var(--color-warning); }

/* ==========================================================================
   Préférences d'affichage (Utilisateurs/affichage.py) : attributs data-* posés sur <html>
   ========================================================================== */

/* Taille du texte : tout est en rem, l'interface entière suit (texte, boutons, espacements) */
html[data-texte="petit"] { font-size: 87.5%; }
html[data-texte="grand"] { font-size: 112.5%; }
html[data-texte="tres_grand"] { font-size: 125%; }

/* Densité compacte : champs, tableaux et listes plus serrés */
html[data-densite="compacte"] { --size-field: 0.215rem; --size-selector: 0.22rem; }
html[data-densite="compacte"] .zx-table tbody td { padding: 0.4rem 0.75rem; }
html[data-densite="compacte"] .zx-table thead th { padding: 0.45rem 0.75rem; }
html[data-densite="compacte"] .fieldset { padding-block: 0.15rem; }
html[data-densite="compacte"] :is(ul, ol).divide-y > li > :is(a, div):first-child,
html[data-densite="compacte"] :is(ul, ol).divide-y > li.py-3 { padding-block: 0.5rem; }

/* Police */
html[data-police="systeme"] body { font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; font-feature-settings: normal; }
html[data-police="lisible"] body { font-family: "Atkinson Hyperlegible", "Inter", ui-sans-serif, system-ui, sans-serif; font-feature-settings: normal; letter-spacing: 0.01em; }

/* Contraste renforcé : textes secondaires presque pleins, bordures et focus plus marqués */
html[data-contraste="eleve"][data-theme="zentrix"] { --color-base-300: #94a3b8; --color-base-200: #f1f5f9; }
html[data-contraste="eleve"][data-theme="zentrix-dark"] { --color-base-300: #64748b; --color-base-content: #f8fafc; }
html[data-contraste="eleve"] [class*="text-base-content/"] { color: color-mix(in oklab, var(--color-base-content) 90%, transparent) !important; }
html[data-contraste="eleve"] :is(.input, .select, .textarea)::placeholder,
html[data-contraste="eleve"] .input input::placeholder { color: color-mix(in oklab, var(--color-base-content) 70%, transparent); }
html[data-contraste="eleve"] :focus-visible:not(.input, .select, .textarea, .file-input, .checkbox, .radio, .toggle, .range) { outline-width: 3px; }

/* Animations réduites */
html[data-animations="reduites"] *,
html[data-animations="reduites"] *::before,
html[data-animations="reduites"] *::after {
    animation-duration: 0.01ms !important; animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important; scroll-behavior: auto !important;
}

/* Liens soulignés dans le contenu (pas les boutons, menus ni cartes cliquables) */
html[data-liens="soulignes"] #page a:not(.btn, .zx-card, .zx-tab, .badge, .menu a, [class*="flex"]),
html[data-liens="soulignes"] #page .link { text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }

/* Aperçu de la page Affichage : choix sous forme de cases */
.zx-choix { display: grid; gap: 0.5rem; grid-template-columns: repeat(auto-fit, minmax(8.5rem, 1fr)); }
.zx-choix label {
    display: flex; align-items: center; gap: 0.6rem; padding: 0.6rem 0.75rem; cursor: pointer;
    border: 1px solid var(--color-base-300); border-radius: var(--radius-field); font-size: 0.875rem;
    transition: border-color .12s ease, background-color .12s ease;
}
.zx-choix label:hover { background: var(--zx-hover); }
.zx-choix label:has(:checked) { border-color: var(--color-primary); background: color-mix(in oklab, var(--color-primary) 7%, transparent); }
.zx-choix label:has(:focus-visible) { outline: 2px solid var(--color-primary); outline-offset: 2px; }

/* Barre d'accès rapide du bas (vendeurs) : réservée aux écrans étroits. DaisyUI impose display:flex à .dock,
   ce qui l'emportait sur la classe Tailwind lg:hidden. */
@media (min-width: 64rem) { .dock.lg\:hidden { display: none; } }

/* ---------- Apparence de l'entreprise (Administration › Apparence) ---------- */
.zx-choix-couleur {
    display: flex; align-items: center; gap: 0.6rem; padding: 0.6rem 0.75rem; cursor: pointer;
    border: 1px solid var(--color-base-300); border-radius: var(--radius-field);
    transition: border-color .15s ease, background-color .15s ease;
}
.zx-choix-couleur:hover { background: var(--zx-hover); }
.zx-choix-couleur:has(:checked) { border-color: var(--color-primary); box-shadow: inset 0 0 0 1px var(--color-primary);
                                  background: color-mix(in oklab, var(--color-primary) 6%, transparent); }
.zx-choix-couleur:has(:focus-visible) { outline: 2px solid var(--color-primary); outline-offset: 2px; }

/* ---------- Aide contextuelle : bouton « ? » et bulle (Zx.aide, Home/aide_contextuelle.py) ---------- */
.zx-aide-hote.fieldset-legend { justify-content: flex-start; gap: 0.35rem; }
.zx-aide-btn {
    display: inline-flex; align-items: center; justify-content: center; flex: none;
    width: 1.15rem; height: 1.15rem; margin-inline-start: 0.35rem; vertical-align: middle;
    border-radius: 9999px; border: 1px solid color-mix(in oklab, var(--color-base-content) 30%, transparent);
    background: transparent; color: color-mix(in oklab, var(--color-base-content) 65%, transparent);
    font-size: 0.7rem; font-weight: 600; line-height: 1; cursor: pointer;
    transition: color .12s ease, border-color .12s ease, background-color .12s ease;
}
.zx-aide-btn:hover, .zx-aide-btn[aria-expanded="true"] {
    color: var(--color-primary); border-color: var(--color-primary);
    background: color-mix(in oklab, var(--color-primary) 10%, transparent);
}
.zx-aide-btn:focus-visible { outline: 2px solid var(--color-primary); outline-offset: 2px; }
/* Zone de clic confortable au doigt sans grossir le rond */
.zx-aide-btn { position: relative; }
.zx-aide-btn::after { content: ""; position: absolute; inset: -0.6rem; }

.zx-aide-bulle {
    position: fixed; inset: auto; margin: 0; z-index: 120; max-width: min(22rem, calc(100vw - 1rem));
    padding: 0.75rem 0.9rem; border-radius: var(--radius-box, 0.75rem);
    background: var(--color-base-100); color: var(--color-base-content);
    border: 1px solid var(--color-base-300); box-shadow: 0 10px 30px -10px rgb(0 0 0 / 0.35);
    font-size: 0.875rem; line-height: 1.45; text-align: start; font-weight: 400;
}
.zx-aide-bulle-titre { font-weight: 600; margin-bottom: 0.2rem; }
.zx-aide-bulle-texte { color: color-mix(in oklab, var(--color-base-content) 80%, transparent); }
/* Indications sous les champs : DaisyUI les garde sur une ligne (white-space: nowrap), ce qui fait déborder la page
   sur téléphone quand le texte est long */
.fieldset p.label { white-space: normal; }
/* Offre attribuée par la plateforme : détails masqués pour « Plus tard », moyen de paiement seulement si payée */
[data-mode-offre]:has(input[name="mode"][value="aucune"]:checked) [data-si-offre] { display: none; }
[data-mode-offre]:not(:has(input[name="mode"][value="paye"]:checked)) [data-si-paye] { display: none; }
[data-statut-facture]:not(:has(input[name="statut"][value="paye"]:checked)) [data-si-paye] { display: none; }
/* Code de validation Orange Burkina : seulement quand Orange Money est choisi */
form:not(:has(input[name="methode"][value="ORANGE_BFA"]:checked)) [data-code-operateur="ORANGE_BFA"] { display: none; }
