pib-components-dx-base 0.0.0-upstream-snapshot.2026-09-19.1

temporary fork for Politik im Blick - Dioxus components
Documentation
/* Base */
.dx-textarea {
  width: 100%;
  min-height: 4rem;
  box-sizing: border-box;
  padding: 8px 12px;
  border: none;
  border-radius: 0.5rem;
  margin: 0;
  appearance: none;
  background: none;
  color: var(--secondary-color-4);
  font-family: inherit;
  line-height: 1.5;
  outline: none;
  resize: vertical;
  transition: background-color 100ms ease-out, border-color 100ms ease-out, box-shadow 100ms ease-out;
}

.dx-textarea:disabled {
  color: var(--secondary-color-5);
  cursor: not-allowed;
}

.dx-textarea::placeholder {
  color: var(--secondary-color-5);
}

/* Default Variant */
.dx-textarea[data-style="default"] {
  background: var(--light, var(--primary-color)) var(--dark, var(--primary-color-3));
  box-shadow: inset 0 0 0 1px var(--light, var(--primary-color-6)) var(--dark, var(--primary-color-7));
}

.dx-textarea[data-style="default"]:hover:not(:disabled),
.dx-textarea[data-style="default"]:focus {
  background: var(--light, var(--primary-color-4)) var(--dark, var(--primary-color-5));
  color: var(--secondary-color-1);
}

/* Fade Variant */
.dx-textarea[data-style="fade"] {
  background: var(--light, var(--primary-color)) var(--dark, var(--primary-color-3));
}

.dx-textarea[data-style="fade"]:hover:not(:disabled),
.dx-textarea[data-style="fade"]:focus {
  background: var(--light, var(--primary-color-4)) var(--dark, var(--primary-color-5));
  color: var(--secondary-color-1);
}

/* Outline Variant */
.dx-textarea[data-style="outline"] {
  border: 1px solid var(--primary-color-6);
  background-color: var(--light, var(--primary-color))
    var(--dark, var(--primary-color-3));
}

.dx-textarea[data-style="outline"]:hover:not(:disabled, :focus) {
  border-color: var(--primary-color-7);
}

.dx-textarea[data-style="outline"]:focus {
  border-color: var(--focused-border-color);
}

.dx-textarea[data-style="outline"]:invalid,
.dx-textarea[data-style="outline"][aria-invalid="true"] {
  border-color: var(--primary-error-color);
}

/* Ghost Variant */
.dx-textarea[data-style="ghost"] {
  background-color: transparent;
}

.dx-textarea[data-style="ghost"]:hover:not(:disabled) {
  background-color: var(--primary-color-5);
  color: var(--secondary-color-1);
}

.dx-textarea[data-style="ghost"]:focus {
  border-color: var(--focused-border-color);
}