/* Copyright 2014 Mozilla Foundation
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

body {
  background-color: #f2f2f4;
  margin: 0;
  padding: 0;
  overflow: hidden;
}

:root {
  --sidebar-width: 0;
  --toolbar-height: 0;
  --thumbnail-width: 112.429px;
  --thumbnail-height: 72px;
  --medical-red: #8E1F1A;
}

#sidebarToggleButton,
.toolbarButtonSpacer,
.toolbarButtonWithContainer,
#toolbarViewerMiddle,
#toolbarViewerRight,
#sidebarResizer,
#toolbarViewerLeft {
  display: none !important;
}

#mainContainer {
  width: 100%;
  height: 33.75rem;
  margin: 1.5rem 0;
}

#mainContainer .toolbar #toolbarContainer {
  background-color: transparent;
  box-shadow: none;
  border-bottom: 0;
  width: 0;
  height: 48px;
}

.toolbarHorizontalGroup .splitToolbarButtonSeparator {
  display: none;
}

#sidebarContent {
  inset-block: auto;
  box-shadow: none;
  inset-block-end: 0;
  height: 72px;
  bottom: 72px;
}

.presentation-loading {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 400px;
  padding: 0;
  text-align: center;
  width: auto;
  height: 100vh;
  gap: 20px;
  background: #f2f2f4;
  z-index: 1;
  position: absolute;
  width: 100%;
  border-radius: 20px;
}

.presentation-loading .loading-spinner {
  width: 40px;
  height: 40px;
  background-image: url('images/Loader_animation.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}

#sidebarContainer {
  width: 100%;
  height: 100%;
}

#viewerContainer {
  width: 100%;
  height: 33.75rem;
  inset: var(--toolbar-height) 0 0;
}

#viewerContainer .pdfViewer {
  width: 100%;
}

#outerContainer.sidebarOpen #viewerContainer:not(.pdfPresentationMode) {
  overflow-y: hidden;
}

.pdf-full-screen {
  display: flex;
  width: 48px;
  height: 48px;
  padding: 6px;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom: 20px;
  right: 23px;
  z-index: 2;
  border: 0;
  border-radius: 74px;
  background: #002068;
  transition: background-color .2s ease;
  cursor: pointer;
}

[dir="rtl"] .pdf-full-screen {
  left: 23px;
  right: auto;
}

/* Make the thumbnail view horizontal */
/* Style individual thumbnails */
#thumbnailView {
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 8px;
  /* width: 100%; */
  width: calc(100% - 16px);
  height: 72px;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
  /* For Firefox */
  scrollbar-color: #888 #eee;
  /* For Firefox */
  padding: 0 16px;
  box-sizing: border-box;
}

/* Mobile styles - applied via JavaScript based on parent window width */
#thumbnailView.mobile-full-width {
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
}

#sidebarContent.mobile-hidden {
  display: none;
}

.pdf-pagination.mobile-column {
  flex-direction: column;
}




.thumbnail {
  display: flex;
  width: 112.43px;
  height: 66px;
  padding: 0;
  justify-content: center;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
  aspect-ratio: 112.43/66;
  border: 2px solid #F2F2F4;
  margin: 0;
  border-radius: 10px;
  overflow: hidden;
  position: relative;
}

.thumbnailImage {
  width: 100% !important;
  height: 72px !important;
  object-fit: contain;
}

.thumbnail:not([data-loaded])::after {
  content: attr(data-page-number);
  position: absolute;
  bottom: 5px;
  color: #002068;
  font-size: 10px;
  font-weight: 600;
  padding: 2px 6px;
  border-radius: 4px;
  line-height: 1;
}

.thumbnail:not([data-loaded]) > .thumbnailImage {
  border: 0;
  background: #E4E4E4;
  height: 96px;
  position: relative;
}

/* For Webkit browsers (Chrome, Safari) */
#thumbnailView::-webkit-scrollbar {
  height: 8px;
}

#thumbnailView::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 4px;
}

#thumbnailView::-webkit-scrollbar-track {
  background: #eee;
  border-radius: 4px;
}

/* Slider bullets styles */
.slider-bullets {
  display: flex;
  gap: 4px;
  list-style: none;
  padding: 0;
  margin: 0 8px;
}

.slider-bullets li {
  width: 10px;
  height: 10px;
  background: #ccc;
  border-radius: 50%;
  cursor: pointer;
}

.slider-bullets li.active {
  background: #333;
}

#toolbarViewer #previous {
  position: absolute;
  left: 20px;
  z-index: 5;
  width: 48px;
  height: 48px;
} 

#thumbnail-slider-controls {
  display: flex;
  height: 48px;
  align-items: center;
  justify-content: center;
  margin-bottom: 10px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  z-index: 2;
}

.thumbnail-slide a:focus > .thumbnail, .thumbnail:hover {
  border-color: #002068;
}

.thumbnail-slide .thumbnail.selected {
  border-width: 2px;
  border-style: solid;
  border-color: #002068 !important; 
}

.slider-prev,
.slider-next {
  display: flex;
  width: 48px;
  height: 48px;
  padding: 8px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  border-radius: 74px;
  background: #002068;
  border: none;
  transition: background-color .2s ease;
}
  
.slider-prev:hover,
.slider-next:hover,
.pdf-full-screen:hover {
  background: #FFF;
  box-shadow: 0 10px 30px -8px rgba(0, 0, 0, 0.15);
  path {
    fill: #002068;
  }
}

.slider-prev:focus,
.slider-next:focus,
.pdf-full-screen:focus {
  border: 2px solid rgba(4, 96, 169, 0.30);
  background: #002068;
  path {
    fill: #FFFFFF;
  }
}

.slider-prev:active,
.slider-next:active,
.pdf-full-screen:active {
  background: rgba(0, 32, 104, 0.10);
  path {
    fill: #002068;
  }
}

.slider-prev.disabled,
.slider-next.disabled,
.pdf-full-screen.disabled {
  opacity: 0.3;
  background: #002068;
  path {
    fill: #FFFFFF;
  }
}

.slider-prev {
  position: absolute;
  left: 20px;
}

[dir="rtl"] .slider-prev {
  right: 20px;
  left: auto;
  transform: rotate(180deg);
}

.slider-next {
  position: absolute;
  right: 20px;
}

[dir="rtl"] .slider-next {
  left: 20px;
  right: auto;
  transform: rotate(180deg);
}

/* Pagination styles */
.pdf-pagination {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 12px 0;
  height: 48px;
  inset-block-end: 0;
  position: absolute;
}

.pdf-pagination-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 1 0 0;
  margin-left: 16px;
}

[dir="rtl"] .pdf-pagination-wrap {
  margin-left: 0;
  margin-right: 16px;
}

.pdf-pagination-count {
  color: #4F4F4E;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 24px;
  letter-spacing: 0.4px;
  margin-right: 16px;
  width: 150px;
  text-align: right;
}

[dir="rtl"] .pdf-pagination-count {
  margin-right: 0;
  margin-left: 16px;
  text-align: left;
}

.pdf-pagination-count.mobile-hidden {
  display: none;
}

/* PDF Pagination Bullets */
.pdf-pagination-bullets {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  gap: 10px;
}

.pdf-pagination-bullets .page-item {
  margin: 0;
  padding: 0;
}

.pdf-pagination-bullets .pdf-bullet {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 1px solid #002068;
  background-color: transparent;
  cursor: pointer;
  transition: all 0.2s ease;
  padding: 0;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.pdf-pagination-bullets .pdf-bullet:hover {
  background-color: #002068;
  transform: scale(1.1);
}

.pdf-pagination-bullets .page-item.active .pdf-bullet {
  background-color: #002068;
  width: 10px;
  height: 10px;
}

.pdf-pagination-bullets .page-item.active .pdf-bullet:hover {
  background-color: #002068;
}

/* Numbered and Mobile Pagination */
.pdf-pagination-numbers,
.pdf-pagination-mobile {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  align-items: center;
  gap: 1.25rem;
}

.pdf-pagination-numbers .page-item .page-link,
.pdf-pagination-mobile .page-item .page-link {
  width: 32px;
  height: 32px;
  padding: 0;
  border-radius: 50px;
  border: 0px;
  background-color: transparent;
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  line-height: 16px;
  color: #002068;
  cursor: pointer;
}

.pdf-pagination-numbers .page-item .page-link:hover,
.pdf-pagination-mobile .page-item .page-link:hover {
  background-color: #002068;
  color: #fff;
}

.pdf-pagination-numbers .page-item.active .page-link,
.pdf-pagination-mobile .page-item.active .page-link {
  background-color: #002068;
  color: #fff; 
}

.pdf-pagination-numbers .page-item.disabled .page-link.pdf-next, 
.pdf-pagination-numbers .page-item.disabled .page-link.pdf-prev,
.pdf-pagination-mobile .page-item.disabled .page-link.pdf-mobile-next, 
.pdf-pagination-mobile .page-item.disabled .page-link.pdf-mobile-prev {
  opacity: 0.3;
  background: #002068;
  cursor: default;
}

.pdf-pagination-numbers .page-item.disabled .page-link.pdf-next path, 
.pdf-pagination-numbers .page-item.disabled .page-link.pdf-prev path,
.pdf-pagination-mobile .page-item.disabled .page-link.pdf-mobile-next path, 
.pdf-pagination-mobile .page-item.disabled .page-link.pdf-mobile-prev path {
  fill: #fff;
}

.pdf-pagination-numbers .page-item .page-link.pdf-prev, 
.pdf-pagination-numbers .page-item .page-link.pdf-next,
.pdf-pagination-mobile .page-item .page-link.pdf-mobile-prev, 
.pdf-pagination-mobile .page-item .page-link.pdf-mobile-next {
  background-color: transparent;
  color: #002068;
  border-radius: 74px;
  border: 1px solid #002068;
  display: flex;
  align-items: center;
  justify-content: center;
}

[dir="rtl"] .pdf-pagination-numbers .page-item .page-link.pdf-prev,
[dir="rtl"] .pdf-pagination-numbers .page-item .page-link.pdf-next,
[dir="rtl"] .pdf-pagination-mobile .page-item .page-link.pdf-mobile-prev,
[dir="rtl"] .pdf-pagination-mobile .page-item .page-link.pdf-mobile-next {
  transform: rotate(180deg);
}

.pdf-pagination-numbers .page-item .page-link.pdf-prev:hover, 
.pdf-pagination-numbers .page-item .page-link.pdf-next:hover,
.pdf-pagination-mobile .page-item .page-link.pdf-mobile-prev:hover, 
.pdf-pagination-mobile .page-item .page-link.pdf-mobile-next:hover {
  background-color: #002068;
}

.pdf-pagination-numbers .page-item .page-link.pdf-prev:hover path, 
.pdf-pagination-numbers .page-item .page-link.pdf-next:hover path,
.pdf-pagination-mobile .page-item .page-link.pdf-mobile-prev:hover path, 
.pdf-pagination-mobile .page-item .page-link.pdf-mobile-next:hover path {
  fill: #fff;
}

.pdf-pagination-numbers .page-item .page-link.pdf-ellipsis,
.pdf-pagination-mobile .page-item .page-link.pdf-mobile-page-indicator {
  cursor: default;
}

.pdf-pagination-numbers .page-item .page-link.pdf-ellipsis:hover,
.pdf-pagination-mobile .page-item .page-link.pdf-mobile-page-indicator:hover {
  background-color: transparent;
  color: #002068;
}

.pdf-pagination-mobile .pdf-mobile-separator.page-link,
.pdf-pagination-mobile .pdf-mobile-total.page-link {
  font-size: 16px;
}

.pdf-pagination-mobile .pdf-mobile-separator.page-link:hover,
.pdf-pagination-mobile .pdf-mobile-total.page-link:hover {
  background-color: transparent;
  color: #002068;
  cursor: default;
}

/* Medical Content theming */
.medical-content-node .pdf-pagination-bullets .pdf-bullet {
  border: 1px solid var(--medical-red);
}

.medical-content-node .pdf-pagination-bullets .pdf-bullet:hover {
  background-color: var(--medical-red);
}

.medical-content-node .pdf-pagination-bullets .page-item.active .pdf-bullet {
  background-color: var(--medical-red);
}

.medical-content-node .pdf-pagination-bullets .page-item.active .pdf-bullet:hover {
  background-color: var(--medical-red);
}

.medical-content-node .slider-prev,
.medical-content-node .slider-next {
  background: var(--medical-red);
}
  
.medical-content-node .slider-prev:hover,
.medical-content-node .slider-next:hover,
.medical-content-node .pdf-full-screen:hover {
  background: #fff;
  path {
    fill: var(--medical-red);
  }
}

.medical-content-node .slider-prev:focus,
.medical-content-node .slider-next:focus,
.medical-content-node .pdf-full-screen:focus {
  border: 0;
  background: var(--medical-red);
  path {
    fill: #fff;
  }
}

.medical-content-node .slider-prev:focus:hover,
.medical-content-node .slider-next:focus:hover,
.medical-content-node .pdf-full-screen:focus:hover {
  background: #fff;
  path {
    fill: var(--medical-red);
  }
}

.medical-content-node .slider-prev:active,
.medical-content-node .slider-next:active,
.medical-content-node .pdf-full-screen:active {
  border: 0;
  path {
    fill: #fff;
  }
}

.medical-content-node .slider-prev.disabled,
.medical-content-node .slider-next.disabled,
.medical-content-node .pdf-full-screen.disabled {
  background: var(--medical-red);
  cursor: default;
}

.medical-content-node .slider-prev.disabled path,
.medical-content-node .slider-next.disabled path,
.medical-content-node .pdf-full-screen.disabled path {
  fill: #fff;
}

.medical-content-node .pdf-full-screen {
  background: var(--medical-red);
}

.medical-content-node .thumbnail-slide .thumbnail.selected {
  border: 2px solid var(--medical-red);
  border-color: var(--medical-red) !important;
}

.medical-content-node .thumbnail-slide a:focus > .thumbnail, .medical-content-node .thumbnail:hover {
  border: 2px solid var(--medical-red);
}

.medical-content-node .pdf-pagination-numbers .page-item .page-link {
  color: var(--medical-red);
}

.medical-content-node .pdf-pagination-numbers .page-item .page-link:hover {
  background-color: var(--medical-red);
  color: #fff;
}

.medical-content-node .pdf-pagination-numbers .page-item.active .page-link {
  background-color: var(--medical-red);
  color: #fff;
}

.medical-content-node .pdf-pagination-numbers .page-item.disabled .page-link.pdf-next, 
.medical-content-node .pdf-pagination-numbers .page-item.disabled .page-link.pdf-prev {
  background: var(--medical-red);
  cursor: default;
}

.medical-content-node .pdf-pagination-numbers .page-item.disabled .page-link.pdf-next path, 
.medical-content-node .pdf-pagination-numbers .page-item.disabled .page-link.pdf-prev path {
  fill: #fff;
}

.medical-content-node .pdf-pagination-numbers .page-item .page-link.pdf-ellipsis:hover {
  color: var(--medical-red);
  background-color: transparent;
}

.medical-content-node .pdf-pagination-numbers .page-item .page-link.pdf-prev, 
.medical-content-node .pdf-pagination-numbers .page-item .page-link.pdf-next {
  color: var(--medical-red);
  border: 1px solid var(--medical-red);
}

.medical-content-node .pdf-pagination-numbers .page-item .page-link.pdf-prev path, 
.medical-content-node .pdf-pagination-numbers .page-item .page-link.pdf-next path {
  fill: var(--medical-red);
}

.medical-content-node .pdf-pagination-numbers .page-item .page-link.pdf-prev:hover, 
.medical-content-node .pdf-pagination-numbers .page-item .page-link.pdf-next:hover {
  background-color: var(--medical-red);
}

.medical-content-node .pdf-pagination-numbers .page-item .page-link.pdf-prev:hover path, 
.medical-content-node .pdf-pagination-numbers .page-item .page-link.pdf-next:hover path {
  fill: #fff;
}

.medical-content-node .pdf-pagination-mobile .page-item .page-link {
  color: var(--medical-red);
}

.medical-content-node .pdf-pagination-mobile .page-item.active .page-link {
  background-color: var(--medical-red);
  color: #fff;
}

.medical-content-node .pdf-pagination-mobile .page-item.disabled .page-link.pdf-mobile-next, 
.medical-content-node .pdf-pagination-mobile .page-item.disabled .page-link.pdf-mobile-prev {
  background: var(--medical-red);
  cursor: default;
}

.medical-content-node .pdf-pagination-mobile .page-item.disabled .page-link.pdf-mobile-next path, 
.medical-content-node .pdf-pagination-mobile .page-item.disabled .page-link.pdf-mobile-prev path {
  fill: #fff;
}

.medical-content-node .pdf-pagination-mobile .page-item .page-link.pdf-mobile-prev, 
.medical-content-node .pdf-pagination-mobile .page-item .page-link.pdf-mobile-next {
  color: var(--medical-red);
  border: 1px solid var(--medical-red);
}

.medical-content-node .pdf-pagination-mobile .page-item .page-link.pdf-mobile-separator, 
.medical-content-node .pdf-pagination-mobile .page-item .page-link.pdf-mobile-total {
  color: var(--medical-red);
}

.medical-content-node .pdf-pagination-mobile .page-item .page-link.pdf-mobile-prev path, 
.medical-content-node .pdf-pagination-mobile .page-item .page-link.pdf-mobile-next path {
  fill: var(--medical-red);
}

.medical-content-node .pdf-pagination-mobile .page-item .page-link.pdf-mobile-prev:hover, 
.medical-content-node .pdf-pagination-mobile .page-item .page-link.pdf-mobile-next:hover {
  background-color: var(--medical-red);
}

.medical-content-node .pdf-pagination-mobile .page-item .page-link.pdf-mobile-prev:hover path, 
.medical-content-node .pdf-pagination-mobile .page-item .page-link.pdf-mobile-next:hover path {
  fill: #fff;
}

@media all and (max-width: 840px){
  #sidebarContainer{
    background-color: transparent;
  }
  .pdf-pagination-numbers {
    gap: .625rem;
  }
  .pdf-pagination-wrap {
    margin-left: 0;
  }
}

@media all and (max-width: 576px) {
  #mainContainer, #viewerContainer {
    height: 28.75rem;
  }
}