img {
  image-rendering: pixelated;
  image-rendering: crisp-edges;
  width: auto;
  height: auto;
  /* Force l'affichage aux dimensions intrinsèques réelles */
  max-width: 100%;
}

.modal-dialog-centered {
	justify-content: center;
}

.disabled-action-btn {
  background-color: #f2f2f2;
  color: #808080;
  cursor: not-allowed;
  border: 0;
}
.disabled-action-btn:hover,
.disabled-action-btn:focus,
.disabled-action-btn:active {
  background-color: #f2f2f2 !important;
  color: #808080 !important;
  border: 0 !important;
}

.simple-action-btn {
  background-color: #ffffff;
  color: #000000;
  border: 0;
}
.simple-action-btn:hover,
.simple-action-btn:focus,
.simple-action-btn:active {
  background-color: #ffffff;
  color: #000000;
}

.table-mot td,
.table-mot th {
	border: 1px solid #ebebeb;
	padding: 6px;
}
.table-mot thead td,
.table-mot thead th {
	font-weight: bold;
	background-color: #eee9f5;
	border: 1px solid #e2d4f6;
}

.table-mot .detail {
	font-weight: normal;
	font-size: 11px;
	color: #444444;
}


.blur-1 {
  filter: blur(1px);
}

.blur-2 {
  filter: blur(2px);
}

.blur-5 {
  filter: blur(5px);
}

.blur-10 {
  filter: blur(10px);
}

.blur-20 {
  filter: blur(20px);
}

.blur-50 {
  filter: blur(50px);
}

.hidden {
  visibility: hidden;
}

.text-gradient-1 {
  color: var(--primary-color);
}
.text-gradient-2 {
  color: var(--secondary-color);
}
.text-gradient-3 {
  color: var(--accent-color);
}
.text-gradient-4 {
  color: var(--warning);
}


.icon-fs-10::before {
	font-size: 10px;
}

.icon-fs-11::before {
	font-size: 11px;
}

.icon-fs-12::before {
	font-size: 12px;
}

.icon-fs-13::before {
	font-size: 13px;
}

.icon-fs-14::before {
	font-size: 14px;
}

.icon-fs-15::before {
	font-size: 15px;
}

.icon-fs-16::before {
	font-size: 16px;
}

.icon-fs-18::before {
	font-size: 18px;
}

.icon-fs-20::before {
	font-size: 20px;
}

.icon-fs-22::before {
	font-size: 22px;
}

.icon-fs-24::before {
	font-size: 24px;
}

.icon-fs-26::before {
	font-size: 26px;
}

.icon-fs-28::before {
	font-size: 28px;
}

.icon-fs-30::before {
	font-size: 30px;
}

.icon-fs-35::before {
	font-size: 35px;
}

.icon-fs-40::before {
	font-size: 40px;
}

.icon-fs-50::before {
	font-size: 50px;
}

.btn-check.btn-primary:checked + .btn,
.btn-check.btn-primary.btn-checked + .btn {
  color: var(--primary-color);
  background-color: var(--bs-white);
  border-color: var(--primary-color) !important;
  z-index: 1;
}

.btn-check.btn-primary + .btn {
  color: var(--text-secondary);
  background-color: var(--bs-gray-50);
  border-color: var(--bs-gray-500) !important;
  margin-right: 0.25rem !important;
}
.compte-progress {
  opacity: 0;
}
.hover-progress:hover .compte-progress {
  opacity: 1;
}

.icon-action-btn {
  display: inline-flex;
  width: 40px;
  height: 40px;
  justify-content: center;
  align-items: center;
  background: #bb85fc;
  color: var(--primary-color);
  transform: translateY(0px);
}
.icon-action-btn:hover {
  background: #bb85fc;
  box-shadow: 1px 2px 8px rgba(0, 0, 0, 0.2);
}

.icon-action-btn:active {
  transform: translateY(1px);
  background: #bb85fc !important;
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.4);
  border: 0 !important;
}

.infobulle {
  position: relative;
  display: inline-block;
  /* cursor: pointer; */
  margin-left: 10px;
}

.infobulle .infobulletext {
  visibility: hidden;
  width: 180px;
  background-color: #231635;
  color: #fff;
  text-align: center;
  border-radius: 5px;
  padding: 6px;
  position: absolute;
  z-index: 1;
  bottom: 50%;
  left: calc(100% + 5px);
  transform: translateY(50%);
  opacity: 0;
  transition: opacity 0.3s;
  font-size: 13px;
}

.infobulletext.ib-right {
  bottom: 50%;
  left: calc(100% + 5px);
  transform: translateY(50%);
}

.infobulletext.ib-left {
  bottom: 50%;
  left: -5px;
  transform: translateY(50%) translateX(-100%);
}

.infobulletext.ib-down {
  bottom: -5px;
  left: 100%;
  transform: translateX(-50%) translateY(100%);
}

.infobulle:hover .infobulletext,
.infobulle:focus .infobulletext,
.infobulle:active .infobulletext { /* active au clic sur mobile */
  visibility: visible;
  opacity: 1;
}

.onesignal-customlink-container .state-subscribed {
    display: none !important;
}