/* menu */
.nav-item.t-m-4712 a::after {
    content: "";
    display: inline-block;
    width: 28px;
    height: 28px;
    margin-left: 2px;
    background-image: url('https://gravirovane.t2.cdn-upgates.com/u/u68e642d06bf2f-candle-heart-love-svgrepo-com.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    vertical-align: middle;
  }
  
  /*varianty*/
  .b[class*='bg-'] #ConfigurationSelect.has-required .col-form-label,
  .b[class*='bg-'] #ConfigurationSelect.has-required select{
  color: #2b333b !important
  }
  /*Popup*/
  .language-popup-overlay {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.5);
      display: flex;
      align-items: center;
      justify-content: center;
      z-index: 10000;
      opacity: 0;
      visibility: hidden;
      transition: all 0.3s ease;
      backdrop-filter: blur(2px);
      box-sizing: border-box;
      padding: 20px;
  }
  
  .language-popup-overlay.show {
      opacity: 1;
      visibility: visible;
  }
  
  .language-popup-overlay.fade-out {
      opacity: 0;
      visibility: hidden;
  }
  
  .language-popup {
      background: #fff;
      border-radius: 16px;
      padding: 0;
      max-width: 400px;
      width: 90%;
      box-shadow: 0 20px 40px rgba(43, 51, 59, 0.15);
      transform: scale(0.9) translateY(20px);
      opacity: 0;
      transition: all 0.3s ease;
      overflow: hidden;
      box-sizing: border-box;
  }
  
  .language-popup-overlay.show .language-popup {
      transform: scale(1) translateY(0);
      opacity: 1;
  }
  
  .popup-header {
      background: linear-gradient(135deg, #da0a22 0%, #b8081e 100%);
      color: white;
      padding: 20px;
      display: flex;
      justify-content: space-between;
      align-items: center;
  }
  
  .popup-header h3 {
      margin: 0;
      font-size: 18px;
      font-weight: 600;
  }
  
  .popup-close {
      background: none;
      border: none;
      color: white;
      cursor: pointer;
      padding: 8px;
      border-radius: 50%;
      transition: background-color 0.2s ease;
  }
  
  
  .popup-content {
      padding: 24px;
  }
  
  .popup-message {
      margin: 0 0 20px 0;
      color: #2b333b;
      font-size: 14px;
      line-height: 1.5;
  }
  
  .language-options {
      display: flex;
      flex-direction: column;
      gap: 12px;
  }
  
  .lang-option {
      display: flex;
      align-items: center;
      padding: 16px;
      border: 2px solid #e1e5e9;
      border-radius: 12px;
      background: #fff;
      cursor: pointer;
      transition: all 0.2s ease;
      font-size: 16px;
      font-weight: 500;
      color: #2b333b;
  }
  
  .lang-option:hover {
      border-color: #da0a22;
      transform: translateY(-2px);
      box-shadow: 0 8px 20px rgba(218, 10, 34, 0.15);
  }
  
  .lang-option.suggested {
      border-color: #da0a22;
  }
  
  .flag {
      font-size: 24px;
      margin-right: 12px;
  }
  
  .lang-name {
      flex: 1;
      text-align: left;
  }
  
  .recommended {
      background: #da0a22;
      color: white;
      padding: 4px 8px;
      border-radius: 12px;
      font-size: 12px;
      font-weight: 600;
  }
  
  @media (max-width: 768px) {
      .language-popup-overlay {
          padding: 10px;
      }
      
      .language-popup {
          width: 100%;
          max-width: 100%;
          margin: 0;
          border-radius: 12px;
      }
  
      .popup-header {
          padding: 16px;
      }
  
      .popup-content {
          padding: 20px;
      }
      
      .lang-option {
          padding: 14px;
          font-size: 15px;
      }
      
      .flag {
          font-size: 20px;
          margin-right: 10px;
      }
  }
  
  .upgates-language-popup {
      font-family: inherit;
  }
  
  /* Obrazkovy upload */
  .image-upload-field {
      display: flex;
      flex-direction: column;
      gap: 8px;
      margin-top: 8px;
  }
  
  .image-upload-dropzone {
      border: 2px dashed #e1e5e9;
      border-radius: 12px;
      padding: 16px;
      text-align: center;
      cursor: pointer;
      transition: all 0.2s ease;
      color: #2b333b;
  }
  
  .image-upload-dropzone:hover, .image-upload-dropzone.drag {
      border-color: #da0a22;
      background: rgba(218, 10, 34, 0.03);
  }
  
  .image-upload-instructions { font-size: 14px; }
  .image-upload-icon { font-size: 24px; margin-bottom: 6px; }
  .image-upload-icon svg { width: 40px; height: 40px; display: inline-block; }
  .image-upload-subtext { font-size: 12px; color: #65707a; }
  
  .image-upload-input { display: none; }
  
  .image-upload-preview img {
      max-width: 100%;
      border-radius: 12px;
      display: block;
  }
  
  .image-upload-info { font-size: 13px; color: #65707a; }
  
  .image-upload-remove {
      align-self: flex-start;
      background: #f3f4f6;
      border: 1px solid #e1e5e9;
      border-radius: 8px;
      padding: 6px 10px;
      cursor: pointer;
  }
  
  .image-upload-error {
      color: #da0a22;
      font-size: 13px;
  }
  
  @media (prefers-color-scheme: dark) {
      .image-upload-dropzone { color: #ffffff; border-color: #404040; }
      .image-upload-dropzone:hover, .image-upload-dropzone.drag { background: #3a434b; }
      .image-upload-info { color: #cccccc; }
      .image-upload-remove { background: #3a434b; border-color: #404040; color: #ffffff; }
  }
/* Tabuľka dopráv */
.delivery-table {
  width: 100%;
  max-width: 760px;
  margin: 30px auto;
  border: 1px solid #da0a22;
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
}

.delivery-title-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #da0a22;
  color: #fff;
  font-weight: 700;
  padding: 16px 22px;
  font-size: 18px;
}

.delivery-title-left {
  text-align: left;
}

.delivery-title-right {
  text-align: right;
  min-width: 90px;
}

.delivery-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 16px 22px;
  border-bottom: 1px solid #f3d4d8;
  transition: background 0.2s ease;
}

.delivery-row:hover {
  background: #fff7f8;
}

.delivery-row:last-child {
  border-bottom: none;
}

.delivery-name {
  flex: 1;
  text-align: left;
  line-height: 1.4;
}

.delivery-price {
  min-width: 90px;
  text-align: right;
  font-weight: 700;
  white-space: nowrap;
}

.delivery-row-best {
  background: #fff5f6;
}

.delivery-row-best:hover {
  background: #ffeef1;
}

.delivery-badge {
  display: inline-block;
  margin-left: 10px;
  padding: 4px 8px;
  font-size: 12px;
  font-weight: 700;
  color: #da0a22;
  background: #ffe3e8;
  border-radius: 999px;
  vertical-align: middle;
}

@media (max-width: 600px) {
  .delivery-table {
    margin: 20px auto;
    border-radius: 12px;
  }

  .delivery-title-row {
    display: none;
  }

  .delivery-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    padding: 14px 16px;
  }

  .delivery-name {
    width: 100%;
    text-align: left;
  }

  .delivery-price {
    min-width: auto;
    width: 100%;
    text-align: left;
    font-size: 16px;
  }

  .delivery-price::before {
    content: "Cena: ";
    font-weight: 400;
  }

  .delivery-badge {
    margin-left: 0;
    margin-top: 8px;
  }
}