a.btn.disabled {
    background-color: #bfa1b4;
    color:#CCC;
    cursor: not-allowed !important;
    pointer-events: none;
    opacity: 0.6;
}

.fantasyHeader {
    background: linear-gradient(0deg,rgba(19, 0, 53, 1) 0%, rgba(94, 20, 111, 1) 0%, rgba(207, 50, 199, 1) 26%, rgba(52, 201, 164, 1) 89%);
    padding:5px;
}

.fantasyHeader p {
    opacity: 1;
    line-height: 21px;
}

.fantasyHeader p.passrequired{
    background-color: #13003597;
    padding: 15px 10px;
    border-radius: 10px;
    font-size: 16px;
    line-height: 20px;
    max-width: 400px;
    opacity: 0.8;
}

.fantasyHeader p.passrequired a{
    font-weight: bold;    
    font-style: normal;
}

span#message:not(:empty) {
    background-color: #13003597;
    padding: 15px 10px;
    border-radius: 10px;
    font-size: 16px;
    line-height: 20px;
    max-width: 400px;
    margin: auto;
}

.selectorsection{
    background-color: #13003597;
    border-radius: 10px;
}

.queen .add {
    background-color: #FE01DF;
}

.tingle-modal-box__content{
    background-color: #13003597;
}

.tingle-modal-box__footer{
    background-color: #0f0127bc;
}

.fantasyHeader h1{
    padding-top:20px
}

/* Accordion */
.accordion-wrapper {
    display: flex;
    flex-direction: column;
    gap: 8px;
    max-width: 700px;
    margin-bottom: 20px;
    margin: auto;
    margin-top: 20px;
}

.accordion {
    background-color: #13003597;
    border-radius: 10px;
    overflow: hidden;
    transition: box-shadow 0.2s ease;
}

.accordion.active {
    box-shadow: 0 0 12px rgba(207, 50, 199, 0.4);
}

.accordion__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 18px;
    cursor: pointer;
    user-select: none;    
}

.accordion__header-left {
    display: flex;
    align-items: center;
    gap: 12px;
}

.accordion__icon {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    color: #CF32C7;
    stroke: currentColor;
    opacity: 0.9;
}

.accordion__header h4 {
    margin: 0;
    font-size: 16px;
    color: #fff;
}

.accordion__arrow {
    font-size: 14px;
    color: #CF32C7;
    transition: transform 0.3s ease;
    flex-shrink: 0;
    display: inline-block;
}

.accordion.active .accordion__arrow {
    transform: rotate(180deg);
}

.accordion__body {
    max-height: 0;
    overflow: scroll;
    transition: max-height 0.35s ease, padding 0.35s ease;
    padding: 0 18px;
    margin: 0;
    font-size: 15px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.85);
    text-align: left;
    width: 100%;
}

.accordion.active .accordion__body {
    max-height: 500px;
    padding: 10px 18px 16px;
}

span.subtitle {
    font-size: 18px;
    color: #fff;
    opacity: 0.8;
    background-color: #a9069197;
    font-family: 'Yanone Kaffeesatz', sans-serif;
    padding: 5px;
    border-radius: 5px;
    margin-bottom: 10px;
}

#season_name_input {
    text-align: left;
    width: 90%;
}

.accordion__body .mode {
    width: 90%;
    padding-top: 10px;
}

span.currentValueTag:not(:empty) {
    background-color: #fe01e0b8;
    padding: 2px 8px;
    border-radius: 5px;
    font-size: 12px;
    font-weight: bold;
    color: #fff;
}

.fantasyHeader p.radiocontainer {
    margin-bottom: 10px;
}

.radiocontainer label span {
    font-size: 12px;
    display:block;
    font-weight:normal
}

.accordion__body h5{
    font-family: 'Yanone Kaffeesatz', sans-serif;
    border-bottom: 1px solid #fe01e0b8;
}

.checkboxcontainer{
    width: 300px
}

/* ── Fav remove confirmation modal ── */
.favConfirmOverlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.65);
    backdrop-filter: blur(4px);
    z-index: 9000;
    align-items: center;
    justify-content: center;
    text-align: left;
}
.favConfirmOverlay.active {
    display: flex;
}
.favConfirmDialog {
    background: linear-gradient(160deg, #4a00b8 0%, #7300ff 60%, #a800d6 100%);
    border: 1px solid rgba(255, 0, 247, 0.45);
    border-radius: 16px;
    padding: 2rem 1.75rem 1.5rem;
    max-width: 340px;
    width: 90%;
    text-align: center;
    color: #fff;
    box-shadow: 0 8px 40px rgba(115, 0, 255, 0.6), 0 0 0 1px rgba(255, 0, 247, 0.2);
    animation: favDialogIn 0.18s ease;
    text-align: left;
}

.favConfirmDialog label {
    text-align: left;
}

.favConfirmDialog input[type="text"]{
    text-align: left;
}



#episodeEditTitle{
    font-family: 'Yanone Kaffeesatz', sans-serif;
}

/* CSS Variables */
:root {
  --select-width: 300px;
  --select-font-size: 16px;
  --select-pad-x: 18px;
  --select-pad-y: 13px;
  --select-radius: 8px;
  --select-bg: #130035;
  --select-color: #FFFFFF;
  --select-border: 1px solid #FFFFFF;
  --select-focus-color: #FF00DF;
  --select-arrow-color: #FF00DF;
  --select-arrow-size: 14px;
}

/* Styles */
.select-wrapper {
  position: relative;
  display: inline-flex;
  width: var(--select-width);
}

.custom-select {
  width: 100%;
  font-family: inherit;
  font-size: var(--select-font-size);
  padding: var(--select-pad-y) 36px var(--select-pad-y) var(--select-pad-x);
  border-radius: var(--select-radius);
  background: var(--select-bg);
  color: var(--select-color);
  border: var(--select-border);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  cursor: pointer;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  height: 52px;
}

.custom-select:focus {
  border-color: var(--select-focus-color);
  box-shadow: 0 0 0 2px rgba(255,0,223,0.35);
}

.select-arrow {
  position: absolute;
  right: 14px;
  top: 35%;
  transform: translateY(-50%);
  pointer-events: none;
  width: var(--select-arrow-size);
  height: var(--select-arrow-size);
}

#episodesList {
    width: 95%;

}

.episodeListItem {
    width: 95%;
    background-color: #13003597;
    border-radius: 10px;
    padding: 10px;
    margin-bottom: 8px;
    display: flex;
    align-items: start;
}

.episodeListItem .episodeNumber {
    font-weight: bold;
    margin-right: 12px;
    background-color: #fe01e0;
    color: #fff;
    width: 32px;
    height: 32px;
    text-align: center;
    line-height: 32px;
    border-radius: 50%;
    flex-shrink: 0;
}

.episodeListItem .episodeInfo {
    display: flex;
    flex-direction: column;
    gap: 4px;
    flex-grow: 1;
}

.episodeListItem .episodeName {
    font-size: 16px;
    color: #fff;
    font-weight: bold;
}

.secondaryTag {
    background-color: #130035b1;
    padding: 2px 8px;
    border-radius: 5px;
    font-size: 12px;
    font-weight: bold;
    color: #fff;
}
/* Lipsync songs list */
.lipsyncEpisodeItem {
    align-items: flex-start;
    width: 90%;
}

.lipsyncEpisodeSongs {
    display: flex;
    flex-direction: column;
    gap: 6px;
    flex-grow: 1;
}

.lipsyncSongRow {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    background-color: #8232ebbb;
    padding: 8px 6px;
    border-radius: 8px;
}

.lipsyncSongInfo {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex-grow: 1;
}

.lipsyncSongName {
    font-size: 14px;
    color: #ddd;
}

/* Lipsync search results */
.lipsyncSearchResultRow {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 6px;
    border-bottom: 1px solid #2a0060;
    gap: 8px;
}

.lipsyncSearchResultRow:last-child {
    border-bottom: none;
}

.lipsyncSearchResultInfo {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex-grow: 1;
}

#lipsyncSongSearchTitle {
    font-family: 'Yanone Kaffeesatz', sans-serif;
}

.screen a.btn, .screen button.btn, a.btn, button.btn {
    background-color: #EAFF00;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
    color: #130035;
    font-weight: bold;
}

.screen a.btn:hover, .screen button.btn:hover, a.btn:hover, button.btn:hover {
    background-color: #d7ea05;
    color: #130035;
}

#episoderun .bg2, #episodesplash .bg2, #returnselect .bg2{    
    background: #32C9A3;
    background: radial-gradient(circle,rgba(50, 201, 163, 1) 0%, rgba(50, 201, 163, 1) 31%, rgba(205, 50, 197, 1) 100%);    
    opacity: 0.8;
    background-blend-mode: overlay;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
}

#episoderun .bg3, #episodesplash .bg3, #returnselect .bg3{    
    background: #32C9A3;
    background: radial-gradient(circle, rgba(50, 201, 163, 1) 0%, rgba(15, 1, 39, 0) 76%);
    opacity: 1;
    background-blend-mode: overlay;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
} 

#episoderun .bg3, #returnselect .bg3 {
    background: radial-gradient(circle, rgba(50, 201, 163, 1) 0%, rgba(15, 1, 39, 0) 150%);
}

#episoderun .bg4, #episodesplash .bg4, #returnselect .bg4{        
    background: radial-gradient(circle at top left, transparent 14%,#CD32C5 15%,#CD32C5 20% , transparent 21%),radial-gradient(circle at top right, transparent 14%,#CD32C5 15%,#CD32C5 20% , transparent 21%),radial-gradient(circle at bottom left, transparent 14%,#CD32C5 15%,#CD32C5 20% , transparent 21%),radial-gradient(circle at bottom right, transparent 14%,#CD32C5 15%,#CD32C5 20% , transparent 21%),radial-gradient(circle at top,#CD32C5 20% , transparent 21%), radial-gradient(circle at bottom,#CD32C5 20% , transparent 21%), radial-gradient(circle at right,#CD32C5 20% , transparent 21%), radial-gradient(circle at left,#CD32C5 20% , transparent 21%), radial-gradient(circle,#CD32C5 20% , transparent 21%);
    background-size: 6em 6em;
    background-color: #32C9A3;
    opacity: 0.7;
    background-blend-mode: color-burn;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
}

#episoderun .bg, #episodesplash .bg, #returnselect .bg {
    opacity: 0.5;
}

#episodesplash h1{
    display: inline-block;
    width:auto;
    margin: auto;
    background-color:#0f012790;
    padding: 10px 20px;
    border-radius: 10px;
    box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
    border-bottom: 1px solid #CD61CA;
}

#episodesplash h2{
    margin-top:0px;
    border-radius: 0px;
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
    background-color:#0f01277c;
    font-weight: 400;
    color: #ddddddb7;
}

#episodesplash .season_name:empty {
    display: none;
}

#episodesplash .season_name:not(:empty){    
    position: absolute;
    bottom: 0px;
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    text-align: center;
    border-radius: 0px;    
    background-color:#0f01277c;
    padding: 5px 0px;
    font-family: 'Yanone Kaffeesatz', sans-serif;
    font-size: 18px;
    font-weight: bold;
    background-blend-mode: overlay;
    border-top: 1px solid #2fe0cb7e;
}
#screenscontainer {
    min-height: 755px;
}

.screen {
    border: 1px solid #2fe0cb7c;
    box-shadow: none;
    width: 95.7%;
}

#episoderun #fireworks {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 9;
}


@keyframes move {
    100% {
        transform: translate3d(0, 0, 1px) rotate(360deg);
    }
}

.animation-paused {
    animation-play-state: paused !important;
}

#episodesplash .bg, #episoderun .bg, #returnselect .bg {
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    background: #7f80b5;
    overflow: hidden;
}

#episodesplash .bg span, #episoderun .bg span, #returnselect .bg span {
    width: 19vmin;
    height: 19vmin;
    border-radius: 19vmin;
    backface-visibility: hidden;
    position: absolute;
    animation: move;
    animation-duration: 45;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}


#episodesplash .bg span:nth-child(0), #episoderun .bg span:nth-child(0), #returnselect .bg span:nth-child(0) {
    color: #eaff00;
    top: 12%;
    left: 94%;
    animation-duration: 33s;
    animation-delay: -29s;
    transform-origin: -7vw 15vh;
    box-shadow: -38vmin 0 5.380555175217549vmin currentColor;
}
#episodesplash .bg span:nth-child(1), #episoderun .bg span:nth-child(1) {
    color: #eaff00;
    top: 56%;
    left: 49%;
    animation-duration: 19s;
    animation-delay: -25s;
    transform-origin: -20vw -11vh;
    box-shadow: 38vmin 0 4.835839611862119vmin currentColor;
}
#episodesplash .bg span:nth-child(2), #episoderun .bg span:nth-child(2), #returnselect .bg span:nth-child(2) {
    color: #31c8a3;
    top: 78%;
    left: 18%;
    animation-duration: 17s;
    animation-delay: -33s;
    transform-origin: -18vw -15vh;
    box-shadow: -38vmin 0 4.980107331033896vmin currentColor;
}
#episodesplash .bg span:nth-child(3), #episoderun .bg span:nth-child(3), #returnselect .bg span:nth-child(3) {
    color: #d855d4;
    top: 16%;
    left: 17%;
    animation-duration: 42s;
    animation-delay: -2s;
    transform-origin: -23vw 20vh;
    box-shadow: 38vmin 0 5.634396912568347vmin currentColor;
}
#episodesplash .bg span:nth-child(4), #episoderun .bg span:nth-child(4), #returnselect .bg span:nth-child(4) {
    color: #31c8a3;
    top: 22%;
    left: 38%;
    animation-duration: 37s;
    animation-delay: -16s;
    transform-origin: 9vw -9vh;
    box-shadow: 38vmin 0 5.211734689256766vmin currentColor;
}
#episodesplash .bg span:nth-child(5), #episoderun .bg span:nth-child(5), #returnselect .bg span:nth-child(5) {
    color: #33e4cc;
    top: 30%;
    left: 72%;
    animation-duration: 9s;
    animation-delay: -31s;
    transform-origin: 20vw -13vh;
    box-shadow: 38vmin 0 5.185797588478075vmin currentColor;
}
#episodesplash .bg span:nth-child(6), #episoderun .bg span:nth-child(6), #returnselect .bg span:nth-child(6) {
    color: #eaff00;
    top: 53%;
    left: 22%;
    animation-duration: 28s;
    animation-delay: -45s;
    transform-origin: 24vw 21vh;
    box-shadow: 38vmin 0 4.800821876587019vmin currentColor;
}
#episodesplash .bg span:nth-child(7), #episoderun .bg span:nth-child(7), #returnselect .bg span:nth-child(7) {
    color: #33e4cc;
    top: 47%;
    left: 43%;
    animation-duration: 43s;
    animation-delay: -18s;
    transform-origin: -15vw -5vh;
    box-shadow: 38vmin 0 5.333514409988963vmin currentColor;
}
#episodesplash .bg span:nth-child(8), #episoderun .bg span:nth-child(8), #returnselect .bg span:nth-child(8) {
    color: #31c8a3;
    top: 87%;
    left: 96%;
    animation-duration: 54s;
    animation-delay: -46s;
    transform-origin: -3vw 2vh;
    box-shadow: 38vmin 0 5.597619324944616vmin currentColor;
}
#episodesplash .bg span:nth-child(9), #episoderun .bg span:nth-child(9), #returnselect .bg span:nth-child(9) {
    color: #31c8a3;
    top: 54%;
    left: 6%;
    animation-duration: 42s;
    animation-delay: -18s;
    transform-origin: 17vw -8vh;
    box-shadow: -38vmin 0 5.217882659554501vmin currentColor;
}
#episodesplash .bg span:nth-child(10), #episoderun .bg span:nth-child(10), #returnselect .bg span:nth-child(10) {
    color: #d855d4;
    top: 34%;
    left: 98%;
    animation-duration: 6s;
    animation-delay: -17s;
    transform-origin: -5vw -20vh;
    box-shadow: 38vmin 0 5.573527649001277vmin currentColor;
}
#episodesplash .bg span:nth-child(11), #episoderun .bg span:nth-child(11), #returnselect .bg span:nth-child(11) {
    color: #31c8a3;
    top: 70%;
    left: 62%;
    animation-duration: 34s;
    animation-delay: -21s;
    transform-origin: -20vw -6vh;
    box-shadow: 38vmin 0 4.8927467920943vmin currentColor;
}
#episodesplash .bg span:nth-child(12), #episoderun .bg span:nth-child(12), #returnselect .bg span:nth-child(12) {
    color: #31c8a3;
    top: 26%;
    left: 55%;
    animation-duration: 35s;
    animation-delay: -36s;
    transform-origin: 11vw -8vh;
    box-shadow: -38vmin 0 5.300053713499564vmin currentColor;
}
#episodesplash .bg span:nth-child(13), #episoderun .bg span:nth-child(13), #returnselect .bg span:nth-child(13) {
    color: #d855d4;
    top: 56%;
    left: 86%;
    animation-duration: 26s;
    animation-delay: -15s;
    transform-origin: 9vw 9vh;
    box-shadow: 38vmin 0 5.186123664864377vmin currentColor;
}
#episodesplash .bg span:nth-child(14), #episoderun .bg span:nth-child(14), #returnselect .bg span:nth-child(14) {
    color: #eaff00;
    top: 60%;
    left: 100%;
    animation-duration: 43s;
    animation-delay: -46s;
    transform-origin: 12vw 11vh;
    box-shadow: -38vmin 0 5.330607122379891vmin currentColor;
}
#episodesplash .bg span:nth-child(15), #episoderun .bg span:nth-child(15), #returnselect .bg span:nth-child(15) {
    color: #33e4cc;
    top: 55%;
    left: 39%;
    animation-duration: 25s;
    animation-delay: -15s;
    transform-origin: -10vw -3vh;
    box-shadow: -38vmin 0 5.104983825373643vmin currentColor;
}
#episodesplash .bg span:nth-child(16), #episoderun .bg span:nth-child(16), #returnselect .bg span:nth-child(16) {
    color: #eaff00;
    top: 51%;
    left: 2%;
    animation-duration: 22s;
    animation-delay: -21s;
    transform-origin: 9vw -6vh;
    box-shadow: 38vmin 0 4.843043873871144vmin currentColor;
}
#episodesplash .bg span:nth-child(17), #episoderun .bg span:nth-child(17), #returnselect .bg span:nth-child(17) {
    color: #d855d4;
    top: 98%;
    left: 70%;
    animation-duration: 31s;
    animation-delay: -30s;
    transform-origin: 17vw -15vh;
    box-shadow: 38vmin 0 5.297741435597271vmin currentColor;
}
#episodesplash .bg span:nth-child(18), #episoderun .bg span:nth-child(18), #returnselect .bg span:nth-child(18) {
    color: #eaff00;
    top: 42%;
    left: 96%;
    animation-duration: 30s;
    animation-delay: -11s;
    transform-origin: 24vw 9vh;
    box-shadow: 38vmin 0 5.046513394144653vmin currentColor;
}
#episodesplash .bg span:nth-child(19), #episoderun .bg span:nth-child(19), #returnselect .bg span:nth-child(19) {
    color: #eaff00;
    top: 32%;
    left: 4%;
    animation-duration: 23s;
    animation-delay: -24s;
    transform-origin: -18vw -12vh;
    box-shadow: 38vmin 0 5.257333562379296vmin currentColor;
}
#episodesplash .bg span:nth-child(20), #episoderun .bg span:nth-child(20), #returnselect .bg span:nth-child(20) {
    color: #d855d4;
    top: 58%;
    left: 31%;
    animation-duration: 38s;
    animation-delay: -21s;
    transform-origin: 23vw 7vh;
    box-shadow: 38vmin 0 5.282348233602519vmin currentColor;
}
#episodesplash .bg span:nth-child(21), #episoderun .bg span:nth-child(21), #returnselect .bg span:nth-child(21) {
    color: #d855d4;
    top: 10%;
    left: 36%;
    animation-duration: 55s;
    animation-delay: -16s;
    transform-origin: -5vw -19vh;
    box-shadow: 38vmin 0 5.4461027415824255vmin currentColor;
}

#episoderundetails h1{
    display: inline-block;
    width: auto;
    margin: auto;
    background-color: #0f0127c4;
    padding: 4px 20px;
    border-radius: 10px;
    box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
    border-bottom: 1px solid #CD61CA;
    margin-top: 10px;
}

#episoderundetails h2{
    margin-top: -3px;
    background-color: #0f01277c;
    font-weight: 400;
    color: #ddddddb7;
    border-radius: 0px;
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
}

#episoderunactions {
    background-color: #E9FF00;
    justify-content: center;
}

.screen a.btn#trackRecordBtn{
    bottom:60px;
}

#seasonrecapcontent{
    background: #32C9A3;
    background: radial-gradient(circle,rgba(50, 201, 163, 1) 0%, rgba(133, 30, 140, 1) 76%);    
}

.screen #closeRecapBtn{
    top:10px;
    right:10px;
}

#episoderunactions {
    bottom:-120px;
}

#episode_detail:not(:empty){
    background-color: #fe01e0c1;    
    padding: 5px 15px;
    border-radius: 10px;
    font-family: 'Yanone Kaffeesatz', sans-serif;
    font-size: 16px;
    color: #fff;
    margin-bottom: 10px;
}

#returnselect_drags{    
    position: relative;
    display: block;
    width: 100%;
    height: 500px;
}

#returnselect .queen {
    width: 100px;
    height: 100px;
    position: absolute;
    top: 0px;
    left: 0px;
    display: inline-block;
    transform-origin: left top;
    transform: translateX(0px) translateY(0px) scale(1);
}


#returnselect .queen .imageWrapper {
    height: 80px;
    width: 80px;
    border: 5px solid #f1efe8;
}

#returnselect h1{
    display: inline-block;
    width: auto;
    margin: auto;
    background-color: #0f0127c4;
    padding: 4px 20px;
    border-radius: 10px;
    box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;    
    margin-top: 10px;    
}

#returnselect_subtitle:not(:empty) {
    background-color: #0f01277c;
    font-weight: 400;
    color: #FFF;    
    border-radius: 10px;
    padding: 5px 15px;
    font-family: 'Yanone Kaffeesatz', sans-serif;
    font-size: 18px;
    margin-top: 10px;
}

#returnselect_subtitle{
    min-height: 22px;
}

#episoderun.assassin .bg, #episoderun.legacy .bg, #episoderun.noeliminations .bg, #episoderun.beaver .bg {
    opacity: 0.6;
}

.radiocontainer.disabled {
    color: #777;
    pointer-events: none;
    opacity: 0.6;
}

.radiocontainer.disabled [type="radio"]:checked + label, .radiocontainer.disabled [type="radio"]:not(:checked) + label {    
    color: #ccc;
    opacity: 0.6;
}

.screen .screencontainer{
    z-index: 10;
}

.radiocontainer {
    width: 320px;    
}

/* V3 Start Page Gallery & Features */
.fsv3-gallery-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    max-width: 800px;
    margin: 0 auto;
}

.fsv3-gallery-item {
    background-color: #13003597;
    border: 1px solid rgba(255, 0, 222, 0.25);
    border-radius: 12px;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
    text-align: left;
}

.fsv3-gallery-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 30px rgba(255, 0, 222, 0.4);
    border-color: rgba(255, 0, 222, 0.6);
}

.fsv3-gallery-img-wrap {
    width: 100%;
    position: relative;    
    background-color: #0c0121;
    border-bottom: 1px solid rgba(255, 0, 222, 0.15);
    height: 375px;
}

.fsv3-gallery-img-wrap img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.fsv3-gallery-item:hover .fsv3-gallery-img-wrap img {
    transform: scale(1.05);
}

.fsv3-gallery-caption {
    padding: 16px 20px;
}

.fsv3-gallery-caption h4 {
    margin: 0 0 8px 0;
    font-size: 18px;
    color: #ff00de;
    font-family: 'Yanone Kaffeesatz', sans-serif;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.fsv3-gallery-caption p {
    margin: 0;
    font-size: 14px;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.8);
}

.fsv3-features-list li:hover {
    transform: translateX(4px);
    transition: transform 0.2s ease;
}

@media (max-width: 600px) {
    .fsv3-gallery-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}