/* Public control palette: foreground and background are always set together. */
body#content.mp-public-ui[data-public-page] {
  --ed-action-bg: #b504dc;
  --ed-action-fg: #ffffff;
  --ed-action-hover: #9304b5;
  --ed-secondary-bg: #ffffff;
  --ed-secondary-fg: #102b4e;
  --ed-secondary-hover: #eaf0fa;
  --ed-icon: #526984;
  --ed-success: #26734d;
  --ed-danger: #b42338;
}
body#content.mp-public-ui[data-public-page][data-mapiole-theme="dark"] {
  --ed-action-bg: #b504dc;
  --ed-action-fg: #ffffff;
  --ed-action-hover: #bf04e8;
  --ed-secondary-bg: #112d4c;
  --ed-secondary-fg: #ecf2f4;
  --ed-secondary-hover: #183958;
  --ed-icon: #b0c0c8;
  --ed-success: #8ed8ad;
  --ed-danger: #ffacb8;
}
body#content.mp-public-ui[data-public-page][data-mapiole-theme]
  :is(#mp-public-content, #navbar, #sidenav, #mySidenav, #footer, #chatPopup)
  [data-ed-control],
body#content.mp-public-ui[data-public-page] [data-ed-control] {
  background: var(--ed-control-bg) !important;
  background-image: none !important;
  color: var(--ed-control-fg) !important;
  -webkit-text-fill-color: var(--ed-control-fg) !important;
  border-color: var(--ed-control-border) !important;
  box-shadow: none !important;
}
body#content.mp-public-ui[data-public-page] [data-ed-control="primary"] {
  --ed-control-bg: var(--ed-action-bg);
  --ed-control-fg: var(--ed-action-fg);
  --ed-control-border: var(--ed-action-bg);
}
body#content.mp-public-ui[data-public-page] [data-ed-control="secondary"] {
  --ed-control-bg: var(--ed-secondary-bg);
  --ed-control-fg: var(--ed-secondary-fg);
  --ed-control-border: var(--ed-line);
}
body#content.mp-public-ui[data-public-page] [data-ed-control="primary"]:hover {
  --ed-control-bg: var(--ed-action-hover);
}
body#content.mp-public-ui[data-public-page]
  [data-ed-control="secondary"]:hover {
  --ed-control-bg: var(--ed-secondary-hover);
}
body#content.mp-public-ui[data-public-page][data-mapiole-theme]
  :is(#mp-public-content, #navbar, #mySidenav, #footer, #chatPopup)
  [data-ed-control]
  *,
body#content.mp-public-ui[data-public-page] [data-ed-control] * {
  color: var(--ed-control-fg) !important;
  -webkit-text-fill-color: var(--ed-control-fg) !important;
}
body#content.mp-public-ui[data-public-page]
  :is(
    #mp-public-content,
    #navbar,
    #mySidenav,
    #footer,
    #icon-buttons,
    #chatPopup,
    #chatToggleBtn_
  )
  :is(i[class*="fa-"], span[class*="fa-"]) {
  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;
  font-style: normal !important;
  text-shadow: none !important;
  background-image: none !important;
}
body#content.mp-public-ui .ed-library-icon {
  line-height: 1;
  width: 1.25em;
  text-align: center;
  flex-shrink: 0;
}
body#content.mp-public-ui #navbar .mp-nav-svg {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 19px;
  width: 24px !important;
  height: 24px !important;
}
body#content.mp-public-ui #navbar .mp-nav-actions a.nav-link {
  color: var(--ed-ink) !important;
}
body#content.mp-public-ui[data-public-page="home"]:not(.mp-nav-solid)
  #navbar
  .mp-nav-actions
  a.nav-link {
  color: #ffffff !important;
}
body#content.mp-public-ui[data-public-page] #navbar .mp-theme-toggle {
  background: var(--ed-secondary-bg) !important;
  color: var(--ed-secondary-fg) !important;
  -webkit-text-fill-color: var(--ed-secondary-fg) !important;
  border-color: var(--ed-line) !important;
}
body#content.mp-public-ui[data-public-page] #navbar .mp-theme-toggle i {
  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;
}
body#content.mp-public-ui[data-public-page]
  #navbar
  :is(
    .mn-action-icon,
    .mn-service-icon,
    .mn-link-icon,
    .mn-type-icon,
    .mn-help-icon,
    .mn-footer-icon,
    .ent-link-icon
  ) {
  background: var(--ed-soft) !important;
  color: var(--ed-ink) !important;
  border-color: var(--ed-line) !important;
  box-shadow: none !important;
}
body#content.mp-public-ui[data-public-page]
  #navbar
  :is(.mn-market-title, .mn-action-title, .mn-service-title, .ent-link-title) {
  color: var(--ed-ink) !important;
}
body#content.mp-public-ui[data-public-page] #navbar .mn-market-close {
  color: var(--ed-ink) !important;
  background: var(--ed-surface) !important;
  border-color: var(--ed-line) !important;
}
body#content.mp-public-ui[data-public-page]
  .sidenav
  :is(.sn-row, .sn-row span, .sn-row i, .sn-header-icon) {
  color: var(--ed-ink) !important;
  -webkit-text-fill-color: currentColor !important;
}
body#content.mp-public-ui[data-public-page]
  #mp-public-content
  :is(
    .mp-service-icon,
    .mp-about-value-icon,
    .svc-grid-card__icon,
    .svc-blog-card__icon-col
  ) {
  color: var(--ed-ink) !important;
  background: var(--ed-soft) !important;
}
body#content.mp-public-ui[data-public-page]
  #mp-public-content
  .ed-support-icon {
  display: inline-grid;
  place-items: center;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: var(--ed-soft);
  color: var(--ed-ink) !important;
  font-size: 26px;
}
body#content.mp-public-ui[data-public-page]
  #mp-public-content
  .accordion-button {
  background: var(--ed-surface) !important;
  color: var(--ed-ink) !important;
  -webkit-text-fill-color: currentColor !important;
}
body#content.mp-public-ui[data-public-page]
  #mp-public-content
  .accordion-button::after {
  filter: none;
}
body#content.mp-public-ui[data-mapiole-theme="dark"]
  #mp-public-content
  .accordion-button::after {
  filter: brightness(0) invert(1);
}
body#content.mp-public-ui[data-public-page]
  #mp-public-content
  :is(.carousel-control-prev, .carousel-control-next) {
  opacity: 1 !important;
}
body#content.mp-public-ui[data-public-page]
  #mp-public-content
  :is(.carousel-control-prev-icon, .carousel-control-next-icon) {
  display: inline-grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #ffffff !important;
  color: #102b4e !important;
  -webkit-text-fill-color: #102b4e !important;
  font-size: 13px;
  box-shadow: 0 2px 8px #102b4e24;
}
body#content.mp-public-ui[data-public-page] #icon-buttons .icon-button i {
  font-size: 20px !important;
}
body#content.mp-public-ui[data-public-page] #icon-buttons .icon-button.active {
  color: var(--ed-ink) !important;
}
body#content.mp-public-ui[data-public-page] #chatToggleBtn_ {
  background: #102b4e !important;
  color: #ffffff !important;
}
body#content.mp-public-ui[data-public-page] #chatToggleBtn_ i {
  font-size: 23px !important;
}
body#content.mp-public-ui[data-public-page] #chatPopup .chat-header {
  color: #ffffff !important;
  background: #102b4e !important;
}
body#content.mp-public-ui[data-public-page]
  #mp-public-content
  :is(.text-success, .fa-circle-check.text-success) {
  color: var(--ed-success) !important;
}
body#content.mp-public-ui[data-public-page]
  #mp-public-content
  :is(.text-danger, .prop-card__fav.active, .mp-pl-fav.active) {
  color: var(--ed-danger) !important;
}
/* Explicit ID rules also replace the older homepage-specific navbar colors. */
body#content.mp-public-ui[data-public-page] #navbar #nav-btn[data-ed-control] {
  background: var(--ed-control-bg) !important;
  color: var(--ed-control-fg) !important;
  -webkit-text-fill-color: var(--ed-control-fg) !important;
  border-color: var(--ed-control-border) !important;
}
body#content.mp-public-ui[data-public-page]
  #navbar
  .mp-theme-toggle[data-mapiole-theme-toggle] {
  background: var(--ed-secondary-bg) !important;
  color: var(--ed-secondary-fg) !important;
  -webkit-text-fill-color: var(--ed-secondary-fg) !important;
}
body#content.mp-public-ui[data-public-page]
  #footer
  .downloadBtn[data-ed-control] {
  --ed-control-bg: #ffffff;
  --ed-control-fg: #102b4e;
  --ed-control-border: #ffffff;
}
body#content.mp-public-ui[data-public-page]
  #mp-public-content
  :is(.carousel-control-prev, .carousel-control-next)
  .ed-library-icon {
  color: #102b4e !important;
  -webkit-text-fill-color: #102b4e !important;
}
body#content.mp-public-ui[data-public-page] .btn-close {
  background: none !important;
  color: var(--ed-ink) !important;
  -webkit-text-fill-color: currentColor !important;
  filter: none !important;
  opacity: 1;
}
body#content.mp-public-ui[data-public-page] .btn-close::before {
  content: "\f00d";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: 16px;
}
body#content.mp-public-ui[data-public-page] #chatPopup .chat-header .btn-close {
  color: #ffffff !important;
}
/* Filled hearts retain the saved state; outlined hearts retain the unsaved state. */
body#content.mp-public-ui[data-public-page]
  #mp-public-content
  .favorite-icon
  .fa-heart.fa-solid {
  color: var(--ed-accent) !important;
  -webkit-text-fill-color: currentColor !important;
}
body#content.mp-public-ui[data-public-page]
  #mp-public-content
  .favorite-icon
  .fa-heart.fa-regular {
  color: var(--ed-ink) !important;
  -webkit-text-fill-color: currentColor !important;
}
body#content.mp-public-ui[data-public-page]
  #mp-public-content
  :is(.fa-star, .fa-star-half-stroke, .text-warning) {
  color: #946200 !important;
}
body#content.mp-public-ui[data-public-page][data-mapiole-theme="dark"]
  #mp-public-content
  :is(.fa-star, .fa-star-half-stroke, .text-warning) {
  color: #f0c66c !important;
}
/* Font weight switches select different icon fonts, so do not animate them. */
body#content.mp-public-ui :is(i[class*="fa-"], span[class*="fa-"]) {
  transition:
    color 0.15s ease,
    background-color 0.15s ease;
}
body#content.mp-public-ui[data-public-page]
  #mySidenav
  :is(.sn-card, .sn-card-name, .sn-sub a) {
  color: var(--ed-ink) !important;
}
body#content.mp-public-ui[data-public-page] #mySidenav .sn-card {
  background: var(--ed-surface) !important;
}
body#content.mp-public-ui[data-public-page] #mySidenav .sn-card-thumb {
  background: var(--ed-soft) !important;
  color: var(--ed-ink) !important;
  font-size: 26px;
}
body#content.mp-public-ui[data-public-page] #mySidenav .sn-sub a i {
  opacity: 1;
}
body#content.mp-public-ui[data-public-page] #mySidenav .sn-card-tag {
  background: var(--ed-action-bg) !important;
  color: var(--ed-action-fg) !important;
}
/* Mapiole brand: logo purple for primary actions, deep blue for dark surfaces. */
body#content.mp-public-ui[data-public-page] {
  --brand-purple: #cf05f9;
  --primary-color: #b504dc;
  --primary-color2: #9f05c2;
  --mp-primary: #b504dc;
  --mp-primary-strong: #9304b5;
  --mp-link: #9f05c2;
  --bs-primary: #b504dc;
  --bs-primary-rgb: 181, 4, 220;
}
body#content.mp-public-ui[data-public-page] .mp-new-home {
  --brand: #b504dc;
  --brand-deep: #9304b5;
  --brand-tint: #f6e9fc;
}
body#content.mp-public-ui[data-public-page]
  #mp-public-content
  .mp-hero-discover {
  background: #b504dc !important;
  color: #ffffff !important;
}
body#content.mp-public-ui[data-public-page] #chatToggleBtn_ {
  background: #b504dc !important;
}
body#content.mp-public-ui[data-public-page] #footer,
body#content.mp-public-ui[data-public-page] #footer > div {
  background-color: #102b4e !important;
}
body#content.mp-public-ui[data-public-page] #navbar .mn-market-title i {
  color: var(--ed-accent) !important;
}
body#content.mp-public-ui[data-public-page] #navbar .mp-nav-link.show,
body#content.mp-public-ui[data-public-page] #navbar .mp-nav-link:hover {
  background-color: #cf05f914 !important;
}
body#content.mp-public-ui[data-public-page] #navbar .mp-nav-link::before {
  background: #cf05f9 !important;
}
body#content.mp-public-ui[data-public-page]
  .mp-search-tabs
  input:checked
  + span {
  color: var(--ed-accent);
  border-color: #cf05f9;
}
body#content.mp-public-ui[data-public-page]
  #mp-public-content
  .page-item.active
  .page-link {
  background: #b504dc;
  border-color: #b504dc;
  color: #ffffff;
}
body#content.mp-public-ui[data-public-page]
  #mp-public-content
  .pd-detail-shell
  a:not([data-ed-control]):not(.ab-subtitle a):not(.ab-breadcrumb a):not(
    .ab-action-btn
  ):not(.ab-btn-primary):not(.pd-action-primary) {
  color: var(--ed-accent);
}
body#content.mp-public-ui[data-mapiole-theme="dark"] #mySidenav,
body#content.mp-public-ui[data-mapiole-theme="dark"] #navbar .mn-market,
body#content.mp-public-ui[data-mapiole-theme="dark"] #navbar .mn-market-footer {
  background: #112d4c !important;
}
