.cmt-ckeditor {
  .cke {
    border: solid 1px rgba(0, 0, 0, 0.38);
    border-radius: 4px;
    overflow: hidden;
  }

  .cke_top {
    background-color: rgb(244, 246, 248);
    border-bottom: none;
  }

  .cke_bottom {
    background-color: rgb(244, 246, 248);
    border-top: none;
  }

  .cke_toolbar {
    font-size: 24px;

    &:not(.cke_toolbar_last)::after {
      content: "";
      border-right: solid 2px rgba(0, 0, 0, 0.2);
      font-size: 100%;
      margin-right: 5px;
      vertical-align: middle;
    }
  }

  a.cke_button,
  .cke_toolgroup a.cke_button {
    border: none;
    border-radius: 4px;
    height: 28px;
    line-height: 28px;
    margin-right: 4px;
    padding: 0;
    text-align: center;
    width: 28px;

    &:last-child {
      margin-right: 0;

      &::after {
        border: none;
      }
    }

    &:hover {
      border: none;
      line-height: 28px;
      height: 28px;
      width: 28px;
      padding: 0;
    }
    
    .cke_button_icon {
      display: none;
    }
  
    &::before {
      font-family: "Material Design Icons";
      font-size: 24px;
    }
    
    &__bold::before      { content: mdi("format-bold"); }
    &__italic::before    { content: mdi("format-italic"); }
    &__underline::before { content: mdi("format-underline"); }
    &__strike::before    { content: mdi("format-strikethrough"); }
    &__textcolor::before { content: mdi("format-text-variant"); }

    &__justifyleft::before   { content: mdi("format-align-left"); }
    &__justifycenter::before { content: mdi("format-align-center"); }
    &__justifyright::before  { content: mdi("format-align-right"); }
    &__justifyblock::before  { content: mdi("format-align-justify"); }

    &__bulletedlist::before { content: mdi("format-list-bulleted-square"); }
    &__numberedlist::before { content: mdi("format-list-numbered"); }

    &__textcolor .cke_button_arrow {
      display: none;
    }

    &__textcolor::before {
      color: initial;
    }

    &__textcolor::after,
    &__textcolor:last-child::after,
    &__textcolor.cke_button_on:last-child::after,
    &__textcolor:hover:last-child::after {
      border-right: none;
      content: mdi("color-helper") !important;
      font-family: "Material Design Icons";
      font-size: 20px;
      left: 0;
      margin: 0;
      position: absolute;
      text-align: center;
      top: 3px;
      width: 28px;
    }
  }

  .cke_combo {
    a.cke_combo_button {
      border-radius: 4px !important;
      font-size: initial;
      height: 28px;
      margin: 0;
      margin-left: 0;
      padding: 0;

      &:hover,
      &:active {
        border: none;
        margin: 0;
        margin-left: 0 !important;
        padding: 0;
        padding-left: 0 !important;
      }
    }

    &::after {
      border-right: none;
    }

    &.cke_combo_on {
      a.cke_combo_button {
        border: none;
        margin: 0;
        margin-left: 0;
        padding: 0;
      }
    }

    .cke_combo_text {
      font-size: 87.5%;
      line-height: 28px;
      width: 4.5rem;
    }

    .cke_combo_arrow {
      border-width: 5px;
    }
  }

  .cke_contents {
    ol, ul {
      list-style: initial;
    }
  }
}
