form {
  margin-inline: var(--rhyme-lg);
}

form.views-exposed-form {
  margin: 0;
}

form .js-form-wrapper .js-form-item {
  margin-bottom: var(--rhyme-base);
}

/*form .webform-flexbox {
  margin-top: calc(var(--rhyme-base) * -1);
}*/

form .js-form-wrapper .js-form-item.js-form-type-radio,
form .js-form-wrapper .js-form-item.js-form-type-checkbox {
  margin-bottom: 0;
}

form label,
form legend {
  font-weight: 600;
  margin-top: var(--rhyme-base);
}

form .js-form-type-textfield label,
form .js-form-type-password label,
form .js-form-type-email label,
form .js-form-type-select label,
form .js-form-type-entity-autocomplete label,
form .js-form-type-tel label,
form .js-form-type-url label,
form .js-form-type-number label {
  display: block;
}

/*label.form-required::after {
  content: "*";
  color: var(--color-primary);
  margin-left: 1px;
}*/

form label.option {
  font-weight: 300;
}

form input[type="text"],
form input[type="password"],
form input[type="email"],
form input[type="url"],
form input[type="tel"],
form input[type="number"],
form input[type="date"],
form input[type="time"],
form select,
textarea {
  border: var(--border-sm) solid var(--color-outline);
  border-radius: 4px;
  padding: var(--rhyme-xxs);
  max-width: 100%;
  width: 100%
}

form .description {
  //font-size: 0.8rem;
  margin-bottom: 0.5rem;
}

form .js-form-item:last-of-type .description {
  margin-bottom: 0;
}

form .form-item--error-message {
  color: var(--color-primary);
}

form ::placeholder {
  /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #000;
  opacity: 0.35; /* Firefox */
}

form .field--type-datetime {
  .fieldset-wrapper div {
    display: flex;
    gap: 0.25rem;
  }
}

form .field--type-link .fieldset-wrapper {
  display: flex;
}

/****************************
          Dropdown
****************************/
form select {
  padding: var(--rhyme-xxs);
  border: 1px solid var(--color-outline);
  border-radius: 2px;
  background-color: #fff;
}

/****************************
          Text Areas
****************************/
.field--widget-text-textarea label + div {
  margin-top: 0.25rem;
}

.field--widget-text-textarea iframe {
  width: calc(100% - 1rem);
  padding: 0.25rem 0.5rem;
}

form textarea {
  border: 1px solid var(--color-outline);
  border-radius: 2px;
  padding: var(--rhyme-xxs);
}

/****************************
         Form Actions
****************************/
.form-actions {
  display: flex;
  margin: 1rem 0;
}

.form-actions input {
  margin-right: 0.333rem;
}