/* PMECope brand refinements.
   Logo: michetevin/apebh-web, images/logo.png, unchanged official source.
   Layer after the workspace and mailbox stylesheets. */
:root {
  --primary: #3d7f58;
  --accent: #3d7f58;
  --mail-accent: #3d7f58;
  --mail-accent-hover: #397751;
  --mail-accent-soft: #e7f2e9;
  --mail-accent-text: #2f7045;
  --mail-accent-border: #c8dfcf;
  --secondary-fill: #e7f2e9;
  --secondary-ink: #2f7045;
  --secondary-border: #c8dfcf;
}
::selection {
  color: #285f3b;
  background: #dbeadd;
}
.button {
  color: #fff;
  background: var(--primary);
  border-color: #36754f;
}
.button:hover {
  color: #fff;
  background: #397751;
  border-color: #326c48;
}
.button:active {
  color: #fff;
  background: #326b48;
  border-color: #2d6141;
}
.text-button {
  color: var(--secondary-ink);
}
.text-button:hover {
  background: #eef5ef;
}
.text-button.danger {
  color: #b84236;
}
.text-button.danger:hover {
  background: #fff2ef;
}
.notification-button > span,
span.unread {
  color: #fff;
  background: var(--primary);
}
.search:focus-within {
  border-color: #94b69e;
  box-shadow: 0 0 0 2px #3d7f5812;
}
input:focus, textarea:focus, select:focus {
  border-color: #8db49a;
  outline-color: #3d7f5826;
  box-shadow: 0 0 0 2px #3d7f5810;
}
input[type="checkbox"], input[type="radio"] {
  accent-color: var(--primary);
}
button:focus-visible, a:focus-visible, input:focus-visible,
textarea:focus-visible, select:focus-visible, .attach-button:focus-within {
  outline-color: #5b936b;
}
.post-actions .liked {
  color: var(--secondary-ink);
  background: var(--secondary-fill);
}
.message.outgoing {
  background: #f0f6f1;
  border-color: #dfeae2;
}
.message > b {
  color: #678773;
}
.invite-result {
  background: #f5f9f6;
  border-color: #e0eae3;
}
.button.secondary {
  color: var(--secondary-ink);
  background: var(--secondary-fill);
  border-color: var(--secondary-border);
  box-shadow: 0 1px 2px #254f3305;
}
.button.secondary:hover {
  color: #285f3b;
  background: #dfede2;
  border-color: #bad5c2;
}
.button.secondary:active {
  color: #285f3b;
  background: #d6e7db;
  border-color: #b2cfbc;
}
.button.secondary:focus-visible {
  outline-color: #5b936b;
}
.apebh-logo {
  display: block;
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 7px;
  object-fit: contain;
}
.brand-mark:has(.apebh-logo) {
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  border-radius: 7px;
  background: transparent;
  box-shadow: none;
}
.sidebar .brand .apebh-logo {
  width: 44px;
  height: 44px;
}
.mobile-brand .apebh-logo {
  width: 36px;
  height: 36px;
  border-radius: 6px;
}
.login-intro .brand .apebh-logo,
.login-intro .brand-mark:has(.apebh-logo) {
  width: 56px;
  height: 56px;
  border-radius: 8px;
}
@media (max-width: 700px) {
  .login-intro .brand .apebh-logo,
  .login-intro .brand-mark:has(.apebh-logo) {
    width: 48px;
    height: 48px;
  }
}
