 .gall_over {
   display:none; position:fixed; top:0; left:0; bottom:0; right:0; background:rgba(0,0,0,0.95); z-index:9999;
 }
 /* vert */
 .gall_over.vert,
 .gall_over.vert .gallin_index {
   left:115px;
 }
 .gall_over.vert .gallin_icons_cont {
   left:0; bottom:0; 
   width:100px; height:100%;
 }
 .gall_over.vert .gallin_icons {
   background:#000;
   padding: 0 25px 0 0;
   height: 100%;
   width: 91px;
   overflow-y: scroll;
   overflow-x: hidden;
 }
 
 .gall_in {
   display:block; position:relative;
   min-height:200px; padding:42px 0 120px 0; margin:20px auto;
   background:rgba(0,0,0,0.95); border-radius:4px;
   transition: all 0.3s ease-out;
 }
 
 .gall_over a, .gall_in a {
   outline:0;
 }
 
 .gall_in.no_thumbs {
   padding:42px 0 0 0;
 }
 .gall_over img, .gall_in img {
   display:inline-block; 
   border:0;
   cursor:pointer;
 }
 
 .gallin_index {
   position:fixed; top:0px; left:0; z-index:9;
   width:80px; height:40px; line-height:40px;
   text-align:center; font-weight:normal;
   color:#fff; border-bottom-right-radius:2px;
   /* box-shadow:0 1px 2px #000; */
 }
 .gall_in .gallin_index {
   position:absolute; top:5px; left:5px;
 }
 
 .gallin_index span {
   display:inline-block; z-index:2; /* background:red; */
   line-height: 40px; padding:0 10px; margin-left:24px;
   background:#222; border-radius:2px;
   box-shadow:0 1px 2px #000;
 }
 .gallin_index span.index_btn {
   display:block; position:absolute; left:0; top:0;
   height:40px; margin:0; cursor:pointer;
   background:url('../../inc/gallery/icons/gallery_icons_over.png') -8px -280px #222;
 }
 
 .gallin_index > div {
   position:absolute; top:42px; left:0; z-index:-1;
   display:none;
   padding:0 10px;
   background:#222;
   color:#ddd;
   border-radius:2px;
 }
 .gallin_index > div a {
   color:#ddd;
 }
 .gallin_menu_top {
   position:fixed; display:block; top:0px; right:0; z-index:9;
   text-align:center; line-height:20px; text-decoration:none;
 }
 .gall_in .gallin_menu_top {
   position:absolute; top:5px; right:5px;
 }
 .gallin_menu_top a {
   display:inline-block; height:20px; padding:10px 18px;
   text-align:center; text-decoration:none; 
   background-color:#222; color:#fff;
   /* border-bottom-left-radius:2px; border-bottom-right-radius:2px; */
   border-radius:2px;
   cursor:pointer;
   box-shadow:0 1px 2px #000;
 }
 .gallin_icons_open_top {
   background:url('../../inc/gallery/icons/gallery_icons_over.png') 0 0 no-repeat;
 }
 .gallin_ico_download {
   background:url('../../inc/gallery/icons/gallery_icons_over.png') 0 -40px no-repeat;
 }
 .gallin_ico_slideshow.play {
   background:url('../../inc/gallery/icons/gallery_icons_over.png') 0 -80px no-repeat #222;
 }
 .gallin_ico_slideshow.stop {
   background:url('../../inc/gallery/icons/gallery_icons_over.png') 0 -120px no-repeat #222;
 }
 .gallin_menu_top a.gallin_ico_fullscreen, .gallin_menu_top a.gallin_ico_fullscr {
   /* display:none; */
   background:url('../../inc/gallery/icons/gallery_icons_over.png') 0 -320px no-repeat #222;
 }
 .gall_in .gallin_menu_top a.gallin_ico_fullscreen {
   display:inline-block;
 }
 .gallin_menu_top .gallin_ico_close {
   color:#fff;
   border-radius:0; border-bottom-left-radius:2px;
   background:url('../../inc/gallery/icons/gallery_icons_over.png') 0 -160px no-repeat #cc0000;
 }
 .gall_in .gallin_menu_top .gallin_ico_close {
   display:none;
 }
 
 .gallin_index span.index_btn:hover, .gallin_menu_top a:hover {
   background-color:#000;
 }
 
 .gallin_slideshow_progress_cont {
   display:none; position:absolute; left:0px; top:0px; width:100%; height:5px;
   border:0px solid #111; border-radius:4px; z-index:889;
   
   display:block;
 }
 .gallin_slideshow_progress {
   position:absolute; left:0px; top:0px; width:0; height:5px; background-color:#888;
   opacity:0.7; border-radius:5px; box-shadow:0 0 1px #000 inset;
 }
 
 .gallin_medium {
   position:relative; text-align:center; height:100%; overflow:hidden; z-index:2;
 }
 .gall_in .gallin_medium, .gall_in .gallin_medium_img_prev_cont {
   padding:0 0px;
 }
 
 .gallin_medium.loading_show:before {
   display:block; position: absolute; left:0; top:0; right:0; bottom:0;
   content: "";
   background:url('../../inc/gallery/icons/loading_1.gif') center no-repeat;
   opacity:0;
   animation: gallin_medium_bg 0.8s;
   animation-iteration-count: 1;
   animation-fill-mode:forwards;
   
   /* border:1px solid yellow; */
 }
 @keyframes gallin_medium_bg {
   0% {
     opacity:0;
   }
   50% {
     opacity:0;
   }
   100% {
     opacity:1;
   }
 }
 
 .gallin_medium_img, .gallin_medium_img_prev, .gallin_video {
   display:none; position: relative;
   /* max-height:95%; */ max-width:100%;
   margin:0 auto;
   top: 50%;
   transform: translateY(-50%);
   -webkit-transform: translateY(-50%);
   -ms-transform: translateY(-50%);
 }
 .gallin_medium_img_prev_cont {
   position:absolute; /* width:100%; */ left:0; right:0; top:0; bottom:0; z-index:-1;
 }
 
 #gallin_overlay {
   position:absolute; text-align:center; width:100%; height:100%; overflow:hidden;
   z-index:0; border:0px solid red; background:transparent;
 }
 a.gallin_nav_prev, a.gallin_nav_next {
   display:block; position:absolute; top:0; left:0; width:45%; height:100%; z-index:400;
   background:url(../../inc/gallery/icons/gallery_prev.png) left center no-repeat; opacity:0.1;
 }
 a.gallin_nav_next {
   right:0; left:auto; background:url(../../inc/gallery/icons/gallery_next.png) right center no-repeat;
 }
 a.gallin_nav_prev:hover, a.gallin_nav_next:hover {
   display:block; opacity:0.7;
 }
 a.gallin_nav_prev.m, a.gallin_nav_next.m {
   width:40px;
 }
 
 .gallin_ico_slideshow_start, .gallin_ico_slideshow_stop {
   display:block; position: absolute; z-index:5;
   height:100%; width:120px; left:50%; margin-left:-60px; top:0%; 
   background-position:center; background-repeat:no-repeat;
   background-size:100%; opacity:0; transition: all 0.3s ease-out;
 }
 .gallin_ico_slideshow_stop:hover {
   background-image:url(../../inc/gallery/icons/slideshow_stop.png);
   opacity:0.5;
 }
 .gallin_ico_slideshow_start:hover {
   background-image:url(../../inc/gallery/icons/slideshow_start.png); opacity:0.5;
 }
 
 a.slideshow_stop {
   text-decoration: none;
   font-family:tahoma,verdana,sans-serif;
   font-size:24px;
   font-weight:bold;
   color:#ccc;
 }
 a.slideshow_stop:hover {
   color:#eee;
 }
 
 .gallin_img_desc {
   position:absolute; left:0; top: 40px; z-index:6;
   width:92%; padding:10px 4%;
   text-align:center; font-size:1.2em; font-weight:normal; color:#fff; text-shadow: 1px 1px 2px #000; background: rgb(0, 0, 0); background: rgba(0, 0, 0, 0.2);
 }
 .gallin_img_desc:empty {
   display:none; padding:0;
 }
 
 .gallin_icons_hover {
   position:absolute; z-index:7; bottom:0;
   width:100%; height:10px;
 }
 .gallin_icons_cont {
   display:block; position:fixed; bottom:0; width:100%; z-index:9;
   text-align:center;
   background: rgba(0, 0, 0, 0.6);
   border-top:0px solid #000;
 }
 .gall_in .gallin_icons_cont {
   position:absolute;
 }
 .gallin_icons_close {
   display:block; display:none; position:absolute; top:-40px; right:0; 
   width:40px; height:40px; text-align:center;
   border-radius:3px;
   background: url('../../inc/gallery/icons/gallery_icons_over.png') 0 -160px no-repeat #111;
   z-index:4; cursor:pointer;
 }
 .gallin_icons_open {
   display:none; position:fixed; bottom:0; left:50%; margin-left:-50px; width:100px; z-index:9;
   text-align:center; line-height:30px;
   background-color:#000; color:#fff;
   border-top-left-radius:5px; border-top-right-radius:5px;
   cursor:pointer; box-shadow:0 -1px 2px #000;
 }
 .gallin_icons {
   padding:0 0 25px 0;
   height:91px; width:100%;
   overflow-x:scroll; overflow-y:hidden;
 }
 .gallin_scroll_prev, #gall_over .gallin_scroll_next {
   display:block; position:absolute; width:30px; height:90px; background-color:green;
 }
 .gallin_scroll_next {
   right:0; background-color:blue;
 }
 .gallin_icons div {
   text-align:left; height:94px; max-height:94px;
 }
 .gallin_icons img.icon {
   margin:3px;
   border:4px solid #444;
   width:80px; height:80px;
   max-width:80px; max-height:80px;
   transition: all 0.3s ease-out;
 }
 .gallin_icons img.icon_curr {
   border:4px solid #fff;
 }
 
 @media only screen and (max-width: 800px) and (orientation:portrait), only screen and (max-width: 800px) and (orientation:landscape) {
   .gallin_ico_slideshow_start, .gallin_ico_slideshow_stop {
     display:none;
   }
   a.gallin_nav_prev, a.gallin_nav_next {
     opacity: 1;
   }
 }
 
 @media only screen and (max-width: 540px) and (orientation:portrait), only screen and (max-width: 540px) and (orientation:landscape) {
   .gallin_medium_img_prev_cont {
     display:none;
   }
   a.gallin_nav_prev, a.gallin_nav_next {
     z-index:10;
     height:40px; min-height:40px !important; width:50px; 
     top:auto; bottom:0px;
     color:#fff;
     opacity:1;
     border-top-left-radius: 3px;
     border-top-right-radius: 3px;
     cursor: pointer;
     box-shadow: 0 -1px 2px #000;
     background: url(../../inc/gallery/icons/gallery_icons_over.png) center -200px no-repeat #222;
   }
   a.gallin_nav_next {
     background-position: center -240px;
   }
   a.gallin_nav_prev:hover, a.gallin_nav_next:hover {
     background-color: #000; opacity:1;
   }
 }