@charset "UTF-8";
.Controls__row {
  position: relative;
  display: flex;
  align-items: center;
  padding: 8px; }

.Controls__row + .Controls__row {
  padding-top: 0;
  padding-bottom: 4px; }

.Controls__input {
  min-width: 30px;
  margin-left: auto; }

.Controls__header {
  font-weight: bold; }

.Controls__label {
  font-weight: normal;
  cursor: pointer;
  width: 100%; }

.Controls__error-message {
  color: red;
  padding: 8px;
  padding-bottom: 0;
  font-size: 0.8em; }

.LoadingBar {
  position: absolute;
  height: 3px;
  left: 0;
  bottom: 0;
  background-color: #01adee;
  width: 100%;
  transition: width 0.3s, opacity 0.3s; }

.Sidebar__container {
  font-size: 0.8em; }

.Sidebar__content {
  overflow-y: scroll; }

.Sidebar__section {
  display: flex;
  flex-direction: column;
  background-color: white;
  border-radius: 4px;
  border: 1px solid #ddd;
  margin: 0 4px;
  max-height: 100%;
  overflow: hidden;
  font-size: 15px; }

.Sidebar__container + .Sidebar__container {
  margin-top: 8px; }

.Sidebar__header-container {
  position: relative;
  padding: 8px;
  border-bottom: 1px solid #ddd; }

.Sidebar__header-contact {
  margin-top: 5px;
  font-size: 0.8em; }

.Sidebar__header {
  display: flex;
  align-items: baseline;
  position: relative;
  flex-shrink: 0.2;
  font-weight: bold; }

.Sidebar__header-toggle {
  cursor: pointer; }

.Sidebar__header-option {
  font-weight: regular;
  font-size: 0.8em; }

.Sidebar__toggle,
.Sidebar__toggle-label {
  align-self: baseline;
  font-size: 0.8em;
  font-weight: normal; }

.Sidebar__toggle {
  display: inline-block;
  transition: transform 0.15s;
  color: #aaa; }

.Sidebar__toggle-label {
  color: #888;
  margin-left: auto;
  padding-right: 5px; }

.Sidebar__list {
  margin: 0;
  padding: 0;
  list-style: none; }

.Sidebar__awaiting-match {
  padding: 8px;
  color: gray; }

.Sidebar__list {
  margin: 0;
  padding: 0;
  list-style: none; }

.Sidebar__list-item + .Sidebar__list-item {
  border-top: 1px solid #ddd; }

.Sidebar__loading-spinner {
  display: inline-block;
  margin-top: 1px;
  margin-left: 4px;
  line-height: 1;
  animation-duration: 0.5s;
  animation-name: spin;
  animation-iteration-count: infinite; }

@keyframes spin {
  from {
    transform: rotate(0deg); }
  to {
    transform: rotate(360deg); } }

.SidebarMatch__container {
  padding: 8px; }
  .SidebarMatch__container:hover {
    background-color: #f6f6f6; }

.SidebarMatch__list-item:last-child {
  border-bottom: none; }

.SidebarMatch__header {
  display: flex;
  justify-content: space-between;
  cursor: pointer; }

.SidebarMatch__header-label {
  display: flex;
  width: 100%; }

.SidebarMatch__header-match-text {
  margin-bottom: 4px;
  cursor: pointer; }

.SidebarMatch__header-description {
  font-size: 0.8em;
  color: #5f5e5e; }

.SidebarMatch__header-meta {
  margin-left: auto; }

.SidebarMatch__header-range,
.SidebarMatch__header-category {
  text-align: right;
  font-size: 0.8em; }

.SidebarMatch__header-category {
  margin-top: 2px;
  font-variant: small-caps;
  text-transform: lowercase;
  letter-spacing: 0.3px;
  color: #999999; }

.SidebarMatch__header-range {
  color: grey;
  white-space: nowrap; }

.SidebarMatch__header-toggle-status {
  min-width: 20px;
  color: grey;
  text-align: right; }

.SidebarMatch__content {
  margin-top: 4px;
  font-size: 0.8em; }

.SidebarMatch__suggestion-list {
  margin-top: 4px; }

.SidebarMatch__list-title {
  font-style: italic;
  margin-bottom: 4px; }

.SuggestionList__see-more {
  margin: 5px 0;
  text-align: center; }

hr {
  height: 1px;
  border: initial;
  border-bottom: 1px solid #ddd;
  width: 100%;
  margin: 5px 0; }

.flex-align-right {
  margin-left: auto; }

.pull-right {
  float: right; }

.Button {
  padding: 1px 4px;
  border: 1px solid lightgrey;
  border-radius: 3px;
  font-size: 15px;
  font-weight: normal;
  cursor: pointer; }

.Button:hover {
  background-color: #eee; }

.Input[type="checkbox"] {
  margin-left: 8px; }

.Button:active,
.Button:focus {
  outline: none; }

.MatchWidget {
  background-color: white;
  display: block;
  position: relative;
  padding: 12px;
  font-family: sans-serif;
  font-style: normal;
  font-weight: normal;
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.2), 0 10px 10px rgba(0, 0, 0, 0.18);
  border-radius: 3px;
  width: 300px;
  transition: opacity 0.1s, transform 0.1s;
  transform: translate3d(0, -3px, 0);
  z-index: 100;
  overflow: hidden; }

.MatchWidget__container {
  margin-top: 13px;
  position: relative;
  font-size: 15px; }

.MatchWidget__container--is-hovering .MatchWidget {
  opacity: 1;
  transform: translate3d(0, 0, 0); }

.MatchWidget__type {
  color: #999999;
  font-variant: small-caps;
  line-height: 0.7;
  text-transform: lowercase;
  letter-spacing: 0.3px; }

.MatchWidget__suggestion {
  padding: 8px; }

.MatchWidget__type {
  padding-bottom: 8px; }

.MatchWidget__annotation {
  padding-top: 8px; }

.MatchWidget__color-swatch {
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-right: 5px;
  border-radius: 8px; }

.MatchWidget__label {
  display: block;
  margin-bottom: 2px;
  transition: background-color 0.1s; }

.MatchWidget__suggestion-list {
  display: block;
  margin-top: 3px; }

.MatchWidget__suggestion {
  display: block;
  cursor: pointer;
  font-weight: bold;
  font-size: 1.1em;
  color: #999;
  background-color: #f3f3f3; }

.MatchWidget__suggestion:nth-child(even) {
  background-color: #eeeeee; }

.MatchWidget__suggestion:hover {
  color: #888;
  background-color: #eee; }

.MatchWidget__suggestion + .MatchWidget__suggestion {
  margin-top: 3px; }

.MatchWidget__feedbackLink {
  margin-top: 8px;
  font-size: 0.8em; }
  .MatchWidget__feedbackLink a {
    color: #999999; }

.MatchDecoration {
  border-bottom: 2px solid #3dcde6; }

.MatchDecoration__height-marker:before {
  content: "\200b"; }

.MatchDecoration--is-correct {
  position: relative; }
  .MatchDecoration--is-correct:after {
    display: block;
    content: "✓";
    position: absolute;
    right: -10px;
    top: -8px;
    color: #04d514;
    font-weight: bold;
    pointer-events: none; }

.MatchDebugDirty {
  background-color: #f7a85e66; }

.MatchDebugInflight {
  background-color: #31a72085; }

.TyperighterPlugin__overlay {
  position: absolute;
  top: 0;
  left: 0; }

.TyperighterPlugin__decoration-container {
  position: absolute; }

.TyperighterPlugin__container {
  position: relative; }

.ProseMirror {
  position: relative; }

.ProseMirror {
  word-wrap: break-word;
  white-space: pre-wrap;
  white-space: break-spaces;
  -webkit-font-variant-ligatures: none;
  font-variant-ligatures: none;
  font-feature-settings: "liga" 0;
  /* the above doesn't seem to work in Edge */ }

.ProseMirror pre {
  white-space: pre-wrap; }

.ProseMirror li {
  position: relative; }

.ProseMirror-hideselection *::selection {
  background: transparent; }

.ProseMirror-hideselection *::-moz-selection {
  background: transparent; }

.ProseMirror-hideselection {
  caret-color: transparent; }

.ProseMirror-selectednode {
  outline: 2px solid #8cf; }

/* Make sure li selections wrap around markers */
li.ProseMirror-selectednode {
  outline: none; }

li.ProseMirror-selectednode:after {
  content: "";
  position: absolute;
  left: -32px;
  right: -2px;
  top: -2px;
  bottom: -2px;
  border: 2px solid #8cf;
  pointer-events: none; }

.ProseMirror-textblock-dropdown {
  min-width: 3em; }

.ProseMirror-menu {
  margin: 0 -4px;
  line-height: 1; }

.ProseMirror-tooltip .ProseMirror-menu {
  width: -webkit-fit-content;
  width: fit-content;
  white-space: pre; }

.ProseMirror-menuitem {
  margin-right: 3px;
  display: inline-block; }

.ProseMirror-menuseparator {
  border-right: 1px solid #ddd;
  margin-right: 3px; }

.ProseMirror-menu-dropdown, .ProseMirror-menu-dropdown-menu {
  font-size: 90%;
  white-space: nowrap; }

.ProseMirror-menu-dropdown {
  vertical-align: 1px;
  cursor: pointer;
  position: relative;
  padding-right: 15px; }

.ProseMirror-menu-dropdown-wrap {
  padding: 1px 0 1px 4px;
  display: inline-block;
  position: relative; }

.ProseMirror-menu-dropdown:after {
  content: "";
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid currentColor;
  opacity: .6;
  position: absolute;
  right: 4px;
  top: calc(50% - 2px); }

.ProseMirror-menu-dropdown-menu, .ProseMirror-menu-submenu {
  position: absolute;
  background: white;
  color: #666;
  border: 1px solid #aaa;
  padding: 2px; }

.ProseMirror-menu-dropdown-menu {
  z-index: 15;
  min-width: 6em; }

.ProseMirror-menu-dropdown-item {
  cursor: pointer;
  padding: 2px 8px 2px 4px; }

.ProseMirror-menu-dropdown-item:hover {
  background: #f2f2f2; }

.ProseMirror-menu-submenu-wrap {
  position: relative;
  margin-right: -4px; }

.ProseMirror-menu-submenu-label:after {
  content: "";
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 4px solid currentColor;
  opacity: .6;
  position: absolute;
  right: 4px;
  top: calc(50% - 4px); }

.ProseMirror-menu-submenu {
  display: none;
  min-width: 4em;
  left: 100%;
  top: -3px; }

.ProseMirror-menu-active {
  background: #eee;
  border-radius: 4px; }

.ProseMirror-menu-disabled {
  opacity: .3; }

.ProseMirror-menu-submenu-wrap:hover .ProseMirror-menu-submenu, .ProseMirror-menu-submenu-wrap-active .ProseMirror-menu-submenu {
  display: block; }

.ProseMirror-menubar {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
  position: relative;
  min-height: 1em;
  color: #666;
  padding: 1px 6px;
  top: 0;
  left: 0;
  right: 0;
  border-bottom: 1px solid silver;
  background: white;
  z-index: 10;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  overflow: visible; }

.ProseMirror-icon {
  display: inline-block;
  line-height: .8;
  vertical-align: -2px;
  /* Compensate for padding */
  padding: 2px 8px;
  cursor: pointer; }

.ProseMirror-menu-disabled.ProseMirror-icon {
  cursor: default; }

.ProseMirror-icon svg {
  fill: currentColor;
  height: 1em; }

.ProseMirror-icon span {
  vertical-align: text-top; }

/* Add space around the hr to make clicking it easier */
.ProseMirror-example-setup-style hr {
  padding: 2px 10px;
  border: none;
  margin: 1em 0; }

.ProseMirror-example-setup-style hr:after {
  content: "";
  display: block;
  height: 1px;
  background-color: silver;
  line-height: 2px; }

.ProseMirror ul, .ProseMirror ol {
  padding-left: 30px; }

.ProseMirror blockquote {
  padding-left: 1em;
  border-left: 3px solid #eee;
  margin-left: 0;
  margin-right: 0; }

.ProseMirror-example-setup-style img {
  cursor: default; }

.ProseMirror-prompt {
  background: white;
  padding: 5px 10px 5px 15px;
  border: 1px solid silver;
  position: fixed;
  border-radius: 3px;
  z-index: 11;
  box-shadow: -0.5px 2px 5px rgba(0, 0, 0, 0.2); }

.ProseMirror-prompt h5 {
  margin: 0;
  font-weight: normal;
  font-size: 100%;
  color: #444; }

.ProseMirror-prompt input[type="text"],
.ProseMirror-prompt textarea {
  background: #eee;
  border: none;
  outline: none; }

.ProseMirror-prompt input[type="text"] {
  padding: 0 4px; }

.ProseMirror-prompt-close {
  position: absolute;
  left: 2px;
  top: 1px;
  color: #666;
  border: none;
  background: transparent;
  padding: 0; }

.ProseMirror-prompt-close:after {
  content: "✕";
  font-size: 12px; }

.ProseMirror-invalid {
  background: #ffc;
  border: 1px solid #cc7;
  border-radius: 4px;
  padding: 5px 10px;
  position: absolute;
  min-width: 10em; }

.ProseMirror-prompt-buttons {
  margin-top: 5px;
  display: none; }
