/* ---------- Sticky Footer Fix ---------- */

html, body{
height:100%;
}

body{
display:flex;
flex-direction:column;
min-height:100vh;
}

main{
flex:1;
}

/* ---------- Calendar Styling ---------- */

#calendar{
max-width:100%;
}

.fc-toolbar{
display:flex;
flex-wrap:wrap;
justify-content:space-between;
align-items:center;
}

.fc-event{
padding:3px;
cursor:pointer;
}

.fc-toolbar .fc-left,
.fc-toolbar .fc-center,
.fc-toolbar .fc-right{
display:flex;
flex-wrap:wrap;
align-items:center;
gap:5px;
}

.fc-center,
.fc-right{
margin-left:auto;
}

.fc button{
font-size:14px;
padding:6px 10px;
}

.fc-toolbar.fc-header-toolbar{
margin-bottom:2em;
}

@media (max-width:1024px){

.fc-toolbar{
flex-direction:column;
text-align:center;
gap:10px;
}

.fc-toolbar .fc-left,
.fc-toolbar .fc-center,
.fc-toolbar .fc-right{
justify-content:center;
margin-top:6px;
}

.fc-toolbar h2{
font-size:20px;
margin:5px 0;
}

.fc-center,
.fc-right{
margin:0;
}

.fc-toolbar.fc-header-toolbar{
margin-bottom:1.5em;
}

}

@media (max-width:600px){

.fc-toolbar{
flex-direction:column;
gap:12px;
}

.fc-toolbar h2{
font-size:18px;
margin:8px 0;
}

.fc button{
font-size:14px;
padding:8px 12px;
}

.fc-day-number{
font-size:14px;
}

.fc-event{
font-size:12px;
padding:3px 6px;
}

.fc-toolbar .fc-left,
.fc-toolbar .fc-center,
.fc-toolbar .fc-right{
justify-content:center;
margin-top:6px;
}

}

/* ---------------------------------------------- */

.nav-btn-push{
    margin-right: 5px;
}

@media only screen and (max-width: 991px) {
    .nav-btn-push{
        margin-bottom: 5px;
    }

}


/* update 4-27-2026 */

      .member-nav-desktop .btn.active {
        background-color: #084298 !important;
        border-color: #084298 !important;
      }
      
      .member-body{
        height: 1100px;
      }

      .member-body main{
        min-height:1100px;
        max-height: 1500px;
      }

      #memberBlogPanel{
        display:flex;
        flex-direction:column;
        height: 90vh;
        min-width: 0;
      }

      #memberBlogPanel .overflow-auto{
        flex-grow:1;
      }

      .mask1 {
        -webkit-mask-image: linear-gradient(to bottom, black 0%, black 85%, transparent 100%);
        mask-image: linear-gradient(to bottom, black 0%, black 85%, transparent 100%);
      }

      .member-nav-mobile{
        display: none !important;
      }




      @media only screen and (max-width: 768px) {
        #memberBlogPanel{
          height: 80vh;
        }

        .member-body{
          height: auto !important;
          min-height: 100vh;
        }

        .member-body main{
          min-height: 100vh !important;
          max-height: none !important;
        }

          #memberBlogPanel{
            height: auto !important;
            min-height: 100vh;
            display: flex;
            flex-direction: column;
          }

            /* THIS is the key fix */
  #memberBlogPanel .overflow-auto{
    flex: 1;
    overflow: visible !important;
  }

        .member-nav-desktop{
          display: none !important;
        }

        .member-nav-mobile{
          display: block !important;
        }

        #memberHomePanel h3,
        #memberCalendarPanel h3,
        #memberBlogPanel h3{
          padding-top: 0 !important;
        }

        .row{
          margin-right: 0 !important;
          margin-left: 0 !important;
        }
      }