:root {
  --hce-hvr-blue: #0b4d86;
  --hce-hvr-blue-soft: #eaf4fb;
  --hce-hvr-yellow: #ffe69a;
  --hce-hvr-ink: #10263a;
}

.hce-hvr-embedded .hce-hvr-progress--embedded {
  appearance: none;
  background: rgba(255, 255, 255, 0.26);
  border: 0;
  border-radius: 999px;
  display: block;
  flex: 1 1 160px;
  height: 7px;
  margin: 0;
  max-width: 230px;
  min-width: 110px;
  overflow: hidden;
}

.hce-hvr-progress::-webkit-progress-bar {
  background: rgba(255, 255, 255, 0.26);
  border-radius: 999px;
}

.hce-hvr-progress::-webkit-progress-value {
  background: #fff;
  border-radius: 999px;
}

.hce-hvr-progress::-moz-progress-bar {
  background: #fff;
  border-radius: 999px;
}

.hce-hvr-audio {
  height: 1px;
  left: -9999px;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  top: 0;
  width: 1px;
}

.hce-hvr-reading-block {
  background: rgba(234, 244, 251, 0.78) !important;
  border-radius: 5px;
  box-shadow: 0 0 0 3px rgba(11, 77, 134, 0.13);
}

::highlight(thce-michael-current) {
  background: var(--hce-hvr-yellow);
  color: var(--hce-hvr-ink);
}

mark.hce-hvr-current-mark {
  background: var(--hce-hvr-yellow);
  border-radius: 0.16em;
  box-decoration-break: clone;
  color: var(--hce-hvr-ink);
  padding: 0.03em 0.05em;
  -webkit-box-decoration-break: clone;
}

.hce-hvr-tools {
  --hce-hvr-yellow: #f2b705;
  bottom: 1rem;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  position: fixed;
  right: 1rem;
  z-index: 99998;
}

.hce-hvr-tools__toggle {
  align-items: center;
  background: rgba(6, 45, 82, 0.98);
  border: 2px solid #fff;
  border-radius: 50%;
  box-shadow: 0 14px 36px rgba(7, 33, 66, 0.3);
  color: #fff;
  cursor: pointer;
  display: grid;
  height: 56px;
  justify-items: center;
  padding: 0;
  width: 56px;
}

.hce-hvr-hamburger {
  display: grid;
  gap: 5px;
  width: 24px;
}

.hce-hvr-hamburger i {
  background: #fff;
  border-radius: 99px;
  display: block;
  height: 3px;
  transition: transform 0.18s ease, opacity 0.18s ease;
}

.hce-hvr-tools.is-open .hce-hvr-hamburger i:nth-child(1) { transform: translateY(8px) rotate(45deg); }
.hce-hvr-tools.is-open .hce-hvr-hamburger i:nth-child(2) { opacity: 0; }
.hce-hvr-tools.is-open .hce-hvr-hamburger i:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }

.hce-hvr-tools__panel {
  align-items: center;
  background: rgba(6, 45, 82, 0.98);
  border: 1px solid rgba(255, 255, 255, 0.34);
  border-radius: 0.78rem;
  bottom: calc(100% + 0.65rem);
  box-shadow: 0 18px 44px rgba(7, 33, 66, 0.3);
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  gap: 0.42rem;
  padding: 0.75rem;
  position: absolute;
  right: 0;
  width: min(430px, calc(100vw - 2rem));
}

.hce-hvr-tools__panel[hidden] { display: none !important; }

.hce-hvr-tools__label {
  display: flex;
  flex-direction: column;
  line-height: 1.2;
  padding: 0 0.45rem;
}

.hce-hvr-tools__label span {
  color: #dcecff;
  font-size: 0.68rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.hce-hvr-tools__label strong { color: #fff; font-size: 0.82rem; }

.hce-hvr-tools__panel button,
.hce-hvr-tools__panel a {
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.64);
  border-radius: 0.4rem;
  color: #fff !important;
  cursor: pointer;
  font: 750 0.82rem/1.25 Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  min-height: 42px;
  padding: 0.58rem 0.78rem;
  text-decoration: none !important;
}

.hce-hvr-tools__panel button:disabled { cursor: not-allowed; opacity: 0.58; }
.hce-hvr-tools button:focus-visible,
.hce-hvr-tools a:focus-visible { outline: 3px solid var(--hce-hvr-yellow); outline-offset: 3px; }

.hce-hvr-tools [data-speak-status] {
  color: #dcecff;
  font-size: 0.7rem;
  line-height: 1.35;
  margin-top: 0.15rem;
  padding: 0.25rem 0.45rem 0;
  width: 100%;
}

@media (max-width: 760px) {
  .hce-hvr-embedded .hce-hvr-progress--embedded {
    flex: 0 0 7px;
    max-width: none;
    min-width: 0;
    width: 100%;
  }

  .hce-hvr-tools { bottom: 0.55rem; right: 0.55rem; }
  .hce-hvr-tools__panel { width: calc(100vw - 1.1rem); }
  .hce-hvr-tools__panel button,
  .hce-hvr-tools__panel a { flex: 1 1 auto; text-align: center; }
}

@media print {
  .hce-hvr-progress,
  .hce-hvr-audio,
  .hce-hvr-tools {
    display: none !important;
  }

  mark.hce-hvr-current-mark {
    background: transparent !important;
    color: inherit !important;
    padding: 0 !important;
  }
}
