/* Mercargo: readable foregrounds without changing the status/background palette. */
:root,
[data-bs-theme="light"] {
  --mc-text-primary: #004477;
  --mc-text-success: #146c43;
  --mc-text-warning: #805b00;
  --mc-text-danger: #b02a37;
  --mc-text-info: #08758d;
}
[data-bs-theme="dark"] {
  --mc-text-primary: #8fc7f3;
  --mc-text-success: #75d9a5;
  --mc-text-warning: #ffda6a;
  --mc-text-danger: #ff989e;
  --mc-text-info: #78dce9;
}
body .text-primary:not(.badge):not(.btn):not(.progress-bar),
body .link-primary:not(.badge):not(.btn) { color: var(--mc-text-primary) !important; }
body .text-success:not(.badge):not(.btn):not(.progress-bar),
body .link-success:not(.badge):not(.btn) { color: var(--mc-text-success) !important; }
body .text-warning:not(.badge):not(.btn):not(.progress-bar),
body .link-warning:not(.badge):not(.btn) { color: var(--mc-text-warning) !important; }
body .text-danger:not(.badge):not(.btn):not(.progress-bar),
body .link-danger:not(.badge):not(.btn) { color: var(--mc-text-danger) !important; }
body .text-info:not(.badge):not(.btn):not(.progress-bar),
body .link-info:not(.badge):not(.btn) { color: var(--mc-text-info) !important; }
body .text-secondary:not(.badge):not(.btn):not(.progress-bar) {
  color: var(--portal-muted-current) !important;
}
body .badge.bg-warning,
body .badge.text-bg-warning { color: #2e2400 !important; }
body .badge.bg-info,
body .badge.text-bg-info { color: #08252d !important; }
[data-bs-theme="dark"] .btn-outline-primary {
  --bs-btn-color: var(--mc-text-primary);
  --bs-btn-hover-color: #fff;
  --bs-btn-active-color: #fff;
}
[data-bs-theme="dark"] .btn-link {
  --bs-btn-color: var(--mc-text-primary);
  --bs-btn-hover-color: var(--mc-text-primary);
}
body .form-control::placeholder,
body .ts-control input::placeholder { opacity: 1; }

/* Photo backgrounds and their configured overlay remain owned by portal.css. */
body :is(.mc-pirep-hero, .mc-profile-hero, .mc-airport-hero.mc-page-title)
  :is(.mc-route-name, .mc-profile-meta, .mc-profile-copy, .mc-profile-rank) {
  color: #fff !important;
}
body :is(.mc-pirep-hero, .mc-profile-hero, .mc-airport-hero.mc-page-title)
  :is(.mc-route-name, .mc-profile-meta, .mc-profile-copy, .mc-profile-rank) a:not(.btn) {
  color: #fff !important;
  text-decoration: none !important;
}
body :is(.mc-pirep-hero, .mc-profile-hero, .mc-airport-hero.mc-page-title)
  :is(.mc-route-name, .mc-profile-meta, .mc-profile-copy, .mc-profile-rank) a:not(.btn):is(:hover,:focus-visible) {
  text-decoration: none !important;
}
body .mc-pirep-hero .mc-pirep-hero-status > .small {
  color: #fff !important;
  opacity: 1 !important;
}
body :is(.mc-pirep-hero, .mc-profile-hero, .mc-airport-hero.mc-page-title)
  a:not(.btn):focus-visible {
  outline: 2px solid #fff;
  outline-offset: 3px;
  border-radius: 2px;
}
