/*basic gal layout*/
.gall {
    position: relative;
    /*margin: 0px;*/
    width: 600px;
    text-align: center;
    /*margin:10px 0 10px 0;*/
    z-index: 11;
    margin: 0 auto;
}

.gall .imgthumb,
.gall .imgcont {
    background-color: transparent;
    width: 600px;
}

.gall .thumbbox {
    top:-15px;
    position: relative;
    background-color: transparent;
    height: 58px;
    overflow: hidden;
    padding: 0;
    border: solid 2px #aaaaaa;
    margin: 0 20px 0 20px;
    /*border-bottom-left-radius: 10px;*/
    /*border-bottom-right-radius: 10px;*/
    border-radius: 10px;
}

.gall .imgthumb {
    position: absolute;
    display: block;
    top: 0;
    padding: 0;
    height: 100%;
    width: 1000px;
    background-color: #eeeeee;
    text-align: left;
}

.gall .imgcont {
    padding-bottom: 5px;
    display: inline-block;
    border: solid 2px #aaaaaa;
    border-radius: 8px;
}

.gall .imgthumb img {
    display: inline-block;
    margin: 4px 0px 0 8px;
    height: 50px;
    cursor: pointer;
    border-radius: 3px;
}

.gall .imgcont img,
.gall .imgcont span {
    display: inline-block;
}

.gall .imgcont img {
    border-radius: 5px;
    margin-top: 5px;
    width: 98%;
    cursor: pointer;
}

.gall .btnl,
.gall .btnr {
    padding: 2px 5px 2px 5px;
    border: solid 2px #aaaaaa;
    border-radius: 8px;
    background-color: #eeeeee;
    min-height: 18px;
    font: bolder 14px Arial, san-serif;
    color: #000000;
    cursor: pointer;
}

.gall .btnl {
    position: absolute;
    left: 4px;
    bottom: 30px;

}

.gall .btnr {
    float: right;
    position: absolute;
    right: 4px;
    bottom: 30px;

}

/* float win */
.gall .overlayer,
.gall .outerframe {
    position: fixed;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    text-align: center;
    z-index: 0;
}

.gall .overlayer {
    background-color: #ffffff;
    opacity: 0.75;
}

.gall .outerframe .outerbox {
    position: relative;
    top: 20px;
    margin: 0 auto 0 auto;
    z-index: 10;
    opacity: 1;
}

.gall .imgbox {
    position: relative;
    width: auto;
    display: inline-block;
}

.gall .img {
    position: relative;
    opacity: 1;
    z-index: 10;
    border-radius: 8px;
    border: solid 3px #aaaaaa;
}

.gall .desc,
.gall .close,
.gall .less,
.gall .greater,
.gall .displ {
    padding: 2px 10px 2px 10px;
    border: solid 3px #aaaaaa;
    border-radius: 8px;
    background-color: #eeeeee;
    min-height: 18px;
    font: bolder 14px Arial, san-serif;
}

.gall .desc {
    position: relative;
    top: -18px;
    z-index: 15;
    display: inherit;
    font: lighter 14px Arial, san-serif;
}

.gall .close,
.gall .less,
.gall .greater,
.gall .displ {
    z-index: 15;
    top: -13px;
    color: #000000;
    text-decoration: none;
    font-weight: bolder;
    font-family: sans-serif;
}

.gall .close {
    position: absolute;
    right: 10px;
}

.gall .btntop {
    position: absolute;
    top: -9px;
    z-index: 15;
    width: 100%;
}

/* Modern additions - 2026-01-27 */
.gall .btnl.disabled,
.gall .btnr.disabled,
.gall .btnl[style*="cursor: default"],
.gall .btnr[style*="cursor: default"] {
    opacity: 0.5;
    cursor: default !important;
    background-color: #cccccc;
}

.gall .less.disabled,
.gall .greater.disabled {
    opacity: 0.5;
    cursor: default !important;
    background-color: #cccccc;
    pointer-events: none;
}

/* Hover effects for active buttons */
.gall .btnl:not(.disabled):not([style*="cursor: default"]):hover,
.gall .btnr:not(.disabled):not([style*="cursor: default"]):hover {
    background-color: #dddddd;
    transform: scale(1.05);
}

.gall .less:not(.disabled):hover,
.gall .greater:not(.disabled):hover,
.gall .close:hover {
    background-color: #dddddd;
    transform: scale(1.05);
}

/* Responsive improvements */
@media (max-width: 768px) {
    .gall {
        width: 95%;
        max-width: 600px;
    }

    .gall .imgthumb,
    .gall .imgcont {
        width: 100%;
    }

    .gall .thumbbox {
        margin: 0 10px 0 10px;
    }
}

/* Accessibility improvements */
.gall .btnl:focus,
.gall .btnr:focus,
.gall .less:focus,
.gall .greater:focus,
.gall .close:focus {
    outline: 2px solid #4A90E2;
    outline-offset: 2px;
}

/* Smooth transitions */
.gall .btnl,
.gall .btnr,
.gall .less,
.gall .greater,
.gall .close {
    transition: all 0.2s ease-in-out;
}

/* Performance optimization */
.gall .overlayer {
    will-change: opacity;
}

.gall .imgbox {
    will-change: transform;
}