.download_icon_btn svg {
  transition: all 200ms;
}

.download_icon_btn svg rect,
.download_icon_btn svg path {
  transition: all 200ms;
}

.download_icon_btn svg:hover {
  background: #228176;
}

.download_icon_btn svg:hover rect {
  stroke: #fff;
}

.download_icon_btn svg:hover path {
  fill: #fff;
}

/*
 * The Noahs theme's generic form/input.html.twig adds the Bootstrap
 * `form-control` class to every <input>, including radios and checkboxes.
 * `form-control` is full-width text-input styling, which collapses radios and
 * checkboxes into blank full-width bars. Restore native control rendering.
 */
input[type="radio"].form-control,
input[type="checkbox"].form-control,
.form-radio,
.form-checkbox {
  -webkit-appearance: auto;
  appearance: auto;
  width: auto;
  min-width: 0;
  height: auto;
  min-height: 0;
  padding: 0;
  margin: 0 0.4em 0 0;
  border: revert;
  border-radius: 0;
  background: revert;
  box-shadow: none;
  display: inline-block;
  vertical-align: middle;
  flex: 0 0 auto;
}

/*
 * The theme lays out every `.form-item` as a centered flex column (label above,
 * control centered below). For individual radio/checkbox options that centres
 * the control away from its label, so lay each option out as a left-aligned row.
 */
.form-item.form-type-radio,
.form-item.js-form-type-radio,
.form-item.form-type-checkbox,
.form-item.js-form-type-checkbox {
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 0.45em;
}

.form-item.form-type-radio > label.option,
.form-item.js-form-type-radio > label.option,
.form-item.form-type-checkbox > label.option,
.form-item.js-form-type-checkbox > label.option {
  width: auto;
  margin: 0;
}

/*
 * Required-field asterisk. Core marks required labels with `.form-required`,
 * but the Noahs theme ships no styling for it (admin themes like Claro draw
 * the asterisk themselves), so required fields looked identical to optional
 * ones. Matches the "* obvezni podatki" legend in the form footer.
 */
.webform-submission-form .form-required::after {
  content: " *";
  color: #d32f2f;
  font-weight: 600;
}

/*
 * Webform submit button. The theme's default `.btn-theme` renders it as a dark
 * box with barely-visible text; the form's `btn-green` class has no styling of
 * its own. Give it the LON brand green.
 */
.webform-submission-form .btn-green .webform-button--submit,
.webform-submission-form .form-actions .webform-button--submit {
  background: #228176;
  border: 0;
  border-radius: 4px;
  color: #fff;
  padding: 0.7em 2.2em;
  font-weight: 600;
  line-height: 1.2;
  cursor: pointer;
  transition: background 200ms;
}

.webform-submission-form .btn-green .webform-button--submit:hover,
.webform-submission-form .form-actions .webform-button--submit:hover {
  background: #1a655c;
}

/*
 * File-widget buttons (Remove / Upload) inherit the theme's dark `.btn-theme`
 * styling (dark text on a dark box). Render them as compact secondary buttons.
 */
.webform-submission-form .js-form-managed-file .form-submit {
  background: #fff;
  border: 1px solid #228176;
  border-radius: 4px;
  color: #228176;
  padding: 0.35em 1.1em;
  font-weight: 600;
  line-height: 1.2;
  cursor: pointer;
  transition: background 200ms, color 200ms;
}

.webform-submission-form .js-form-managed-file .form-submit:hover {
  background: #228176;
  color: #fff;
}
