@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap');

:root {
  --dark: rgb(20, 0, 37);
  --text: rgba(255, 255, 255, 0.9);
  --text-dark: rgba(255, 255, 255, 0.7);
  --primary: rgb(198, 255, 0);
  --primary-light: #e7fe90;
  --primary-dark: rgb(141, 180, 0);
  --light: #e8eaf6;
  --secondary: rgb(213, 0, 249);
  --secondary-light: #f3c9fa;
  --secondary-dark: #4A148C;
  --card: radial-gradient(circle, rgba(213, 0, 249, 0.5) 0%, rgba(15, 0, 27, 1) 100%);
  --nav: linear-gradient(0deg, rgba(213, 0, 249, 0.15) 0%, rgba(15, 0, 27, 1) 70%);
  /* 
  --secondary: rgb(213, 0, 249);
  --secondary-light: #F3E5F5;
  --secondary-dark: #4A148C;
  --card: radial-gradient(circle, rgba(213, 0, 249, 0.5) 0%, rgba(15, 0, 27, 1) 100%);
  --nav: linear-gradient(0deg, rgba(213, 0, 249, 0.15) 0%, rgba(15, 0, 27, 1) 70%); */
  --informative: #e1e9ed;
  /* --background : rgba(232, 234, 246, 0.6); */
  --background: #f8f8f8;
  --nav-link: #B0BEC5;
  /* --card: radial-gradient(circle,rgba(213, 0, 249, 0.35) 0%, rgba(0, 0, 0, 1) 100%); */
  --danger: #E41B2F;
  --danger-light: #feedf0;
  --success: #c6ff00;
  --success-light: rgb(231, 254, 144);
}

html {
  transition: all 0.5;
}

body {
  font-family: "Outfit", sans-serif;
  background-color: var(--dark);
  color: var(--text);
}

a {
  text-decoration: unset;
  color: var(--white);

}

a:hover {
  text-decoration: none;
  color: var(--primary)
}

.pointer {
  cursor: pointer;
}

#wrapper {
  display: flex;
}

#header {
  /* background: var(--primary-dark); */
  padding: 1rem 0;
  margin-bottom: 10px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 700;
}

h1 {
  color: var(--text);
  font-size: 55px;
}


h6 {
  font-size: 1.2rem !important;
}

p,
td,
tr {
  color: var(--text);
}


tr,
td,
th {
  border: none !important;
  border-bottom: 1px solid rgba(255, 255, 255, .05) !important;
  vertical-align: middle;
}

thead {
  /* background: var(--secondary-light); */
}

thead th {
  color: var(--text-dark);
  font-weight: 400;
  text-transform: uppercase;
  font-size: 14px;
}

.sorted-asc::after {
  content: " ▲";
  font-size: 10px;

}

.sorted-desc::after {
  content: " ▼";
  font-size: 10px;
}

.main {
  width: 100%;
  /* padding-left: 2.5rem; */
  /* padding-right : 1.5rem; */
}



.content {
  margin-top: 3%;
  margin-left: 19%;
  padding: 0 20px
    /* margin-right: 16%; */
    /* margin-top : -150px; */
}

/* profil bar */

#profilBar {
  width: 15%;
  /* background: #FFF; */
  /* position: fixed;
  top : 0;
  right: 0; */
  overflow-x: hidden;
  border-left: 1px solid var(--nav);
  z-index: 1000;
  /* height : 100%; */
  padding: 15px 15px 0 0;
}

.profil-bar-feed {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

.profil-bar-feed li {
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  margin-bottom: 8px;
  padding: 3px 0 6px 0;
}



.nav-sidebar ul {
  list-style: none;
  padding: 0;
}

ul li a {
  color: var(--secondary);
}

.keep-all {
  word-break: keep-all;
}

.py-10 {
  padding-top: 3.5rem;
  padding-bottom: 3.5rem;
}

/* IMG  */
.invert {
  filter: invert(100%);
}

.invert-nav {
  filter: invert(75%);

}

.img-success {
  filter: brightness(0) saturate(100%) invert(89%) sepia(82%) saturate(3102%) hue-rotate(15deg) brightness(101%) contrast(104%);
}


/* END IMG  */

/* ARTICLES */

article p,
article ul li {
  font-size: 20px;
}


article li {
  margin-bottom: 10px;
}

article h2,
article h3,
article h4 {
  margin-top: 50px;
  margin-bottom: 25px
}

article blockquote {
  padding: 20px;
  background-color: rgba(255, 255, 255, .1);
  color: rgba(255, 255, 255, .8);
  border: 1px solid var(--secondary-dark);
  border-radius: 10px;
}

article h2 {
  font-size: 42px;
}

article h3 {
  color: var(--text);
  text-decoration: underline;
}

article table {
  /* border: 1px solid rgba(255, 255, 255, .8) !important; */
  margin: 20px 0 40px;
}

article table th,
article table td {
  border: 1px solid rgba(74, 20, 140, 1) !important;
  padding: 15px;
  font-size: 20px;
  background-color: rgba(255, 255, 255, .05)
}

article a {
  text-decoration: underline;
  color: var(--secondary-light) !important
}


article strong {
  color: var(--primary)
}

#table-of-contents {
  background-color: rgba(255, 255, 255, .05);
  border: 1px solid rgba(74, 20, 140, 1) !important;

}

#table-of-contents li {
  font-size: 20px
}

#table-of-contents li a {
  color: rgba(255, 255, 255, .75)
}

/* END ARTICLES */
/* TEXT  */

.text-primary {
  color: var(--primary) !important;
}

.text-primary-dark {
  color: var(--primary-dark);
}

.text-primary-light {
  color: var(--primary-light);
}

.text-secondary-light {
  color: var(--secondary-light) !important;
}

.text-secondary {
  color: var(--secondary) !important;
}

.text-secondary-dark {
  color: var(--secondary-dark) !important;
}

.text-tertiary {
  color: var(--tertiary) !important;
}

.text-success {
  color: var(--success);
}

.fw-700 {
  font-weight: 700;
}

/* END TEXT  */
.separator-dot {
  width: 5px;
  height: 5px;
  border-radius: 50px;
  background-color: black;
  margin: 0 12px 0 12px;
}

.separator-primary {
  width: 10px;
  height: 10px;
  border-radius: 50px;
  background-color: var(--success);
  margin: 0 12px 0 12px;
}

.separator-tertiary {
  width: 10px;
  height: 10px;
  border-radius: 50px;
  background-color: var(--danger);
  margin: 0 12px 0 12px;
}

/* CARDS */

.card,
.profil-card {
  box-shadow: .1454px 10.1454px 18.5999px rgba(24, 19, 58, 0.06) !important;
  backdrop-filter: blur(6.5px);
  -webkit-backdrop-filter: blur(6.5px);
  border-radius: 10px;
  border: 1px solid rgba(50, 50, 50, 1);
}

.card {
  background: radial-gradient(circle, rgba(213, 0, 249, 0.2) 0%, rgba(15, 0, 27, 1) 100%);
}

.profil-card {
  background: var(--card);
}

.card-primary {
  background: radial-gradient(circle, rgba(15, 0, 27, 0.47) 0%, rgba(15, 0, 27, 1) 90%);
  backdrop-filter: blur(6.5px);
  -webkit-backdrop-filter: blur(6.5px);
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.card-black {
  box-shadow: .1454px 10.1454px 18.5999px rgba(24, 19, 58, 0.06) !important;
  border-radius: 10px;
  border: 1px solid rgba(50, 50, 50, 1);

}

.glowing-text {
  text-shadow: 0 0 20px rgba(213, 0, 249, 1),
    0 0 30px rgb(224, 52, 255, 1),
    0 0 40px rgb(239, 146, 255);
}

.glowing-text-primary {
  text-shadow: 0 0 20px rgb(122, 156, 0),
    0 0 20px rgb(200, 255, 0),
    0 0 30px rgb(231, 255, 160);
}


.glow-smooth {
  animation: glowFadeIn 1s ease-out forwards;
}

@keyframes glowFadeIn {
  0% {
    text-shadow:
      0 0 0px rgba(122, 156, 0, 0),
      0 0 0px rgba(200, 255, 0, 0),
      0 0 0px rgba(231, 255, 160, 0);
  }

  100% {
    text-shadow: 0 0 20px rgb(122, 156, 0),
      0 0 20px rgb(200, 255, 0),
      0 0 30px rgb(231, 255, 160);
  }
}


.border-glowing-purple {

  border: 2px solid rgb(213, 0, 249);
  box-shadow: 0 0 8px rgba(213, 0, 249, 0.6),
    0 0 16px rgba(213, 0, 249, 0.5),
    0 0 24px rgba(213, 0, 249, 0.4);
  border-radius: 8px;
  transition: box-shadow 0.3s ease-in-out;
}

.border-glowing-yellow {
  border: 2px solid rgb(198, 255, 0);
  box-shadow: 0 0 8px rgba(198, 255, 0, 0.6),
    0 0 16px rgba(198, 255, 0, 0.5),
    0 0 24px rgba(198, 255, 0, 0.4);
  border-radius: 8px;
  transition: box-shadow 0.3s ease-in-out;

}

.confetti {
  position: absolute;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: white;
  pointer-events: none;
  z-index: 1000;
  opacity: 1;
  animation: explode 1.5s ease-out forwards;
}

.confetti.violet {
  box-shadow:
    0 0 25px rgba(213, 0, 249, 0.9),
    0 0 32px rgba(224, 52, 255, 0.8),
    0 0 40px rgba(239, 146, 255, 0.6);
}

.confetti.green {
  box-shadow:
    0 0 25px rgba(122, 156, 0, 0.9),
    0 0 32px rgba(198, 255, 0, 0.8),
    0 0 40px rgba(231, 255, 160, 0.6);
}

@keyframes explode {
  to {
    transform: translate(var(--x), var(--y)) scale(0.9);
    opacity: 0;
  }
}




.surcard {
  background: rgba(255, 255, 255, .1);
  backdrop-filter: blur(6.5px);
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.12);
}

.surcard-nav {
  background: rgba(255, 255, 255, .05);
  backdrop-filter: blur(6.5px);
  border-radius: 10px;
  border: 1px solid rgba(125, 125, 125, 0.3);
}

.card-stat {
  text-align: center;
  padding: 1rem !important;
}

.card-media {
  background-color: var(--primary-light);
  /* border: 1px solid var(--primary); */
}

.card-media a {
  color: var(--primary) !important;
}

.card-stat p {
  font-size: 14px;
  text-transform: uppercase;
}

.card-header {
  background-color: transparent;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: none !important;
  padding: 0;
  margin-bottom: 10px;
}

.card-stat .stat {
  font-size: 42px;
  font-weight: 700;
  font-family: "Roboto", Arial sans-serif;
}

.bulles-container {
  padding: 10px 20px;
  margin-bottom: 10px;
  border-radius: 10px;
  width: 70%;
}

.left {
  background: rgb(231, 226, 255);
}

.right {
  background: #e8f9fd;
  margin-left: auto;
}

/* background */

.bg-primary {
  background-color: var(--primary) !important;
}

.bg-primary-light {
  background-color: var(--primary-light) !important;
}

.bg-light {

  background-color: var(--light) !important;
}

.bg-secondary {
  background-color: var(--secondary) !important;
}



.bg-tertiary {
  background-color: var(--tertiary) !important;
}

.bg-tertiary-light {
  background-color: var(--tertiary-light) !important;
}

.bg-secondary-light {
  background-color: var(--secondary-light);
}

.bg-success-light {
  background-color: var(--success-light);
}

.bg-success {
  background-color: var(--success);
}

.text-informative {
  color: var(--informative);
}

/* .card {
  box-shadow: -2px 2px 10px -3px rgba(195, 185, 251, 0.5);
  border: 0 solid rgba(0, 0, 0, 0.125);
  background-color: var(--card);
} */

.dark .card {
  box-shadow: none;
}

.card-title {
  font-size: 20px;
  margin-bottom: 0;
}

.p-heading-xs {
  font-size: 18px;
  font-weight: 700;
  color: var(--text);
}

.p-heading {
  font-size: 24px;
  font-weight: 700;
  color: var(--text);
}

.p-heading-xl {
  font-size: 30px;
  font-weight: 700;
  color: var(--text);
}

.p-heading-xxl {
  font-size: 42px;
  font-weight: 700;
  color: var(--text);
}

.p-heading-xxxl {
  font-size: 55px;
  font-weight: 700;
  color: var(--text);
}


.p-heading-xxxxl {
  font-size: 70px;
  font-weight: 700;
  color: var(--text);
}

hr {
  border-top: 1px solid #ddd;
}

/* ----- BACKEND MARQUEs ASSOC -------- */
#assign:focus-visible {
  /* border-radius: 25px 25px 0 0; */
}

#entries-assign {
  display: none;
  padding: 0;
}

#assign>div:hover>#entries-assign {
  display: block;
}

#entries-assign div {
  cursor: pointer;
  margin: 10px 0 0 15px;
}

#entries-assign div p:hover {
  color: var(--success);
}

.pointer {
  cursor: pointer;
}

/* header NAV  */

.item {
  margin-right: 20px;
  text-align: center;
}

.item:last-child {
  margin-right: 0px !important;
}

/* .item a,
.item p {
  color: #000;
  font-size: 12px;
} */

/* NAV SIDE BAR */

#navSidebar {
  /* overflow-y: scroll; */
  overflow-x: hidden;
  top: 0;
  bottom: 0;
  z-index: 1000;
  border-right: 1px solid rgba(255, 255, 255, 0.2);
  /* background-color: var(--nav); */
}

/* BURGER */

#burger {
  width: 30px;
  height: 30px;
  position: relative;
  cursor: pointer;
  margin-right: 10px;
  display: none;
}

.burger-nav,
.burger-nav:before,
.burger-nav:after {
  width: 100%;
  position: absolute;
  left: 0;
  height: 4px;
  background-color: #FFF;

}

.burger-nav {
  top: 50%;
  transform: translateY(-50%);

}

.burger-nav:before {
  content: '';
  top: -12px;
}

.burger-nav:after {
  content: '';
  top: 12px;
}

/* END BURGER */

.nav-section {
  color: var(--nav-link);
  /* text-transform: uppercase; */
  font-size: 17px;
  letter-spacing: 1;
  /* margin-bottom: 5px;*/
  margin-bottom: 10px;
  font-weight: 500;
}


.title-nav {
  color: var(--nav-link);
  transition: color 0.3s;
  font-size: 18px;
}

.title-nav {
  margin-bottom: 5px;
}

.nav-sidebar a {
  color: var(--informative);
  transition: color 0.3s;
  font-size: 18px;
}

.nav-sidebar a:hover {
  color: var(--secondary-light);
}

#navSidebar {
  background: var(--nav);
  width: 22%;
  min-height: 100%;
  /* box-shadow: 0 5px 25px 0.3px .1454px 10.1454px 18.5999px rgba(24, 19, 58, 0.06); */
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
}

.navbar-brand {
  display: initial;
}

.nav-sidebar-container {
  padding: 30px 10px;
}

.current-link {
  color: red !important;
}

.nav-side ul {
  padding: 0 5px;
}

.nav-sidebar .active a {
  color: var(--primary);
  font-weight: 700 !important;
}

.nav-sidebar .active {
  color: white;
  font-weight: 700 !important;
}

.nav-sidebar .active img {
  filter: invert(100%);
}

/* .nav-sidebar li.active img {
  filter: brightness(0) saturate(100%) invert(67%) sepia(89%) saturate(626%) hue-rotate(25deg) brightness(114%) contrast(112%);
} */

.collapse-nav {
  padding: 5px 5px 5px 8px !important;
}

.collapse-nav li {
  margin-bottom: 7px;
  margin-left: 5px
}


.collapse-nav a {
  font-size: 16px;
}

.nav-sidebar div {
  /* text-transform: uppercase; */
  padding: 4px 5px;
  cursor: pointer;
}

.logo-mobile {
  display: none;
}

.nav-mobile {
  display: none;
  width: 100%;
  position: fixed;
  bottom: 0;
  background: var(--nav);
  border-top: 1px solid #ccc;
  z-index: 1000;
}




/* ----- END NAV SIDE BAR -------- */

/*------ NAV MOBILE --------*/

.inner-nav-mobile {
  display: flex;
  text-align: center;
  margin: 0;
  align-items: end;
  overflow-x: scroll;
  justify-content: space-around;
}

.nav-mobile-item {
  padding-left: 1rem;
  padding-right: 1rem;
}

/* ------- END NAV MOBILE ------- */

/* -------------- Dropdown  -------------- */

.dropdown-menu {
  background-color: var(--dark);
  border: 1px solid var(--secondary);
  border-top: none !important;
  color: var(--primary);
  border-radius: 0 0 10px 10px;
}

.dropdown-menu .dropdown-item {
  color: var(--primary);
  font-size: 20px;
  transition: background .5s;
}

.dropdown-menu .dropdown-item:hover {
  background-color: var(--primary);
  color: var(--dark);

}

.collapse-container {
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
}

.collapse-button {
  width: 100%;
  padding: 10px;
  background-color: transparent;
  border: none;
  text-align: left;
  cursor: pointer;
  font-size: 16px;
}

.collapse-button .arrow {
  display: inline-block;
  transition: transform 0.3s;
}

.collapse-content {
  display: none;
}

.collapse-content p {
  margin: 0;
}

.collapse-container.active .collapse-content {
  display: block;
}

.collapse-container.active .collapse-button .arrow {
  transform: rotate(90deg);
  /* rotation de la flèche */
}

/* --------- FORM --------- */

/* ACTION MENU MORE */

.action-menu {
  display: none;
  position: absolute;
  top: 100%;
  right: 0;
  background: white;
  border: 1px solid #ccc;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  border-radius: 10px;
  z-index: 999;
  padding: 10px;
  width: 150px;
  max-width: 200px;
}

.action-menu ul {
  list-style: none;
  padding: 0;
  margin-bottom: 0;

}

.action-menu ul li {
  padding-top: 5px;
  padding-bottom: 5px;
  border-bottom: 1px solid #DDD;
  color: var(--dark) !important;
}

.action-menu ul li a {
  color: var(--dark) !important;
}

.action-menu ul li:last-child {
  border-bottom: none;

}


/* end ACTION MENU MORE */

/* FORMS */

input[type="text"],
textarea,
input[type="password"] {
  /* border: 1px solid var(--informative); 
  padding: 10px 20px; */
  transition: box-shadow 0.3s;
}

input[type="text"]:focus,
textarea:focus,
input[type="password"]:focus,
select:focus {
  /* box-shadow: none; */
  box-shadow: 0px 3px 20px var(--secondary);
  border: 1px solid var(--secondary);
}

input[type="submit"] {
  border: none;
  box-shadow: 0px 10px 20px rgba(86, 146, 228, 0.1);
  border-radius: 5px;
}

.form-control::file-selector-button {
  background-color: rgba(255, 255, 255, 0) !important;
  border: none;
  color: white
}

.form-check-input:checked {
  background-color: var(--secondary);
  border-color: var(--secondary);
}

label {
  color: var(--primary);
  display: block;
  margin-bottom: 5px !important;
}

textarea {
  height: 120px;
  resize: none;
  border: 1px solid #00002a;
}

select.custom-select {
  color: #000;
  border: 2px solid #ff1e00;
  width: auto;
}

select.custom-select:focus {
  border-bottom: 1px solid #000051;
  box-shadow: none;
}

input[type="email"]:focus,
input[type="password"]:focus,
input[type="text"]:focus,
input[type="number"]:focus,
input[type="date"]:focus,
textarea:focus {
  border-color: none;
}

.btn-link {
  margin-bottom: -15px;
  margin-top: 20px;
}

.btn-link a {
  color: #0fff00;
  border-radius: 100px;
  border: 3px solid #1a237e;
  padding: 8px 15px;
  background: #fff;
}

.form-control,
.form-select {
  background-color: rgba(255, 255, 255, 0.25) !important;
  border: none;
  padding: 12px 30px 12px 12px;
  color: white !important;
}

.form-select {
  background-image: url('/lib/img/arrow.svg');
}

.form-select option {
  background: rgba(255, 255, 255, 0.25) !important;
  border: 1px solid #c9c9c9;
  /* padding: 12px 30px 12px 12px ; */
  color: black !important;
}

.form-control::placeholder {
  color: rgba(255, 255, 255, .7)
}

.form-control:focus {
  color: white !important
}

.btn-sm {
  padding: 2px 4px;
}

.search-input select,
.search-input input[type="date"] {
  border: 2px solid #fff;
  background-color: #fff;
  border-radius: 25px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
}

select option {
  font-family: inherit !important;
}

.tag {
  font-size: 12px;
  padding: 3px 5px 0;
  border-radius: 3px;
  font-weight: 500;
}

/* --------- ENDFORM --------- */

.btn-primary {
  background-color: var(--primary) !important;
  color: var(--dark);
  border: none;
  transition: all 0.5s;
}

.btn-primary:hover {
  background-color: var(--primary-light) !important;
  color: var(--dark);
  border: none;
}

.btn-secondary {
  background-color: var(--secondary) !important;
  color: white;
  border: none;
  transition: all 0.5s;
}

.btn-secondary:hover {
  background-color: var(--secondary-dark) !important;
  border: none;
}

.btn-danger {
  background-color: var(--danger) !important;
  color: white;
  border: none;
  transition: all 0.5s;
}

.btn-tertiary {
  background-color: var(--tertiary) !important;
  color: white;
  border: none;
}

.btn-tertiary:hover {
  background-color: var(--secondary) !important;
  color: white;
  border: none;
}

.btn-light {
  background-color: var(--light) !important;
  color: var(--primary);
  border: none;
  transition: all 0.5s;
}

.trashbtn:hover {
  filter: brightness(0) saturate(100%) invert(24%) sepia(96%) saturate(6543%) hue-rotate(338deg) brightness(92%) contrast(102%);
}

.trashbtn.position-absolute {
  transform: translate(-50%, -50%);
  top: 50%;
  right: 10px;
}

/* .btn-secondary img {
  filter: invert(100%);
} */

/* Badges */

.badge {
  font-weight: 500;
  border-radius: 0.45rem;
}

.badge-type {
  font-weight: 500;
  border-radius: 0.45rem;
  padding: 3px;
  font-size: 12px;
}

.webtv {
  background: var(--primary-light);
  color: var(--primary)
}

.media-web {
  background: var(--primary-light);
  color: var(--primary)
}

.print {
  background: var(--primary-light);
  color: var(--primary)
}

.tv {
  background: var(--primary-light);
  color: var(--primary)
}

.banner-webtv {
  position: relative;
  z-index: 1;
}

.banner-webtv:before {
  position: absolute;
  z-index: 2;
  content: '';
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(10, 0, 37, 1) 0%, rgba(213, 0, 249, 0.13) 50%, rgba(10, 0, 37, 1) 100%);
}

.badge-blue-price {
  background-color: var(--primary);
  color: white;
}

.badge-green-price {
  background-color: rgb(123, 223, 144);
  color: white;
}

.badge-emissions {
  font-size: 14px;
  font-weight: 700;
  border-radius: 0.45rem;
  padding: 6px 8px 6px 8px;
}

.badge-success {
  background-color: var(--primary);
  color: var(--dark);
}


.badge-danger {
  background-color: var(--danger);
  color: var(--light);
}

.badge-orange {
  background-color: rgb(255, 241, 215);
  color: rgb(212, 149, 66);
}

.badge-yellow {
  background-color: rgb(249, 250, 167);
  color: rgb(194, 184, 40);
}

.badge-danger img {
  filter: brightness(0) saturate(100%) invert(24%) sepia(96%) saturate(6543%) hue-rotate(338deg) brightness(92%) contrast(102%);
}

.badge-success img {
  filter: brightness(0) saturate(100%) invert(61%) sepia(67%) saturate(416%) hue-rotate(71deg) brightness(81%) contrast(91%);
}

.badge-orange img {
  filter: brightness(0) saturate(100%) invert(55%) sepia(55%) saturate(480%) hue-rotate(354deg) brightness(101%) contrast(92%);
}

.badge-yellow img {
  filter: brightness(0) saturate(100%) invert(58%) sepia(96%) saturate(352%) hue-rotate(18deg) brightness(103%) contrast(86%);
}

.badge-primary {
  background-color: var(--primary) !important;
  color: var(--dark);
}

.badge-primary-light {
  background-color: var(--primary-light) !important;
  color: var(--primary);
}

.badge-secondary-light {
  background-color: var(--secondary-light) !important;
  color: var(--secondary);
}


/* END badge */

#cardTruncate {
  max-height: 270px;
  overflow: hidden;
  transition: max-height 0.5s ease;
  position: relative;
}

.filter-card {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100px;
  background: linear-gradient(0deg, rgba(0, 0, 0, 1) 10%, rgba(255, 255, 255, 0) 100%);
  z-index: 5;
}

#cardTruncate .table-responsive {
  overflow: hidden;
}

.card.expanded {
  max-height: 1000px !important;
}

/* ACCORDION FAQ */
.accordion {
  --bs-accordion-bg: rgba(255, 255, 255, .1) !important;
  --bs-accordion-color: white !important;
  margin-bottom: 50px;
  border: none;
}

.accordion-item {
  --bs-accordion-bg: var(--dark) !important;
  margin-bottom: 30px;
  border: none;

}


.accordion-button:not(.collapsed) {
  background-color: var(--primary);
  color: #000 !important;

}

.accordion-button {
  color: white !important;
  font-size: 24px;
  font-weight: 700
}

.accordion-button:after {
  background-image: url('/lib/img/arrow.svg') !important;
}

.accordion-header {
  color: white !important;
  border: 1px solid var(--secondary-dark) !important;
  border-radius: 5px;



}

.accordion-body {
  font-size: 22px;
}

/* END ACCORDION FAQ */

/* ALERTS */

.alert-success {
  background-color: var(--primary-dark);
  color: var(--dark);
  border: 2px solid var(--primary-light);
}

.alert-danger {
  background-color: #f8c7c718;
  color: #E41B2F;
  border: 1px solid #E41B2F;
}

.alert-success a {
  color: var(--dark);
}

.pagination .active {
  background-color: var(--secondary);
  color: white;
  padding: 0 7px;
  border-radius: 10px;
}


/* ---- Collazpse section STYLE ----- */

.section-hidden {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.2s;
}

.show-signaler {
  max-height: 100px !important;
  overflow: initial !important;
}

.button-signaler {
  background: none;
  border: none;
}

/* ----  END  Signaler section STYLE ----*/

@keyframes bouncingText {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.2);
  }

  100% {
    transform: scale(1);
  }
}

.bouncing-text {
  font-size: 20px !important;
  animation: bouncingText 0.5s infinite;
  display: inline-block;
  margin-left: 10px;
}

.border-radius-10 {
  border-radius: 10px !important;
}


.border-radius-10-10 {
  border-radius: 0 10px 10px 0!important;

}
.rounded {
  border-radius: 100% !important;
}

/*------------NAV---------*/
/* .nav-sidebar li.active {
  margin-top: 12px;
  margin-bottom: 12px;
}
.nav-sidebar li.active a {
  padding: 6px 12px;
  border-radius: 12px;
  background-color: var(--primary-light);
  color: var(--primary);
}
.nav-sidebar li.active img {
  filter: invert(65%) sepia(84%) saturate(4339%) hue-rotate(178deg)
    brightness(101%) contrast(106%);
} */

/*------------END---------*/
/* ----  Show WebTv ----*/
.webtv-banner {
  background-image: linear-gradient(90deg,
      rgba(2, 0, 36, 1) 0%,
      rgba(20, 20, 20, 1) 11%,
      rgba(255, 255, 255, 0) 100%);
}

.emission-content {
  width: 76%;
}

.eventItem.card {
  transition: all 0.5s !important;
}


.eventItem.card:hover {
  background: transparent !important;
}

.emission-date {
  background-color: var(--dark);
  color: var(--secondary-light);
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
  width: 12%;
}

.emission-full {
  background-color: var(--dark);
  color: var(--primary);
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
  width: 12%;
}

/* .emission-full img {
  filter: brightness(0) saturate(100%) invert(61%) sepia(67%) saturate(416%) hue-rotate(71deg) brightness(81%) contrast(91%); 
}*/

.emission-not-full {
  background-color: var(--dark);
  color: var(--danger);
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
  width: 12%;
}

.emission-not-full img {
  filter: brightness(0) saturate(100%) invert(24%) sepia(96%) saturate(6543%) hue-rotate(338deg) brightness(92%) contrast(102%);
}

/* ----  End WebTv ----*/
/* ----  Show Broadcast ----*/
.timeline-container {
  position: relative;
  border: solid #c9c9c9 1px;
  border-top: none;
  border-right: none;
  min-height: 200px;
}

.timeline-slot {
  display: flex;
  cursor: pointer;
}

.timeline-start-hour,
.timeline-end-hour {
  font-size: 10px;
}

.timeline-slot:hover {
  filter: brightness(0.9);
}

.slot-preparation,
.slot-passage,
.timeline-slot {
  height: 40px;
  position: relative;
}

.slot-preparation {
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
  background-color: var(--success-light);
  color: var(--dark);
}

.slot-passage {
  border-top-right-radius: 8px;
  border-bottom-right-radius: 8px;
  background-color: var(--success);
}

.slot-logo {
  border-radius: 400px;
  width: 60px;
}

.free-slot .slot-preparation {
  background-color: var(--danger-light);
  /* border: 2px #9ad7fd solid; */
}

.free-slot .slot-passage {
  background-color: var(--danger);
  /* border: 2px var(--primary) solid; */
}

.free-slot .text {
  color: var(--danger) !important;
}


.timeline-broadcast-start {
  position: absolute;
  width: 2px;
  height: 100%;
  border-left: 1px grey dashed;
  z-index: 2;
}

.timeline-broadcast-start::after {
  content: "Début";
  position: absolute;
  bottom: 0;
  left: 10px;
}

.timeline-cursor {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 1px;
  background-color: var(--primary);
  pointer-events: none;
}

.timeline-cursor-time {
  position: absolute;
  top: -20px;
  border-radius: 3px;
  background-color: var(--light);
  color: var(--dark);
  padding: 2px 5px;
  font-size: 16px;
  pointer-events: none;
}

.slot-info-container {
  box-sizing: border-box;
  background-color: var(--dark);
  position: absolute;
  z-index: 4000;
  width: 70%;
  /* height: 70%; */
  /* bottom: 0; */
  right: 0;
  box-shadow: -8px -5px 35px 5px rgba(0, 0, 0, 0.4);
  border-radius: 10px;
  transform: translate(-50%);
  top: 10%;
  left: 50%;
  border: 1px solid var(--secondary);
}

.slot-info-container #close {
  cursor: pointer;
}

/*Suggestion*/
.suggestions-container {
  position: absolute;
  display: none;
  width: 90%;
  top: 50px;
  background-color: black;
  box-shadow: 2px 18px 23px 6px rgba(0, 0, 0, 0.17);
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
  z-index: 4;
  border: 1px solid var(--primary)
}

.graduation {
  position: absolute;
  bottom: -5px;
  height: 5px;
  /* Ajustez la hauteur selon vos besoins */
  width: 1px;
  background-color: var(--secondary);
}

.graduation-label {
  position: absolute;
  top: 12px;
  /* Ajustez la position selon vos besoins */
  font-size: 12px;
  /* Ajustez la taille de la police selon vos besoins */
  transform: translateX(-50%);
}

/* ---- END Show Broadcast ----*/

/* BANNER WEBTV */
.deal-card {
  position: relative;
  width: 100%;
  border-radius: 10px;
  background: linear-gradient(to bottom,
      rgba(255, 255, 255, 0) 30%,
      rgba(255, 255, 255, 0.15));
  z-index: 2;
  transition: transform 0.3s;
}

.mask {
  position: relative;
  z-index: 2;
  opacity: 1;
  background-image: url("lefigaro.jpg");
  background-size: cover;
  -webkit-mask-image: -webkit-gradient(linear,
      right top,
      right bottom,
      from(rgba(3, 0, 24, 1)),
      to(rgba(0, 0, 0, 0)));
  width: 100%;
  /* height: 300px; */
  overflow: hidden;
  background-position: 50%;
}

.mask img {
  filter: saturate(110%);
}

.profil-img {
  width: 100px;
}

.mask:before {
  position: absolute;
  content: "";
  z-index: 4;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(3, 0, 24, 0.3);
}

/* CHART */

.chart-container {
  position: relative;
  height: 300px;
  width: 100%;
  max-width: 100%;
}

.chart-container-meeting {
  position: relative;
  height: 400px;
  width: 100%;
  max-width: 100%;
}
/* FILTER */

.filter {
  position: relative;
}

.filter::before {
  position: absolute;
  content: '';
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  background: linear-gradient(180deg, rgba(20, 0, 37, 1) 0%, rgba(213, 0, 249, 0) 35%, rgba(213, 0, 249, 0) 70%, rgba(10, 0, 37, 1) 100%);
}

/* .filter::after{
  position: absolute;
  content: '';
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  background: linear-gradient(0, rgba(255, 255, 255, 0) 0%, rgba(20, 0, 37) 0% );
} */



/* BOARD TV SALES */

.bar-complete {
  width: 100%;
  /* height: 50px; */
  display: flex;
  /* background: white; */
}

.gradient-blue {
  background: linear-gradient(90deg, rgba(16, 144, 223, 0) 0%, rgba(16, 144, 223, 0.55) 50%, #1090DF 100%);
}

.gradient-green {
  background: linear-gradient(90deg, rgba(44, 210, 72, 0) 0%, rgba(44, 210, 72, 0.55) 55%, rgba(44, 210, 72, 1) 100%);
}

.gradient-red {
  background: linear-gradient(90deg, rgba(219, 26, 65, 0) 0%, rgba(219, 26, 65, 0.55) 55%, rgba(219, 26, 65, 1) 100%);
}


.salary-bar {
  position: relative;
  display: flex;
  justify-content: end;
  overflow: hidden;
  text-align: center;
  white-space: nowrap;
  transition: width 0.7s ease-out;
  border-radius: 0 10px 10px 0;
  padding: 10px;
}

.salary-bar:before,
.ca-bar:before {

  position: absolute;
  content: '';
  width: 100%;
  height: 100%;
  background-color: #000;
  z-index: -1;
  top: 0;
  left: 0;

}

.bar-objective-ok {
  background: linear-gradient(78deg, rgba(20, 0, 37, 0) 0%, rgba(213, 0, 249, 1) 50%, rgb(198, 255, 0) 100%);
}

.bar-objective {
  background: linear-gradient(78deg, rgba(20, 0, 37, 0) 0%, rgba(213, 0, 249, 1) 89%);
}

.ca-bar, .ca-pending {
  position: relative;
  display: flex;
  justify-content: end;
  overflow: hidden;
  white-space: nowrap;
  text-align: center;
  padding: 10px;
  transition: width 0.7s ease-out;
  /* ta transition de largeur */
}

/* Deux calques superposés */
.ca-bar::before,
.ca-bar::after {
  content: "";
  position: absolute;
  inset: 0;
  transition: opacity .45s ease;
  /* => douceur du switch */
  z-index: 0;
}

/* Calque ROSE par défaut */
.ca-bar::before {
  background: linear-gradient(78deg, rgba(20, 0, 37, 0) 0%, rgba(213, 0, 249, 1) 89%);
  opacity: 1;
}

/* Calque OK (vert) au-dessus, caché au départ */
.ca-bar::after {
  background: linear-gradient(78deg, rgba(20, 0, 37, 0) 0%, rgba(213, 0, 249, 1) 50%, rgb(198, 255, 0) 100%);
  opacity: 0;
}

/* Quand l'objectif est atteint, on fade IN le vert */
.ca-bar.bar-objective-ok::after {
  opacity: 1;
}

.ca-bar.bar-objective-ok::before {
  opacity: 0;
}

/* Le contenu (texte compteur) doit être au-dessus des calques */
.ca-bar>* {
  position: relative;
  z-index: 1;
}

/* Option accessibilité : si l’utilisateur préfère moins d’animations */
@media (prefers-reduced-motion: reduce) {

  .ca-bar,
  .ca-bar::before,
  .ca-bar::after {
    transition: none;
  }
}

/*  */

.bar-complete {
  width: 100%;
  display: flex;
  position: relative;
  overflow: visible;
  /* pour permettre au surplus de dépasser si > 100% */
  gap: 0;
  /* segments collés */
}

/* Segment commun */
.ca-bar {
  position: relative;
  display: flex;
  justify-content: end;
  white-space: nowrap;
  text-align: center;
  /* arrondi côté droit */
  padding: 10px;
  transition: width .7s ease-out;
}

/* === VALIDÉ (ton crossfade rose -> vert) === */
.ca-validated::before,
.ca-validated::after {
  content: "";
  position: absolute;
  inset: 0;
  transition: opacity .45s ease;
  z-index: 0;
}

.ca-validated::before {
  background: linear-gradient(78deg, rgba(20, 0, 37, 0) 0%, rgba(213, 0, 249, 1) 89%);
  opacity: 1;
}

.ca-validated::after {
  background: linear-gradient(78deg, rgba(20, 0, 37, 0) 0%, rgba(213, 0, 249, 1) 50%, rgb(150, 191, 0) 100%);
  opacity: 0;
}

.ca-validated.bar-objective-ok::after {
  opacity: 1;
}

.ca-validated.bar-objective-ok::before {
  opacity: 0;
}

.ca-validated>* {
  position: relative;
  z-index: 1;
}

/* === PRÉVISIONNEL (surplus collé à droite) === */
.ca-pending {
  /* background: repeating-linear-gradient(45deg, rgba(255, 196, 0, .9) 0 10px, rgba(255, 196, 0, .6) 10px 20px); */
  border : 1px  dashed var(--primary-light);
  border-left : 0;
  align-items: center;
  background-color: #3b3d30
}

.ca-pending .pending-label {
  font-weight: 700;
  font-size: 0.9rem;
  margin: 0;
  padding-left: 6px;
}

/* Accessibilité */
@media (prefers-reduced-motion: reduce) {

  .ca-bar,
  .ca-validated::before,
  .ca-validated::after {
    transition: none;
  }
}



/*  */



#graph {
  position: relative;

}



.maldives {
  left: 40%;
  top: 0;
  position: absolute;

}

.limite-obj p {
  left: 50%;
  top: 0;
  position: absolute;
  background: #000;
  color: var(--primary);
  font-size: 14px;
  text-transform: uppercase;
  transform: translateX(-50%);
}

.lambo {
  left: 51%;
  top: 0;
}

.rolex {
  left: 90%;
  top: 0;
}


.limite-obj {
  height: 100%;
  position: absolute;
  width: 100px;
  top: 0
}

.dash {
  height: 100%;
  width: 1px;
  background-color: var(--informative);
  position: absolute;
  left: 50%;
  top: 0;
  z-index: -2;
}

.notification {
  display: none;
  transition: opacity 1s ease;
  background-color: #000;
  color: white;
  padding: 15px;
  border-radius: 5px;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 140%;
  z-index: 200;
}

.modal-body {
  width: 50%;
  height: 50%;
  margin: 0 auto;

}

.notification.show {
  display: block;
}

/* .background-pictures{
  position: relative;
  width: 100px;
  border-radius: 100%;
  height : 100px;
  background: linear-gradient(90deg, rgba(16, 144, 223, 0) 0%, rgba(16, 144, 223, 0.55) 50%, #1090DF 100%);
  
} */

.soundModalContent {
  position: absolute;
  top: 20%;
  left: 50%;
  transform: translateX(-50%);
  padding: 20px;
  background-color: #303030;
  border-radius: 10px;
  z-index: 300;
}

#blur {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /* filter: blur(10px); */
  z-index: 200;
  background-color: rgba(0, 0, 0, 0.7);
}


/*------------RESPONSIVE---------*/

/*----- EXTRA SMALL ---*/

@media screen and (max-width: 575px) {

  h1,
  .p-heading-xxxl {
    font-size: 28px;
  }

  .p-heading-xxl {
    font-size: 24px;
  }

  .card-header {
    display: block;
  }
}

/*-----  SMALL ---*/

@media screen and (min-width: 576px) and (max-width: 767px) {
  .card-header>input {
    display: none;
  }

  h1 {
    font-size: 30px;
  }

}

/*------- MEDIUM --------*/

@media screen and (min-width: 768px) and (max-width: 991px) {
  .card-header>input {
    display: none;
  }


}

/*------- Large --------*/

@media screen and (min-width: 992px) and (max-width: 1199px) {
  .content {
    margin-left: 20%;
  }

  .slot-info-container {
    width: 80%;
  }

  #profilBar,
  #navSidebar {
    width: 40% !important;
  }

  h1 {
    font-size: 42px;
  }
}

/* Large and +  */

@media screen and (min-width: 992px) {
  .navbar {
    display: none;
  }

  .emission-content {
    width: 68%;
  }

  .emission-date {
    width: 16%;
  }

  .emission-full {
    width: 16%;
  }

  .emission-not-full {
    width: 16%;
  }

}

/*------- XLarge --------*/

@media screen and (min-width: 1200px) and (max-width: 1599px) {
  .content {
    margin-left: 26%;
  }

  .title-nav,
  .nav-sidebar a {
    font-size: 16px;
  }

  #profilBar {
    width: 25%;
  }

  h1 {
    font-size: 48px;
  }

}

/* XXL Specific */

@media screen and (min-width: 1600px) and (max-width: 1999px) {
  #profilBar {
    width: 20%;
  }

  .content {
    margin-left: 24%;
  }

  #navSidebar {
    width: 20%;
  }




}

/* Large+++ and +  */

@media screen and (min-width: 1600px) {}



/* VUE tablettes + mobiles */

@media screen and (max-width: 991px) {
  /* NAV BURGER */

  /* On vire le menu latérial sur petits écrans */
  /* .nav-side {
    display: none;
  } */


  /* END NAV BURGER */

  .profil-img {
    width: 50px;
  }

  .card-stat p {
    font-size: 12px;
  }

  .card-stat .stat {
    font-size: 30px;
  }

  .slot-info-container {
    width: 100%;
  }

  .emission-content,
  .emission-date,
  .emission-full,
  .emission-not-full {
    width: 100%;
  }

  #search {
    width: 100%;
  }

  #profilBar,
  #navSidebar {
    width: 100% !important;
  }

}

/* END VUE tablettes + mobiles */

/* VUE XS, SM, MD, LG et XL */

@media screen and (max-width: 1199px) {

  #closeButtonProfil,
  #closeButtonNav {
    display: block;
    cursor: pointer;
  }

  #navSidebar {
    display: none;
    transform: translateX(-100%);
    opacity: 0;
    transition: transform .5s;
    position: fixed;
    left: 0;
    z-index: 1000 !important;
    background-color: var(--dark) !important;
    overflow-x: auto !important;
  }


  .navside-active {

    transform: translateX(0%) !important;
    opacity: 1 !important;
    display: block !important;


  }


  .logo-mobile {
    display: block;
  }



  #profilBar {
    display: none;
    transform: translateX(100%);
    opacity: 0;
    transition: transform .5s;
    position: absolute;
    right: 0;
    /* width: 100% !important; */
    padding: 15px !important;
    z-index: 1000 !important;
    background-color: var(--dark) !important;
    overflow-x: auto !important;
  }

  #burger {
    display: block;
  }


  .profilBar-active {

    transform: translateX(0%) !important;
    opacity: 1 !important;
    display: block !important;


  }


  #profilButton {
    cursor: pointer;
    display: block;
  }


  .main {
    padding-left: 0;
    width: 100%;
  }

  .content {
    margin-left: 0;
  }


}

/* XXXL */

@media screen and (min-width: 2000px) {
  #navSidebar {
    width: 16%;
  }

}

@media screen and (min-width: 1200px) {

  #profilButton {
    display: none;
  }

  #closeButtonProfil,
  #closeButtonNav {
    display: none;
  }
}