.rgs-native-select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important;clip:rect(0,0,0,0)!important}
.rgs-hidden-label{display:none!important}
.rgs-group{margin:18px 0 22px;width:100%}
.rgs-title{display:flex;align-items:center;gap:9px;color:var(--rgs-text);font-size:var(--rgs-title-font);line-height:1.35;margin:0 0 14px}
.rgs-title strong{font-weight:700}.rgs-title-suffix{color:var(--rgs-muted);font-weight:400}.rgs-title-icon{width:22px;height:22px;color:var(--rgs-accent);display:inline-flex;flex:0 0 auto}.rgs-title-icon svg,.rgs-card-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.rgs-info-icon,.rgs-note-i{width:20px;height:20px;border:1.5px solid var(--rgs-info);color:var(--rgs-info);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;line-height:1;flex:0 0 auto}
.rgs-choices{display:grid;grid-template-columns:repeat(var(--rgs-cols-desktop),minmax(0,1fr));gap:var(--rgs-gap)}
.rgs-choice{appearance:none;-webkit-appearance:none;position:relative;border:1px solid var(--rgs-border);background:var(--rgs-card-bg);border-radius:var(--rgs-radius);min-height:var(--rgs-card-height);padding:var(--rgs-padding);color:var(--rgs-text);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;font-family:inherit;transition:border-color .18s,background .18s,box-shadow .18s,transform .18s,opacity .18s;width:100%}
.rgs-choice:hover{border-color:var(--rgs-hover-border);background:var(--rgs-hover-bg);color:var(--rgs-hover-text)}.rgs-group.rgs-hover .rgs-choice:hover{transform:translateY(-2px)}.rgs-group.rgs-shadow .rgs-choice:hover{box-shadow:0 8px 24px rgba(0,0,0,.08)}
.rgs-choice.is-selected{border:var(--rgs-selected-border) solid var(--rgs-accent);background:var(--rgs-accent-soft)}
.rgs-choice.is-disabled{opacity:var(--rgs-disabled-opacity);cursor:not-allowed;filter:grayscale(.25)}
.rgs-checkmark{display:none;position:absolute;right:-9px;top:-9px;width:28px;height:28px;border-radius:50%;background:var(--rgs-accent);color:#fff;align-items:center;justify-content:center;font-size:16px;font-weight:800;box-shadow:0 2px 8px rgba(0,0,0,.12);z-index:2}.rgs-choice.is-selected .rgs-checkmark{display:flex}
.rgs-card-icon{width:var(--rgs-icon-size);height:var(--rgs-icon-size);display:inline-flex;color:var(--rgs-icon)}.rgs-choice.is-selected .rgs-card-icon{color:var(--rgs-accent)}
.rgs-choice-copy{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:0}.rgs-choice-name{font-size:var(--rgs-font);font-weight:650;line-height:1.25}.rgs-choice-subtitle{font-size:var(--rgs-price-font);color:var(--rgs-muted);line-height:1.2}.rgs-choice.is-selected .rgs-choice-subtitle{color:var(--rgs-price);font-weight:650}
.rgs-badge{--rgs-badge-bg:var(--rgs-success-soft);--rgs-badge-color:var(--rgs-success);display:inline-flex;align-items:center;justify-content:center;background:var(--rgs-badge-bg);color:var(--rgs-badge-color);font-weight:800;font-size:11px;line-height:1;padding:5px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.01em}
.rgs-note{display:flex;align-items:flex-start;gap:10px;margin:13px 0 0;padding:0 0 18px;border-bottom:1px solid #ececec;color:var(--rgs-info);font-size:14px;line-height:1.5}.rgs-note-i{width:19px;height:19px;margin-top:1px}.rgs-conditions{color:var(--rgs-accent);text-decoration:underline;text-underline-offset:2px;margin-left:8px}
/* Couleurs */
.rgs-group-color .rgs-choices{display:flex;flex-wrap:wrap;gap:12px}.rgs-mode-color{min-height:0;width:auto;min-width:76px;padding:10px 12px;border-radius:12px;gap:7px}.rgs-color-dot{width:var(--rgs-color-size);height:var(--rgs-color-size);background:var(--rgs-term-color);border:2px solid #fff;box-shadow:0 0 0 1px var(--rgs-border),inset 0 0 0 1px rgba(0,0,0,.06);display:block}.rgs-shape-circle{border-radius:50%}.rgs-shape-rounded{border-radius:10px}.rgs-shape-square{border-radius:1px}.rgs-mode-color.is-selected .rgs-color-dot{box-shadow:0 0 0 2px var(--rgs-accent),inset 0 0 0 1px rgba(0,0,0,.06)}.rgs-mode-color .rgs-choice-name{font-size:13px}
/* Images */
.rgs-mode-image .rgs-image{width:var(--rgs-image-size);height:var(--rgs-image-size);display:flex;align-items:center;justify-content:center}.rgs-mode-image .rgs-image img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px}
/* Boutons compacts */
.rgs-group-button .rgs-choices{display:flex;flex-wrap:wrap}.rgs-mode-button{width:auto;min-height:46px;min-width:100px;padding:10px 16px;flex-direction:row}.rgs-mode-button .rgs-card-icon{width:24px;height:24px}
@media(max-width:1024px){.rgs-choices{grid-template-columns:repeat(var(--rgs-cols-tablet),minmax(0,1fr))}}
@media(max-width:767px){.rgs-choices{grid-template-columns:repeat(var(--rgs-cols-mobile),minmax(0,1fr));gap:10px}.rgs-choice:not(.rgs-mode-color):not(.rgs-mode-button){min-height:88px;padding:13px}.rgs-title{font-size:calc(var(--rgs-title-font) - 1px)}.rgs-note{font-size:13px}.rgs-group-color .rgs-choices{gap:10px}.rgs-mode-color{min-width:68px;padding:8px}}

/* =========================================================
   v4.1 - Correctif de positionnement / compatibilité thèmes
   Storely Pro et thèmes WooCommerce basés sur tables
   ========================================================= */

/* Le tableau des variations doit utiliser toute la largeur de la zone produit. */
form.variations_form table.variations.rgs-layout-fix,
form.cart table.variations.rgs-layout-fix{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    table-layout:auto!important;
    margin:0!important;
}
form.variations_form table.variations.rgs-layout-fix tbody,
form.cart table.variations.rgs-layout-fix tbody{
    display:block!important;
    width:100%!important;
}

/* Chaque attribut transformé devient une vraie ligne pleine largeur. */
form.variations_form table.variations.rgs-layout-fix tr.rgs-row,
form.cart table.variations.rgs-layout-fix tr.rgs-row{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
}

/* Le label WooCommerce natif ne doit plus réserver une colonne à gauche. */
form.variations_form table.variations.rgs-layout-fix tr.rgs-row > th.label,
form.variations_form table.variations.rgs-layout-fix tr.rgs-row > td.label,
form.cart table.variations.rgs-layout-fix tr.rgs-row > th.label,
form.cart table.variations.rgs-layout-fix tr.rgs-row > td.label{
    display:none!important;
    width:0!important;
    padding:0!important;
    margin:0!important;
}

/* La cellule qui contient les swatches occupe 100 %. */
form.variations_form table.variations.rgs-layout-fix tr.rgs-row > td.value,
form.variations_form table.variations.rgs-layout-fix tr.rgs-row > .value,
form.cart table.variations.rgs-layout-fix tr.rgs-row > td.value,
form.cart table.variations.rgs-layout-fix tr.rgs-row > .value{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    padding:0!important;
    margin:0!important;
    float:none!important;
    box-sizing:border-box!important;
}

/* Certains thèmes appliquent des contraintes de largeur aux champs de variations. */
.rgs-row .rgs-group{
    display:block!important;
    clear:both!important;
    float:none!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    box-sizing:border-box!important;
}
.rgs-row .rgs-choices{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    box-sizing:border-box!important;
}

/* Neutralise les styles de boutons du thème afin de garder les icônes centrées. */
.rgs-choice{
    float:none!important;
    margin:0!important;
    line-height:normal!important;
    text-transform:none!important;
    letter-spacing:normal!important;
    box-sizing:border-box!important;
    overflow:visible!important;
}
.rgs-choice .rgs-card-icon,
.rgs-choice .rgs-image,
.rgs-choice .rgs-color-dot{
    position:relative!important;
    inset:auto!important;
    margin:0 auto!important;
    float:none!important;
    flex:0 0 auto!important;
}
.rgs-choice .rgs-card-icon{
    align-items:center!important;
    justify-content:center!important;
    line-height:0!important;
}
.rgs-choice .rgs-card-icon svg{
    display:block!important;
    position:static!important;
    margin:0!important;
    transform:none!important;
}
.rgs-choice-copy{
    width:100%!important;
    min-width:0!important;
    margin:0!important;
}
.rgs-checkmark{
    margin:0!important;
    transform:none!important;
}

/* Le lien "Effacer" WooCommerce reste accessible sous les cartes. */
.rgs-row .reset_variations{
    display:inline-block!important;
    clear:both!important;
    margin-top:10px!important;
}

/* Responsive : évite les cartes ultra étroites dans Storely. */
@media(max-width:767px){
    .rgs-row .rgs-choices{
        width:100%!important;
    }
}

/* =========================================================
   v4.2 - Storely Pro : rendu hors de td.value
   ========================================================= */

/* Le tableau conserve son comportement WooCommerce normal. */
form.variations_form table.variations.rgs-layout-v42,
form.cart table.variations.rgs-layout-v42{
    width:100%!important;
    max-width:none!important;
    table-layout:fixed!important;
    border-collapse:collapse!important;
}

/* La ligne native contient toujours le select utile à WooCommerce,
   mais elle ne prend plus de place visuelle. */
form.variations_form table.variations.rgs-layout-v42 tr.rgs-source-hidden,
form.cart table.variations.rgs-layout-v42 tr.rgs-source-hidden{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important;
    clip:rect(0 0 0 0)!important;
    clip-path:inset(50%)!important;
    white-space:nowrap!important;
    border:0!important;
    padding:0!important;
    margin:-1px!important;
}

/* Nouvelle ligne visuelle pleine largeur. */
form.variations_form table.variations.rgs-layout-v42 tr.rgs-display-row,
form.cart table.variations.rgs-layout-v42 tr.rgs-display-row{
    display:table-row!important;
    width:100%!important;
    border:0!important;
    background:transparent!important;
}
form.variations_form table.variations.rgs-layout-v42 td.rgs-display-cell,
form.cart table.variations.rgs-layout-v42 td.rgs-display-cell{
    display:table-cell!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    padding:0!important;
    margin:0!important;
    float:none!important;
    vertical-align:top!important;
    box-sizing:border-box!important;
    border:0!important;
    background:transparent!important;
}

/* Le composant Retrogen ne doit hériter d'aucune largeur de cellule Storely. */
.rgs-display-cell > .rgs-group{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    float:none!important;
    clear:both!important;
    box-sizing:border-box!important;
    margin-left:0!important;
    margin-right:0!important;
}
.rgs-display-cell .rgs-choices{
    display:grid!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    grid-template-columns:repeat(var(--rgs-cols-desktop),minmax(0,1fr))!important;
    box-sizing:border-box!important;
}

/* Les modes spéciaux conservent leur mise en page. */
.rgs-display-cell .rgs-group-color .rgs-choices,
.rgs-display-cell .rgs-group-button .rgs-choices{
    display:flex!important;
    flex-wrap:wrap!important;
}

/* Neutralisation renforcée des styles Storely sur les boutons. */
.rgs-display-cell .rgs-choice{
    position:relative!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    height:auto!important;
    float:none!important;
    margin:0!important;
    box-sizing:border-box!important;
    text-align:center!important;
    vertical-align:middle!important;
}
.rgs-display-cell .rgs-mode-button,
.rgs-display-cell .rgs-mode-color{
    width:auto!important;
}
.rgs-display-cell .rgs-card-icon{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:var(--rgs-icon-size)!important;
    height:var(--rgs-icon-size)!important;
    margin:0 auto!important;
    position:relative!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    transform:none!important;
}
.rgs-display-cell .rgs-card-icon svg{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    margin:0!important;
    position:static!important;
    transform:none!important;
}
.rgs-display-cell .rgs-choice-copy{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    text-align:center!important;
}

/* Les titres utilisent toute la largeur et restent au-dessus de la grille. */
.rgs-display-cell .rgs-title,
.rgs-display-cell .rgs-note{
    width:100%!important;
    max-width:none!important;
    box-sizing:border-box!important;
}

@media(max-width:1024px){
    .rgs-display-cell .rgs-choices{
        grid-template-columns:repeat(var(--rgs-cols-tablet),minmax(0,1fr))!important;
    }
}
@media(max-width:767px){
    .rgs-display-cell .rgs-choices{
        grid-template-columns:repeat(var(--rgs-cols-mobile),minmax(0,1fr))!important;
    }
}

/* =========================================================
   v4.4 - Architecture robuste : interface HORS du tableau
   WooCommerce/Storely Pro. Le tableau natif reste dans le DOM
   pour la logique des variations, mais ne pilote plus la mise en page.
   ========================================================= */
.rgs-variation-stage{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    clear:both!important;
    float:none!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
}
.rgs-variation-stage .rgs-group{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    float:none!important;
    clear:both!important;
    margin:0 0 20px!important;
    box-sizing:border-box!important;
}
.rgs-variation-stage .rgs-title,
.rgs-variation-stage .rgs-note,
.rgs-variation-stage .rgs-choices{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
}
.rgs-variation-stage .rgs-choices{
    display:grid!important;
    grid-template-columns:repeat(var(--rgs-cols-desktop),minmax(0,1fr))!important;
    gap:var(--rgs-gap)!important;
    align-items:stretch!important;
}
.rgs-variation-stage .rgs-group-color .rgs-choices,
.rgs-variation-stage .rgs-group-button .rgs-choices{
    display:flex!important;
    flex-wrap:wrap!important;
}
.rgs-variation-stage .rgs-choice{
    appearance:none!important;
    -webkit-appearance:none!important;
    position:relative!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    min-height:var(--rgs-card-height)!important;
    float:none!important;
    margin:0!important;
    padding:var(--rgs-padding)!important;
    line-height:1.25!important;
    text-align:center!important;
    white-space:normal!important;
    box-sizing:border-box!important;
    transform:none;
}
.rgs-variation-stage .rgs-mode-color,
.rgs-variation-stage .rgs-mode-button{
    width:auto!important;
    min-height:46px!important;
}
.rgs-variation-stage .rgs-card-icon{
    display:flex!important;
    flex:0 0 var(--rgs-icon-size)!important;
    align-items:center!important;
    justify-content:center!important;
    width:var(--rgs-icon-size)!important;
    height:var(--rgs-icon-size)!important;
    max-width:var(--rgs-icon-size)!important;
    max-height:var(--rgs-icon-size)!important;
    margin:0 auto 10px!important;
    padding:0!important;
    position:static!important;
    transform:none!important;
    line-height:0!important;
}
.rgs-variation-stage .rgs-card-icon svg,
.rgs-variation-stage .rgs-title-icon svg{
    display:block!important;
    width:100%!important;
    height:100%!important;
    position:static!important;
    inset:auto!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
}
.rgs-variation-stage .rgs-choice-copy{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    text-align:center!important;
}
.rgs-variation-stage .rgs-checkmark{
    position:absolute!important;
    top:8px!important;
    right:8px!important;
    left:auto!important;
    bottom:auto!important;
    margin:0!important;
    transform:none!important;
}
/* Le select et les lignes WooCommerce restent présents pour wc-add-to-cart-variation,
   mais sont retirés uniquement de la mise en page. */
form.variations_form table.variations tr.rgs-source-hidden-v44,
form.cart table.variations tr.rgs-source-hidden-v44{
    display:none!important;
}
.rgs-source-select-hidden-v44{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important;
    clip-path:inset(50%)!important;
    white-space:nowrap!important;
}
/* Si toutes les lignes ont été transformées, la table ne doit laisser aucun blanc. */
form.variations_form table.variations:has(tr.rgs-source-hidden-v44),
form.cart table.variations:has(tr.rgs-source-hidden-v44){
    margin:0!important;
}
.rgs-reset-proxy{
    appearance:none!important;
    border:0!important;
    background:transparent!important;
    color:var(--rgs-muted)!important;
    padding:0!important;
    margin:0 0 14px!important;
    font-size:12px!important;
    text-decoration:underline!important;
    cursor:pointer!important;
}
@media(max-width:1024px){
    .rgs-variation-stage .rgs-choices{grid-template-columns:repeat(var(--rgs-cols-tablet),minmax(0,1fr))!important;}
}
@media(max-width:767px){
    .rgs-variation-stage .rgs-choices{grid-template-columns:repeat(var(--rgs-cols-mobile),minmax(0,1fr))!important;}
}

/* ==========================================================
   Retrogen Swatches Pro 4.5 — formes et couleurs d'icônes
   ========================================================== */
.rgs-card-icon{
    color:var(--rgs-term-icon-color, var(--rgs-icon))!important;
    background:var(--rgs-term-icon-bg, transparent)!important;
    box-sizing:border-box!important;
    padding:0!important;
    transition:color .18s ease,background .18s ease,transform .18s ease!important;
}
.rgs-choice.is-selected .rgs-card-icon{
    color:var(--rgs-term-icon-color, var(--rgs-accent))!important;
}
.rgs-card-icon.rgs-icon-shape-circle,
.rgs-card-icon.rgs-icon-shape-rounded,
.rgs-card-icon.rgs-icon-shape-square,
.rgs-card-icon.rgs-icon-shape-hexagon,
.rgs-card-icon.rgs-icon-shape-diamond{
    width:calc(var(--rgs-icon-size) + 16px)!important;
    height:calc(var(--rgs-icon-size) + 16px)!important;
    padding:8px!important;
    background:var(--rgs-term-icon-bg, var(--rgs-accent-soft))!important;
}
.rgs-card-icon.rgs-icon-shape-circle{border-radius:999px!important}
.rgs-card-icon.rgs-icon-shape-rounded{border-radius:14px!important}
.rgs-card-icon.rgs-icon-shape-square{border-radius:2px!important}
.rgs-card-icon.rgs-icon-shape-hexagon{
    clip-path:polygon(25% 5%,75% 5%,100% 50%,75% 95%,25% 95%,0 50%)!important;
}
.rgs-card-icon.rgs-icon-shape-diamond{
    transform:rotate(45deg)!important;
    border-radius:6px!important;
}
.rgs-card-icon.rgs-icon-shape-diamond svg{
    transform:rotate(-45deg)!important;
}
.rgs-card-icon.rgs-icon-shape-circle svg,
.rgs-card-icon.rgs-icon-shape-rounded svg,
.rgs-card-icon.rgs-icon-shape-square svg,
.rgs-card-icon.rgs-icon-shape-hexagon svg,
.rgs-card-icon.rgs-icon-shape-diamond svg{
    width:100%!important;
    height:100%!important;
}

/* ==========================================================
   Retrogen Swatches Pro 4.6 — survol configurable
   ========================================================== */
.rgs-choice:not(.is-disabled):hover{
    border-color:var(--rgs-hover-border, var(--rgs-accent))!important;
    background:var(--rgs-hover-bg, var(--rgs-card-bg))!important;
    color:var(--rgs-hover-text, var(--rgs-text))!important;
}
.rgs-choice:not(.is-disabled):hover .rgs-choice-name,
.rgs-choice:not(.is-disabled):hover .rgs-choice-subtitle{
    color:var(--rgs-hover-text, var(--rgs-text))!important;
}
.rgs-choice:not(.is-disabled):hover .rgs-card-icon{
    color:var(--rgs-term-icon-color, var(--rgs-hover-icon, var(--rgs-accent)))!important;
}
/* La sélection reste prioritaire sur le survol. */
.rgs-choice.is-selected:hover{
    border-color:var(--rgs-accent)!important;
    background:var(--rgs-accent-soft)!important;
    color:var(--rgs-text)!important;
}
.rgs-choice.is-selected:hover .rgs-choice-subtitle{color:var(--rgs-price)!important}

/* =========================================================
   v5.0 — états visuels, accessibilité et badges avancés
   ========================================================= */
.rgs-choice:hover:not(.is-disabled){
    border-color:var(--rgs-hover-border)!important;
    background:var(--rgs-hover-bg)!important;
    color:var(--rgs-hover-text)!important;
}
.rgs-choice:hover:not(.is-disabled) .rgs-card-icon{color:var(--rgs-hover-icon)!important}
.rgs-choice:hover:not(.is-disabled) .rgs-choice-subtitle{color:var(--rgs-hover-text)!important}
.rgs-choice.is-selected{
    color:var(--rgs-selected-text)!important;
}
.rgs-choice.is-selected .rgs-card-icon{color:var(--rgs-selected-icon)!important}
.rgs-choice.is-disabled,
.rgs-choice[aria-disabled="true"]{
    opacity:var(--rgs-disabled-opacity)!important;
    background:var(--rgs-disabled-bg)!important;
    border-color:var(--rgs-disabled-border)!important;
    color:var(--rgs-disabled-text)!important;
}
.rgs-choice.is-disabled .rgs-card-icon,
.rgs-choice.is-disabled .rgs-choice-subtitle,
.rgs-choice[aria-disabled="true"] .rgs-card-icon,
.rgs-choice[aria-disabled="true"] .rgs-choice-subtitle{color:var(--rgs-disabled-text)!important}
.rgs-choice:focus{outline:none!important}
.rgs-choice:focus-visible{
    outline:3px solid color-mix(in srgb,var(--rgs-focus-ring) 30%, transparent)!important;
    outline-offset:3px!important;
    box-shadow:0 0 0 2px var(--rgs-focus-ring)!important;
}
.rgs-badge-pos-top-right .rgs-badge,
.rgs-badge-pos-top-left .rgs-badge{
    position:absolute!important;
    top:8px!important;
    z-index:3!important;
    margin:0!important;
}
.rgs-badge-pos-top-right .rgs-badge{right:8px!important}
.rgs-badge-pos-top-left .rgs-badge{left:8px!important}
.rgs-badge-pos-top-right .rgs-choice-copy,
.rgs-badge-pos-top-left .rgs-choice-copy{padding-top:8px}

@media (prefers-reduced-motion:reduce){
    .rgs-choice{transition:none!important}
    .rgs-group.rgs-hover .rgs-choice:hover{transform:none!important}
}

/* v5.1 — modes frontend fiables et cohérents avec l’aperçu admin */
.rgs-choice:hover .rgs-card-icon{color:var(--rgs-hover-icon)!important}
.rgs-choice.is-selected{color:var(--rgs-selected-text)}
.rgs-choice.is-selected .rgs-card-icon{color:var(--rgs-selected-icon)!important}
.rgs-choice.is-disabled{background:var(--rgs-disabled-bg)!important;border-color:var(--rgs-disabled-border)!important;color:var(--rgs-disabled-text)!important}
.rgs-choice:focus-visible{outline:3px solid var(--rgs-focus-ring)!important;outline-offset:3px}
/* Une valeur peut avoir un mode différent du mode global de son attribut. */
.rgs-choices:has(.rgs-mode-button){align-items:stretch}
.rgs-mode-card{display:flex}
.rgs-mode-image{display:flex}
.rgs-mode-image:not(:has(.rgs-image)) .rgs-card-icon{display:inline-flex}

/* v5.2 — icônes personnalisées */
.rgs-card-icon .rgs-custom-icon-img{
  display:block;
  width:100%;
  height:100%;
  max-width:var(--rgs-icon-size);
  max-height:var(--rgs-icon-size);
  object-fit:contain;
}
