.ym-chat-filters {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  padding: .45rem 0 .65rem;
}
.ym-chat-filters button,
.ym-inbox-notice button,
#ym-chat-jump button,
.ym-chat-page-control button,
.ym-outbox-item button,
.ym-voice-tools button,
.ym-announcement-ack button {
  min-height: 44px;
  border: 1px solid #cbd9cc;
  border-radius: .75rem;
  padding: .5rem .7rem;
  background: #f6f9f4;
  color: #244937;
  font: inherit;
  cursor: pointer;
}
.ym-chat-filters button[aria-pressed="true"] {
  background: #254e3c;
  border-color: #254e3c;
  color: white;
}
.ym-inbox-notice {
  padding-bottom: .55rem;
}
#ym-chat-jump {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
  padding: .25rem 0;
}
#ym-chat-jump[hidden],
.ym-inbox-notice[hidden],
.ym-chat-outbox[hidden] { display: none; }
.ym-chat-page-control {
  padding: .6rem .3rem;
  text-align: center;
}
.ym-unread-marker {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  padding: .65rem 0;
  color: #455f50;
  font-size: .875rem;
}
.ym-unread-marker::before,
.ym-unread-marker::after {
  content: "";
  flex: 1;
  border-top: 1px solid #cbd9cc;
}
.ym-message-highlight {
  border-radius: .85rem;
  box-shadow: inset 0 0 0 2px #357354;
  background: #edf6e8;
  scroll-margin-top: .5rem;
}
.ym-quote {
  display: block;
  width: 100%;
  padding: .5rem;
  min-height: 44px;
  border: 0;
  border-left: 3px solid #6b9b77;
  text-align: start;
  background: #edf4eb;
  color: #294635;
  overflow-wrap: anywhere;
  cursor: pointer;
}
.ym-chat-outbox {
  max-height: min(27vh, 12rem);
  overflow-y: auto;
  border-top: 1px solid #dbe5d8;
  padding: .25rem 0;
}
.ym-outbox-item,
.ym-search-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .55rem;
  padding: .45rem .25rem;
  border-bottom: 1px solid #e0e8de;
}
.ym-outbox-item > :first-child,
.ym-search-row > :first-child {
  min-width: 0;
  flex: 1;
}
.ym-outbox-item strong {
  display: block;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}
.ym-outbox-item small,
.ym-search-row small {
  display: block;
  color: #455f50;
}
.ym-outbox-item button + button { margin-inline-start: .2rem; }
.ym-chat-search input,
.ym-chat-search select,
.ym-chat-search button,
.ym-search-row button { min-height: 44px; }
.ym-chat-search-filters {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .4rem;
}
.ym-chat-search-filters label:has(select) { grid-column: 1 / -1; }
.ym-chat-search-filters input {
  min-width: 0;
  width: 100%;
  font-size: .9rem;
}
.ym-search-row > button:first-child {
  display: grid;
  justify-items: start;
  gap: .3rem;
  border: 0;
  border-radius: .55rem;
  padding: .55rem;
  background: #f4f7f1;
  color: #244937;
  text-align: start;
  cursor: pointer;
  overflow-wrap: anywhere;
}
.ym-announcement-ack,
.ym-voice-tools {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .55rem;
  margin-top: .35rem;
}
.ym-voice-tools progress { width: min(7rem, 50vw); }
.ym-chat-filters button:focus-visible,
.ym-search-row button:focus-visible,
.ym-quote:focus-visible,
.ym-message-highlight:focus-visible {
  outline: 2px solid #285c44;
  outline-offset: 2px;
}
