/**
 * Form element styles.
 */
:root {
  --form-control-background: var(--color-white);
  --form-control-background--disabled: var(--color-disabled);
  --form-control-color: var(--color-text);
  --form-control-font-size: var(--font-size-base);
  --form-control-line-height: var(--line-height);
  --form-control-padding--y: var(--spacing-sm);
  --form-control-padding--x: var(--spacing-lg);
  --form-control-padding: calc(var(--form-control-padding--y) - var(--form-control-border--width)) calc(var(--form-control-padding--x) - var(--form-control-border--width));
  --form-control-border-radius: var(--radius-xxs);
  --form-control-border--color: var(--color-border);
  --form-control-border--width: 1px;
  --form-control-border--style: solid;
  --form-control-border: var(--form-control-border--width) var(--form-control-border--style) var(--form-control-border--color);
  --form-control-box-shadow: unset;
}

.form-element {
  font-size: var(--form-control-font-size);
  line-height: var(--form-control-line-height);
  display: inline-block;
  max-width: 100%;
  box-sizing: border-box;
  letter-spacing: 1px;
  color: #fff;
  font-weight: bold;
  border-radius: 0;
  outline: none;
  border: 2px solid #dcc5b7;
  background-color: #dbc4b62e;
  appearance: none;
  box-shadow: none;
}

.form-element:active {
  --form-control-border--color: var(--color-border-dark);
}

.form-element:hover {
  --form-control-border--color: var(--color-border-dark);
  --form-control-box-shadow: inset 0 0 0 1px var(--form-control-border--color);
}

.form-element:focus {
  background: transparent;
  border-color: #fff;
}

.form-element:disabled {
  --form-control-background: var(--form-control-background--disabled);
  --form-control-border--color: var(--color-border);
  --form-control-box-shadow: unset;
  cursor: not-allowed;
}

.form-element.error {
  --form-control-border--color: var(--color-error);
}

.form-element[size] {
  width: 100%;
}

/**
 * Form element variations.
 */
.form-element--type-select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 9'%3E%3Cpath fill='none' stroke-width='1.5' d='M1 1L7 7L13 1' stroke='%23545560'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-position: 100% 50%;
  background-size: 2.75rem 0.5625rem;
  padding-right: calc(var(--form-control-padding--x) - var(--form-control-border--width) + var(--form-control-padding--x));
}

@media (min-width: 425px) {
  .form-element[size] {
    width: initial;
  }
}
