.strict-help-trigger{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin-left:8px;border:1px solid #61a9d9;border-radius:50%;background:#274e6c;color:#fff;font-size:17px;font-weight:700;cursor:pointer;vertical-align:middle}
.strict-help-trigger:hover,.strict-help-trigger:focus-visible{background:#2989cc;outline:2px solid #e4a6bf;outline-offset:2px}
.strict-modal[hidden]{display:none}
.strict-modal{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:16px}
.strict-modal__shade{position:absolute;inset:0;background:rgba(6,11,20,.86);backdrop-filter:blur(5px)}
.strict-modal__panel{position:relative;box-sizing:border-box;width:min(100%,930px);max-height:calc(100vh - 32px);overflow-y:auto;border:1px solid #52718b;border-radius:16px;background:linear-gradient(145deg,#242d3c 0%,#292a38 65%,#49313e 100%);color:#f1f5fa;box-shadow:0 24px 80px rgba(0,0,0,.65);padding:32px 36px;font-size:16px;line-height:1.55}
.strict-modal__panel h2{margin:0 42px 12px 0;color:#fff;font-size:30px;font-weight:600;line-height:1.2;text-align:left}
.strict-modal__panel p{margin:10px 0 16px;color:#edf1f7;font-size:16px;line-height:1.55}
.strict-modal__panel a{color:#a9dafa;text-decoration:underline}
.strict-modal__panel a:hover{color:#fff}
.strict-modal__panel .strict-modal__lead{font-size:19px;line-height:1.5;color:#f9f1f6}
.strict-modal__close{position:absolute;top:16px;right:18px;display:grid;place-items:center;width:39px;height:39px;border:1px solid #7698b1;border-radius:50%;background:#334960;color:#fff;font-size:27px;line-height:1;cursor:pointer}
.strict-modal__close:hover,.strict-modal__close:focus-visible{background:#2989cc;outline:2px solid #e4a6bf;outline-offset:2px}
.strict-modal__columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:23px 0}
.strict-modal__card{box-sizing:border-box;min-width:0;padding:22px;border:2px solid #506074;border-radius:12px;background:rgba(15,23,34,.68);color:#f0f3f8;cursor:pointer;transition:border-color .18s,background .18s,transform .18s}
.strict-modal__card--strict{background:linear-gradient(155deg,rgba(25,62,93,.85),rgba(31,44,65,.9))}
.strict-modal__card:hover{border-color:#74b7e7;transform:translateY(-2px)}
.strict-modal__card:has(input:checked){border-color:#6fbbf2;box-shadow:0 0 0 2px rgba(58,156,218,.27)}
.strict-modal__card .strict-modal__radio{display:flex;align-items:center;gap:10px;color:#fff;font-size:21px;font-weight:700;cursor:pointer}
.strict-modal__card .strict-modal__radio input{flex:0 0 auto;width:21px;height:21px;margin:0;accent-color:#2989cc}
.strict-modal__card p{margin:13px 0;color:#dfeaf3}
.strict-modal__card ul{margin:10px 0 0;padding-left:22px;font-size:15px;line-height:1.55}
.strict-modal__optout{display:inline-flex;align-items:center;gap:10px;color:#fff;font-size:17px;cursor:pointer}
.strict-modal__optout input{width:19px;height:19px;accent-color:#2989cc}
.strict-modal__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.strict-modal__actions button{padding:12px 19px;border:1px solid #7b98ad;border-radius:8px;background:#394657;color:#fff;font-size:16px;font-weight:600;cursor:pointer}
.strict-modal__actions button:hover,.strict-modal__actions button:focus-visible{background:#576679}
.strict-modal__actions button.strict-modal__primary{border-color:#56b2ee;background:#217eb7;color:#fff}
.strict-modal__actions button.strict-modal__primary:hover,.strict-modal__actions button.strict-modal__primary:focus-visible{background:#3197d5}
.strict-filter-options{display:flex;flex-wrap:wrap;gap:8px 16px}
.strict-filter-options .inboxetlabel{display:flex;align-items:center;gap:5px}
.strict-modal__image{width: 100%; border-radius: 6px;}
@media(max-width:700px){.strict-modal__columns{grid-template-columns:1fr}.strict-modal__panel{padding:22px 18px}.strict-modal__panel h2{font-size:24px}.strict-modal__panel .strict-modal__lead{font-size:17px}.strict-modal__card{padding:17px}.strict-modal__card .strict-modal__radio{font-size:19px}}


/* Swingers: les catégories affinent la liste, sans modifier « Vous cherchez ». */
.swingers-filter-open,.swingers-filter-dialog-header,.swingers-filter-dialog-footer{display:none}
.conteneurBlocsFiltre.strict-filters-active{display:grid;grid-template-columns:180px 170px 180px minmax(0,1fr);gap:0;margin-bottom:8px;align-items:stretch}
.strict-filters-active>.bloc3conteneur2blocs6{display:contents}
.strict-filters-active .blocinterFiltre{display:none}
.strict-filters-active .filter-heading{grid-column:1;grid-row:1}
.strict-filters-active .filter-online{grid-column:2;grid-row:1}
.strict-filters-active .filter-location{grid-column:3;grid-row:1}
.strict-filters-active .filter-ages{grid-column:4;grid-row:1}
.strict-filters-active .filter-categories{grid-column:1/-1;grid-row:2;border-top:1px solid rgba(255,255,255,.22)}
.strict-filters-active .filter-heading,.strict-filters-active .filter-online,.strict-filters-active .filter-location,.strict-filters-active .filter-ages,.strict-filters-active .filter-categories{box-sizing:border-box;width:auto;min-width:0;height:auto;padding:12px 16px}
.strict-filters-active .filter-ages{display:flex;flex-direction:column;justify-content:center;gap:8px}
.strict-filters-active .filter-ages .sousbloc3Flitre{min-height:36px}
.strict-filters-active .filter-ages select{flex:none}
.strict-filters-active .strict-filter-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 16px;width:100%}
.strict-filter-options__title{grid-column:1/-1;font-size:16px;font-weight:600;color:#fff}
.strict-filters-active .strict-filter-options .inboxetlabel{box-sizing:border-box;width:auto;min-width:0;margin:0;gap:8px}
.strict-filters-active .strict-filter-options label{cursor:pointer;line-height:1.35}
.strict-filters-active .strict-filter-options input{flex:0 0 auto;margin:0;accent-color:#62b7ed}
@media (min-width:781px) and (max-width:1250px){
 .conteneurBlocsFiltre.strict-filters-active{grid-template-columns:170px 140px 145px minmax(0,1fr)}
 .strict-filters-active .strict-filter-options{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:780px){
 .swingers-filter-open{display:flex;align-items:center;justify-content:space-between;gap:12px;width:calc(100% - 20px);margin:12px auto;padding:12px 16px;border:1px solid #68a9d1;border-radius:8px;background:#315c78;color:#fff;font-size:17px;font-weight:600;cursor:pointer}
 .swingers-filter-open span{font-size:24px;line-height:1}
 #searchOnline.liste_catOnline{display:none;position:fixed;inset:0;z-index:90000;overflow-y:auto;overscroll-behavior:contain;padding:16px;box-sizing:border-box;background:rgba(13,20,33,.97);color:#fff}
 #searchOnline.liste_catOnline.swingers-filter-is-open{display:block}
 body.swingers-filters-open{overflow:hidden}
 .swingers-filter-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:620px;margin:0 auto 14px}
 .swingers-filter-dialog-header h2{font-size:23px;font-weight:600;text-align:left}
 .swingers-filter-dialog-header button{width:42px;height:42px;border:1px solid #88aac1;border-radius:50%;background:#315c78;color:#fff;font-size:28px;cursor:pointer}
 .swingers-filter-dialog-footer{display:block;max-width:620px;margin:16px auto 24px}
 .swingers-filter-dialog-footer button{width:100%;min-height:45px;border:1px solid #75bae8;border-radius:7px;background:#237eb6;color:#fff;font-size:17px;font-weight:600;cursor:pointer}
 #searchOnline .conteneurBlocsFiltre{display:flex;flex-direction:column;align-items:stretch;box-sizing:border-box;width:100%;max-width:620px;margin:0 auto;border-radius:8px}
 #searchOnline .bloc3conteneur2blocs6{display:flex;flex-wrap:wrap;box-sizing:border-box;width:100%}
 #searchOnline .blocinterFiltre{display:none}
 #searchOnline .filter-heading,#searchOnline .filter-online,#searchOnline .filter-categories,#searchOnline .filter-location,#searchOnline .filter-ages{box-sizing:border-box;width:100%;min-width:0;height:auto;padding:12px 16px;border-left:0;border-top:1px solid rgba(255,255,255,.22)}
 #searchOnline .filter-heading{border-top:0}
 #searchOnline .filter-heading h1{font-size:27px}
 #searchOnline .filter-categories .inboxetlabel{box-sizing:border-box;width:auto;min-width:0;margin:5px 0}
 #searchOnline .filter-location{display:flex;flex-direction:row;justify-content:flex-start;gap:14px}
 #searchOnline .filter-location .inboxetlabel{width:auto;min-width:0;margin:5px 0}
 #searchOnline .filter-ages{display:flex;flex-direction:column;gap:8px}
 #searchOnline .filter-ages .sousbloc3Flitre{min-height:39px}
 #searchOnline .strict-filter-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;width:100%}
 #searchOnline .strict-filter-options__title{grid-column:1/-1}
 #searchOnline .strict-filter-options .inboxetlabel{width:auto;min-width:0;margin:0}
 #searchOnline .strict-filter-options input{flex:none}
}
@media(max-width:380px){
 #searchOnline .strict-filter-options{grid-template-columns:1fr}
 #searchOnline .filter-location{flex-wrap:wrap}
}


/* Boutons Swingers compacts, dans le même ordre et les mêmes couleurs que « Vous cherchez ». */
.strict-filters-active .strict-filter-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.strict-filter-group{--filter-choice-color:153,77,158;min-width:0;padding:10px;border-radius:9px;background:rgba(255,255,255,.09)}
.strict-filter-group--woman{--filter-choice-color:237,104,136}
.strict-filter-group--man{--filter-choice-color:41,137,204}
.strict-filter-group--trans{--filter-choice-color:230,62,33}
.strict-filter-group h3{margin:0 0 8px;color:#fff;font-size:15px;font-weight:600;line-height:1.3}
.strict-filters-active .strict-filter-group .inboxetlabel,#searchOnline .strict-filter-group .inboxetlabel{position:relative;display:block;width:100%;margin:0 0 6px}
.strict-filter-group .inboxetlabel:last-child{margin-bottom:0!important}
.strict-filter-group input[type="checkbox"]{position:absolute;width:1px;height:1px;margin:0;opacity:0}
.strict-filter-group label{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-height:38px;padding:5px 7px;border:2px solid rgba(var(--filter-choice-color),.78);border-radius:6px;background:#fff;color:rgb(var(--filter-choice-color));font-size:14px;font-weight:600;line-height:1.2;text-align:center;cursor:pointer}
.strict-filter-group input:checked+label{border-color:rgb(var(--filter-choice-color));background:rgba(var(--filter-choice-color),.88);color:#fff}
.strict-filter-group input:focus-visible+label{outline:3px solid rgba(var(--filter-choice-color),.55);outline-offset:2px}
@media(hover:hover){
 .strict-filter-group label:hover{background:linear-gradient(rgba(var(--filter-choice-color),.16),rgba(var(--filter-choice-color),.16)),#fff}
 .strict-filter-group input:checked+label:hover{background:rgb(var(--filter-choice-color))}
}
@media(min-width:781px) and (max-width:1250px){.strict-filters-active .strict-filter-options{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:780px){
 #searchOnline .strict-filter-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 #searchOnline .strict-filter-group .inboxetlabel{margin:0 0 6px}
}
@media(max-width:380px){#searchOnline .strict-filter-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}#searchOnline .strict-filter-group{padding:7px}.strict-filter-group label{font-size:12px;padding:5px 3px}}

.strict-filter-group label::before{display:none!important;content:none!important}


/* Chaque groupe occupe une part égale de la largeur disponible. */
.strict-filters-active .strict-filter-options,#searchOnline .strict-filter-options{display:block}
.strict-filter-options__title{margin-bottom:10px}
.strict-filter-options__groups{display:grid;grid-template-columns:repeat(var(--strict-group-count),minmax(0,1fr));gap:10px;width:100%}
.strict-filter-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));align-content:start;gap:6px;padding:8px;min-width:0}
.strict-filter-group h3{grid-column:1/-1;margin:0 0 2px}
.strict-filters-active .strict-filter-group .inboxetlabel,#searchOnline .strict-filter-group .inboxetlabel{margin:0}
.strict-filter-group label{max-width:200px;min-height:32px;margin:auto;padding:3px 6px;font-size:13px}
@media(max-width:780px){
 #searchOnline .strict-filter-options__groups{grid-template-columns:repeat(min(var(--strict-group-count),2),minmax(0,1fr))}
 #searchOnline .strict-filter-group{grid-template-columns:repeat(auto-fit,minmax(105px,1fr))}
}
@media(max-width:380px){
 #searchOnline .strict-filter-options__groups{grid-template-columns:1fr}
 #searchOnline .strict-filter-group{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* Typographie et contours légers pour les filtres Swingers. */
.strict-filters-active .strict-filter-options__title{font-size:19px;font-weight:300;line-height:1.3}
.strict-filters-active .strict-filter-group h3{font-size:14px;font-weight:400;line-height:1.3}
.strict-filters-active .strict-filter-group label,#searchOnline .strict-filter-group label{min-height:32px;border-width:1px;font-size:13px;font-weight:400}
.strict-filters-active .strict-filter-group input:checked+label,#searchOnline .strict-filter-group input:checked+label{border-width:1px;font-weight: 600;}


/* Statut du mode, visible en permanence sur Swingers sans occuper les filtres. */
.strict-mode-bar{box-sizing:border-box;display:flex;align-items:center;justify-content:flex-end;gap:12px;width:min(100%,1240px);margin:12px auto 0;padding:8px 14px;border:1px solid rgba(112,171,210,.37);border-radius:8px;background:linear-gradient(100deg,rgba(48,79,105,.92),rgba(61,56,76,.94));color:#fff}
.strict-mode-bar__status{display:inline-flex;align-items:center;gap:9px;margin-right:auto;font-size:16px;font-weight:400}
.strict-mode-bar__dot{width:9px;height:9px;border-radius:50%;background:#7ac6f0;box-shadow:0 0 0 3px rgba(122,198,240,.15)}
.strict-mode-bar__change{min-height:34px;padding:5px 12px;border:1px solid #83b4d4;border-radius:6px;background:rgba(35,119,169,.36);color:#fff;font-size:14px;cursor:pointer}
.strict-mode-bar__change:hover,.strict-mode-bar__change:focus-visible{background:#247eb6}
.strict-modal__optout[hidden]{display:none}
@media(max-width:780px){.strict-mode-bar{width:calc(100% - 20px);margin:10px auto;gap:8px;padding:8px}.strict-mode-bar__status{font-size:14px}.strict-mode-bar__change{font-size:13px}}

/* Barre d’état sur la ligne du sélecteur liste / cartes. */
.conteneurBlocs2.affichage-list{gap:14px;align-items:center}
.conteneurBlocs2.affichage-list .strict-mode-bar{flex:1 1 auto;width:auto;min-width:0;margin:0;padding:6px 12px}
.conteneurBlocs2.affichage-list>.largeur180{flex:0 0 180px}
@media(max-width:780px){.conteneurBlocs2.affichage-list{flex-wrap:wrap;gap:8px}.conteneurBlocs2.affichage-list .strict-mode-bar{flex-basis:100%;width:100%;margin:0}}


/* Invitation à échanger avec inCouplesOfficiel dans l'aide du profil. */
#strictHelpModal .strict-help-feedback{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:center;gap:16px;margin:8px 0 16px}
#strictHelpModal .strict-help-feedback p{margin:0}
#strictHelpModal .strict-help-feedback__contact{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;padding:9px 12px;border:1px solid #ec87ad;border-radius:8px;background:#a73e70;color:#fff;font-size:16px;font-weight:600;text-align:center;text-decoration:none}
#strictHelpModal .strict-help-feedback__contact:hover,#strictHelpModal .strict-help-feedback__contact:focus-visible{background:#c45387;color:#fff;outline:2px solid #ffc2d9;outline-offset:2px}
@media(max-width:420px){#strictHelpModal .strict-help-feedback{grid-template-columns:1fr}#strictHelpModal .strict-help-feedback__contact{justify-self:start}}


/* Sur mobile, état du mode et bascule liste / cartes partagent la même ligne. */
@media(max-width:780px){
 .conteneurBlocs2.affichage-list{display:flex;flex-wrap:nowrap;justify-content:space-between;gap:8px}
 .conteneurBlocs2.affichage-list .strict-mode-bar{flex:1 1 auto;width:auto;min-width:0;margin:0;padding:6px 8px}
 .conteneurBlocs2.affichage-list>.largeur180{flex:0 0 auto;width:auto}
 .conteneurBlocs2.affichage-list .affichage{display:none}
 .conteneurBlocs2.affichage-list .strict-mode-bar__status{min-width:0;line-height:1.15}
}
@media(max-width:400px){
 .conteneurBlocs2.affichage-list .strict-mode-bar{gap:5px;padding:5px 6px}
 .conteneurBlocs2.affichage-list .strict-mode-bar__status{font-size:12px;gap:5px}
 .conteneurBlocs2.affichage-list .strict-mode-bar__change{font-size:12px;padding:5px}
}


/* Lecture confortable des catégories dans la fenêtre mobile. */
@media(max-width:780px){
 #searchOnline .conteneurBlocsFiltre{background:linear-gradient(145deg,#24506b,#394660)}
 #searchOnline .filter-categories:not(.strict-filter-categories){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px;row-gap:10px}
 #searchOnline .filter-categories:not(.strict-filter-categories)>.inboxetlabel{display:flex;align-items:center;gap:7px;width:auto;min-width:0;margin:0;min-height:32px}
 #searchOnline .filter-categories:not(.strict-filter-categories)>.inboxetlabel input{flex:none;margin:0}
 #searchOnline .filter-categories:not(.strict-filter-categories)>.inboxetlabel label{line-height:1.3}
 #searchOnline .strict-filter-options__groups{grid-template-columns:1fr;gap:10px}
 #searchOnline .strict-filter-group{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px}
 #searchOnline .strict-filter-group label{max-width:none;min-height:36px;font-size:14px;padding:5px 8px}
}
@media(max-width:380px){
 #searchOnline .filter-categories:not(.strict-filter-categories){column-gap:8px}
 #searchOnline .strict-filter-group{grid-template-columns:repeat(2,minmax(0,1fr))}
 #searchOnline .strict-filter-group label{font-size:13px}
}


/* Présentation Classic / Strict sur Swingers : défilement discret et texte resserré. */
#strictWelcomeModal .strict-modal__panel{scrollbar-width:thin;scrollbar-color:rgba(139,166,185,.55) transparent}
#strictWelcomeModal .strict-modal__panel::-webkit-scrollbar{width:6px}
#strictWelcomeModal .strict-modal__panel::-webkit-scrollbar-track{background:transparent}
#strictWelcomeModal .strict-modal__panel::-webkit-scrollbar-thumb{background:rgba(139,166,185,.48);border-radius:6px}
#strictWelcomeModal .strict-modal__panel::-webkit-scrollbar-thumb:hover{background:rgba(139,166,185,.7)}
#strictWelcomeModal .strict-modal__lead{margin:4px 0 10px}
#strictWelcomeModal .strict-modal__columns{margin:14px 0}
#strictWelcomeModal .strict-modal__card p{margin:8px 0 6px}
#strictWelcomeModal .strict-modal__card ul{margin:4px 0 0}
#strictWelcomeModal .strict-modal__card li{margin-top:7px;padding:7px 0;}
#strictWelcomeModal .strict-modal__actions{margin-top:15px}
