.chwb-bible-ref {
  text-decoration-line: underline !important;
  text-decoration-style: dotted !important;
  text-decoration-thickness: auto;
  text-underline-offset: 2px;
  cursor: help !important;
}
.chwb-bible-auto { color: inherit; }
.chwb-bible-ref:focus,
.chwb-footnote-ref:focus { outline: 2px solid currentColor; outline-offset: 2px; }

.chwb-footnote-ref { cursor: pointer !important; }

.chwb-bible-tooltip {
  position: fixed;
  z-index: 2147483000;
  width: min(460px, calc(100vw - 20px));
  max-height: min(70vh, 620px);
  overflow: hidden;
  box-sizing: border-box;
  background: #fff;
  color: #202124;
  border: 1px solid rgba(0,0,0,.18);
  border-radius: 8px;
  box-shadow: 0 10px 32px rgba(0,0,0,.24);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  font-size: var(--chwb-popup-font-size, 15px);
  line-height: 1.48;
  text-align: left;
  -webkit-user-select: text;
  user-select: text;
}
.chwb-bible-tooltip[hidden] { display: none !important; }

.chwb-bible-tooltip__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px 9px;
  border-bottom: 1px solid rgba(0,0,0,.1);
}
.chwb-bible-tooltip__head strong { font-size: 1em; line-height: 1.35; }
.chwb-bible-tooltip__actions,
.chwb-bible-tooltip__floating-actions {
  display: flex;
  align-items: center;
  gap: 5px;
  flex: 0 0 auto;
  -webkit-user-select: none;
  user-select: none;
}
.chwb-bible-tooltip__floating-actions {
  position: absolute;
  z-index: 2;
  top: 7px;
  right: 8px;
}
.chwb-bible-tooltip__copy,
.chwb-bible-tooltip__goto,
.chwb-bible-tooltip__font,
.chwb-bible-tooltip__close {
  appearance: none;
  -webkit-appearance: none;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
}
.chwb-bible-tooltip__copy,
.chwb-bible-tooltip__goto,
.chwb-bible-tooltip__font {
  font: inherit;
  font-size: 12px;
  line-height: 1.2;
  padding: 4px 6px;
  border-radius: 4px;
  opacity: .65;
}
.chwb-bible-tooltip__copy:hover,
.chwb-bible-tooltip__goto:hover,
.chwb-bible-tooltip__font:hover { opacity: 1; background: rgba(0,0,0,.06); }
.chwb-bible-tooltip__font {
  font-weight: 600;
  min-width: 28px;
}
.chwb-bible-tooltip__close {
  font-size: 24px;
  line-height: 18px;
  padding: 0 2px 2px;
  opacity: .65;
  min-width: 24px;
}
.chwb-bible-tooltip__close:hover { opacity: 1; }

.chwb-bible-tooltip__body {
  max-height: calc(min(70vh, 620px) - 86px);
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 8px 14px 18px;
  box-sizing: border-box;
  -webkit-user-select: text;
  user-select: text;
}
.chwb-bible-tooltip__group + .chwb-bible-tooltip__group {
  margin-top: 13px;
  padding-top: 10px;
  border-top: 1px solid rgba(0,0,0,.08);
}
.chwb-bible-tooltip__book { font-weight: 600; margin: 0 0 5px; }
.chwb-bible-tooltip__verse { margin: 0 0 5px; white-space: pre-line; }
.chwb-bible-tooltip__verse sup {
  font-size: 10px;
  font-weight: 700;
  vertical-align: super;
  margin-right: 2px;
}
.chwb-bible-tooltip__foot {
  padding: 7px 14px 9px;
  border-top: 1px solid rgba(0,0,0,.1);
  font-size: .8em;
  opacity: .68;
  -webkit-user-select: text;
  user-select: text;
}
.chwb-bible-tooltip__message { padding: 12px 14px; }
.chwb-bible-tooltip__error { color: #a40000; }

.chwb-footnote-tooltip {
  width: min(520px, calc(100vw - 20px));
  position: fixed;
}
.chwb-footnote-tooltip__body {
  padding: 46px 96px 34px 18px;
  white-space: normal;
  box-sizing: border-box;
  max-height: min(70vh, 620px);
}
/* Zachowaj semantyczne formatowanie przypisów także wtedy, gdy motyw strony
   ma globalne reguły resetujące em/strong/u/sup/sub. */
.chwb-footnote-tooltip__body em,
.chwb-footnote-tooltip__body i { font-style: italic !important; }
.chwb-footnote-tooltip__body strong,
.chwb-footnote-tooltip__body b { font-weight: 700 !important; }
.chwb-footnote-tooltip__body u { text-decoration: underline !important; }
.chwb-footnote-tooltip__body sup { vertical-align: super; font-size: .75em; }
.chwb-footnote-tooltip__body sub { vertical-align: sub; font-size: .75em; }
.chwb-footnote-tooltip__body p { margin: 0 0 .8em; }
.chwb-footnote-tooltip__body p:last-child { margin-bottom: 0; }
.chwb-footnote-tooltip__bible-body {
  padding-top: 38px;
  padding-right: 14px;
}
.chwb-footnote-tooltip__loading { padding-top: 42px; }
.chwb-bible-subtooltip {
  z-index: 2147483100;
  width: min(430px, calc(100vw - 20px));
  max-height: min(56vh, 480px);
}
.chwb-bible-subtooltip .chwb-bible-tooltip__body {
  max-height: calc(min(56vh, 480px) - 86px);
}
.chwb-footnote-bible-ref {
  cursor: help !important;
}

@media (max-width: 600px), (pointer: coarse) {
  .chwb-bible-tooltip,
  .chwb-footnote-tooltip {
    width: auto;
    max-height: 72vh;
    border-radius: 10px;
  }
  .chwb-bible-subtooltip {
    max-height: 46vh;
    box-shadow: 0 8px 26px rgba(0,0,0,.28);
  }
  .chwb-bible-subtooltip .chwb-bible-tooltip__body {
    max-height: calc(46vh - 86px);
  }
  .chwb-bible-tooltip__body {
    max-height: calc(72vh - 86px);
  }
  .chwb-footnote-tooltip__body {
    max-height: 72vh;
    /* Na dotyku „Przejdź”, „Kopiuj” i × są w prawym górnym rogu.
       Tekst zaczyna się niżej, żeby przyciski go nie zasłaniały. */
    padding: 64px 18px 44px;
  }
  .chwb-footnote-tooltip__bible-body {
    padding-top: 64px;
  }
  .chwb-bible-tooltip__head,
  .chwb-bible-tooltip__body {
    font-size: inherit;
  }
  .chwb-bible-tooltip__foot {
    font-size: .8em;
  }
  .chwb-bible-tooltip__copy,
  .chwb-bible-tooltip__goto,
  .chwb-bible-tooltip__font {
    font-size: 13px;
    padding: 5px 7px;
  }
}


/* Tekstowy pinch-zoom na urządzeniach dotykowych. Panowanie jednym palcem
   pozostaje pionowe, a gest dwóch palców w treści przejmuje wtyczka. */
@media (pointer: coarse) {
  .chwb-text-zoom-zone {
    touch-action: pan-y !important;
    -ms-touch-action: pan-y !important;
  }
}
