.rich-text-editor,
.rich-text-editor-fullscreen,
.rich-text-editor-tools,
.rich-text-editor-fullscreen-tools,
.rich-text-editor-view,
.rich-text-editor-fullscreen-view,
.rich-text-editor-source,
.rich-text-editor-fullscreen-source {
  display:block;
  margin:0 0;
  padding:0;
  background:none;
  font:inherit;
  color:inherit;
  border:0;
  outline:0;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}
.rich-text-editor ::-webkit-input-placeholder,
.rich-text-editor-fullscreen ::-webkit-input-placeholder {
  opacity:.5;
  color:inherit;
}
.rich-text-editor ::-moz-placeholder,
.rich-text-editor-fullscreen ::-moz-placeholder {
  opacity:.5;
  color:inherit;
}
.rich-text-editor-fullscreen ::placeholder,
.rich-text-editor ::placeholder {
  opacity:.5;
  color:inherit;
}
.rich-text-editor-fullscreen,
.rich-text-editor {
  border:1px solid rgba(144, 144, 144, 0.7);
  border-radius:10px;
  border-top-right-radius: 0;
  background:#fff;
  color:#000;
  line-height:1.5em;
  position:relative;
}
.rich-text-editor-fullscreen-tools,
.rich-text-editor-tools {
  font:normal normal 100%/2em "Times New Roman",Times,serif;
  text-align:center;
  -webkit-transition:all .25s ease-out .25s;
  -moz-transition:all .25s ease-out .25s;
  transition:all .25s ease-out .25s;
  border-top: 1px solid rgba(144, 144, 144, 0.7);
  margin-left: 5px;
}
.rich-text-editor-fullscreen-tools::after,
.rich-text-editor-tools::after {
  content:"";
  display:table;
  clear:both;
}
.rich-text-editor-fullscreen-tools a,
.rich-text-editor-tools a {
  display:block;
  float:left;
  width:2em;
  height:2em;
  color:#00798d;
  text-decoration:none;
}
.rich-text-editor-fullscreen-tools svg,
.rich-text-editor-tools svg {
  display:inline-block;
  vertical-align:middle;
  width:1em;
  height:1em;
  line-height:1em;
  font-weight:normal;
  font-style:normal;
  text-decoration:none;
  fill:currentColor;
}
.rich-text-editor-fullscreen-tools a:focus,
.rich-text-editor-fullscreen-tools a:hover,
.rich-text-editor-tools a:focus,
.rich-text-editor-tools a:hover {
  background:#eff;
  border-radius: 10px;
}
.rich-text-editor-fullscreen-view,
.rich-text-editor-view {
  display:block;
  -webkit-box-sizing:content-box;
  -moz-box-sizing:content-box;
  box-sizing:content-box;
  padding:1em;
  min-height:1.5em;
  overflow:auto;
  cursor:text;
}

.rich-text-editor.expand .rich-text-editor-view {
  font-size:0.8em;
  line-height:1.3em;
  min-height:6rem;
  height:3em;
  overflow-y: scroll;
  padding: 0.8rem 1rem;
}

.rich-text-editor-fullscreen.expand .rich-text-editor-fullscreen-view {
  font-size:0.8em;
  line-height:1.3em;
  min-height:6rem;
  height:25em;
  overflow-y: scroll;
  padding: 0.8rem 1rem;
}

.rich-text-editor-fullscreen:hover .rich-text-editor-fullscreen-tools,
.rich-text-editor:hover .rich-text-editor-tools,
.rich-text-editor-fullscreen-view:focus + .rich-text-editor-fullscreen-source + .rich-text-editor-fullscreen-tools,
.rich-text-editor-view:focus + .rich-text-editor-source + .rich-text-editor-tools,
.rich-text-editor-fullscreen-source:focus + .rich-text-editor-fullscreen-tools,
.rich-text-editor-source:focus + .rich-text-editor-tools {
  -webkit-transition-delay:.125s;
  -moz-transition-delay:.125s;
  transition-delay:.125s;
  opacity:1;
  visibility:visible;
}
.rich-text-editor-fullscreen.source .rich-text-editor-tools a {display:none}
.rich-text-editor.source .rich-text-editor-tools a {display:none}
.rich-text-editor-fullscreen.source .rich-text-editor-tools .rich-text-editor-t\:x {display:block}
.rich-text-editor.source .rich-text-editor-tools .rich-text-editor-t\:x {display:block}
.rich-text-editor-tools .rich-text-editor-t\:m {float:right!important}
.rich-text-editor-source {
  width:100%;
  min-height:8em;
  background:#def;
  font:inherit;
  font-family:'Courier New',Courier,'Nimbus Mono L',Monospace;
  padding:.25em .5em;
  overflow:auto;
  resize:none;
  display:block;
}
/* hide object but maintain focus state */
.rich-text-editor-fullscreen.view .rich-text-editor-fullscreen-source,
.rich-text-editor.view .rich-text-editor-source {
  width:0 !important;
  height:0 !important;
  min-width:0 !important;
  min-height:0 !important;
  border:0 !important;
  overflow:hidden !important;
  position:absolute !important;
  top:1em; /* same with `padding-top` of `.rich-text-editor-view` */
  left:1em; /* same with `padding-left` of `.rich-text-editor-view` */
  margin:0 !important;
  padding:0 !important;
  background:none !important;
  color:transparent !important;
  box-shadow:none !important;
  opacity:0 !important;
}
.rich-text-editor-fullscreen.source .rich-text-editor-fullscreen-view,
.rich-text-editor.source .rich-text-editor-view {
  display:none
}

/* dialog */
.rich-text-editor-fullscreen-dialog,
.rich-text-editor-dialog {
  background:inherit;
  border:inherit;
  border-width:0;
  position:absolute;
  top:0;
  right:0;
  bottom:2em;
  left:0;
  padding:1em;
  display:none;
}
.rich-text-editor-fullscreen-dialog input,
.rich-text-editor-dialog input {
  display:inline-block;
  vertical-align:middle;
  width:12em;
  background:none;
  border:0;
  outline:0;
  border-bottom:2px solid;
  border-color:inherit;
  font:inherit;
  color:#00f;
  margin:0;
  padding:0 0 .25em;
}
.rich-text-editor-fullscreen.dialog .rich-text-editor-fullscreen-dialog,
.rich-text-editor.dialog .rich-text-editor-dialog {
  display:block
}

/* error state */
.rich-text-editor-fullscreen.error,
.rich-text-editor.error {
  border-color:#f00
}

/* editor placeholder */
.rich-text-editor-fullscreen-view:empty::before,
.rich-text-editor-view:empty::before {
  content:attr(placeholder);
  opacity:.4;
}
.rich-text-editor-fullscreen-view:focus::before,
.rich-text-editor-view:focus::before {
  display:none
}

/* editor content */
.rich-text-editor-fullscreen-view a,
.rich-text-editor-view a {
  color:#00f;
  text-decoration:underline;
}
.rich-text-editor-fullscreen-view mark,
.rich-text-editor-view mark {
  background:#ff0;
  color:inherit;
}
.rich-text-editor-fullscreen-view abbr,
.rich-text-editor-view abbr {
  text-decoration:none;
  border-bottom:1px dotted;
}

.rich-text-editor-fullscreen-view b,
.rich-text-editor-view b,
.rich-text-editor-fullscreen-view strong,
.rich-text-editor-view strong {font-weight:bold}

.rich-text-editor-fullscreen-view i,
.rich-text-editor-view i,
.rich-text-editor-fullscreen-view em,
.rich-text-editor-view em,
.rich-text-editor-fullscreen-view dfn,
.rich-text-editor-view dfn,
.rich-text-editor-fullscreen-view var,
.rich-text-editor-view var {font-style:italic}

.rich-text-editor-fullscreen-view u,
.rich-text-editor-view u,
.rich-text-editor-fullscreen-view ins,
.rich-text-editor-view ins {
  text-decoration:underline;
}