html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 0;
}

.ec-option-image-gallery {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  margin: .7rem 0 0 2.4rem;
  min-width: 0;
}

.ec-option-image {
  margin: 0;
  max-width: 300px;
}

.ec-image-lightbox-trigger {
  display: block;
  max-width: 100%;
  padding: .35rem;
  border: 1px solid #d6ddf2;
  border-radius: 10px;
  background: #f8faff;
  cursor: zoom-in;
}

.ec-image-lightbox-trigger:focus-visible {
  outline: 3px solid rgba(37, 99, 235, .35);
  outline-offset: 2px;
}

.ec-option-image-thumbnail {
  display: block;
  width: auto;
  height: auto;
  max-width: min(220px, 100%);
  max-height: 260px;
  object-fit: contain;
}

.ec-option-image figcaption {
  max-width: 220px;
}

.ec-image-modal .modal-dialog { max-width: 94vw; }
.ec-image-modal .modal-content { background: #111827; color: #fff; }
.ec-image-modal .modal-header { border-bottom-color: rgba(255, 255, 255, .15); }
.ec-image-modal .btn-close { filter: invert(1) grayscale(100%); }
.ec-image-modal .modal-body { text-align: center; }
.ec-image-modal [data-question-image-modal-image] {
  display: block;
  width: auto;
  height: auto;
  max-width: 90vw;
  max-height: 85vh;
  margin: 0 auto;
  object-fit: contain;
}
.ec-image-modal-caption { margin-top: .75rem; color: #e5e7eb; }

@media (max-width: 575.98px) {
  .ec-option-image-gallery { margin-left: 1.8rem; }
  .ec-option-image { max-width: 100%; }
  .ec-option-image-thumbnail { max-width: 100%; max-height: 240px; }
}
