.form-tabbed {
  /** Required arguments with purportedly ridiculous defaults */
  --element-unselected-color: red;
  --element-selected-background-color: red;
  --element-selected-padding-inline: 200px;

  /** Optional arguments with sensible defaults */
  --element-selected-border-radius: none;
  --element-selected-shadow-color: transparent;

  > input[type='radio'],
  > label {
    flex: unset;
  }

  > input[type='radio'] {
    position: absolute;
    top: -100vh;
    left: -100vw;

    & + label {
      width: min-content;
    }

    &:not(:checked) + label {
      cursor: pointer;
      line-height: 1;
      text-decoration-line: underline;
      text-decoration-style: dotted;
      text-decoration-thickness:1px;
      text-underline-offset: .25ex;
      color: var(--element-unselected-color);
    }

    &:checked + label {
      background-color: var(--element-selected-background-color);
      border-radius: var(--element-selected-border-radius);
      padding: 0 var(--element-selected-padding-inline);
      box-shadow: 1px 1px var(--element-selected-shadow-color);
    }
  }
}
