 .membereditform {
  background-color: var(--col-green2-back);
  color: white;

  display: grid;
  grid-template-columns: auto 1fr;
}

.membereditform .label_textinput {
  grid-column: 1;
  margin-right: 0.5rem;

  align-self: center;
  text-align: right;
}

.membereditform .labeled_checker {
  display: flex;

}

.membereditform .labeled_checker .checker {
  margin: 0.3rem 0.2rem 0.3rem 0.2rem;
}

.membereditform .labeled_checker span {
  margin: 0.3rem;
  display: flex;
}

.membereditform .spacer-small {
  grid-column: 1/3;
  height: 1rem;
}

.membereditform #label_groups { align-self: start; }
.membereditform #label_rights { align-self: start; }

.membereditform .textinput {
  margin: 0.2rem;
  padding: 0.5rem;

  background-color: var(--col-green2-mid);
  border: 1px solid #FFF;
  border-radius: 0.2rem;
  color: #FFF;
}

.membereditform .memberrightslist {
  display: grid;
  grid-template-columns: auto 1fr;
}

.membereditform .memberrightslist .checker {
  margin: 0.3rem 0.2rem 0.3rem 0.2rem;
}

.membereditform .memberrightslist .label_rights {
  margin: 0.3rem;
}

.membereditform .btn {
  margin-top: 2rem;

  padding: 0.35rem;
  background-color: #FFF;
  border: 1px solid #060;
  border-radius: 0.25rem;

  font-size: 1.25rem;
  color: var(--col-green2-full);

  grid-column: 1/3;
}
.membereditform .btn:hover {
  background-color: var(--col-green-light);
}

.membereditform .grouplist {
  display: grid;
  grid-template-columns: auto 1fr;
}

.membereditform .grouplist .checker {
  margin: 0.3rem 0.2rem 0.3rem 0.2rem;
}

.membereditform .grouplist .label_group {
  margin: 0.3rem;
}

/* -------------- */

.membereditform.membereditform_password {
  background-color: var(--col-green2-back);
  color: white;
}

.membereditform_password .textinput {
  background-color: #FFBE5E;
  border: 1px solid #FFF;
  color: #FFF;
}

.membereditform_password .btn {
  margin-top: 0;
  color: var(--col-green2-full);
}
.membereditform_password .btn:hover {
  background-color: var(--col-orange-light);
}

 /* -------------- */

@media only screen and (max-width: 30rem) { /* < 480px */
    .membereditform { grid-template-columns: 1fr; }

    .membereditform .label_textinput { text-align: left; margin-top: 1.5rem;  }
    .membereditform #label_fullname  {                   margin-top: 0.5rem }

    .membereditform .spacer-small     { display: none; }

    .membereditform #label_fullname    { grid-row: 1; grid-column: 1; }
    .membereditform #fullname          { grid-row: 2; grid-column: 1; }

    .membereditform #label_rights      { grid-row: 3; grid-column: 1; }
    .membereditform .memberrightslist  { grid-row: 4; grid-column: 1; }

    .membereditform #label_email       { grid-row: 5; grid-column: 1; }
    .membereditform #email             { grid-row: 6; grid-column: 1; }

    .membereditform .labeled_checker   { grid-row: 7; grid-column: 1; }

    .membereditform #label_groups      { grid-row: 8; grid-column: 1; }
    .membereditform .grouplist         { grid-row: 9; grid-column: 1; }

    .membereditform #btnSubmit         { grid-row: 10; grid-column: 1; }
}