dialog button.wait-loop { position: relative; }
body button.wait-loop:not(:disabled) > span.search { visibility: visible; }
body button.wait-loop:not(:disabled) > span.wait { display: none; }
body button.wait-loop:disabled > span.search { visibility: hidden; }
body button.wait-loop:disabled > span.wait {
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  right: 0;
}

dialog button,
dialog label,
dialog p {
  color: #000000;
}

dialog .btn-primary.btn:disabled,
dialog .btn-primary.btn:focus-visible,
dialog .btn-primary.btn:first-child:active,
dialog .btn-primary:focus,
dialog .btn-primary:active,
dialog .btn-primary:hover,
dialog .btn-primary {
  background-color: var(--main-highlight-color);
  border-width: 0;
  color: #ffffff;
	box-shadow: none;
	outline: none;
  box-shadow: none;
}

dialog .btn-primary.btn:disabled,
dialog .btn-primary.btn:first-child:active,
dialog .btn-primary:active,
dialog .btn-primary:hover {
  filter: opacity(90%);
}

dialog .btn-link.btn:focus-visible,
dialog .btn-link.btn:first-child:active,
dialog .btn-link:focus,
dialog .btn-link:active,
dialog .btn-link:hover,
dialog .btn-link,
dialog a,
dialog a:hover {
  color: var(--main-primary-color);
  text-decoration: none;
}

dialog .btn-link.btn:first-child:active,
dialog .btn-link:active,
dialog .btn-link:hover,
dialog a:hover {
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.15);
}

dialog .form-control,
dialog .form-control:focus,
dialog .form-control:hover {
  background-color: var(--main-lightning-color);
  border-color: var(--main-primary-color);
  border-radius: var(--main-border-radius);
  color: #000000;
}

dialog .input-group.shadow-focus,
dialog .input-group.shadow-focus:focus-within {
  border: 1px solid var(--main-primary-color);
  background-color: var(--main-lightning-color);
  border-radius: var(--main-border-radius);
  color: #000000;
  outline: 0;
}

dialog .form-check-input,
dialog .form-check-input:checked {
  background-color: var(--main-lightning-color);
  border-color: var(--main-primary-color);
}

.form-check-input:checked[type="checkbox"] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
}

dialog form:has(:invalid) .btn-primary[name="submit"].invalid {
  background-color: #ccc;
  text-shadow: none;
  filter: none;
}
