/* Container für das Formular */
.form-container {
    max-width: 500px;
    background-color: white;
    margin: 0 auto;
    border: 1px solid #E0E0E0;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    
    /* Default margin - kann je nach Bedarf angepasst werden */
    margin-top: 0;
    margin-bottom: 0;
  }
  
  
  
  /* Formular Styling */
  .inhouse-form {
    padding: 20px;
    background-color: #FFFFFF;
    display: flex;
    flex-direction: column;
    gap: 15px; /* Abstand zwischen den Formularfeldern */
  }
  
  .inhouse-form .form-group {
    margin-bottom: 0; /* Keine zusätzliche Marge nötig, da gap verwendet wird */
  }
  
  .inhouse-form input, .inhouse-form select, .inhouse-form textarea {
    width: 100%;
    padding: 10px;
    font-size: 16px;
    border: 1px solid #E0E0E0;
    background-color: #F8F8F8;
    box-sizing: border-box;
  }
  
  .inhouse-form textarea {
    resize: vertical;
  }
  
  .checkbox-group label {
    display: flex;
    align-items: flex-start;
    font-size: 14px;
    color: #666666;
    position: relative;
    padding-left: 35px; /* Platz für die Checkbox */
    cursor: pointer;
  }
  
  .checkbox-group input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    width: 24px;
    height: 24px;
    border: none;
    position: absolute;
    left: 0;
    top: 0;
    cursor: pointer;
    background: url('https://cdn.phm-innotech.de/images/vz-checkbox.png') no-repeat center;
    background-size: cover;
  }
  
  .checkbox-group input[type="checkbox"]:checked {
    background: url('https://cdn.phm-innotech.de/images/vz-checkbox-checked.png') no-repeat center;
    background-size: cover;
  }
  
  
  
  form button {
    display: block;
    width: 100%;
    margin-top: 20px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  }
  
  /* Media Query für Desktop */
  @media (min-width: 1024px) {
    .form-container {
        margin-top: -7rem;
        margin-bottom: -7rem;
    }
  }
  
  
  .order-1 {
    order: 1;
  }
  .order-2 {
    order: 2;
  }
  
  /* Mobile Geräte (max-width: 600px) */
  @media (max-width: 600px) {
    .order-1-mobile {
      order: 1;
    }
    .order-2-mobile {
      order: 2;
    }
  }
  
  /* Tablets (min-width: 601px und max-width: 1024px) */
  @media (min-width: 601px) and (max-width: 1024px) {
    .order-1-tablet {
      order: 1;
    }
    .order-2-tablet {
      order: 2;
    }
  }
  
  /* Desktops (min-width: 1025px) */
  @media (min-width: 1025px) {
    .order-1-desktop {
      order: 1;
    }
    .order-2-desktop {
      order: 2;
    }
  }
  
  .custom-bullets-red-sign {
    display: block; /* block statt flex, damit der Listen-Marker zuverlässig (auch FF/Safari) rendert */
    padding-left: 2rem;
}

.custom-bullets-red-sign li {
    /* Häkchen als echter Listen-Marker (Inline-SVG) statt ::before-Bild:
       ::before/Background-Bild verhindern die axe-Kontrastberechnung. */
    list-style-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='22'%20height='22'%20viewBox='0%200%2022%2022'%3E%3Crect%20width='22'%20height='22'%20rx='4'%20fill='%23cc1f27'/%3E%3Cpath%20d='M6%2011.5l3%203%207-7'%20fill='none'%20stroke='white'%20stroke-width='2.4'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/svg%3E");
    list-style-position: outside;
    padding-left: 8px; /* Abstand zwischen Marker und Text */
    margin-bottom: 20px; /* Abstand zwischen den Listenelementen */
}

.custom-bullets-red li {
    /* Bullet als echter Listen-Marker statt background-image:
       sonst kann axe (WCAG color-contrast) den Textkontrast nicht bestimmen. */
    list-style-image: url('https://cdn.phm-innotech.de/images/bullet-red.png');
    list-style-position: outside;
    padding-left: 4px; /* Abstand zum Text */
    line-height: 25px;
    margin-bottom: 10px; /* Abstand zwischen den Listenelementen */
}

.early-bird-discount {
    background-color: #2D7DD2;
    border: 0.15rem solid black;
    border-radius: 0.5rem;
    padding: 0.3rem 0.5rem;
    width: max-content;
    color: white;
    font-weight: 600;
    display:block;
  }

  .seminar_fully_booked{
  background-color: #cc1f27;
  border: 0.15rem solid black;
  border-radius: 0.5rem;
  padding: 0.3rem 0.5rem;
  width: max-content;
  color: white;
  font-weight: 600;
  display:block;
}

.early-bird-discount-orange{
    background-color: #FE7F2D;
    border: 0.15rem solid black;
    border-radius: 0.5rem;
    padding: 0.3rem 0.5rem;
    width: max-content;
    color: white;
    font-weight: 600;
    display:block;
}

.nearly-booked-orange{
  background-color: #FE7F2D;
  border: 0.15rem solid black;
  border-radius: 0.5rem;
  padding: 0.3rem 0.5rem;
  width: max-content;
  color: #3d1f00;
  font-weight: 600;
  display:block;
}

.free-places-green{
  background-color: #357A61;
  border: 0.15rem solid black;
  border-radius: 0.5rem;
  padding: 0.3rem 0.5rem;
  width: max-content;
  color: white;
  font-weight: 600;
  display:block;
}

#seminarTable .even {
  background-color:#d1d5db5e; /* Entspricht Tailwind 'border-gray-300' */
}

table.dataTable thead th, table.dataTable thead td {
  padding: 10px;
    padding-right: 10px;
  background-color: #001d30;
  color: white;
}

table.dataTable thead > tr > th.sorting_asc::before, table.dataTable thead > tr > th.sorting_desc::after, table.dataTable thead > tr > td.sorting_asc::before, table.dataTable thead > tr > td.sorting_desc::after {
  opacity: .9;
}

table.dataTable thead > tr > th.sorting::before, table.dataTable thead > tr > th.sorting::after, table.dataTable thead > tr > th.sorting_asc::before, table.dataTable thead > tr > th.sorting_asc::after, table.dataTable thead > tr > th.sorting_desc::before, table.dataTable thead > tr > th.sorting_desc::after, table.dataTable thead > tr > th.sorting_asc_disabled::before, table.dataTable thead > tr > th.sorting_asc_disabled::after, table.dataTable thead > tr > th.sorting_desc_disabled::before, table.dataTable thead > tr > th.sorting_desc_disabled::after, table.dataTable thead > tr > td.sorting::before, table.dataTable thead > tr > td.sorting::after, table.dataTable thead > tr > td.sorting_asc::before, table.dataTable thead > tr > td.sorting_asc::after, table.dataTable thead > tr > td.sorting_desc::before, table.dataTable thead > tr > td.sorting_desc::after, table.dataTable thead > tr > td.sorting_asc_disabled::before, table.dataTable thead > tr > td.sorting_asc_disabled::after, table.dataTable thead > tr > td.sorting_desc_disabled::before, table.dataTable thead > tr > td.sorting_desc_disabled::after {
  position: absolute;
  display: block;
  opacity: .425;
  right: 10px;
  line-height: 9px;
  font-size: .8em;
}

table.dataTable.no-footer {
  border-bottom: none;
}

.overflow-x-auto {
  overflow-x: auto;
}

/* Table width & dividing lines */
.min-w-full {
  min-width: 100%;
}