/* ZeitloSen Honeypot Field – completely hidden but accessible for bots */
.hidden-field,
.osm-invisible-to-visitors,
.zeitlosen-check-field {
  position: absolute !important;
  left: -9999px !important;  /* moves it off screen */
  top: auto !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  z-index: -1 !important;
}

/* Optional: prevent Chrome autofill from showing on hidden fields */
.hidden-field input,
.zeitlosen-check-field input {
  display: none !important;
}

/* 1) Meer afstand tussen bolletje en tekst */
#laufzeit_auswahl label.radio input[type="radio"] {
  margin-right: 10px !important;
  transform: scale(1.15);
  vertical-align: middle;
}

/* 2) Mooie ‘box’-opties onder elkaar */
#laufzeit_auswahl label.radio {
  display: flex;                 /* input + tekst naast elkaar */
  align-items: center;
  gap: 10px;                     /* extra lucht t.o.v. input */
  padding: 8px 12px;
  background: #f9fafb;
  border: 1px solid #ddd;
  border-radius: 10px;
  margin-bottom: 10px;
  line-height: 1.35;
  white-space: pre;              /* behoud meerdere spaties! */
  font-variant-numeric: tabular-nums; /* nette cijfer-uitlijning */
}

/* Hover/checked states (optioneel) */
#laufzeit_auswahl label.radio:hover {
  background: #eef4ff;
  border-color: #007bff;
}
#laufzeit_auswahl input[type="radio"]:checked + * {
  background: #007bff;
  color: #fff;
  border-color: #007bff;
}

label[for="mitgliedschaftfr"] .star {
    display: none !important;
    visibility: hidden !important;
}

label#mitgliedschaftfr-lbl {
    font-weight: 500 !important;
}

.osm-container .form-group.form-row.osm-message
 {
    margin-left: 0px;
}

/* OSM - Zahlungsinfo/Preis-Box ausblenden (Selector ggf. anpassen) */
.osm-container .form-group.form-row.osm-payment-terms,
#regular_tax_amount_container
 {
  display: none !important;
}


/* =========================================
   OSMembership – Preis (inkl. MwSt.) sauber
   Betrag + € direkt nebeneinander
   Ziel: #regular_gross_amount_container
========================================= */

/* 1) Originele label verbergen (maar toegankelijk houden) */
#regular_gross_amount_container label{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}

/* 2) Eigen labeltekst tonen */
#regular_gross_amount_container .form-control-label::before{
  content:"Preis (inkl. MwSt.)";
  display:block;
  font-weight:500;
}

/* 3) Rechter kolom: NIET in kolom-stacking (OSM theme override) */
#regular_gross_amount_container .eb-form-control{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  padding-left:0 !important;
}

/* 4) De input-group mag NIET full-width met space-between */
#regular_gross_amount_container .osm-addon-container.input-group{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:auto !important;
  max-width:100% !important;
  gap:.35rem !important; /* ruimte tussen bedrag en € */
}

/* 5) Bedrag “tekstachtig” en géén flex-grow (anders duwt hij € weg) */
#regular_gross_amount_container input#regular_gross_amount{
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:none !important;

  padding:0 !important;
  margin:0 !important;

  width:auto !important;
  min-width:0 !important;
  flex:0 0 auto !important;

  font-weight:700;
  font-size:1.05rem;
  line-height:1.2;
}

/* 6) Euroteken “tekstachtig” en ook geen flex-grow */
#regular_gross_amount_container .input-group-text{
  border:0 !important;
  background:transparent !important;

  padding:0 !important;
  margin:0 !important;

  display:inline-flex !important;
  align-items:center !important;

  width:auto !important;
  flex:0 0 auto !important;

  font-weight:700;
  font-size:1.05rem;
  line-height:1.2;
}

/* 7) (Optioneel) Input-group bootstrap borders resetten als die nog verschijnen */
#regular_gross_amount_container .input-group > .form-control,
#regular_gross_amount_container .input-group > .input-group-text{
  border-radius:0 !important;
}