/* Main Style */
body {
  background-color: #1E6292;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='540' height='450' viewBox='0 0 1080 900'%3E%3Cg fill-opacity='.1'%3E%3Cpolygon fill='%23444' points='90 150 0 300 180 300'/%3E%3Cpolygon points='90 150 180 0 0 0'/%3E%3Cpolygon fill='%23AAA' points='270 150 360 0 180 0'/%3E%3Cpolygon fill='%23DDD' points='450 150 360 300 540 300'/%3E%3Cpolygon fill='%23999' points='450 150 540 0 360 0'/%3E%3Cpolygon points='630 150 540 300 720 300'/%3E%3Cpolygon fill='%23DDD' points='630 150 720 0 540 0'/%3E%3Cpolygon fill='%23444' points='810 150 720 300 900 300'/%3E%3Cpolygon fill='%23FFF' points='810 150 900 0 720 0'/%3E%3Cpolygon fill='%23DDD' points='990 150 900 300 1080 300'/%3E%3Cpolygon fill='%23444' points='990 150 1080 0 900 0'/%3E%3Cpolygon fill='%23DDD' points='90 450 0 600 180 600'/%3E%3Cpolygon points='90 450 180 300 0 300'/%3E%3Cpolygon fill='%23666' points='270 450 180 600 360 600'/%3E%3Cpolygon fill='%23AAA' points='270 450 360 300 180 300'/%3E%3Cpolygon fill='%23DDD' points='450 450 360 600 540 600'/%3E%3Cpolygon fill='%23999' points='450 450 540 300 360 300'/%3E%3Cpolygon fill='%23999' points='630 450 540 600 720 600'/%3E%3Cpolygon fill='%23FFF' points='630 450 720 300 540 300'/%3E%3Cpolygon points='810 450 720 600 900 600'/%3E%3Cpolygon fill='%23DDD' points='810 450 900 300 720 300'/%3E%3Cpolygon fill='%23AAA' points='990 450 900 600 1080 600'/%3E%3Cpolygon fill='%23444' points='990 450 1080 300 900 300'/%3E%3Cpolygon fill='%23222' points='90 750 0 900 180 900'/%3E%3Cpolygon points='270 750 180 900 360 900'/%3E%3Cpolygon fill='%23DDD' points='270 750 360 600 180 600'/%3E%3Cpolygon points='450 750 540 600 360 600'/%3E%3Cpolygon points='630 750 540 900 720 900'/%3E%3Cpolygon fill='%23444' points='630 750 720 600 540 600'/%3E%3Cpolygon fill='%23AAA' points='810 750 720 900 900 900'/%3E%3Cpolygon fill='%23666' points='810 750 900 600 720 600'/%3E%3Cpolygon fill='%23999' points='990 750 900 900 1080 900'/%3E%3Cpolygon fill='%23999' points='180 0 90 150 270 150'/%3E%3Cpolygon fill='%23444' points='360 0 270 150 450 150'/%3E%3Cpolygon fill='%23FFF' points='540 0 450 150 630 150'/%3E%3Cpolygon points='900 0 810 150 990 150'/%3E%3Cpolygon fill='%23222' points='0 300 -90 450 90 450'/%3E%3Cpolygon fill='%23FFF' points='0 300 90 150 -90 150'/%3E%3Cpolygon fill='%23FFF' points='180 300 90 450 270 450'/%3E%3Cpolygon fill='%23666' points='180 300 270 150 90 150'/%3E%3Cpolygon fill='%23222' points='360 300 270 450 450 450'/%3E%3Cpolygon fill='%23FFF' points='360 300 450 150 270 150'/%3E%3Cpolygon fill='%23444' points='540 300 450 450 630 450'/%3E%3Cpolygon fill='%23222' points='540 300 630 150 450 150'/%3E%3Cpolygon fill='%23AAA' points='720 300 630 450 810 450'/%3E%3Cpolygon fill='%23666' points='720 300 810 150 630 150'/%3E%3Cpolygon fill='%23FFF' points='900 300 810 450 990 450'/%3E%3Cpolygon fill='%23999' points='900 300 990 150 810 150'/%3E%3Cpolygon points='0 600 -90 750 90 750'/%3E%3Cpolygon fill='%23666' points='0 600 90 450 -90 450'/%3E%3Cpolygon fill='%23AAA' points='180 600 90 750 270 750'/%3E%3Cpolygon fill='%23444' points='180 600 270 450 90 450'/%3E%3Cpolygon fill='%23444' points='360 600 270 750 450 750'/%3E%3Cpolygon fill='%23999' points='360 600 450 450 270 450'/%3E%3Cpolygon fill='%23666' points='540 600 630 450 450 450'/%3E%3Cpolygon fill='%23222' points='720 600 630 750 810 750'/%3E%3Cpolygon fill='%23FFF' points='900 600 810 750 990 750'/%3E%3Cpolygon fill='%23222' points='900 600 990 450 810 450'/%3E%3Cpolygon fill='%23DDD' points='0 900 90 750 -90 750'/%3E%3Cpolygon fill='%23444' points='180 900 270 750 90 750'/%3E%3Cpolygon fill='%23FFF' points='360 900 450 750 270 750'/%3E%3Cpolygon fill='%23AAA' points='540 900 630 750 450 750'/%3E%3Cpolygon fill='%23FFF' points='720 900 810 750 630 750'/%3E%3Cpolygon fill='%23222' points='900 900 990 750 810 750'/%3E%3Cpolygon fill='%23222' points='1080 300 990 450 1170 450'/%3E%3Cpolygon fill='%23FFF' points='1080 300 1170 150 990 150'/%3E%3Cpolygon points='1080 600 990 750 1170 750'/%3E%3Cpolygon fill='%23666' points='1080 600 1170 450 990 450'/%3E%3Cpolygon fill='%23DDD' points='1080 900 1170 750 990 750'/%3E%3C/g%3E%3C/svg%3E");
}

.pkp_site_name {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.pkp_site_name > a {
  padding-top: 0;
  padding-bottom: 0;
}

.pkp_site_name_wrapper {
  padding-left: 0;
  padding-right: 0;
}
/* .pkp_navigation_user_wrapper {top: 0; right: 0; padding-right:30px;} */
.pkp_brand_footer {
  display: none;
}

/* Navigation For Register and Login */
ul#navigationUser > li.profile {
  border-radius: 5px;
}

ul#navigationUser > li.profile > a:hover {
  color: #9271ff;
}

/* ul#navigationUser > li:first-child > a::before {
  content: '<span class="fa fa-user-circle-o"></span>&nbsp; Register';
} */

/* Navigation Primary */

.pkp_nav_list > li {
  background: #00509D;
}

.pkp_nav_list > li > a {
  color: white;
  font-weight: bold;
}

.pkp_navigation_primary > li > a {
  border-bottom: 3px solid transparent;
}

.pkp_navigation_primary > li > a:hover {
  color: #9271ff;
}

.pkp_navigation_primary > li:first-child a {
  margin-left: 0.5em;
}

.pkp_navigation_primary > li:last-child a {
  margin-right: 0.5em;
}

.pkp_navigation_user > li:last-child > a {
  margin-right: 0;
}

.pkp_navigation_user .task_count {
  top: 0.1rem;
  background: #ff4d4d;
}

/* @media (min-width: 992px) {
} */

/* Navigation Sub Primary */
.pkp_navigation_primary ul a {
  margin-right: 0 !important;
}

#pkpDropdown3::before {
  content: "Howdy,";
}

.dropdown-menu {
  left: 0 !important;
}

.pkp_navigation_search_wrapper a {
  color: white;
}

/* Header */
.pkp_structure_head {
  background-color: transparent;
  border-bottom: none;
}

.pkp_head_wrapper {
  background-color: #00296B;
  border-bottom: 1px solid #ddd;
}

.pkp_structure_content {
  background: white;
}

.pkp_structure_footer_wrapper {
  background: transparent;
}

.pkp_footer_content {
  background: #ddd;
}

.pkp_site_nav_menu {
  background: #00509D;
}

.pkp_site_name .is_img {
  margin-bottom: 0;
}

/* .php_structure_page {
    width: 80vw;
} */

/* .pkp_structure_head, .pkp_structure_content, .pkp_structure_footer {
    box-shadow: 0 0px 8px 0 rgb(0 0 0 / 20%), 0 6px 20px 0 rgb(0 0 0 / 19%);
} */

/* Content Homepage */
@media only screen and (max-width: 600px) {
  .hide-small {
    display: none;
  }
}

@media (min-width: 601px) {
  .show-small {
    display: none;
  }
}

/* Custom Block Tools */
#customblock-tools img {
  max-width: unset;
  width: 70%;
}

#customblock-journal-template img {
  max-width: unset;
  width: 70%;
  border-radius: 3px;
}

/* Team */
.flag-img {
  max-width: unset;
  width: 50px;
}

/* Animation */
.dropdown {
  position: relative;
}
.dropdown a {
  text-decoration: none;
}
.dropdown [data-toggle="dropdown"] {
  display: block;
  color: white;
  background: #4682b4;
  -moz-box-shadow: 0 1px 0 #1f3a93 inset, 0 -1px 0 #1f3a93 inset;
  -webkit-box-shadow: 0 1px 0 #1f3a93 inset, 0 -1px 0 #1f3a93 inset;
  box-shadow: 0 1px 0 #1f3a93 inset, 0 -1px 0 #1f3a93 inset;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.3);
  padding: 10px;
}
.dropdown [data-toggle="dropdown"]:hover {
  background: #cd3d2e;
}
.dropdown [data-toggle="dropdown"]:before {
  position: absolute;
  display: block;
  content: "\25BC";
  font-size: 0.7em;
  color: #fff;
  top: 13px;
  right: 10px;
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  -moz-transition: -moz-transform 0.6s;
  -o-transition: -o-transform 0.6s;
  -webkit-transition: -webkit-transform 0.6s;
  transition: transform 0.6s;
}
.dropdown > .dropdown-menu {
  max-height: 0;
  overflow: hidden;
  list-style: none;
  padding: 0;
  margin: 0;
  -moz-transform: scaleY(0);
  -ms-transform: scaleY(0);
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -moz-transform-origin: 50% 0%;
  -ms-transform-origin: 50% 0%;
  -webkit-transform-origin: 50% 0%;
  transform-origin: 50% 0%;
  -moz-transition: max-height 0.6s ease-out;
  -o-transition: max-height 0.6s ease-out;
  -webkit-transition: max-height 0.6s ease-out;
  transition: max-height 0.6s ease-out;
  animation: hideAnimation 0.4s ease-out;
  -moz-animation: hideAnimation 0.4s ease-out;
  -webkit-animation: hideAnimation 0.4s ease-out;
}
.dropdown > .dropdown-menu li {
  padding: 0;
}
.dropdown > input[type="checkbox"] {
  opacity: 0;
  display: block;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
.dropdown > input[type="checkbox"]:checked ~ .dropdown-menu {
  max-height: 9999px;
  display: block;
  -moz-transform: scaleY(1);
  -ms-transform: scaleY(1);
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
  animation: showAnimation 0.5s ease-in-out;
  -moz-animation: showAnimation 0.5s ease-in-out;
  -webkit-animation: showAnimation 0.5s ease-in-out;
  -moz-transition: max-height 2s ease-in-out;
  -o-transition: max-height 2s ease-in-out;
  -webkit-transition: max-height 2s ease-in-out;
  transition: max-height 2s ease-in-out;
}
.dropdown > input[type="checkbox"]:checked + a[data-toggle="dropdown"]:before {
  -moz-transform: rotate(-180deg);
  -ms-transform: rotate(-180deg);
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
  -moz-transition: -moz-transform 0.6s;
  -o-transition: -o-transform 0.6s;
  -webkit-transition: -webkit-transform 0.6s;
  transition: transform 0.6s;
}

@keyframes showAnimation {
  0% {
    -moz-transform: scaleY(0.1);
    -ms-transform: scaleY(0.1);
    -webkit-transform: scaleY(0.1);
    transform: scaleY(0.1);
  }
  40% {
    -moz-transform: scaleY(1.04);
    -ms-transform: scaleY(1.04);
    -webkit-transform: scaleY(1.04);
    transform: scaleY(1.04);
  }
  60% {
    -moz-transform: scaleY(0.98);
    -ms-transform: scaleY(0.98);
    -webkit-transform: scaleY(0.98);
    transform: scaleY(0.98);
  }
  80% {
    -moz-transform: scaleY(1.04);
    -ms-transform: scaleY(1.04);
    -webkit-transform: scaleY(1.04);
    transform: scaleY(1.04);
  }
  100% {
    -moz-transform: scaleY(0.98);
    -ms-transform: scaleY(0.98);
    -webkit-transform: scaleY(0.98);
    transform: scaleY(0.98);
  }
  80% {
    -moz-transform: scaleY(1.02);
    -ms-transform: scaleY(1.02);
    -webkit-transform: scaleY(1.02);
    transform: scaleY(1.02);
  }
  100% {
    -moz-transform: scaleY(1);
    -ms-transform: scaleY(1);
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }
}
@-moz-keyframes showAnimation {
  0% {
    -moz-transform: scaleY(0.1);
    -ms-transform: scaleY(0.1);
    -webkit-transform: scaleY(0.1);
    transform: scaleY(0.1);
  }
  40% {
    -moz-transform: scaleY(1.04);
    -ms-transform: scaleY(1.04);
    -webkit-transform: scaleY(1.04);
    transform: scaleY(1.04);
  }
  60% {
    -moz-transform: scaleY(0.98);
    -ms-transform: scaleY(0.98);
    -webkit-transform: scaleY(0.98);
    transform: scaleY(0.98);
  }
  80% {
    -moz-transform: scaleY(1.04);
    -ms-transform: scaleY(1.04);
    -webkit-transform: scaleY(1.04);
    transform: scaleY(1.04);
  }
  100% {
    -moz-transform: scaleY(0.98);
    -ms-transform: scaleY(0.98);
    -webkit-transform: scaleY(0.98);
    transform: scaleY(0.98);
  }
  80% {
    -moz-transform: scaleY(1.02);
    -ms-transform: scaleY(1.02);
    -webkit-transform: scaleY(1.02);
    transform: scaleY(1.02);
  }
  100% {
    -moz-transform: scaleY(1);
    -ms-transform: scaleY(1);
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }
}
@-webkit-keyframes showAnimation {
  0% {
    -moz-transform: scaleY(0.1);
    -ms-transform: scaleY(0.1);
    -webkit-transform: scaleY(0.1);
    transform: scaleY(0.1);
  }
  40% {
    -moz-transform: scaleY(1.04);
    -ms-transform: scaleY(1.04);
    -webkit-transform: scaleY(1.04);
    transform: scaleY(1.04);
  }
  60% {
    -moz-transform: scaleY(0.98);
    -ms-transform: scaleY(0.98);
    -webkit-transform: scaleY(0.98);
    transform: scaleY(0.98);
  }
  80% {
    -moz-transform: scaleY(1.04);
    -ms-transform: scaleY(1.04);
    -webkit-transform: scaleY(1.04);
    transform: scaleY(1.04);
  }
  100% {
    -moz-transform: scaleY(0.98);
    -ms-transform: scaleY(0.98);
    -webkit-transform: scaleY(0.98);
    transform: scaleY(0.98);
  }
  80% {
    -moz-transform: scaleY(1.02);
    -ms-transform: scaleY(1.02);
    -webkit-transform: scaleY(1.02);
    transform: scaleY(1.02);
  }
  100% {
    -moz-transform: scaleY(1);
    -ms-transform: scaleY(1);
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }
}
@keyframes hideAnimation {
  0% {
    -moz-transform: scaleY(1);
    -ms-transform: scaleY(1);
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }
  60% {
    -moz-transform: scaleY(0.98);
    -ms-transform: scaleY(0.98);
    -webkit-transform: scaleY(0.98);
    transform: scaleY(0.98);
  }
  80% {
    -moz-transform: scaleY(1.02);
    -ms-transform: scaleY(1.02);
    -webkit-transform: scaleY(1.02);
    transform: scaleY(1.02);
  }
  100% {
    -moz-transform: scaleY(0);
    -ms-transform: scaleY(0);
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
  }
}
@-moz-keyframes hideAnimation {
  0% {
    -moz-transform: scaleY(1);
    -ms-transform: scaleY(1);
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }
  60% {
    -moz-transform: scaleY(0.98);
    -ms-transform: scaleY(0.98);
    -webkit-transform: scaleY(0.98);
    transform: scaleY(0.98);
  }
  80% {
    -moz-transform: scaleY(1.02);
    -ms-transform: scaleY(1.02);
    -webkit-transform: scaleY(1.02);
    transform: scaleY(1.02);
  }
  100% {
    -moz-transform: scaleY(0);
    -ms-transform: scaleY(0);
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
  }
}
@-webkit-keyframes hideAnimation {
  0% {
    -moz-transform: scaleY(1);
    -ms-transform: scaleY(1);
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }
  60% {
    -moz-transform: scaleY(0.98);
    -ms-transform: scaleY(0.98);
    -webkit-transform: scaleY(0.98);
    transform: scaleY(0.98);
  }
  80% {
    -moz-transform: scaleY(1.02);
    -ms-transform: scaleY(1.02);
    -webkit-transform: scaleY(1.02);
    transform: scaleY(1.02);
  }
  100% {
    -moz-transform: scaleY(0);
    -ms-transform: scaleY(0);
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
  }
}

/* Desktop View */
@media only screen and (min-width: 992px) {
  .pkp_site_name .is_img img {
    max-height: 200px !important;
  }
  .show-on-mobile {
    display: none;
  }
}

/* Mobile View */
@media only screen and (max-width: 991px) {
  .pkp_nav_list > li > ul > li > a {
    color: white;
    margin-left: 1.5em;
  }
  .pkp_navigation_primary > li a {
    margin-left: 0.5em;
  }
  .pkp_navigation_search_wrapper, .pkp_navigation_user_wrapper {
    margin-left: 0.5em;
  }
  .pkp_nav_list > li {
    background: transparent;
  }
  .pkp_navigation_user .task_count {
    top: 0;
    background: #ff4d4d !important;
  }
}

/* Editorial Team (Custom Block) */
.editorial_team_block .profile .orcid {
    background: url('https://journal.diginus.id/public/site/images/pisces/orcid_logo.svg') no-repeat 2px;
    background-size: 15px;
    padding-left: 25px;
}

.editorial_team_block .profile .google_scholar {
    background: url('https://journal.diginus.id/public/site/images/pisces/google_scholar_logo.svg') no-repeat 2px;
    background-size: 15px;
    padding-left: 25px;
}

.editorial_team_block .profile div {
    line-height: 1.5;
    font-size: .92em;
    text-align: left;
}

.editorial_team_block div {
    padding: 0;
}

.editorial_team_block img {
    width: 85px!important;
    height: 90px!important;
    padding: 5px;
    border: 1px solid #d6cfcf46;
    float: left;
    box-shadow: 10px 10px 5px -13px rgb(105 98 98 / 75%);
}

.team td {
  vertical-align: top;
}

.dropdown-customblock {
    padding: 10px;
    border-bottom: 1px solid #aaa;
    background: #2e2458 !important;
    color: #fbfcfc;
}

.dropdown-customblock-item {
    padding: 10px !important;
    border-bottom: 1px solid #aaa; 
    background: #e6e2e2; 
    color: #fbfcfc;
}

.dropdown-customblock-item a {
    color: #6e45f3;
}

.dropdown-customblock-item a:hover {
    color: #170c47;
}
/* Make the thumbnail look clickable */
.ojsLightboxThumb img{
  width: 100%;
  height: auto;
  display: block;
  cursor: zoom-in;
  border-radius: 16px;
}

/* LIGHTBOX overlay (hidden by default) */
.ojsLightbox{
  position: fixed;
  inset: 0;
  z-index: 99999;
  opacity: 0;
  pointer-events: none;
  transition: opacity .18s ease;
}

/* Show overlay when targeted (#jospaPoster) */
.ojsLightbox:target{
  opacity: 1;
  pointer-events: auto;
}

/* Dark backdrop */
.ojsLightboxBackdrop{
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.86);
}

/* Panel holds the image; allows scroll for tall posters */
.ojsLightboxPanel{
  position: relative;
  margin: 0;
  width: min(980px, 92vw);
  max-height: 92vh;
  overflow: auto;
  border-radius: 18px;
  box-shadow: 0 24px 80px rgba(0,0,0,.65);
  background: rgba(0,0,0,.08);
  padding: 14px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* Full image inside overlay */
.ojsLightboxPanel img{
  width: 100%;
  height: auto;
  display: block;
  border-radius: 12px;
  cursor: zoom-out;
}

/* Close button */
.ojsLightboxClose{
  position: sticky;         /* stays visible when you scroll inside panel */
  top: 8px;
  margin-left: auto;
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  text-decoration: none;
  font-size: 28px;
  line-height: 1;
  border-radius: 999px;
  background: rgba(0,0,0,.55);
  color: #fff;
  backdrop-filter: blur(6px);
}

/* Small-screen tweak */
@media (max-width: 520px){
  .ojsLightboxPanel{
    width: 94vw;
    max-height: 94vh;
    padding: 10px;
    border-radius: 14px;
  }
}

/* ====== FORCE FULLSCREEN OVERLAY (OJS-safe) ====== */
.ojsLightbox{
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483647 !important; /* super high to beat theme */
  opacity: 0;
  pointer-events: none;
  transition: opacity .18s ease;

  /* IMPORTANT: dark overlay lives here too */
  background: rgba(0,0,0,.90) !important;
}

.ojsLightbox:target{
  opacity: 1;
  pointer-events: auto;
}

/* Backdrop link: keep it, but force darkness too */
.ojsLightboxBackdrop{
  position: fixed !important;
  inset: 0 !important;
  background: rgba(0,0,0,.90) !important;
  z-index: 1 !important;
}

/* Panel (the image container) */
.ojsLightboxPanel{
  position: fixed !important;
  z-index: 2 !important;

  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);

  width: min(980px, 92vw);
  max-height: 92vh;
  overflow: auto;

  border-radius: 18px;
  box-shadow: 0 24px 80px rgba(0,0,0,.65);
  background: rgba(0,0,0,.08);
  padding: 14px;
}

.ojsLightboxPanel img{
  width: 100%;
  height: auto;
  display: block;
  border-radius: 12px;
  cursor: zoom-out;
}

/* Close button */
.ojsLightboxClose{
  position: sticky;
  top: 8px;
  margin-left: auto;

  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;

  text-decoration: none;
  font-size: 28px;
  line-height: 1;

  border-radius: 999px;
  background: rgba(0,0,0,.55);
  color: #fff;
  backdrop-filter: blur(6px);
}

/* ===== Posters grid (optional nice hover) ===== */
.jp-postersGrid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

@media (max-width: 820px){
  .jp-postersGrid{ grid-template-columns: 1fr; }
}

.jp-posterCard img{
  width: 100%;
  height: auto;
  display: block;
  border-radius: 16px;
  cursor: zoom-in;
  transition: transform .18s ease, box-shadow .18s ease;
  box-shadow: 0 12px 30px rgba(0,0,0,.12);
}

.jp-posterLink:hover img{
  transform: scale(1.02);
  box-shadow: 0 18px 40px rgba(0,0,0,.18);
}

/* ===== CSS-only Lightbox (OJS-safe + forced dark overlay) ===== */
.jp-lightbox{
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483647 !important;

  opacity: 0;
  pointer-events: none;
  transition: opacity .18s ease;

  /* Force dark overlay even if theme overrides backdrop */
  background: rgba(0,0,0,.90) !important;
}

.jp-lightbox:target{
  opacity: 1;
  pointer-events: auto;
}

/* Clickable dark area to close */
.jp-lightboxBackdrop{
  position: fixed !important;
  inset: 0 !important;
  background: rgba(0,0,0,.90) !important;
  z-index: 1 !important;
}

/* Panel */
.jp-lightboxPanel{
  position: fixed !important;
  z-index: 2 !important;

  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);

  width: min(980px, 92vw);
  max-height: 92vh;
  overflow: auto;

  margin: 0;
  padding: 14px;
  border-radius: 18px;

  background: rgba(0,0,0,.08);
  box-shadow: 0 24px 80px rgba(0,0,0,.65);
}

/* Full image */
.jp-lightboxPanel img{
  width: 100%;
  height: auto;
  display: block;
  border-radius: 12px;
  cursor: zoom-out;
}

/* Close button */
.jp-lightboxClose{
  position: sticky;
  top: 8px;
  margin-left: auto;

  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;

  text-decoration: none;
  font-size: 28px;
  line-height: 1;

  border-radius: 999px;
  background: rgba(0,0,0,.55);
  color: #fff;
  backdrop-filter: blur(6px);
}

/* Mobile tweak */
@media (max-width: 520px){
  .jp-lightboxPanel{
    width: 94vw;
    max-height: 94vh;
    padding: 10px;
    border-radius: 14px;
  }
}

/* ===== Hide scrollbar but keep scroll ===== */
.jp-lightboxPanel{
  scrollbar-width: none;   /* Firefox */
  -ms-overflow-style: none;/* old Edge/IE */
}

.jp-lightboxPanel::-webkit-scrollbar{
  width: 0;
  height: 0;
}

.jp-lightboxPanel{
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch; /* smooth iOS scroll */
}


/* ===== Hide scrollbar but keep scroll ===== */
.ojsLightboxPanel{
  scrollbar-width: none;   /* Firefox */
  -ms-overflow-style: none;/* old Edge/IE */
}

.ojsLightboxPanel::-webkit-scrollbar{
  width: 0;
  height: 0;
}

.ojsLightboxPanel{
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch; /* smooth iOS scroll */
}
