.input,
.textarea,
select.input,
.modal-card .input,
.modal-card .textarea,
.modal-card select.input,
.custom-select-btn {
  background: var(--bg-input) !important;
  color: var(--text) !important;
  border: 1px solid var(--form-control-border) !important;
  box-shadow: none !important;
}

.input:hover,
.textarea:hover,
select.input:hover,
.modal-card .input:hover,
.modal-card .textarea:hover,
.modal-card select.input:hover,
.custom-select-btn:hover {
  background: var(--bg-input-hover) !important;
  border-color: var(--form-control-hover-border) !important;
}

.input:focus,
.textarea:focus,
.select-wrap:focus-within select.input,
.modal-card .input:focus,
.modal-card .textarea:focus,
.modal-card .select-wrap:focus-within select.input,
.custom-select-btn:focus-visible,
.select-wrap.is-open .custom-select-btn {
  background: var(--bg-input-focus) !important;
  border-color: var(--accent-strong) !important;
  box-shadow: 0 0 0 3px var(--accent-glow) !important;
}

.input::placeholder,
.textarea::placeholder,
.rich-editor-area.is-empty::before {
  color: var(--form-placeholder) !important;
}

.input.is-invalid,
.textarea.is-invalid,
select.input.is-invalid,
.rich-editor.is-invalid,
.rich-editor-area.is-invalid {
  border: 1px solid #d98b86 !important;
  box-shadow: 0 0 0 3px rgba(194, 65, 59, .10) !important;
}

.select-wrap::after,
.custom-select-chevron {
  color: var(--muted);
  border-color: var(--muted) !important;
}

.custom-select-menu {
  background: var(--menu-surface) !important;
  border: 0 !important;
  box-shadow: 0 18px 44px rgba(32, 42, 63, .14) !important;
}

.custom-select-option {
  color: var(--text-soft) !important;
}

.custom-select-option:hover,
.custom-select-option:focus-visible {
  background: var(--select-option-hover-bg) !important;
  color: var(--text) !important;
}

.custom-select-option.is-selected {
  background: var(--accent-soft) !important;
  color: var(--accent-strong) !important;
}

