/* AJH Visitor Control Dock 1.4.2 — scoped styles only. */
:root {
  /* The timeline reads this token so its final content can scroll above the dock. */
  --ajh-vcd-scroll-clearance: calc(116px + env(safe-area-inset-bottom, 0px));
}
#ajh-visitor-control-dock,
#ajh-visitor-control-dock * { box-sizing: border-box; }

#ajh-visitor-control-dock {
  --ajh-vcd-dark: #040608;
  --ajh-vcd-navy: #1D4A87;
  --ajh-vcd-blue: #3171D1;
  --ajh-vcd-mid: #5790D2;
  --ajh-vcd-light: #B7D5F4;
  --ajh-vcd-green: #00FF00;

  position: fixed;
  z-index: 9990;
  left: 50%;
  bottom: calc(12px + env(safe-area-inset-bottom, 0px));
  display: flex;
  width: max-content;
  max-width: calc(100vw - 24px);
  min-height: 72px;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 9px 12px;
  transform: translateX(-50%);
  border: 1px solid rgba(87, 144, 210, .30);
  border-radius: 999px;
  background: rgba(19, 22, 24, .94);
  box-shadow: 0 10px 30px rgba(0, 0, 0, .42), inset 0 1px 0 rgba(255, 255, 255, .10);
  color: #FFFFFF;
  font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  isolation: isolate;
}

@supports ((-webkit-backdrop-filter: blur(12px)) or (backdrop-filter: blur(12px))) {
  #ajh-visitor-control-dock {
    -webkit-backdrop-filter: blur(18px) saturate(135%);
    backdrop-filter: blur(18px) saturate(135%);
    background: rgba(19, 22, 24, .82);
  }
}

#ajh-visitor-control-dock button,
#ajh-visitor-control-dock a { -webkit-tap-highlight-color: transparent; touch-action: manipulation; }

#ajh-visitor-control-dock .ajh-vcd__theme,
#ajh-visitor-control-dock .ajh-vcd__accessibility,
#ajh-visitor-control-dock .ajh-vcd__cookies {
  display: inline-flex;
  flex: 0 0 52px;
  width: 52px;
  min-width: 52px;
  height: 52px;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 10px;
  border-radius: 50%;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
}

/* One icon button replaces the former WP Dark Mode slider. */
#ajh-visitor-control-dock .ajh-vcd__theme,
#ajh-visitor-control-dock .ajh-vcd__cookies {
  border: 1px solid rgba(183, 213, 244, .28);
  background: #080B0E;
  color: #F4F1E8;
}
#ajh-visitor-control-dock .ajh-vcd__theme:hover,
#ajh-visitor-control-dock .ajh-vcd__cookies:hover { border-color: var(--ajh-vcd-mid); background: #111A24; }
#ajh-visitor-control-dock .ajh-vcd__icon { display: block; width: 29px; height: 29px; }
#ajh-visitor-control-dock .ajh-vcd__icon--sun { display: none; }
#ajh-visitor-control-dock .ajh-vcd__theme[aria-pressed="true"] .ajh-vcd__icon--moon { display: none; }
#ajh-visitor-control-dock .ajh-vcd__theme[aria-pressed="true"] .ajh-vcd__icon--sun { display: block; }

/* Compact, always-visible flag + two-letter language links. */
#ajh-visitor-control-dock .ajh-vcd__languages {
  display: inline-flex;
  flex: 0 1 auto;
  min-width: 0;
  align-items: center;
  justify-content: center;
  gap: 3px;
  margin: 0;
  padding: 4px;
  border: 1px solid rgba(87, 144, 210, .24);
  border-radius: 999px;
  background: rgba(0, 0, 0, .20);
}
#ajh-visitor-control-dock .ajh-vcd__language-link {
  display: inline-flex;
  flex: 0 0 auto;
  min-width: 54px;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin: 0;
  padding: 7px 9px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: transparent;
  color: var(--ajh-vcd-light) !important;
  font: inherit;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  text-decoration: none !important;
}
#ajh-visitor-control-dock .ajh-vcd__language-link:hover {
  border-color: rgba(87, 144, 210, .55);
  color: #FFFFFF !important;
}
#ajh-visitor-control-dock .ajh-vcd__language-link.is-current,
#ajh-visitor-control-dock .ajh-vcd__language-link[aria-current="page"] {
  border-color: var(--ajh-vcd-blue);
  background: rgba(29, 74, 135, .78);
  color: #FFFFFF !important;
  box-shadow: inset 0 0 0 1px rgba(49, 113, 209, .18);
}
#ajh-visitor-control-dock .ajh-vcd__language-link img {
  display: inline-block;
  flex: 0 0 22px;
  width: 22px;
  height: 16px;
  margin: 0;
  border: 0;
  border-radius: 2px;
  object-fit: cover;
  vertical-align: middle;
}
#ajh-visitor-control-dock .ajh-vcd__language-link span { display: inline-block; }

#ajh-visitor-control-dock .ajh-vcd__accessibility {
  flex-basis: 52px;
  border: 3px solid #42D51B;
  background: #1D4A16;
  color: #FFFFFF !important;
  text-decoration: none !important;
}
#ajh-visitor-control-dock .ajh-vcd__accessibility:hover { background: #286A1C; }
#ajh-visitor-control-dock .ajh-vcd__accessibility svg { display: block; width: 100%; height: 100%; }

#ajh-visitor-control-dock button:focus-visible,
#ajh-visitor-control-dock a:focus-visible {
  outline: 3px solid var(--ajh-vcd-green) !important;
  outline-offset: 3px !important;
}
#ajh-visitor-control-dock [hidden] { display: none !important; }
#ajh-visitor-control-dock .ajh-vcd__status {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  clip-path: inset(50%);
  border: 0;
}

/* CookieYes' floating revisit button is replaced by the dock's cookie settings
   button, which calls window.revisitCkyConsent(). */
[data-cky-tag="revisit-consent"],
.cky-btn-revisit-wrapper {
  display: none !important;
}

@media (max-width: 360px) {
  #ajh-visitor-control-dock { gap: 6px; min-height: 66px; padding: 7px 8px; }
  #ajh-visitor-control-dock .ajh-vcd__theme,
  #ajh-visitor-control-dock .ajh-vcd__accessibility,
  #ajh-visitor-control-dock .ajh-vcd__cookies {
    flex-basis: 48px; width: 48px; min-width: 48px; height: 48px; padding: 9px;
  }
  #ajh-visitor-control-dock .ajh-vcd__language-link {
    min-width: 48px; min-height: 46px; gap: 4px; padding: 6px 6px; font-size: 13px;
  }
  #ajh-visitor-control-dock .ajh-vcd__language-link img { flex-basis: 19px; width: 19px; height: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  #ajh-visitor-control-dock,
  #ajh-visitor-control-dock * { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}

@media (forced-colors: active) {
  #ajh-visitor-control-dock { border: 2px solid CanvasText; background: Canvas; color: CanvasText; -webkit-backdrop-filter: none; backdrop-filter: none; }
  #ajh-visitor-control-dock button,
  #ajh-visitor-control-dock a { border: 2px solid ButtonText; background: ButtonFace; color: ButtonText !important; }
}

@media print { #ajh-visitor-control-dock { display: none !important; } }
