.elementor-9633 .elementor-element.elementor-element-03bc8bd{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:50px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}.elementor-9633 .elementor-element.elementor-element-6447efd{text-align:center;}.elementor-9633 .elementor-element.elementor-element-6447efd .elementor-heading-title{font-family:"Black Diamond", Sans-serif;font-size:5em;color:#222222;}.elementor-9633 .elementor-element.elementor-element-8711498{text-align:center;}.elementor-9633 .elementor-element.elementor-element-8711498 .elementor-heading-title{font-family:"Black Diamond", Sans-serif;font-size:2.9em;color:#222222;}.elementor-9633 .elementor-element.elementor-element-d6d90b1{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-9633 .elementor-element.elementor-element-f0eb47e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget .tippy-tooltip .tippy-content{text-align:center;}@media(max-width:1024px){.elementor-9633 .elementor-element.elementor-element-6447efd > .elementor-widget-container{margin:50px 0px 0px 0px;}.elementor-9633 .elementor-element.elementor-element-8711498 > .elementor-widget-container{margin:50px 0px 0px 0px;}}@media(max-width:767px){.elementor-9633 .elementor-element.elementor-element-6447efd > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-9633 .elementor-element.elementor-element-8711498 > .elementor-widget-container{margin:0px 0px 0px 0px;}}/* Start custom CSS for heading, class: .elementor-element-6447efd */.rotate-left,
.rotate-right {
  display: inline-block; 
  background-color: #b66ca4;
  color: #fff;
  padding: 10px 14px;
  font-size: 3.8rem;
}

.rotate-left {
  transform: rotate(-4deg);
}

.rotate-right {
  transform: rotate(3deg);
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-8711498 */.rotate-left,
.rotate-right {
  display: inline-block; 
  background-color: #b66ca4;
  color: #fff;
  padding: 10px 14px;
  font-size: 3.8rem;
}

.rotate-left {
  transform: rotate(-4deg);
}

.rotate-right {
  transform: rotate(3deg);
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f436393 */.bag-game {
  position: relative;
  width: 900px;
  max-width: 900px;
  height: 600px;
  margin: 80px auto;
}

.items-area {
  position: absolute;
  inset: 0;
}

.items {
  position: relative;
  width: 600px;
  height: 600px;
  margin: 0 auto;
}

.item {
  position: absolute;
  width: 140px;
  height: 140px;
  display: flex;
  align-items: center;
  justify-content: center;
 /* background: #fff;
  border-radius: 12px;*/
  cursor: grab;
  touch-action: none;
}

.item:hover {
  transform: scale(1.08);
}

.item img {
  max-width: 80%;
  max-height: 80%;
}


/* =========================
   OVERLAY
========================= */
.overlay {
  position: absolute;
  inset: 0;

  display: flex;
  align-items: center;
  justify-content: center;

  opacity: 0;
  z-index: 10;
}

.overlay.show {
  opacity: 1;
}

.overlay.correct {
  font-size: 80px;
}

.overlay.wrong {
  font-size: 80px;
    color: #ff3b30;
  text-shadow: 0 0 10px rgba(255,59,48,0.6);
}



/* =========================
   BAG
========================= */
.bag-dropzone {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 260px;
  transform: translate(-50%, -50%);
  z-index: 5;
}

.bag-inside {
  position: absolute;
  top: 28%;
  left: 12%;
  width: 76%;
  height: 55%;
}
.bag-img {
  width: 100%;
  display: block;
  filter: drop-shadow(0 20px 40px rgba(0,0,0,0.2));
}



.bag-inside .item {
  position: static;
  width: 70px;
  height: 70px;
}

/* =========================
   SUCCESS SCREEN
========================= */
.success-screen {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.6);

  display: flex;
  align-items: center;
  justify-content: center;

  opacity: 0;
  pointer-events: none;
  transition: 0.4s;
  z-index: 9999;
}

.success-screen.active {
  opacity: 1;
  pointer-events: all;
}

.success-content {
  position: relative;
  background: #fff;
  padding: 60px 40px 40px;
  border-radius: 24px;
  width: 420px;

  display: flex;
  flex-direction: column;
  align-items: center;

  transform: scale(0.9);
  opacity: 0;
  transition: 0.4s;
}

.success-screen.active .success-content {
  transform: scale(1);
  opacity: 1;
}

.ivi-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.ivi-character {
  width: 170px;
  display: block;
}

.speechiv {
  position: relative;
  background: #C61B1A;
  color: #fff;
  padding: 16px 26px;
  border-radius: 20px;
  font-weight: bold;
  font-size: 16px;
  line-height: 1.4;
  max-width: 360px;
  min-width: 260px;
  box-shadow: 0 12px 30px rgba(0,0,0,0.25);
  text-align: left;
  margin-left: -40px;
  margin-right: 10px;
}

.speechiv::after {
  content: "";
  position: absolute;
  left: -10px;
  top: 45%;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-right: 10px solid #C61B1A;
}

.restart-btn {
  margin-top: 30px;
  padding: 12px 24px;
  border: none;
  background: #C61B1A;
  color: #fff;
  border-radius: 10px;
  cursor: pointer;
  font-weight: bold;
  transition: 0.2s;
}

.restart-btn:hover {
  transform: translateY(-2px);
}

.overlay.correct {
  color: #2ecc71 !important;
}


@media (max-width: 600px) {

  .bag-game {
    width: 80vw;
    max-width: 80vw;

    margin: 0px auto;   /* 👈 σωστό centering */
    
    transform: none;     /* ❗ ΚΛΕΙΔΙ */
    margin-left: auto;   /* ❗ ΚΛΕΙΔΙ */

    padding: 30px 15px;
  }

  .bag-dropzone {
    width: 220px;
  }
}





.bag-dropzone {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 300px;

  transform: translate(-50%, -50%);
  z-index: 2;
}
.item.correct {
  animation: pop 0.3s ease;
}

.item.wrong {
  animation: shake 0.3s ease;
}

@keyframes pop {
  0% { transform: scale(1); }
  50% { transform: scale(1.15); }
  100% { transform: scale(1); }
}

@keyframes shake {
  0%,100% { transform: translateX(0); }
  25% { transform: translateX(-5px); }
  75% { transform: translateX(5px); }
}

.download-btn {
  margin-top: 15px;
  padding: 12px 24px;
  display: inline-block;

  background: #444; /* πιο neutral από το restart */
  color: #fff;
  border-radius: 10px;

  font-weight: bold;
  text-decoration: none;

  transition: 0.2s;
}

.download-btn:hover {
  transform: translateY(-2px);
  background: #222;
}

@media (max-width: 600px) {

 .items {
      position: relative;
    width: 100%;
    height: 500px; /* 🔴 stage */
  }

  .item {
    position: absolute;
    width: 80px;
    height: 80px;
  }
 .bag-dropzone {
    width: 150px;
  }
  .bag-game {
    height: 520px; /* λίγο μικρότερο */
  }

 

}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Black Diamond';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://digital.web2social.gr/wp-content/uploads/2026/03/Black-Diamond.ttf') format('truetype');
}
@font-face {
	font-family: 'Black Diamond';
	font-style: normal;
	font-weight: bold;
	font-display: auto;
	src: url('https://digital.web2social.gr/wp-content/uploads/2026/03/Black-Diamond.woff') format('woff');
}
/* End Custom Fonts CSS */