/* =========================================================
   Global WPForms Base Style (all forms)
   ========================================================= */

.wpforms-container {
  --wf-border: #d7dbe3;
  --wf-border-focus: #066aab;
  --wf-bg: #ffffff;
  --wf-text: #1f2937;
  --wf-muted: #6b7280;
  --wf-radius: 10px;
  --wf-space: 14px;
  --wf-label-size: 15px;
  --wf-input-h: 46px;
}

/* Container rhythm */
.wpforms-container .wpforms-field-container {
}

/* Labels */
.wpforms-container .wpforms-field-label-inline a {
  text-decoration: underline;
}

.wpforms-container .wpforms-form .wpforms-field-label {
  hyphens: none !important;
}

.text-color-label p {
  color: var(--wpforms-label-color);
}

/* Base input/select/textarea */
.wpforms-container input[type="text"],
.wpforms-container input[type="email"],
.wpforms-container input[type="tel"],
.wpforms-container input[type="number"],
.wpforms-container input[type="date"],
.wpforms-container select,
.wpforms-container textarea {
}

.wpforms-container input[type="tel"] {
  padding-left: 44px !important;
}

/* Single-line height */
.wpforms-container input[type="text"],
.wpforms-container input[type="email"],
.wpforms-container input[type="tel"],
.wpforms-container input[type="number"],
.wpforms-container input[type="date"],
.wpforms-container textarea,
.wpforms-container select {
  /* min-height: 62px; */
}

.wpforms-container .wpforms-form .choices .choices__inner {
  /* min-height: 62px !important; */
}

/* Focus state */
.wpforms-container input[type="text"]:focus,
.wpforms-container input[type="email"]:focus,
.wpforms-container input[type="tel"]:focus,
.wpforms-container input[type="number"]:focus,
.wpforms-container input[type="date"]:focus,
.wpforms-container textarea:focus,
.wpforms-container select:focus {
    outline: none !important;
    box-shadow: 0 0 0 1px rgba(37, 37, 37, 0.25) !important;
}

/* Accaptance */
.budi-acceptance {
  margin: 24px 0 32px !important;
}

.budi-acceptance .wpforms-field-description {
  font-size: 16px !important;
  margin-left: 30px !important;
  line-height: normal !important;
}

/* Placeholder */
.wpforms-container ::placeholder {
  color: var(--wf-muted);
}

/* Checkbox / Radio spacing */
.wpforms-container .wpforms-field-radio li,
.wpforms-container .wpforms-field-checkbox li {
}

/* Bullet-style checkbox (match modern radio look) */
div.wpforms-container-full .wpforms-field-checkbox.bullet-style input[type="checkbox"] {
  border-radius: 50% !important;
}

div.wpforms-container-full .wpforms-field-checkbox.bullet-style input[type="checkbox"]:before {
  border-radius: 50% !important;
}

div.wpforms-container-full .wpforms-field-checkbox.bullet-style input[type="checkbox"]:checked:after {
  border: 1px solid transparent !important;
  border-radius: 50% !important;
  background-color: var(--wpforms-button-background-color) !important;
  width: var(--wpforms-field-size-checkbox-size);
  height: var(--wpforms-field-size-checkbox-size);
  transform: scale(0.5);
  -moz-transform: scale(0.47);
  left: calc(-3px + var(--wpforms-field-border-size, 1px));
  top: calc(-3px + var(--wpforms-field-border-size, 1px));
}

div.wpforms-container-full .wpforms-field-checkbox.bullet-style input[type="checkbox"]:focus:before {
  border-width: var(--wpforms-field-border-size, 0) !important;
  border-style: solid !important;
  border-color: var(--wpforms-button-background-color) !important;
  box-shadow: 0 0 0 1px var(--wpforms-button-background-color), 0 1px 2px rgba(0, 0, 0, 0.15) !important;
  outline: none !important;
}

/* Divider title */
.wpforms-container .wpforms-field-divider h3 {
  font-weight: 700 !important;
  font-family: var(--budi-font-family-primary) !important;
  padding: 0 !important;
  margin: 20px 0 !important;
}

/* Error states */
.wpforms-container .wpforms-error {
}
.wpforms-container label.wpforms-error {
}

/* Submit button */
.wpforms-container .wpforms-submit {
  background: var(--color-sub) !important;
  font-weight: 700 !important;
  height: 58px !important;
  padding-left: 30px !important;
  padding-right: 30px !important;
}
.wpforms-container .wpforms-submit:hover {
}

div.wpforms-container .wpforms-field, 
div.wp-core-ui div.wpforms-container .wpforms-field {
  padding: 12.5px 0;
}

div.wpforms-container .wpforms-field-layout {
  padding: 0;
}

/* Custom dropdown icon (WPForms modern select) */
div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-select-style-modern .choices[data-type*="select-one"]:after,
div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-select-style-modern .choices[data-type*="select-multiple"]:after {
  content: "" !important;
  top: 55% !important;
  width: 15px !important;
  height: 9px !important;
  border: 0 !important;
  background-repeat: no-repeat !important;
  background-size: 15px 9px !important;
  background-position: center !important;
  background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2715%27%20height%3D%279%27%20viewBox%3D%270%200%2015%209%27%20fill%3D%27none%27%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%3E%3Cpath%20d%3D%27M14%201L7.59814%207.52649L1.00011%201.05446%27%20stroke%3D%27%231C9A95%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%3C/svg%3E") !important;
  transform: translateY(-50%) rotate(0deg) !important;
  transform-origin: center !important;
  transition: transform 0.2s ease !important;
}

div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-select-style-modern .choices.is-open[data-type*="select-one"]:after,
div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-select-style-modern .choices.is-open[data-type*="select-multiple"]:after {
  transform: translateY(-50%) rotate(180deg) !important;
}

/* Custom remove (x) button for selected item */
div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-select-style-modern .choices[data-type*="select-one"] .choices__button {
  top: 60%;
  right: 2%;
  width: 15px !important;
  height: 9px !important;
  min-width: 15px !important;
  min-height: 9px !important;
  padding: 0 !important;
  margin-left: 8px !important;
  border: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
  text-indent: -9999px !important;
  overflow: hidden !important;
  color: transparent !important;
  background-repeat: no-repeat !important;
  background-size: 15px 9px !important;
  background-position: center !important;
  background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2716%27%20height%3D%2715%27%20viewBox%3D%270%200%2016%2015%27%20fill%3D%27none%27%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%3E%3Cpath%20d%3D%27M13.9999%201L7.59803%207.52649L1%201.05446M1.09754%2013.7773L7.59716%207.3482L14.0968%2013.9191%27%20stroke%3D%27%23B3B3B3%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%3C/svg%3E") !important;
}

div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-select-style-modern .choices[data-type*="select-one"] .choices__button:after {
  content: none !important;
}

/* WPForms success confirmation message */
div.wpforms-container-full .wpforms-confirmation-container-full,
div[submit-success] > .wpforms-confirmation-container-full:not(.wpforms-redirection-message) {
  border: none !important;
  background: rgba(28, 154, 149, 0.08) !important;
  padding: 60px 80px !important;
  border-radius: 20px !important;
  text-align: center !important;
}

div.wpforms-container-full .wpforms-confirmation-container-full h3,
div[submit-success] > .wpforms-confirmation-container-full:not(.wpforms-redirection-message) h3,
div.wpforms-container-full .wpforms-confirmation-container-full p,
div[submit-success] > .wpforms-confirmation-container-full:not(.wpforms-redirection-message) p {
  font-family: var(--heading-font-family) !important;
  color: var(--body-color) !important;
  text-align: center !important;
}

div.wpforms-container-full .wpforms-confirmation-container-full h3,
div[submit-success] > .wpforms-confirmation-container-full:not(.wpforms-redirection-message) h3 {
  margin: 0 0 32px 0;
  font-size: 40px;
  line-height: 1.2em;
  font-weight: 600;
}

/* Form Kontakt */
.budi-form-kontakt .wpforms-submit-container {
  text-align: right;
}

/* Responsive */
@media (max-width: 768px) {
  .wpforms-container {
    --wf-input-h: 44px;
    --wf-label-size: 14px;
    --wf-space: 12px;
  }
}

/* Hide introductory form text after submission */
/* .budi-tab-with-form:has(.wpforms-confirmation-container-full)
.budi-tab-with-form__content-area {
    display: none;
} */