/* screen - qseg-result */

.qseg-result {
  align-items: flex-start;
  background-color: var(--mirage);
  display: flex;
  gap: 23px;
  min-width: 1094px;
}

.qseg-result .side {
  align-items: flex-start;
  background-color: var(--ebony-clay);
  display: flex;
  min-height: 1500px;
  justify-content: flex-end;
  min-width: 213px;
  padding: 6px 3.4px;
  z-index: 1000;
}

.qseg-result .overlap-group {
  height: 447px;
  position: relative;
  width: 200px;
}

.qseg-result .rectangle-10 {
  background-color: var(--pickled-bluewood);
  border-radius: 6px;
  height: 200px;
  left: 4px;
  position: absolute;
  top: 118px;
  width: 191px;
}

.qseg-result .side-bar {
  align-items: center;
  display: flex;
  flex-direction: column;
  left: 0;
  min-height: 447px;
  position: absolute;
  top: 0;
  width: 200px;
}

.qseg-result .mask-group {
  height: 72px;
  margin-left: 1.0px;
  width: 199px;
}

.qseg-result .group-42 {
  align-items: center;
  gap: 60px;
  height: 24px;
  margin-left: 3.42px;
  margin-top: 54px;
}

.qseg-result .app-2 {
  height: 21px;
  margin-top: 1.0px;
  object-fit: cover;
  width: 21px;
}

.qseg-result .q-apps {
  min-height: 24px;
  width: 92px;
}

.qseg-result .flex-row {
  gap: 39px;
  height: 25px;
  margin-left: 1.24px;
  margin-top: 189px;
  min-width: 173px;
}

.qseg-result .usine-2 {
  height: 20px;
  margin-top: 1px;
  object-fit: cover;
  width: 20px;
}

.qseg-result .by-industry {
  letter-spacing: 0;
  line-height: normal;
  min-height: 25px;
  text-align: right;
  width: 114px;
}

.qseg-result .group-41 {
  align-items: flex-start;
  gap: 42px;
  height: 25px;
  margin-left: 3.9px;
  margin-top: 36px;
}

.qseg-result .rapport-danalyse-2 {
  height: 23px;
  object-fit: cover;
  width: 23px;
}

.qseg-result .dashboard {
  letter-spacing: 0;
  line-height: normal;
  min-height: 25px;
  text-align: right;
  width: 108px;
}

.qseg-result .text-1 {
  left: 18px;
  letter-spacing: 0;
  line-height: normal;
  position: absolute;
  top: 286px;
  transform: rotate(-90deg);
  white-space: nowrap;
  width: 10px;
}

.qseg-result .rectangle-8 {
  height: 29px;
  left: 1px;
  position: absolute;
  top: 179px;
  width: 197px;
}

.qseg-result .q-seg {
  left: 119px;
  position: absolute;
  top: 182px;
  width: 68px;
}

.qseg-result .q-road {
  left: 133px;
  position: absolute;
  top: 208px;
  width: 53px;
}

.qseg-result .q-sched {
  left: 77px;
  position: absolute;
  top: 235px;
  width: 110px;
}

.qseg-result .q-pgm {
  left: 123px;
  position: absolute;
  top: 261px;
  width: 64px;
}

.qseg-result .q-color {
  left: 106px;
  position: absolute;
  top: 287px;
  width: 80px;
}

.qseg-result .q-medoids {
  left: 91px;
  position: absolute;
  top: 159px;
  width: 96px;
}

.qseg-result .flex-col {
  flex-direction: column;
  gap: 52px;
  margin-top: 16px;
  min-height: 841px;
  width: 858px;
  position: absolute;
  left: 20%;
}

.qseg-result .flex-row-1 {
  gap: 16px;
  height: 156px;
  min-width: 858px;
}

.qseg-result .valide-1 {
  height: 33px;
  margin-bottom: 1px;
  object-fit: cover;
  width: 33px;
}

.qseg-result .flex-col-1 {
  align-items: flex-start;
  gap: 40px;
  min-height: 156px;
  width: 809px;
}

.qseg-result .header {
  align-items: flex-start;
  background-color: transparent;
  display: flex;
  flex-direction: row;
  flex-shrink: 1;
  height: 80px;
  justify-content: flex-start;
  margin-left: 3px;
  min-width: 806px;
  width: auto;
}

.qseg-result .overlap-group1 {
  position: fixed;       /* ou absolute si besoin qu'il scrolle avec la page */
  top: 0;
  left: 0;
  width: 100vw;          /* toute la largeur de la fenêtre */
  min-width: unset;      /* annule l'ancienne min-width */
  max-width: 100vw;
  box-sizing: border-box;
  z-index: 500;
  background-color: var(--mirage);
  box-shadow: inset 0px -21px 6.7px -20px #00000040;
  display: flex;
  gap: 231px;
  height: 88px;
  justify-content: flex-end;
  padding: 16px 9px;
  margin-left: 0;
  margin-top: 0;
  z-index: 500;
}

.qseg-result .overlap-group-1 {
  align-self: center;
  border: 1px solid;
  border-color: var(--white);
  border-radius: 4px;
  height: 36px;
  margin-top: 4.0px;
  position: relative;
  width: 332px;
}

.qseg-result .overlap-group-1 {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.qseg-result .flex-col-2 {
  align-items: center;
  gap: 7px;
  min-height: 54px;
  width: 175px;
}

.qseg-result .flex-row-2 {
  gap: 61px;
  margin-left: 1.0px;
  min-width: 104px;
}

.qseg-result .mask-group-1 {
  height: 20px;
  width: 20px;
}

.qseg-result .question-1 {
  height: 23px;
  object-fit: cover;
  width: 23px;
}

.qseg-result .overlap-group2 {
  height: 24px;
  position: relative;
  width: 175px;
}

.qseg-result .account {
  left: 0;
  letter-spacing: 0;
  line-height: normal;
  position: absolute;
  text-align: center;
  top: 0;
  width: 92px;
}

.qseg-result .help {
  left: 83px;
  letter-spacing: 0;
  line-height: normal;
  position: absolute;
  text-align: center;
  top: 0;
  width: 92px;
}

.qseg-result .overlap-group3 {
  height: 36px;
  position: relative;
  width: 809px;
}

.qseg-result .image-q-processed {
  height: 36px;
  left: 0;
  letter-spacing: 1.00px;
  line-height: normal;
  position: absolute;
  top: 0;
  width: 246px;
}

.qseg-result .image-q-processed2 {
  height: 36px;
  left: 0;
  letter-spacing: 1.00px;
  line-height: normal;
  position: relative;
  background-color: #24345a;
  border-radius: 12px;
  box-shadow: 0px 4px 27px -4px #00000040;
  display: flex;
  height: 103px;
  min-width: 445px;
  padding: 0 20px;
}

.qseg-result .image-q-processed3 {
  height: 36px;
  left: 0;
  letter-spacing: 1.00px;
  line-height: normal;
  position: relative;
  background-color: #24345a;
   background-color: rgba(38, 54, 91, 0.7);
  /* floute légèrement ce qu’il y a derrière */
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  
  border-radius: 5px;
  box-shadow: 0px 4px 27px -4px #00000040;
  display: flex;
  margin-top: 140px;
  min-width: 245px;
  padding: 0 20px;
}

.qseg-result .image-q-processed4 {
  height: 36px;
  left: 0;
  letter-spacing: 1.00px;
  
  line-height: normal;
  position: relative;
  background-color: #24345a;
  background-color: rgba(38, 54, 91, 0.7);
  /* floute légèrement ce qu’il y a derrière */
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border-radius: 5px;
  box-shadow: 0px 4px 27px -4px #00000040;
  display: flex;
  min-width: 245px;
  padding: 0 20px;
}

.qseg-result .line-7 {
  height: 1px;
  left: 242px;
  position: absolute;
  top: 19px;
  width: 567px;
}

.qseg-result .results {
  align-items: center;
  display: flex;
  gap: 41px;
  min-width: 836px;
}

.qseg-result .overlap-group2-1 {
  align-items: center;
  background: linear-gradient(180deg, rgba(55, 97, 249, 0.2) 0%, rgba(0, 255, 158, 0.2) 100%);
  border-radius: 12px;
  box-shadow: 0px 4px 27px -4px #00000040;
  display: flex;
  flex-direction: column;
  gap: 25px;
  min-height: 633px;
  width: 345px;
}

.qseg-result .overlap-group1-1 {
  align-items: center;
  background-color: #5e647933;
  border-radius: 12px;
  box-shadow: 0px 4px 27px -4px #00000040;
  display: flex;
  height: 103px;
  justify-content: flex-end;
  min-width: 345px;
  padding: 0 84px;
}

.qseg-result .original-image {
  height: 23px;
  letter-spacing: 0;
  line-height: normal;
  text-align: center;
  white-space: nowrap;
  width: 176px;
}

.qseg-result .image2-1 {
  height: 326px;
  margin-left: 0;
  width: 323px;
}

.qseg-result .overlap-group-2 {
  align-items: center;
  border-radius: 23px;
  display: flex;
  gap: 22px;
  height: 37px;
  min-width: 247px;
  padding: 6px 17px;
  margin-top: 110px;
}

.qseg-result .mask-group-2 {
  align-self: flex-end;
  height: 23px;
  width: 23px;
}

.qseg-result .change-original-image {
  letter-spacing: 0;
  line-height: normal;
  margin-top: 1.0px;
  min-height: 18px;
  min-width: 162px;
  text-align: justify;
  white-space: nowrap;
}

.qseg-result .logoquantique {
  height: 63px;
  width: 63px;
}

.qseg-result .overlap-group1-2 {
  height: 633px;
  position: relative;
  width: 346px;
}

.qseg-result .rectangle-69 {
  background: linear-gradient(180deg, rgba(55, 97, 249, 0.2) 0%, rgba(0, 255, 158, 0.2) 100%);
  border-radius: 12px;
  box-shadow: 0px 4px 27px -4px #00000040;
  height: 633px;
  left: 0;
  position: absolute;
  top: 0;
  width: 345px;
}

.qseg-result .overlap-group999 {
  align-items: center;
  background: linear-gradient(180deg, rgba(55, 97, 249, 0.2) 0%, rgba(0, 255, 158, 0.2) 100%);
  border-radius: 12px;
  box-shadow: 0px 4px 27px -4px #00000040;
  display: flex;
  flex-direction: column;
  gap: 21px;
  min-height: 633px;
  width: 345px;
  position: relative;
}

.qseg-result .rectangle-72 {
  background-color: #5e647933;
  border-radius: 12px;
  box-shadow: 0px 4px 27px -4px #00000040;
  height: 103px;
  left: 1px;
  position: absolute;
  top: 0;
  width: 345px;
}

.qseg-result .segmented-image {
  height: 19px;
  left: 64px;
  letter-spacing: 0;
  line-height: normal;
  position: absolute;
  text-align: center;
  top: 40px;
  white-space: nowrap;
  width: 218px;
}

.qseg-result .image3-1 {
  height: 283px;
  left: 31px;
  position: absolute;
  top: 175px;
  width: 284px;
}

.qseg-result .image3-2 {
  height: 283px;
  left: 31px;
  position: absolute;
  top: 270px;
  width: 284px;
  box-shadow: 4px 6px 12px rgba(0, 0, 0, 0.2);
}

.qseg-result .overlap-group-3 {
  align-items: center;
  border-radius: 25px;
  display: flex;
  gap: 11px;
  height: 37px;
  left: 104px;
  min-width: 143px;
  padding: 0 13px;
  position: absolute;
  top: 570px;
}

.qseg-result .mask-group-3 {
  height: 19px;
  width: 19px;
}

.qseg-result .download {
  letter-spacing: 0;
  line-height: normal;
  margin-top: 1.0px;
  min-height: 18px;
  min-width: 74px;
  text-align: justify;
  white-space: nowrap;
  border-color: transparent;
  background-color: transparent;
}

.qseg-result .flex {
  align-items: flex-start;
  display: flex;
}

.qseg-result .flex-col-3 {
  display: flex;
  flex-direction: column;
}

.qseg-result .flex-row-3 {
  align-items: flex-end;
  display: flex;
}

.qseg-result .group {
  cursor: pointer;
  display: flex;
  min-width: 175px;
}

.qseg-result .q {
  letter-spacing: 0;
  line-height: normal;
  text-align: right;
}

.canvas1 {
  width: 100%;
  height: 100%;
  /* padding : top 20px, right/left 10px, bottom 0 */
  padding: 20px 30px 0 30px;
  box-sizing: border-box; /* pour que padding ne déborde pas */
}


.canvas1 canvas {
  display: block;      /* supprime l’espacement inline */
  width: 100%;
  height: 100%;
  box-shadow: 4px 6px 12px rgba(0, 0, 0, 0.2); /* décalage-y, flou, intensité */
}

#fileName {
  font-family: 'Roboto', sans-serif;
  padding: 0.5em 1em;
  background-color: transparent;
  color: #007BFF;
  border: 2px solid #007BFF;
  border-radius: 4px;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 100;      /* Thin */
  font-size: 16px;       /* à ajuster selon vos besoins */
  line-height: 1.4;      /* pour un meilleur confort de lecture */
  color: #9c9d9f;
}

#fileName:hover {
  background-color: rgba(0, 123, 255, 0.1);
}

.process-btn {
  position: absolute;
  top: 60%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  border: none;
  border-radius: 9px;
  padding: 0;
  background: linear-gradient(to left, #03FE9C 5%, #3A64FA);
  box-shadow: 0px 4px 27px -4px #00000040;
  height: 80px;
  width: 240px;
  cursor: pointer;
  font-family: 'Roboto', sans-serif;
  font-size: 15px;
  font-weight: bold;
  color: #ffffff;
}

/* Facultatif : effet hover */
.process-btn:hover {
  opacity: 0.9;
}

:root {
  --canvas-max-size: 300px; /* Ajustez cette valeur selon votre besoin */
}

/* Conteneur de canvas (le parent .canvas1) */
.canvas1 {
  width: 100%;
  max-width: var(--canvas-max-size);  /* ne dépasse pas cette largeur */
  aspect-ratio: 1 / 1;                /* toujours un carré */
  padding: 20px 30px 0 30px;          /* conserve vos paddings */
  box-sizing: border-box;
  position: relative;
  overflow: hidden;                   /* coupe tout débordement */
  margin: 0 auto;                     /* centre horizontalement */
}

/* Le <canvas> lui-même */
.canvas1 canvas {
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain; /* réduit l’image pour qu’elle tienne dans le carré */
  box-shadow: 4px 6px 12px rgba(0, 0, 0, 0.2);
}
